intropy release
Authoritative reference for intropy release: publishing and inspecting immutable release manifests.
A release names a set of built bits: a component version, the source commit it was built from, and the image digests CI published for that commit. Releases change no environment. Creating one records what a version means; shipping it is a separate step, owned by intropy deploy pin <component> <version>.
The surface
Section titled “The surface”intropy release create <component> [flags]intropy release list <component> [flags]intropy release show <component> <version> [flags]In all three, the component is located by searching the GitOps repository for domains/*/*/<component>, so only the name is passed. If the name occurs under more than one domain or system, the error lists the candidates; disambiguate with --domain and --system.
intropy release create
Section titled “intropy release create”Resolve the image digests CI published for HEAD and record them, with the commit and generated notes, as an immutable release manifest in the registry: a versioned OCI manifest stored beside the component’s images. An annotated git tag (<component>/v<version>) is pushed alongside it; a tag-push failure is a warning rather than an error, because the OCI manifest is the release.
Run it inside the component’s source repository. The commit comes from HEAD and must be pushed, and the working tree must be clean under the component’s source paths (--allow-dirty waives the cleanliness check). Notes are generated from the component-scoped commits since the previous release this one descends from.
intropy release create order-extractor --version 1.4.2| Flag | Description |
|---|---|
--version <version> |
Version to publish. Required. |
-w, --watch |
Wait for the commit’s images to appear in the registry instead of failing immediately. No timeout: the wait ends when the image arrives or you interrupt it. |
--allow-dirty |
Release despite uncommitted changes under the component’s source paths. |
--domain <name> |
Disambiguate the component by domain. |
--system <name> |
Disambiguate the component by system. |
--gitops-repo <url> |
GitOps repository URL. Defaults to gitopsRepo from configuration, or INTROPY_GITOPS_REPO. |
-o, --output <format> |
plain (default) or json. |
If CI has not finished publishing the commit’s images, the command fails unless --watch is given. Re-running for a version that already exists is safe: an identical release is recognised and only a missing git tag is repaired; a different one is refused, because versions are immutable.
Whatever each environment was running, it still is — and because the version resolves the same commit, it resolves the same digests.
intropy release list
Section titled “intropy release list”List the versions released for a component, newest first, with the date each was cut, its source commit, and the first line of its notes. Pass one of those versions to release show to read the full manifest.
intropy release list order-extractor| Flag | Description |
|---|---|
--domain <name> |
Disambiguate the component by domain. |
--system <name> |
Disambiguate the component by system. |
--gitops-repo <url> |
GitOps repository URL. Defaults to gitopsRepo from configuration, or INTROPY_GITOPS_REPO. |
-o, --output <format> |
plain (default) or json. The JSON form adds total and each release’s full digest. |
Releases are read from the registry beside the component’s images, so this reports what is actually published rather than what git tags claim, in publication order. Anything in that repository that is not a readable release is skipped with a note on stderr, and a component that has never been released is reported as such rather than treated as an error. It changes no source repository, GitOps remote, or environment.
intropy release show
Section titled “intropy release show”Read the release manifest for a version and print what it records: the source commit, the pinned image digests, what the notes were measured against, and the notes themselves. Use it to sanity-check generated notes before deploying anything from the release.
intropy release show order-extractor 1.4.2| Flag | Description |
|---|---|
--domain <name> |
Disambiguate the component by domain. |
--system <name> |
Disambiguate the component by system. |
--gitops-repo <url> |
GitOps repository URL. Defaults to gitopsRepo from configuration, or INTROPY_GITOPS_REPO. |
-o, --output <format> |
plain (default) or json. json receives the manifest itself. |
The command verifies that the requested OCI tag and the manifest’s declared version agree. It changes no source repository, GitOps remote, or environment.