Skip to content

Commit de20f25

Browse files
upgrade to latest dependencies (#333)
bumping knative.dev/hack 6c30196...36b2b3c: > 36b2b3c add flag (# 224) > 547a2ca Start Signing our Releases (# 198) Signed-off-by: Knative Automation <[email protected]> Signed-off-by: Knative Automation <[email protected]>
1 parent 8dcf06a commit de20f25

File tree

5 files changed

+48
-5
lines changed

5 files changed

+48
-5
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ require (
66
github.com/spf13/cobra v1.3.0
77
gotest.tools/v3 v3.1.0
88
knative.dev/client v0.34.1-0.20220906114442-59948bb3723d
9-
knative.dev/hack v0.0.0-20220907111718-6c301965af4c
9+
knative.dev/hack v0.0.0-20220908170219-36b2b3c7a245
1010

1111
)
1212

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2174,8 +2174,8 @@ knative.dev/eventing v0.34.1-0.20220902060017-e1866d7660ee/go.mod h1:6UnNnPrEUNA
21742174
knative.dev/hack v0.0.0-20220815132133-e9a8475f4329/go.mod h1:t/azP8I/Cygaw+87O7rkAPrNRjCelmtfSzWzu/9TM7I=
21752175
knative.dev/hack v0.0.0-20220823140917-8d1e4ccf9dc3/go.mod h1:t/azP8I/Cygaw+87O7rkAPrNRjCelmtfSzWzu/9TM7I=
21762176
knative.dev/hack v0.0.0-20220902220419-664eac5c391e/go.mod h1:yk2OjGDsbEnQjfxdm0/HJKS2WqTLEFg/N6nUs6Rqx3Q=
2177-
knative.dev/hack v0.0.0-20220907111718-6c301965af4c h1:TTVBodIukkW7CUXSep9k/nc+nynXbjkBqXyYZxIS9Jw=
2178-
knative.dev/hack v0.0.0-20220907111718-6c301965af4c/go.mod h1:yk2OjGDsbEnQjfxdm0/HJKS2WqTLEFg/N6nUs6Rqx3Q=
2177+
knative.dev/hack v0.0.0-20220908170219-36b2b3c7a245 h1:VbG+uEhRW+t/xeq5G5/XazQrlbKmykJK1IeVfZMuyCQ=
2178+
knative.dev/hack v0.0.0-20220908170219-36b2b3c7a245/go.mod h1:yk2OjGDsbEnQjfxdm0/HJKS2WqTLEFg/N6nUs6Rqx3Q=
21792179
knative.dev/hack/schema v0.0.0-20220823140917-8d1e4ccf9dc3/go.mod h1:ffjwmdcrH5vN3mPhO8RrF2KfNnbHeCE2C60A+2cv3U0=
21802180
knative.dev/networking v0.0.0-20220831065816-215bac90b28b/go.mod h1:vMMT540KNAh6TWmpGEFnExTxJ/j9cee5qNV7Bs0kzUk=
21812181
knative.dev/pkg v0.0.0-20220818004048-4a03844c0b15/go.mod h1:YLjXbkQLlGHok+u0FLfMbBHFzY9WGu3GHhnrptoAy8I=
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI=
2+
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=

vendor/knative.dev/hack/release.sh

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ readonly REPO_UPSTREAM="https://github.com/${ORG_NAME}/${REPO_NAME}"
2929
readonly NIGHTLY_GCR="gcr.io/knative-nightly/github.com/${ORG_NAME}/${REPO_NAME}"
3030
readonly RELEASE_GCR="gcr.io/knative-releases/github.com/${ORG_NAME}/${REPO_NAME}"
3131

32+
# Signing identities for knative releases.
33+
readonly NIGHTLY_SIGNING_IDENTITY="[email protected]"
34+
readonly RELEASE_SIGNING_IDENTITY="[email protected]"
35+
3236
# Georeplicate images to {us,eu,asia}.gcr.io
3337
readonly GEO_REPLICATION=(us eu asia)
3438

@@ -94,11 +98,12 @@ RELEASE_NOTES=""
9498
RELEASE_BRANCH=""
9599
RELEASE_GCS_BUCKET="knative-nightly/${REPO_NAME}"
96100
RELEASE_DIR=""
97-
KO_FLAGS="-P --platform=all"
101+
KO_FLAGS="-P --platform=all --image-refs=imagerefs.txt"
98102
VALIDATION_TESTS="./test/presubmit-tests.sh"
99103
ARTIFACTS_TO_PUBLISH=""
100104
FROM_NIGHTLY_RELEASE=""
101105
FROM_NIGHTLY_RELEASE_GCS=""
106+
SIGNING_IDENTITY=""
102107
export KO_DOCKER_REPO="gcr.io/knative-nightly"
103108
# Build stripped binary to reduce size
104109
export GOFLAGS="-ldflags=-s -ldflags=-w"
@@ -301,6 +306,34 @@ function build_from_source() {
301306
if [[ $? -ne 0 ]]; then
302307
abort "error building the release"
303308
fi
309+
sign_release || abort "error signing the release"
310+
}
311+
312+
# Build a release from source.
313+
function sign_release() {
314+
if [ -z "$SIGN_IMAGES" ]; then # Temporary Feature Gate
315+
return 0
316+
fi
317+
## Sign the images with cosign
318+
## For now, check if ko has created imagerefs.txt file. In the future, missing image refs will break
319+
## the release for all jobs that publish images.
320+
if [[ -f "imagerefs.txt" ]]; then
321+
echo "Signing Images with the identity ${SIGNING_IDENTITY}"
322+
COSIGN_EXPERIMENTAL=1 cosign sign $(cat imagerefs.txt) --recursive --identity-token="$(
323+
gcloud auth print-identity-token --audiences=sigstore \
324+
--include-email \
325+
--impersonate-service-account="${SIGNING_IDENTITY}")"
326+
fi
327+
328+
## Check if there is checksums.txt file. If so, sign the checksum file
329+
if [[ -f "checksums.txt" ]]; then
330+
echo "Signing Images with the identity ${SIGNING_IDENTITY}"
331+
COSIGN_EXPERIMENTAL=1 cosign sign-blob checksums.txt --output-signature checksums.txt.sig --identity-token="$(
332+
gcloud auth print-identity-token --audiences=sigstore \
333+
--include-email \
334+
--impersonate-service-account="${SIGNING_IDENTITY}")"
335+
ARTIFACTS_TO_PUBLISH="${ARTIFACTS_TO_PUBLISH} checksums.txt.sig"
336+
fi
304337
}
305338

