-
Notifications
You must be signed in to change notification settings - Fork 0
push docker images to public ECR #37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughDocumentation comments updated in two proto files to clarify that the images field keys represent registry identifiers (e.g., "ghcr", "ecrPublic") rather than platform identifiers (e.g., "linux-amd64"). No functional changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Organization UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (6)
📒 Files selected for processing (2)
🔇 Additional comments (2)
Comment |
| GITHUB_TOKEN: ${{ secrets.RELENG_GITHUB_TOKEN }} | ||
| COSIGN_EXPERIMENTAL: "1" | ||
|
|
||
| - name: Configure Lambda ECR AWS credentials via OIDC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in the future i may try to separate out the lambda vs oci into two different gh jobs, however last time i tried there were a bunch of issues with conditional logic for subsequent jobs running if no fails
| env: | ||
| REPO_NAME: ${{ github.event.repository.name }} | ||
| DOCKERFILE_PATH: ../_workflows/Dockerfile | ||
| DIST_DIR: dist/oci |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
have to build the artifacts in different (sub)directories to avoid issues with overwriting/cleaning assets that we need at the end for extracting digests. chose sub directories since dist/ is already in gitignore for the callers
| envsubst '$REPO_NAME' < _workflows/templates/.Dockerfile-lambda-template > _workflows/Dockerfile.lambda | ||
| echo "Generated Dockerfile.lambda:" | ||
| cat _workflows/Dockerfile.lambda | ||
| echo "Generated Dockerfile.lambda:"; cat _workflows/Dockerfile.lambda |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe printf this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i actually change this in the next PR to use envsubst and tee: https://github.com/ConductorOne/github-workflows/pull/39/changes#diff-e426ed45842837026e10e66af23d9c7077e89eacbe6958ce7cb991130ad05adaR354
lmk if you have thoughts on a better way
always build and push docker images to the conductorone public ECR (https://gallery.ecr.aws/conductorone) so that customers can access images without requiring auth creds. note this doesn't remove steps for pushing images to GHCR, which could be removed at a future point in time.
testing:
note: current implementations includes buildx-generated attestation-manifest entries (SPDX + SLSA v0.2) for the images, so the cmd above lists two "unknown" os/arch and digests representing the attestation manifests for each platform digest. in a follow up PR we'll replace with cosign attest (SPDX + SLSA v1).
successful release runs:
https://github.com/ConductorOne/baton-github-test/actions/runs/20347953676
https://gallery.ecr.aws/conductorone/baton-github-test