Tekton Pipeline release v0.21.0 "Savannah Ash"
π WhenExpressions and Results in Finally Tasks π
-Docs @ v0.21.0
-Examples @ v0.21.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.21.0/release.yaml
Upgrade Notices
- Requires Kubernetes 1.17+ to run
- The controller now requires that the SYSTEM_NAMESPACE environment variable is set. This was set by default before, but is now required.
Features
-
β¨ WhenExpressions in Finally Tasks (#3738)
WhenExpressions are supported in Finally Tasks not only to provide efficient guarded execution but also to improve the
reusability ofTasks
inFinally
-
β¨ Allow pipeline results to use custom task results (#3694)
Pipeline results now can refer to pipeline tasks that run custom tasks and produce results.
-
β¨ Support multiple secrets of type dockercfg and dockerconfigjson (#3659)
Adds support for multiple secrets of type dockercfg or dockerconfigjson
-
β¨ add sparse checkout to git (#3646)
-
β¨ Implement Pending PipelineRun status (TEP-0015) (#3522)
Added PipelineRunPending setting to PipelineRun Spec Status to allow creating PipelineRuns in a Pending state.
-
β¨ consuming task results in finally (#3242)
Final tasks can be configured to consume
results
ofPipelineTasks
fromtasks
section.
Deprecation Notices
N/A
Backwards incompatible changes
N/A
Fixes
-
π Make volume mount names RFC1123 DNS label strict (#3740)
Fixed a bug where a secret name with dots (e.g.
gcr.io
) led to a TaskRun creation failure, because the secret name was used internally as part of a volume mount name. These volume mount name have the be RFC1123 DNS label conform and therefore disallow dots as part of the name. -
π Validate Context Variables in Finally Tasks (#3733)
Added validation for Context variables in Finally Tasks
-
π Change to use the FilteredPodInformer to only watch Tekton relevant pods (#3725)
Performance improvement: Only watch Pods managed by Tekton, instead of all Pods on the cluster
-
π Fix duplicate Pods when TaskRun or Pod labels are changed (#3708)
Fix duplicate Pods when TaskRun or Pod labels are changed
-
π Fix stuck PipelineRun caused by optional workspace (#3702)
Fixed bug where PipelineRun that didn't provide an optional workspace to the Pipeline would stall until timing out.
-
π taskrun: fix log message (#3689)
-
π Fix bug where step status ordering did not match step container ordering (#3679)
Fixed bug where sorted order of step statuses did not match order of step containers.
-
π set task as failed (#3571)
Declare task failure when it hits
CreateContainerConfigError
instead of setting it to unknown i.e. running. -
π Move resolution of Pipeline Results to end of completed/successful reconcile (#3684)
Misc
-
π¨ Use crane cp to move images, instead of gcloud (#3755)
Release: Copy and re-tag images using crane, instead of gcloud
-
π¨ Update TOC in Pipelines documentation (#3743)
-
π¨ Refactor IsFinallySkipped Tests (#3729)
-
π¨ Document deprecation of the build-gcs PipelineResource type (#3728)
Deprecate the build-gcs sub-type of the storage PipelineResource
-
π¨ bump deps - k8s to 1.19.7 (#3724)
-
π¨ Remove pkg/system. (#3177)
The controller now requires that the SYSTEM_NAMESPACE environment variable is set. This was set by default before, but is now required.
-
π¨ tekton controller logger key (#3752)
The controller logger key is now set to "tekton-pipelines-controller" instead of "tekton" which is consistent with the webhook service name "tekton-pipelines-webhook".
-
π¨ promoting webhook service name in the logger (#3741)
Promoting webhook service name in the logger instead of always defaulting to "webhook-pipeline". The service name is read from the env. variable
WEBHOOK_SERVICE_NAME
if specified else defaults to "tekton-pipelines-webhook" -
π¨ Add nonroot user to pipeline's build-base image (#3727)
Added non-root user 65532 to pipelines' build-base image. Git-init can now be used to clone repositories as a non-root user.
-
π¨ release: publish only on a given list of platforms π» (#3717)
Publish images for a finite list of architecture instead of all the one supported by base images. The current list is : linux/amd64 (supported) and linux/arm64, linux/s390x, linux/ppc64le.
-
π¨ Validate dependencies between resolved resources in a PipelineRun (#3711)
Added extra validations before PipelineRun can start: all result variables in the Pipeline must be valid and optional workspaces from a pipeline can only be passed to tasks expecting optional workspaces.
-
π¨ Fix replace go mod of client-go (#3668)
-
π¨ Use main branch for community repository π§ (#3747)
-
π¨ bump ggcr & k8schain module versions (#3736)
-
π¨ Add kustomize.yaml to the Tekton folder (#3754)
-
π¨ Small updates for s390x tests (#3714)
-
π¨ Ignore generated openapi code when running golangci-lint (#3685)
-
π¨ adding unit tests for pipelineTaskList.Deps (#3597)
-
π¨ Fix TestPipelineLevelFinally_OneDAGTaskFailed test to avoid false negative error (#3722)
-
π¨ Skip the dropNetworking test if it doesn't have the correct privileges. (#3653)
Docs
-
π Correct workspace doc on behaviour of mountPath (#3719)
Fixed doc issue: relative workspace mountPaths are not prepended with "/workspace/" and never have been.
-
π Fix typo in auth.md (#3709)
-
π Update taskruns.md doc (#3696)
Fix wrong path in the taskruns.md document.
-
π Fix the broken link of pipeline previous yaml file (#3671)
-
π updating doc - pipelineResult referencing results of a finally task (#3753)
-
π Add docs about cloud events structure (#3735)
-
π Add comment to PipelineRunSpecStatusPending (#3723)
-
π updating readme with 0.20.1 (#3698)
-
π Add link to docs and exmples for v0.20.0 (#3686)
Thanks
Thanks to these contributors who contributed to v0.21.0!
- β€οΈ @GregDritschler
- β€οΈ @HeavyWombat
- β€οΈ @imjasonh
- β€οΈ @LinuxSuRen
- β€οΈ @SaschaSchwarze0
- β€οΈ @Tomy2e
- β€οΈ @a-rothwell
- β€οΈ @afrittoli
- β€οΈ @barthy1
- β€οΈ @dlorenc
- β€οΈ @dprotaso
- β€οΈ @howardjohn
- β€οΈ @jbarrick-mesosphere
- β€οΈ @jerop
- β€οΈ @pritidesai
- β€οΈ @qu1queee
- β€οΈ @sbwsg
- β€οΈ @souleb
- β€οΈ @vdemeester
- β€οΈ @zhangtbj
- β€οΈ @zhouhaibing089
Extra shout-out for awesome release notes:
- π @GregDritschler
- π @HeavyWombat
- π @imjasonh
- π @LinuxSuRen
- π @SaschaSchwarze0
- π @Tomy2e
- π @a-rothwell
- π @dlorenc
- π @dprotaso
- π @howardjohn
- π @jbarrick-mesosphere
- π @jerop
- π @pritidesai
- π @qu1queee
- π @sbwsg
- π @souleb
- π @vdemeester
- π @zhangtbj
- π @zhouhaibing089