306339
# Copy tagged images from the nightly GCR to the release GCR, tagging them 'latest'.
@@ -375,10 +408,12 @@ function parse_flags() {
375408
;;
376409
--release-gcr)
377410
KO_DOCKER_REPO=$1
411+
SIGNING_IDENTITY=$RELEASE_SIGNING_IDENTITY
378412
has_gcr_flag=1
379413
;;
380414
--release-gcs)
381415
RELEASE_GCS_BUCKET=$1
416+
SIGNING_IDENTITY=$RELEASE_SIGNING_IDENTITY
382417
RELEASE_DIR=""
383418
has_gcs_flag=1
384419
;;
@@ -449,6 +484,11 @@ function parse_flags() {
449484
[[ -z "${RELEASE_DIR}" ]] && RELEASE_DIR="${REPO_ROOT_DIR}"
450485
fi
451486

487+
# Set signing identity for cosign, it would already be set to the RELEASE one if the release-gcr/release-gcs flags are set
488+
if [[ -z "${SIGNING_IDENTITY}" ]]; then
489+
SIGNING_IDENTITY="${NIGHTLY_SIGNING_IDENTITY}"
490+
fi
491+
452492
[[ -z "${RELEASE_GCS_BUCKET}" && -z "${RELEASE_DIR}" ]] && abort "--release-gcs or --release-dir must be used"
453493
if [[ -n "${RELEASE_DIR}" ]]; then
454494
mkdir -p "${RELEASE_DIR}" || abort "cannot create release dir '${RELEASE_DIR}'"
@@ -481,6 +521,7 @@ function parse_flags() {
481521
readonly RELEASE_DIR
482522
readonly VALIDATION_TESTS
483523
readonly FROM_NIGHTLY_RELEASE
524+
readonly SIGNING_IDENTITY
484525
}
485526

486527
# Run tests (unless --skip-tests was passed). Conveniently displays a banner indicating so.

vendor/modules.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ gotest.tools/v3/internal/source
3131
# knative.dev/client v0.34.1-0.20220906114442-59948bb3723d
3232
## explicit; go 1.18
3333
knative.dev/client/pkg/kn/plugin
34-
# knative.dev/hack v0.0.0-20220907111718-6c301965af4c
34+
# knative.dev/hack v0.0.0-20220908170219-36b2b3c7a245
3535
## explicit; go 1.18
3636
knative.dev/hack

0 commit comments

Comments
 (0)