@@ -69,30 +69,53 @@ jobs:
6969 - name : Install cosign
7070 uses : sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad # v4.0.0
7171
72- - name : Sign artifacts with Sigstore (keyless)
72+ - name : Locate built binaries
73+ id : binaries
7374 run : |
74- # Sign Go binaries
75- for bin in dist/stepsecurity-dev-machine-guard_darwin_*/stepsecurity-dev-machine-guard; do
76- cosign sign-blob "$bin" --bundle "${bin}.bundle" --yes
75+ # GoReleaser keeps binaries in build subdirs (e.g. _amd64_v1, _arm64_v8.0)
76+ AMD64=$(find dist -type f -name 'stepsecurity-dev-machine-guard' -path '*darwin_amd64*' | head -1)
77+ ARM64=$(find dist -type f -name 'stepsecurity-dev-machine-guard' -path '*darwin_arm64*' | head -1)
78+
79+ for label in "amd64:${AMD64}" "arm64:${ARM64}"; do
80+ name="${label%%:*}"
81+ path="${label#*:}"
82+ if [ -z "$path" ] || [ ! -f "$path" ]; then
83+ echo "::error::Binary not found for ${name}"
84+ echo "dist/ contents:"
85+ find dist -type f
86+ exit 1
87+ fi
7788 done
78- # Sign shell script
89+
90+ echo "amd64=${AMD64}" >> "$GITHUB_OUTPUT"
91+ echo "arm64=${ARM64}" >> "$GITHUB_OUTPUT"
92+ echo "Found amd64: ${AMD64}"
93+ echo "Found arm64: ${ARM64}"
94+
95+ - name : Sign artifacts with Sigstore (keyless)
96+ run : |
97+ cosign sign-blob "${{ steps.binaries.outputs.amd64 }}" \
98+ --bundle dist/stepsecurity-dev-machine-guard_darwin_amd64.bundle --yes
99+ cosign sign-blob "${{ steps.binaries.outputs.arm64 }}" \
100+ --bundle dist/stepsecurity-dev-machine-guard_darwin_arm64.bundle --yes
79101 cosign sign-blob stepsecurity-dev-machine-guard.sh \
80- --bundle stepsecurity-dev-machine-guard.sh.bundle --yes
102+ --bundle dist/ stepsecurity-dev-machine-guard.sh.bundle --yes
81103
82104 - name : Generate checksums
83105 run : |
84- cd dist
85- sha256sum stepsecurity-dev-machine-guard_darwin_*/stepsecurity-dev-machine-guard >> stepsecurity-dev-machine-guard_ ${{ steps.version .outputs.version }}_SHA256SUMS
86- cd ..
87- sha256sum stepsecurity-dev-machine-guard.sh >> dist/stepsecurity-dev-machine-guard_${{ steps.version.outputs.version }}_SHA256SUMS
106+ SUMS=" dist/stepsecurity-dev-machine-guard_${{ steps.version.outputs.version }}_SHA256SUMS"
107+ sha256sum " ${{ steps.binaries .outputs.amd64 }}" >> "$SUMS"
108+ sha256sum "${{ steps.binaries.outputs.arm64 }}" >> "$SUMS"
109+ sha256sum stepsecurity-dev-machine-guard.sh >> "$SUMS"
88110
89111 - name : Upload signature bundles and checksums to release
90112 env :
91113 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
92114 run : |
93115 gh release upload "${{ steps.version.outputs.tag }}" \
94- dist/stepsecurity-dev-machine-guard_darwin_*/stepsecurity-dev-machine-guard.bundle \
95- stepsecurity-dev-machine-guard.sh.bundle \
116+ dist/stepsecurity-dev-machine-guard_darwin_amd64.bundle \
117+ dist/stepsecurity-dev-machine-guard_darwin_arm64.bundle \
118+ dist/stepsecurity-dev-machine-guard.sh.bundle \
96119 dist/stepsecurity-dev-machine-guard_${{ steps.version.outputs.version }}_SHA256SUMS \
97120 --clobber
98121
@@ -109,6 +132,6 @@ jobs:
109132 uses : actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0
110133 with :
111134 subject-path : |
112- dist/stepsecurity-dev-machine-guard_darwin_amd64_v1/stepsecurity-dev-machine-guard
113- dist/stepsecurity-dev-machine-guard_darwin_arm64_v1/stepsecurity-dev-machine-guard
135+ ${{ steps.binaries.outputs.amd64 }}
136+ ${{ steps.binaries.outputs.arm64 }}
114137 stepsecurity-dev-machine-guard.sh
0 commit comments