Compose

Run the deploy job's Compose configuration check for a deployment, without deploying: the deployment's commit, the project's current override, exclusions and security policy, and the environment's variables. Returns the error the deployment would fail with, its class, and the exact `docker compose config` command with sanitized output. Read-only.

Changed on
post/projects/{project_id}/deployments/{deployment_id}/compose-check

Request

  • Base URL: /api (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /api/projects/{project_id}/deployments/{deployment_id}/compose-check
  • Auth: HTTP bearer

Path parameters

project_idinteger required

Project ID

deployment_idinteger required

Deployment ID

Response

Check result (passed or the failure)

errorstring nullable

The same message the deployment would fail with. Variable values are redacted.

error_class'interpolation' | 'policy_violation' | 'invalid_path' | 'invalid_yaml' | 'invalid_override' | 'unsupported_compose_version' | 'config_resolution' | 'compose_unavailable' | 'internal'

Stable, user-facing class of a Compose check failure. The deploy job, the preview and the check action all report the same class for the same input.

notesstring[] required

Caveats about what this check could not cover.

passedboolean required

Whether the configuration would pass the deploy-time checks.

referenced_variablesstring[] required

Variables the file references, in sorted order. Names only.

resolution_ranboolean required

Whether docker compose config actually ran for this check.

resolution_reasonsstring[] required

Why docker compose config had to run (project override, include, extends, YAML tags). Empty when the file was validated directly.

unset_variablesstring[] required

Variables referenced without a default that are not set; Compose substitutes an empty string for each.

Changes