You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Desktop app releases publish a gateway image that crashes on the edge #185
The desktop app's release workflow still builds and pushes the edge gateway image, a job the standalone gateway repository took over in April.
The app's image runs the multi-command desktop binary, so the edge's gateway arguments fail to parse and the container exits within a second. Its latest push took down half the Datum Connect gateways at ten edge clusters on 10 and 11 September, until infra rolled the edge back to the July image.
Both repositories push to the same image name, and the app's copy reached the edge only this week because its image build had failed since July.
Done when
Releasing the desktop app publishes no edge gateway image
The gateway registry holds only standalone gateway builds, and the bad v0.1.4 tag is removed or replaced
Infra can turn automatic gateway updates back on without picking up a desktop build
The crashing container prints only a parse error and exits with code 2:
error: unexpected argument '--port' found
Usage: datum-connect [OPTIONS] <COMMAND>
The edge DaemonSet starts the gateway with --port 10000 --metrics-port 9090 --uds /var/run/datum-connect/iroh-gateway.sock --discovery hybrid --dns-origin datumconnect.net., the argument shape of the standalone binary. Infra dropped the gateway subcommand in April, when the gateway moved to its own repository (datum-cloud/infra@a73ac985c).
Two workflows push to ghcr.io/datum-cloud/iroh-gateway:
publish-docker.yml in datum-cloud/iroh-gateway builds the standalone iroh-gateway binary. The edge runs its v0.1.0.
manual-release.yml here, with publish_docker set, builds this repository's Dockerfile, which packages datum-connect with CMD ["gateway"], and tags it with the app version.
The v0.1.4 tag was pushed twice, at 20:29Z on 10 September and 03:48Z on 11 September, and the edge pulled both builds (digests afeb8d29 and 45a375a5). Both crash the same way. Every healthy gateway runs the v0.1.0 digest 4ae79bf3.
The app-built v0.1.4 tag (sha256:45a375a5) was deleted from GHCR. v0.1.4 now returns 404, and v0.1.0 and v0.1 still resolve to the gateway's own build, sha256:4ae79bf3.
The edge and edge-beta overlays stay pinned to v0.1.0 (datum-cloud/infra#5149). With v0.1.4 gone, the semver image policy resolves to v0.1.0 again, so image automation could be turned back on safely.
Still open:
The first v0.1.4 push, sha256:afeb8d29, may still be in the package as an untagged version. Nobody has confirmed it was deleted.
The package was first created from this repository, so it likely still grants datum-cloud/app write access under Manage Actions access. Removing that role is what stops an app workflow from pushing to the gateway's image again. A tag-based image policy can't tell the two publishers apart, because both use vX.Y.Z tags.
Tags v0.0.1 through v0.0.35 are app-era builds from before the gateway moved out in April. They were valid gateway images at the time and are left in place.
Activity
ecv commentedon Sep 11, 2026
Evidence, read-only, collected 2026-09-11.
The crashing container prints only a parse error and exits with code 2:
The edge DaemonSet starts the gateway with
--port 10000 --metrics-port 9090 --uds /var/run/datum-connect/iroh-gateway.sock --discovery hybrid --dns-origin datumconnect.net., the argument shape of the standalone binary. Infra dropped thegatewaysubcommand in April, when the gateway moved to its own repository (datum-cloud/infra@a73ac985c).Two workflows push to
ghcr.io/datum-cloud/iroh-gateway:publish-docker.ymlin datum-cloud/iroh-gateway builds the standaloneiroh-gatewaybinary. The edge runs its v0.1.0.manual-release.ymlhere, withpublish_dockerset, builds this repository'sDockerfile, which packagesdatum-connectwithCMD ["gateway"], and tags it with the app version.The v0.1.4 tag was pushed twice, at 20:29Z on 10 September and 03:48Z on 11 September, and the edge pulled both builds (digests
afeb8d29and45a375a5). Both crash the same way. Every healthy gateway runs the v0.1.0 digest4ae79bf3.Infra rollback: https://github.com/datum-cloud/infra/pull/5149
ecv commentedon Sep 11, 2026
Follow-up on 2026-09-11.
ghcr.io/datum-cloud/iroh-gateway.v0.1.4tag (sha256:45a375a5) was deleted from GHCR.v0.1.4now returns 404, andv0.1.0andv0.1still resolve to the gateway's own build,sha256:4ae79bf3.v0.1.0(datum-cloud/infra#5149). Withv0.1.4gone, the semver image policy resolves tov0.1.0again, so image automation could be turned back on safely.Still open:
v0.1.4push,sha256:afeb8d29, may still be in the package as an untagged version. Nobody has confirmed it was deleted.vX.Y.Ztags.v0.0.1throughv0.0.35are app-era builds from before the gateway moved out in April. They were valid gateway images at the time and are left in place.