Share via


Azure Container Registry webhook referenciája

Konfigurálhat webhookokat a tárolóregisztrációs adatbázishoz, amelyek eseményeket hoznak létre, amikor bizonyos műveleteket hajtanak végre rajta. Engedélyezheti például azokat a webhookokat, amelyek akkor aktiválódnak, ha egy tárolórendszerképet vagy Helm-diagramot leküld egy beállításjegyzékbe, vagy törli őket. Amikor egy webhook aktiválódik, Azure Container Registry egy HTTP- vagy HTTPS-kérést ad ki, amely az eseményre vonatkozó információkat tartalmazza egy ön által megadott végpontra. A végpont ezután feldolgozhatja a webhookot, és ennek megfelelően cselekedhet.

Az alábbi szakaszok a támogatott események által létrehozott webhook-kérések sémáját ismertetik. Az eseményszakaszok tartalmazzák az eseménytípus hasznosadat-sémáját, egy példakérés hasznos adatait, valamint egy vagy több példaparancsot, amelyek aktiválnák a webhookot.

További információ a webhookok Azure-tárolóregisztrációs adatbázishoz való konfigurálásáról: Azure Container Registry webhookok használata.

Webhook-kérelmek

HTTP-kérés

Az aktivált webhook HTTP-kérést POST küld a webhook konfigurálásakor megadott URL-végpontra.

HTTP-fejlécek

A webhook-kérelmek közé tartoznak Content-Type a következők application/json , ha nem adott meg Content-Type egyéni fejlécet a webhookhoz.

A kéréshez a webhookhoz esetleg megadott egyéni fejléceken kívül más fejlécek nem lesznek hozzáadva.

Leküldéses esemény

A webhook akkor aktiválódik, ha egy tárolórendszerkép le van küldve egy adattárba.

Leküldéses esemény hasznos adatai

Elem Típus Description
id Sztring A webhookesemény azonosítója.
timestamp DateTime A webhook esemény aktiválásának időpontja.
action Sztring A webhookeseményt kiváltó művelet.
Cél Összetett típus A webhookeseményt kiváltó esemény célja.
Kérés Összetett típus A webhookeseményt létrehozó kérés.

Cél

Elem Típus Description
mediaType Sztring A hivatkozott objektum MIME-típusa.
size Int32 A tartalom bájtjainak száma. Ugyanaz, mint a Hossz mező.
digest Sztring A tartalom kivonata a Registry V2 HTTP API-specifikációban meghatározottak szerint.
length Int32 A tartalom bájtjainak száma. Ugyanaz, mint a Méret mező.
repository Sztring Az adattár neve.
tag Sztring A képcímke neve.

Kérés

Elem Típus Description
id Sztring Az eseményt kezdeményező kérés azonosítója.
host Sztring A regisztrációs adatbázispéldány külsőleg elérhető állomásneve, a bejövő kérések HTTP-állomásfejléce által meghatározottak szerint.
method Sztring Az eseményt létrehozó kérelemmetódus.
useragent Sztring A kérelem felhasználói ügynök fejléce.

Payload example: image push event

{
  "id": "cb8c3971-9adc-488b-xxxx-43cbb4974ff5",
  "timestamp": "2017-11-17T16:52:01.343145347Z",
  "action": "push",
  "target": {
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
    "size": 524,
    "digest": "sha256:xxxxd5c8786bb9e621a45ece0dbxxxx1cdc624ad20da9fe62e9d25490f33xxxx",
    "length": 524,
    "repository": "hello-world",
    "tag": "v1"
  },
  "request": {
    "id": "3cbb6949-7549-4fa1-xxxx-a6d5451dffc7",
    "host": "myregistry.azurecr.io",
    "method": "PUT",
    "useragent": "docker/17.09.0-ce go/go1.8.3 git-commit/afdb6d4 kernel/4.10.0-27-generic os/linux arch/amd64 UpstreamClient(Docker-Client/17.09.0-ce \\(linux\\))"
  }
}

Példa Docker CLI-parancsra , amely elindítja a rendszerkép leküldéses esemény webhookját:

docker push myregistry.azurecr.io/hello-world:v1

Diagram leküldéses eseménye

A webhook akkor aktiválódik, ha egy Helm-diagram le van küldve egy adattárba.

Diagram leküldéses esemény hasznos adatai

Elem Típus Description
id Sztring A webhookesemény azonosítója.
timestamp DateTime A webhook esemény aktiválásának időpontja.
action Sztring A webhookeseményt kiváltó művelet.
Cél Összetett típus A webhookeseményt kiváltó esemény célja.

Cél

Elem Típus Description
mediaType Sztring A hivatkozott objektum MIME-típusa.
size Int32 A tartalom bájtjainak száma.
digest Sztring A tartalom kivonata a Registry V2 HTTP API-specifikációban meghatározottak szerint.
repository Sztring Az adattár neve.
tag Sztring A diagramcímke neve.
name Sztring A diagram neve.
version Sztring A diagram verziója.

