Azure Container Registry-webhookverwijzing
U kunt webhooks configureren voor uw containerregister waarmee gebeurtenissen worden gegenereerd wanneer bepaalde acties hierop worden uitgevoerd. Schakel bijvoorbeeld webhooks in die worden geactiveerd wanneer een containerinstallatiekopieën of Helm-grafiek naar een register wordt gepusht of verwijderd. Wanneer een webhook wordt geactiveerd, geeft Azure Container Registry een HTTP- of HTTPS-aanvraag uit met informatie over de gebeurtenis naar een eindpunt dat u opgeeft. Uw eindpunt kan vervolgens de webhook verwerken en dienovereenkomstig handelen.
In de volgende secties wordt het schema beschreven van webhookaanvragen die worden gegenereerd door ondersteunde gebeurtenissen. De gebeurtenissecties bevatten het payloadschema voor het gebeurtenistype, een voorbeeld van de nettolading van de aanvraag en een of meer voorbeeldopdrachten waarmee de webhook wordt geactiveerd.
Zie Azure Container Registry-webhooks gebruiken voor informatie over het configureren van webhooks voor uw Azure-containerregister.
Webhook-aanvragen
HTTP-aanvraag
Een geactiveerde webhook verzendt een HTTP-aanvraag naar het URL-eindpunt POST
dat u hebt opgegeven toen u de webhook hebt geconfigureerd.
HTTP-kopteksten
Webhookaanvragen bevatten een Content-Type
van application/json
als u geen aangepaste header voor uw webhook hebt opgegeven Content-Type
.
Er worden geen andere headers toegevoegd aan de aanvraag buiten die aangepaste headers die u mogelijk hebt opgegeven voor de webhook.
Pushgebeurtenis
Webhook geactiveerd wanneer een containerinstallatiekopieën naar een opslagplaats worden gepusht.
Nettolading van pushgebeurtenis
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de webhook-gebeurtenis. |
timestamp |
Datum en tijd | Het tijdstip waarop de webhookgebeurtenis is geactiveerd. |
action |
String | De actie die de webhookgebeurtenis heeft geactiveerd. |
doel | Complex Type | Het doel van de gebeurtenis die de webhookgebeurtenis heeft geactiveerd. |
verzoek | Complex Type | De aanvraag die de webhook-gebeurtenis heeft gegenereerd. |
doel
Element | Type | Omschrijving |
---|---|---|
mediaType |
String | Het MIME-type van het object waarnaar wordt verwezen. |
size |
Int32 | Het aantal bytes van de inhoud. Hetzelfde als het veld Lengte. |
digest |
String | De samenvatting van de inhoud, zoals gedefinieerd door de HTTP API-specificatie van register V2. |
length |
Int32 | Het aantal bytes van de inhoud. Hetzelfde als het veld Grootte. |
repository |
String | De naam van de opslagplaats. |
tag |
String | De naam van de afbeeldingstag. |
aanvraag
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de aanvraag waarmee de gebeurtenis is gestart. |
host |
String | De extern toegankelijke hostnaam van het registerexemplaren, zoals opgegeven door de HTTP-hostheader op binnenkomende aanvragen. |
method |
String | De aanvraagmethode waarmee de gebeurtenis is gegenereerd. |
useragent |
String | De header van de gebruikersagent van de aanvraag. |
Voorbeeld van payload: afbeeldingspushgebeurtenis
{
"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\\))"
}
}
Voorbeeld van docker CLI-opdracht waarmee de webhook voor pushgebeurtenissen voor installatiekopieën wordt geactiveerd:
docker push myregistry.azurecr.io/hello-world:v1
Pushgebeurtenis voor grafieken
Webhook geactiveerd wanneer een Helm-grafiek naar een opslagplaats wordt gepusht.
Nettolading van pushgebeurtenis in grafiek
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de webhook-gebeurtenis. |
timestamp |
Datum en tijd | Het tijdstip waarop de webhookgebeurtenis is geactiveerd. |
action |
String | De actie die de webhookgebeurtenis heeft geactiveerd. |
doel | Complex Type | Het doel van de gebeurtenis die de webhookgebeurtenis heeft geactiveerd. |
doel
Element | Type | Omschrijving |
---|---|---|
mediaType |
String | Het MIME-type van het object waarnaar wordt verwezen. |
size |
Int32 | Het aantal bytes van de inhoud. |
digest |
String | De samenvatting van de inhoud, zoals gedefinieerd door de HTTP API-specificatie van register V2. |
repository |
String | De naam van de opslagplaats. |
tag |
String | De naam van de grafiektag. |
name |
String | De grafieknaam. |
version |
String | De grafiekversie. |
Voorbeeld van payload: grafiekpushgebeurtenis
{
"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"
}
}
Voorbeeld van een Azure CLI-opdracht waarmee de chart_push gebeurteniswebhook wordt geactiveerd:
az acr helm push wordpress-5.4.0.tgz --name MyRegistry
Gebeurtenis verwijderen
Webhook geactiveerd wanneer een opslagplaats of manifest voor installatiekopieën wordt verwijderd. Niet geactiveerd wanneer een tag wordt verwijderd.
Nettolading van gebeurtenis verwijderen
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de webhook-gebeurtenis. |
timestamp |
Datum en tijd | Het tijdstip waarop de webhookgebeurtenis is geactiveerd. |
action |
String | De actie die de webhookgebeurtenis heeft geactiveerd. |
doel | Complex Type | Het doel van de gebeurtenis die de webhookgebeurtenis heeft geactiveerd. |
verzoek | Complex Type | De aanvraag die de webhook-gebeurtenis heeft gegenereerd. |
doel
Element | Type | Omschrijving |
---|---|---|
mediaType |
String | Het MIME-type van het object waarnaar wordt verwezen. |
digest |
String | De samenvatting van de inhoud, zoals gedefinieerd door de HTTP API-specificatie van register V2. |
repository |
String | De naam van de opslagplaats. |
aanvraag
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de aanvraag waarmee de gebeurtenis is gestart. |
host |
String | De extern toegankelijke hostnaam van het registerexemplaren, zoals opgegeven door de HTTP-hostheader op binnenkomende aanvragen. |
method |
String | De aanvraagmethode waarmee de gebeurtenis is gegenereerd. |
useragent |
String | De header van de gebruikersagent van de aanvraag. |
Voorbeeld van nettolading: gebeurtenis voor het verwijderen van afbeeldingen
{
"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"
}
}
Voorbeeld van Azure CLI-opdrachten waarmee een webhook voor het verwijderen van gebeurtenissen wordt geactiveerd:
# Delete repository
az acr repository delete --name MyRegistry --repository MyRepository
# Delete image
az acr repository delete --name MyRegistry --image MyRepository:MyTag
Grafiek verwijderen gebeurtenis
Webhook geactiveerd wanneer een Helm-grafiek of -opslagplaats wordt verwijderd.
Nettolading van grafiek verwijderen
Element | Type | Omschrijving |
---|---|---|
id |
String | De id van de webhook-gebeurtenis. |
timestamp |
Datum en tijd | Het tijdstip waarop de webhookgebeurtenis is geactiveerd. |
action |
String | De actie die de webhookgebeurtenis heeft geactiveerd. |
doel | Complex Type | Het doel van de gebeurtenis die de webhookgebeurtenis heeft geactiveerd. |
doel
Element | Type | Omschrijving |
---|---|---|
mediaType |
String | Het MIME-type van het object waarnaar wordt verwezen. |
size |
Int32 | Het aantal bytes van de inhoud. |
digest |
String | De samenvatting van de inhoud, zoals gedefinieerd door de HTTP API-specificatie van register V2. |
repository |
String | De naam van de opslagplaats. |
tag |
String | De naam van de grafiektag. |
name |
String | De grafieknaam. |
version |
String | De grafiekversie. |
Voorbeeld van nettolading: grafiek verwijderen gebeurtenis
{
"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"
}
}
Voorbeeld van een Azure CLI-opdracht waarmee de chart_delete gebeurteniswebhook wordt geactiveerd:
az acr helm delete wordpress --version 5.4.0 --name MyRegistry