Checklist: What must pass before a container can auto-deploy

Integration Partners
Last Updated: August 21, 2026

Your container image is not eligible for auto-deployment until all three of the following are satisfied.

1. It must follow the artifact naming conventions

The image tag and the S3 folder name must be compliant with the Artifact naming conventions and geographic deployment regions: a CalVer version, plus an optional annotation, plus an optional single deployment region suffix (_AMS, _EMEA, or _APAC).

Note: This is not a pass/fail check like #2 and #3. A tag that doesn't match the required format produces no deployment event at all. The upload is silently ignored and not rejected with a visible failure. If a partner uploads an image and "nothing happens," this is almost always why.

Includes deployment region: omitting the region suffix deploys everywhere, and a global (no-suffix) upload will overwrite an existing region-specific deployment. See Artifact naming conventions and geographic deployment regions for the full format, region definitions, and examples.

2. It must pass a vulnerability scan

Index scans every image automatically once it's pushed, and blocks deployment if any component in it scores 9 or higher on CVSS. Catch this yourself first, so a failed scan doesn't hold up your deployment.

  1. Run a vulnerability scanner against your image. For example: trivy image yourrepo/yourimage:2026.07.10.2.

  2. Confirm nothing comes back scored 9 or higher on CVSS.

If your image fails the Index scan during deployment, a Grafana log entry is made naming the specific component(s) that need to be updated.

3. It must expose the required endpoints

The container must expose the endpoints described in Building a Docker container:

Verification happens in two steps, in order:

  1. Locally, first, using the ARTF reference tools with no Index involvement required. See Familiarize yourself with ARTF in Validating and deploying a container for the first time.

  2. Final validation using the test tool, which sends sample requests to your container against a live-like environment. This will not send any test traffic at all until the health check and metrics endpoint above both pass.

See also