Skip to content

Commit d4bb88e

Browse files
authored
Merge pull request #189 from crazy-max/cosign-fix-cache-signing
build/bake: use signing config for GHA cache signing
2 parents 5840c33 + 97f3a0c commit d4bb88e

2 files changed

Lines changed: 34 additions & 10 deletions

File tree

.github/workflows/bake.yml

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -555,21 +555,33 @@ jobs:
555555
set -e
556556
557557
# Create temporary files
558-
out_file=$(mktemp)
559-
in_file=$(mktemp)
560-
trap 'rm -f "$in_file" "$out_file"' EXIT
558+
tmp_dir=$(mktemp -d)
559+
out_file="$tmp_dir/bundle"
560+
in_file="$tmp_dir/blob"
561+
signing_config="$tmp_dir/signing-config.json"
562+
trap 'rm -rf "$tmp_dir"' EXIT
561563
cat > "$in_file"
562564
565+
no_default_rekor=
566+
if [ "${{ needs.prepare.outputs.privateRepo }}" = "true" ]; then
567+
no_default_rekor="--no-default-rekor=true"
568+
fi
569+
563570
set -x
564571
572+
# Create signing config
573+
COSIGN_EXPERIMENTAL=1 cosign signing-config create \
574+
--with-default-services=true \
575+
${no_default_rekor:+$no_default_rekor} \
576+
--out="$signing_config"
577+
565578
# Sign with cosign
566579
cosign sign-blob \
567580
--yes \
568581
--oidc-provider github-actions \
569582
--new-bundle-format \
570-
--use-signing-config \
583+
--signing-config "$signing_config" \
571584
--bundle "$out_file" \
572-
--tlog-upload=${{ needs.prepare.outputs.privateRepo == 'false' }} \
573585
"$in_file"
574586
575587
# Output bundle to stdout

.github/workflows/build.yml

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -447,21 +447,33 @@ jobs:
447447
set -e
448448
449449
# Create temporary files
450-
out_file=$(mktemp)
451-
in_file=$(mktemp)
452-
trap 'rm -f "$in_file" "$out_file"' EXIT
450+
tmp_dir=$(mktemp -d)
451+
out_file="$tmp_dir/bundle"
452+
in_file="$tmp_dir/blob"
453+
signing_config="$tmp_dir/signing-config.json"
454+
trap 'rm -rf "$tmp_dir"' EXIT
453455
cat > "$in_file"
454456
457+
no_default_rekor=
458+
if [ "${{ needs.prepare.outputs.privateRepo }}" = "true" ]; then
459+
no_default_rekor="--no-default-rekor=true"
460+
fi
461+
455462
set -x
456463
464+
# Create signing config
465+
COSIGN_EXPERIMENTAL=1 cosign signing-config create \
466+
--with-default-services=true \
467+
${no_default_rekor:+$no_default_rekor} \
468+
--out="$signing_config"
469+
457470
# Sign with cosign
458471
cosign sign-blob \
459472
--yes \
460473
--oidc-provider github-actions \
461474
--new-bundle-format \
462-
--use-signing-config \
475+
--signing-config "$signing_config" \
463476
--bundle "$out_file" \
464-
--tlog-upload=${{ needs.prepare.outputs.privateRepo == 'false' }} \
465477
"$in_file"
466478
467479
# Output bundle to stdout

0 commit comments

Comments
 (0)