Tekton Pipeline release v0.34.0 "Caracal Ruby"
π Cloud Events for Runs, Overrides for TaskRuns, and lots of fixes π
-Docs @ v0.34.0
-Examples @ v0.34.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.34.0/release.yaml
Attestation
The Rekor UUID for this release is 1a84bc03f5f849d177185512d5578da724982ad33457852a1da2e93f259e7fb7
Obtain the attestation:
REKOR_UUID=1a84bc03f5f849d177185512d5578da724982ad33457852a1da2e93f259e7fb7
rekor-cli get --uuid $REKOR_UUID --format json | jq -r .Attestation | base64 --decode | jq
Verify that all container images in the attestation are in the release file:
RELEASE_FILE=https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.34.0/release.yaml
REKOR_UUID=1a84bc03f5f849d177185512d5578da724982ad33457852a1da2e93f259e7fb7
# Obtains the list of images with sha from the attestation
REKOR_ATTESTATION_IMAGES=$(rekor-cli get --uuid "$REKOR_UUID" --format json | jq -r .Attestation | base64 --decode | jq -r '.subject[]|.name + ":v0.34.0@sha256:" + .digest.sha256')
# Download the release file
curl "$RELEASE_FILE" > release.yaml
# For each image in the attestation, match it to the release file
for image in $REKOR_ATTESTATION_IMAGES; do
printf $image; grep -q $image release.yaml && echo " ===> ok" || echo " ===> no match";
done
Changes
Features
-
β¨ TEP-0090: Matrix - Context Variables (#4689)
Parameters
inMatrix
supportContext Variables
. Note thatMatrix
is not yet fully functional. -
β¨ Implement CloudEvents for Runs (#4663)
Tekton Pipelines can now generate CloudEvents for Runs.
This feature is disabled by default. It can by enable by setting a sink URL and flipping the new feature flag "send-cloudevents-for-runs" to "true" -
β¨ Add CloudEvents for Run definitions (#4659)
CloudEvents for Run have been defined, but they are not sent yet.
-
β¨ TEP-0090: Matrix - API Change and Feature Flag (#4600)
Added syntax support for
Matrix
as an alpha feature. It is still in a very early stage of development and is not yet fully functional. -
β¨ Implement Step and Sidecar Overrides for TaskRun (#4598)
-
β¨ Add functions to merge step/sidecar overrides (#4617)
Backwards incompatible changes
In current release:
-
π¨ Change Default Metrics Level for Taskrun and Pipelinerun (#4630)
The Level for taskrun and pipelinerun metrics will change in this release. By default, taskrun and pipelinerun metrics have these values:
metrics.taskrun.level: "task" metrics.taskrun.duration-type: "histogram" metrics.pipelinerun.level: "pipeline" metrics.pipelinerun.duration-type: "histogram"
-
π¨ If an annotation or label is present in both Pipeline and PipelineRun, the value in the Run type takes precedence (same for Task and TaskRun) (#4638)
Fixes
-
π TEP-0090: Add validation for PipelineTask context variables (#4684)
-
π Update getNextTasks to support Run retries (#4647)
schedule Runs with remaining retries
-
π Update IsFailure method to reflect Run retries (#4625)
Runs that have remaining retries are not failed
-
π set the param type based on the default value (#4608)
Set the type of the param based on the default value when the type is not specified or cannot be inferred from the default value.
-
π workspace-in-sidecar flakey test fix (#4634)
-
π Add log line to debg workspace-in-sidecar example (#4646)
-
π Fix Task(Run)/Pipeline(Run) metadata propagation (#4638)
Fix Task(Run)/Pipeline(Run) metadata propagation, If an annotation or label is present in both Pipeline and PipelineRun, the value in the
Run type takes precedence (same for Task and TaskRun) -
π Change Default Metrics Level for Taskrun and Pipelinerun (#4630)
The Level for taskrun and pipelinerun metrics will change in this release. By default, taskrun and pipelinerun metrics have these values:
metrics.taskrun.level: "task" metrics.taskrun.duration-type: "histogram" metrics.pipelinerun.level: "pipeline" metrics.pipelinerun.duration-type: "histogram"
Misc
-
π¨ refactor reconcile pipeline TaskSpecMetadata test (#4693)
-
π¨ refactor create helpers in reconcile pr tests (#4682)
-
π¨ TEP-0090: Refactor Pipeline Workspaces Validation (#4670)
-
π¨ clean up reconcile unit test to use YAML parser (#4637)
-
π¨ test reconcile on cancelled refactor (#4628)
-
π¨ refactor TestReconcile_PipelineSpecTaskSpec result (#4627)
-
π¨ TEP-0058: Graceful Termination - is deprecated (#4612)
Reminder that
PipelineRunCancelled
was deprecated in v0.25. Earliest removal date is March 2022. -
π¨ Build tekton pipelines with golang 1.17 (#4639)
Tekton is now built using golang 1.17.7
-
π¨ PipelineRunState cleanup: tests + comments (#4667)
-
π¨ Remove unused windows dockerfiles (#4644)
-
π¨ cleanup - refactor taskRunStatus and runStatus unit tests (#4632)
-
π¨ Replace remaining implementations of TestClock (#4624)
-
π¨ refactor TestReconcile_PipelineSpecTaskSpec objects (#4622)
-
π¨ clean up TestReconcile_CloudEvents YAML parsing (#4619)
-
π¨ cleaning up a unit test InvalidPipelineRuns to use YAML parser (#4616)
-
π¨ Replace Clock package with k8s Clock package (#4607)
-
π¨ Remove broken link in development doc (#4602)
-
π¨ Add GetStatusCondition for Run (#4658)
-
π¨ TEP-0090: Pipeline Context Variables - Fix Validation Tests (#4685)
-
π¨ Add hostAliases to podTemplate doc (#4683)
-
π¨ go.mod: bump containerd dependency to 1.5.10 (#4649)
-
π¨ TEP-0090: Refactor execution status validation (#4635)
-
π¨ Remove lengthly operations from hermetic tests π§ͺ (#4590)
Docs
-
π TEP-0090: Matrix - Update API definition (#4601)
-
π Update the release cheatsheet to the new release drafter (#4677)
-
π Update API reference docs for TaskRun (#4662)
-
π Add links to docs and examples for 4 minor releases (#4650)
-
π Add links to docs and examples for v0.33.0 (#4595)
-
π Update taskrun code example links in the documentation (#4692)
Thanks
Thanks to these contributors who contributed to v0.34.0!
- β€οΈ @Yongxuanzhang
- β€οΈ @afrittoli
- β€οΈ @arshchimni
- β€οΈ @bobcatfish
- β€οΈ @jbpratt
- β€οΈ @jerop
- β€οΈ @khrm
- β€οΈ @lbernick
- β€οΈ @pritidesai
- β€οΈ @sbwsg
- β€οΈ @vdemeester
- β€οΈ @xchapter7x
Extra shout-out for awesome release notes:
- π @afrittoli
- π @arshchimni
- π @jbpratt
- π @jerop
- π @khrm
- π @lbernick
- π @pritidesai
- π @sbwsg
- π @vdemeester
- π @xchapter7x