Skip to content

feat(install): build + push ateom-gvisor image during kind bootstrap#67

Open
Davanum Srinivas (dims) wants to merge 1 commit into
agent-substrate:mainfrom
dims:feat/install-publish-ateom-image
Open

feat(install): build + push ateom-gvisor image during kind bootstrap#67
Davanum Srinivas (dims) wants to merge 1 commit into
agent-substrate:mainfrom
dims:feat/install-publish-ateom-image

Conversation

@dims
Copy link
Copy Markdown
Collaborator

@dims Davanum Srinivas (dims) commented May 23, 2026

ateom-gvisor is the per-worker-pod sidecar referenced via WorkerPool.spec.ateomImage.

Its source lives under cmd/ateom-gvisor, but no Deployment or DaemonSet manifest under manifests/ate-install/ references it. The ko resolve pipeline that builds every other binary therefore never builds ateom-gvisor.

After a fresh hack/install-ate-kind.sh --deploy-ate-system, operators creating a WorkerPool have to either:

  • run a packaged demo (whose template's ko:// reference side-effects the build), or
  • invoke ko publish ./cmd/ateom-gvisor by hand and substitute the resulting digest into their manifest.

Add publish_ateom_image to hack/install-ate.sh. It runs:

ko publish --base-import-paths ./cmd/ateom-gvisor

and writes the resulting <repo>@sha256:<digest> to .ate-kind/ateom-image.

Wiring:

  • Called from the end of deploy_ate_system when ATE_INSTALL_KIND=true.
  • Also exposed as --publish-ateom-image for standalone rebuilds.
  • .ate-kind/ added to .gitignore.

Davanum Srinivas (dims) added a commit to dims/openshell-driver-substrate that referenced this pull request May 23, 2026
Now that the three companion changes are filed upstream as
- NVIDIA/OpenShell#1548 (env-var-gated best-effort bootstrap)
- agent-substrate/substrate#66 (ateom-gvisor eth0 fix)
- agent-substrate/substrate#67 (install-ate.sh publishes ateom-gvisor)

rewrite the README + poc-intro.md to point at the PRs rather than at
specific commits or fork branches. Easier to follow for any reader
who isn't already deep in our local-fork state.

Also fold the operator-handshake follow-up into the §3 component table
and §9 "Where to next" list with the PR reference.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
ateom-gvisor is the per-worker-pod sidecar referenced via
WorkerPool.spec.ateomImage. Its source lives under cmd/ateom-gvisor
but it has no Deployment/DaemonSet manifest in manifests/ate-install/,
so the ko-resolve pipeline that builds every other binary never builds
it. Operators creating a WorkerPool after a fresh --deploy-ate-system
have to either run a packaged demo (its template's ko:// reference
side-effects the build) or invoke ko publish by hand.

Add publish_ateom_image() that runs ko publish --base-import-paths
./cmd/ateom-gvisor and writes the resulting <repo>@sha256:<digest> to
.ate-kind/ateom-image. Invoke it from the end of deploy_ate_system
when ATE_INSTALL_KIND=true, and expose --publish-ateom-image so the
image can be rebuilt alone after a code change. .ate-kind/ is
gitignored.

Non-kind installs are unaffected — operators retain control of their
own image-publishing flow against the cluster's registry.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
@dims Davanum Srinivas (dims) force-pushed the feat/install-publish-ateom-image branch from 7130289 to 515aa32 Compare May 23, 2026 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant