From 43b44b06bfce6e1f2e2ac8d08ff2fbb7f9ac0e35 Mon Sep 17 00:00:00 2001 From: Bryan Frimin Date: Mon, 16 Feb 2026 17:41:43 +0100 Subject: [PATCH] Set fixed version of codesign + upgrade to docker v2 Signed-off-by: Bryan Frimin --- .github/workflows/release.yaml | 4 ++ .goreleaser.yaml | 86 +++++++++------------------------- Dockerfile | 3 +- 3 files changed, 29 insertions(+), 64 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 44b5d6f55..561d70520 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -64,6 +64,10 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - uses: sigstore/cosign-installer@053f9b74638557590800a301da1ba82351507e2c # v3.8.1 + with: + cosign-release: "v3.0.4" + - name: Run GoReleaser uses: goreleaser/goreleaser-action@e435ccd777264be153ace6237001ef4d979d3a7a # v6.4.0 with: diff --git a/.goreleaser.yaml b/.goreleaser.yaml index db8253f78..66416ae3b 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -78,17 +78,29 @@ signs: artifacts: checksum output: true -docker_manifests: - - name_template: "ghcr.io/getprobo/probo:{{ .Tag }}" - image_templates: - - "ghcr.io/getprobo/probo:{{ .Tag }}-amd64" - - "ghcr.io/getprobo/probo:{{ .Tag }}-arm64" - skip_push: "{{ .IsSnapshot }}" - - name_template: "ghcr.io/getprobo/probo:latest" - image_templates: - - "ghcr.io/getprobo/probo:latest-amd64" - - "ghcr.io/getprobo/probo:latest-arm64" - skip_push: "{{ .IsSnapshot }}" +dockers_v2: + - images: + - "ghcr.io/getprobo/probo" + tags: + - "{{ .Tag }}" + - latest + dockerfile: Dockerfile + ids: + - probod-docker + extra_files: + - entrypoint.sh + labels: + "org.opencontainers.image.title": "{{.ProjectName}}" + "org.opencontainers.image.description": "Probo compliance management platform" + "org.opencontainers.image.url": "https://github.com/getprobo/probo" + "org.opencontainers.image.source": "https://github.com/getprobo/probo" + "org.opencontainers.image.version": "{{.Version}}" + "org.opencontainers.image.created": '{{time "2006-01-02T15:04:05Z07:00"}}' + "org.opencontainers.image.revision": "{{.FullCommit}}" + "org.opencontainers.image.licenses": "MIT" + platforms: + - linux/amd64 + - linux/arm64 docker_signs: - id: images @@ -120,54 +132,6 @@ docker_signs: cosign sign "${artifact}@${digest}" --yes fi -dockers: - - image_templates: - - "ghcr.io/getprobo/probo:{{ .Tag }}-amd64" - - "ghcr.io/getprobo/probo:latest-amd64" - dockerfile: Dockerfile - use: buildx - build_flag_templates: - - "--platform=linux/amd64" - - "--label=org.opencontainers.image.title={{.ProjectName}}" - - "--label=org.opencontainers.image.description=Probo compliance management platform" - - "--label=org.opencontainers.image.url=https://github.com/getprobo/probo" - - "--label=org.opencontainers.image.source=https://github.com/getprobo/probo" - - "--label=org.opencontainers.image.version={{.Version}}" - - '--label=org.opencontainers.image.created={{time "2006-01-02T15:04:05Z07:00"}}' - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.licenses=MIT" - extra_files: - - entrypoint.sh - # Use the Docker-specific build with AMD64 filtering - ids: - - probod-docker - goos: linux - goarch: amd64 - skip_push: "{{ .IsSnapshot }}" - - image_templates: - - "ghcr.io/getprobo/probo:{{ .Tag }}-arm64" - - "ghcr.io/getprobo/probo:latest-arm64" - dockerfile: Dockerfile - use: buildx - build_flag_templates: - - "--platform=linux/arm64" - - "--label=org.opencontainers.image.title={{.ProjectName}}" - - "--label=org.opencontainers.image.description=Probo compliance management platform" - - "--label=org.opencontainers.image.url=https://github.com/getprobo/probo" - - "--label=org.opencontainers.image.source=https://github.com/getprobo/probo" - - "--label=org.opencontainers.image.version={{.Version}}" - - '--label=org.opencontainers.image.created={{time "2006-01-02T15:04:05Z07:00"}}' - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.licenses=MIT" - extra_files: - - entrypoint.sh - # Use the Docker-specific build with ARM64 filtering - ids: - - probod-docker - goos: linux - goarch: arm64 - skip_push: "{{ .IsSnapshot }}" - changelog: sort: asc filters: @@ -193,7 +157,3 @@ release: ## Docker Images - `ghcr.io/getprobo/probo:{{ .Tag }}` (multi-arch: linux/amd64, linux/arm64) - `ghcr.io/getprobo/probo:latest` (multi-arch: linux/amd64, linux/arm64) - - ### Architecture-specific images - - `ghcr.io/getprobo/probo:{{ .Tag }}-amd64` - - `ghcr.io/getprobo/probo:{{ .Tag }}-arm64` diff --git a/Dockerfile b/Dockerfile index 1b333418d..3741e5246 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,7 +11,8 @@ RUN useradd -m probo && \ apt-get install -y ca-certificates libcap2-bin && \ rm -rf /var/lib/apt/lists/* -COPY probod /usr/local/bin/probod +ARG TARGETPLATFORM +COPY $TARGETPLATFORM/probod /usr/local/bin/probod COPY entrypoint.sh /usr/local/bin/entrypoint.sh RUN chmod +x /usr/local/bin/probod && \