Payload example: chart push event

{
  "id": "6356e9e0-627f-4fed-xxxx-d9059b5143ac",
  "timestamp": "2019-03-05T23:45:31.2614267Z",
  "action": "chart_push",
  "target": {
    "mediaType": "application/vnd.acr.helm.chart",
    "size": 25265,
    "digest": "sha256:xxxx8075264b5ba7c14c23672xxxx52ae6a3ebac1c47916e4efe19cd624dxxxx",
    "repository": "repo",
    "tag": "wordpress-5.4.0.tgz",
    "name": "wordpress",
    "version": "5.4.0.tgz"
  }
}

Példa az Azure CLI-parancsra , amely elindítja a chart_push esemény webhookot:

az acr helm push wordpress-5.4.0.tgz --name MyRegistry

Esemény törlése

A webhook egy képtár vagy jegyzékfájl törlésekor aktiválódik. Nem aktiválódik a címke törlésekor.

Esemény hasznos adatainak törlése

Elem Típus Description
id Sztring A webhookesemény azonosítója.
timestamp DateTime A webhook esemény aktiválásának időpontja.
action Sztring A webhookeseményt kiváltó művelet.
Cél Összetett típus A webhookeseményt kiváltó esemény célja.
Kérés Összetett típus A webhookeseményt létrehozó kérés.

Cél

Elem Típus Description
mediaType Sztring A hivatkozott objektum MIME-típusa.
digest Sztring A tartalom kivonata a Registry V2 HTTP API-specifikációban meghatározottak szerint.
repository Sztring Az adattár neve.

Kérés

Elem Típus Description
id Sztring Az eseményt kezdeményező kérés azonosítója.
host Sztring A regisztrációs adatbázispéldány külsőleg elérhető gazdagépneve, a bejövő kérések HTTP-állomásfejléce által meghatározottak szerint.
method Sztring Az eseményt létrehozó kérelemmetódus.
useragent Sztring A kérelem felhasználói ügynök fejléce.

Hasznos adat például: képtörlési esemény

{
    "id": "afc359ce-df7f-4e32-xxxx-1ff8aa80927b",
    "timestamp": "2017-11-17T16:54:53.657764628Z",
    "action": "delete",
    "target": {
      "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
      "digest": "sha256:xxxxd5c8786bb9e621a45ece0dbxxxx1cdc624ad20da9fe62e9d25490f33xxxx",
      "repository": "hello-world"
    },
    "request": {
      "id": "3d78b540-ab61-4f75-xxxx-7ca9ecf559b3",
      "host": "myregistry.azurecr.io",
      "method": "DELETE",
      "useragent": "python-requests/2.18.4"
    }
  }

Példa azure CLI-parancsoktörlési esemény webhookra:

# Delete repository
az acr repository delete --name MyRegistry --repository MyRepository

# Delete image
az acr repository delete --name MyRegistry --image MyRepository:MyTag

Diagramtörlési esemény

A webhook egy Helm-diagram vagy -adattár törlésekor aktiválódik.

Diagramtörlési esemény hasznos adatai

Elem Típus Description
id Sztring A webhookesemény azonosítója.
timestamp DateTime A webhook esemény aktiválásának időpontja.
action Sztring A webhookeseményt kiváltó művelet.
Cél Összetett típus A webhookeseményt kiváltó esemény célja.

Cél

Elem Típus Description
mediaType Sztring A hivatkozott objektum MIME-típusa.
size Int32 A tartalom bájtjainak száma.
digest Sztring A tartalom kivonata a Registry V2 HTTP API-specifikációban meghatározottak szerint.
repository Sztring Az adattár neve.
tag Sztring A diagramcímke neve.
name Sztring A diagram neve.
version Sztring A diagram verziója.

Hasznos adat például: diagramtörlési esemény

{
  "id": "338a3ef7-ad68-4128-xxxx-fdd3af8e8f67",
  "timestamp": "2019-03-06T00:10:48.1270754Z",
  "action": "chart_delete",
  "target": {
    "mediaType": "application/vnd.acr.helm.chart",
    "size": 25265,
    "digest": "sha256:xxxx8075264b5ba7c14c23672xxxx52ae6a3ebac1c47916e4efe19cd624dxxxx",
    "repository": "repo",
    "tag": "wordpress-5.4.0.tgz",
    "name": "wordpress",
    "version": "5.4.0.tgz"
  }
}

Példa az Azure CLI-parancsra , amely elindítja a chart_delete esemény webhookot:

az acr helm delete wordpress --version 5.4.0 --name MyRegistry

Következő lépések

Azure Container Registry webhookok használata