Skip to content

feat(ci): build+push BOTH worker images and register their artifacts - #12

Merged
sebasnallar merged 5 commits into
mainfrom
feat/register-release-artifact
Sep 1, 2026
Merged

feat(ci): build+push BOTH worker images and register their artifacts#12
sebasnallar merged 5 commits into
mainfrom
feat/register-release-artifact

Conversation

@sebasnallar

@sebasnallar sebasnallar commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Images: public.ecr.aws/nullplatform/services/rds-postgres-server and …/services/rds-postgres-db (one version, two images — the db image adds postgresql16-client) · Role: github-actions-services-postgresql-rds-publisher (allowed on both)

Adopts the release-publish-oci chain (same as scopes-lambda): release-please cuts the version and the same run builds the multi-arch worker image, pushes it to ECR Public, registers the oci_image artifact by digest, and finalizes the release with the artifact table. The ECR repository + publisher role were provisioned by Pao in iac-null-runtime#109.

Dockerfile follows the scopes-lambda worker pattern: worker-bridge base, the tooling this service actually calls, service baked at /app/pkg with the bridge pointed at its entrypoint.

Repo configuration required

Kind Name Value
Secret AWS_ROLE_ARN_ECR_PUSH the publisher role ARN (see PR text)
Secret ARTIFACT_NP_API_KEY nullplatform API key allowed to register artifacts
Variable NP_ARTIFACT_NRN owner NRN for the artifact, e.g. organization=4

🤖 Generated with Claude Code

One repo, two services, one chained run: release-please cuts the version
once; the release-publish-oci chain builds/pushes/registers
services/rds-postgres-server, and a parallel job pair does the same for
services/rds-postgres-db against the same tag (both ECR Public repos
provisioned in iac-null-runtime#109). The release ends with both
artifact tables.

Dockerfiles follow the scopes-lambda worker pattern (worker-bridge base,
aws-cli/gomplate/OpenTofu 1.10.10); the db image adds
postgresql16-client for the psql-driven provisioning scripts.

Requires: secrets AWS_ROLE_ARN_ECR_PUSH
(github-actions-services-postgresql-rds-publisher role, allowed on both
images) + ARTIFACT_NP_API_KEY, variable NP_ARTIFACT_NRN.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@sebasnallar
sebasnallar force-pushed the feat/register-release-artifact branch from 8582d4b to a5258c8 Compare September 1, 2026 16:36
Comment thread Dockerfile.rds-postgres-db Fixed
Comment thread Dockerfile.rds-postgres-server Fixed
@@ -0,0 +1,18 @@
# syntax=docker/dockerfile:1
@@ -0,0 +1,19 @@
# syntax=docker/dockerfile:1
@sebasnallar sebasnallar changed the title feat(ci): register a git_repository artifact on every release feat(ci): build+push BOTH worker images and register their artifacts Sep 1, 2026
sebasnallar and others added 4 commits September 1, 2026 13:38
…ation

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
NULLPLATFORM_API_KEY serves a different purpose in these repos; the
artifact key is dedicated, same convention as scopes-lambda.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…by design

Same documented suppression scopes-lambda carries; the runtime user is
the agent's worker-pod securityContext concern, not a Dockerfile USER.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@sebasnallar
sebasnallar merged commit 3c6c0be into main Sep 1, 2026
6 checks passed
@sebasnallar
sebasnallar deleted the feat/register-release-artifact branch September 1, 2026 17:15
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.

2 participants