Handle Container Image "push" events from outside of Alin.io
Sometimes, you need an integration between services, and most of the Container CI, CD, or Infrastructure environments expect to receive an HTTP request with the data of the container "push" event to trigger an action to pull a new container image or do something else. One of the best examples is GitHub Actions, or Jenkins, where they expect to receive an HTTP Post request (or you can configure them) to trigger a new CI/CD pipeline to run your tests inside a newly pushed container and deploy a new version to Kubernetes production.
For better customizability at Alin.io, we can set your WebHook URL for each repository individually. It is inside a Repository settings page, and putting it is as easy as just typing a Webhook endpoint URL there, and it has to be a valid URL. Otherwise, our system will start ignoring it over time when it will fail requests a few times in a row.
External integrated service should expect to receive an HTTP/S POST request with a JSON body and some extra headers to identify the request. You can also provide URL query parameters to pass a token to your integrated service if you need to ensure only Alin.io can send an HTTP request to a given URL.
User-Agent: Alin.io WebHook Handler
Accept-Encoding: gzip, deflate
Content-Length: <size of JSON payload>
JSON Body is not customizable, but it could be over time if there is a real need for that.
Our Webhook service sends a request asynchronously, which means that if you make docker push, it, it might take a few seconds to trigger a Webhook operation. That's because we want to keep an integrated service manageable with a blast of HTTP requests, so we batch them.