Skip to content

V2.0.0/fix docker attestation - #8

Merged
gimlichael merged 2 commits into
mainfrom
v2.0.0/fix-docker-attestation
Aug 10, 2026
Merged

V2.0.0/fix docker attestation#8
gimlichael merged 2 commits into
mainfrom
v2.0.0/fix-docker-attestation

Conversation

@gimlichael

Copy link
Copy Markdown
Member

No description provided.

Adds optional attest_image parameter (default true) to allow operators to disable attestation as a fallback when registry support is unavailable. Includes docker login/logout steps in both staging and dockerhub attestation jobs, environment gates for production safety, and updates conditional logic for the promotion job to handle skipped attestation.
Documents that attestation is enabled by default and explains the attest_image fallback parameter for cases where registry attestation is unavailable. Clarifies how disabling attestation affects the release artifact and digest gates.
@gimlichael gimlichael self-assigned this Aug 10, 2026
@gimlichael
gimlichael merged commit 9dd816c into main Aug 10, 2026
5 checks passed
@gimlichael
gimlichael deleted the v2.0.0/fix-docker-attestation branch August 10, 2026 23:43
@greptile-apps

greptile-apps Bot commented Aug 10, 2026

Copy link
Copy Markdown

Greptile Summary

This PR adds an explicit attestation toggle, authenticates attestation jobs to their target registries, and permits Docker Hub promotion when attestations are deliberately disabled.

  • Adds the attest_image manual-dispatch input and propagates it through workflow job conditions.
  • Logs into Staging and Docker Hub before publishing provenance and SBOM attestations.
  • Documents the unattested-release fallback.
  • Adds environment bindings to the attestation jobs, including a second sequential Production deployment.

Confidence Score: 4/5

The release workflow should not be merged until the redundant post-publication Production approval is removed or intentionally incorporated into the documented release process.

Docker Hub promotion and its downstream attestation now create separate sequential deployments to the reviewer-protected Production environment, leaving the workflow waiting after the image has already been published unless an operator approves it again.

Files Needing Attention: .github/workflows/ci-pipeline.yml

Important Files Changed

Filename Overview
.github/workflows/ci-pipeline.yml Adds optional authenticated attestations, but the downstream Docker Hub attestation introduces a second Production approval after publication.
README.md Documents the new attestation fallback accurately, although its single-gate release description does not cover the new second approval.

Sequence Diagram

sequenceDiagram
    participant Operator
    participant Promote as Docker Hub promotion
    participant Production as Production environment
    participant Attest as Docker Hub attestation
    Operator->>Production: Approve promotion job
    Production->>Promote: Release job
    Promote->>Promote: Push image
    Promote->>Attest: Promotion succeeds
    Attest->>Production: Request separate deployment approval
    Operator->>Production: Approve attestation job
    Production->>Attest: Release job
    Attest->>Attest: Publish provenance and SBOM
Loading

Fix All in Codex

Prompt To Fix All With AI
### Issue 1
.github/workflows/ci-pipeline.yml:563
**Duplicate Production approval gate**

When `Production` requires reviewers as documented, `container_promote_dockerhub` first passes that environment’s approval and publishes the image, then this downstream job creates a separate Production deployment that requires another approval before provenance and SBOM attestations are published, leaving the release unattested and the workflow incomplete until a second approval occurs.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "💬 document attestation feature and rele..." | Re-trigger Greptile

name: attest-container-dockerhub
needs: [init, container_build, container_promote_dockerhub]
runs-on: ubuntu-24.04
environment: Production

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Duplicate Production approval gate

When Production requires reviewers as documented, container_promote_dockerhub first passes that environment’s approval and publishes the image, then this downstream job creates a separate Production deployment that requires another approval before provenance and SBOM attestations are published, leaving the release unattested and the workflow incomplete until a second approval occurs.

Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/ci-pipeline.yml
Line: 563

Comment:
**Duplicate Production approval gate**

When `Production` requires reviewers as documented, `container_promote_dockerhub` first passes that environment’s approval and publishes the image, then this downstream job creates a separate Production deployment that requires another approval before provenance and SBOM attestations are published, leaving the release unattested and the workflow incomplete until a second approval occurs.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Codex

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