Releases: tektoncd/pipeline
Tekton Pipeline release v0.26.0 "Scottish Fold Doraemon"
π Debugging taskRuns and Merging podTemplates with default π
-Docs @ v0.26.0
-Examples @ v0.26.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.26.0/release.yaml
Upgrade Notices
N/A
Features
- β¨ Merge *Run's PodTemplate with Default π§ (#4057)
TaskRun and PipelineRun's PodTemplate are now merge with the default PodTemplate. This means any field that is not specified in a TaskRun or PipelineRun's PodTemplate will come from the configured default PodTemplate (if defined).
-
β¨ Add debug with breakpoint onFailure to TaskRun Spec (#3857)
- Add -breakpoint_on_failure to entrypointer which disables exit of container upon failure
- Add debug helper scripts to /tekton/debug/scripts
- Add /tekton/debug/info/ mount which is used by helper scripts to understand which step they are running in where denotes the step number. First step = 0, Second step = 1 and so on.
Deprecation Notices
N/A
Backwards incompatible changes
N/A
Fixes
- π Set HOME=/tekton/home for GCS PipelineResources (#4081)
Fixed bug where GCS PipelineResource failed to upload unless HOME="/tekton/home" was explicitly set in task's pod template.
- π Fix the cp command in the release publish task (#4051)
Misc
- π¨ Set fake AWS credentials on controller to workaround aws-sdk bug (#4073)
Work around a bug in the AWS go SDK that causes extremely long delays in task startup times.
- π¨ Update knative/pkg to v0.23 and k8s.io to v0.20.7 (#4044)
Bump k8s.io and knative dependencies to v0.20.7 and v0.23.0 respectively, taking latest fixes and features in.
-
π¨ cleaning up task results constant (#4070)
-
π¨ Replace tmpfile with scriptfile in script init container (#4041)
Docs
-
π Updates to pipeline tutorial to handle skaffold Dockerfile and keep the yq syntax working (#4058)
- Updated kaniko executor image to latest
- Added --build-arg=BASE=alpine:3 to have kaniko correctly handle the skaffold leeroy-web Dockerfile (had the issue described in GoogleContainerTools/kaniko#1271 before)
- Changed mikefarah/yq image to 3.4.1 (the latest working with the provided command) in deploy-using-kubectl task to get this working (ver. 4 changed the syntax completely: https://mikefarah.gitbook.io/yq/upgrading-from-v3, so the command gave a syntax error)
-
π Add v0.25.0 to the README (#4043)
-
π Update comment on RunControllerName const (#4065)
-
π Adjust weight in hermetic.md (#4056)
-
π Fix broken link (#4054)
-
π docs: update metrics name (#3945)
Thanks
Thanks to these contributors who contributed to v0.26.0!
- β€οΈ @afrittoli
- β€οΈ @eliasnorrby
- β€οΈ @ggalloro
- β€οΈ @jerop
- β€οΈ @pritidesai
- β€οΈ @pugangxa
- β€οΈ @sbwsg
- β€οΈ @vdemeester
- β€οΈ @waveywaves
- β€οΈ @zhouhaibing089
Extra shout-out for awesome release notes:
- π @ggalloro
- π @jerop
- π @sbwsg
- π @vdemeester
- π @waveywaves
Tekton Pipeline release v0.25.0 "Black-Footed Throb"
π Hermetic Execution, Embedded Custom Tasks and Graceful Termination & Timeouts π
-Docs @ v0.25.0
-Examples @ v0.25.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.25.0/release.yaml
Upgrade Notices
N/A
Features
-
β¨ Add ConfigMap which can contain pipelines info and RBAC to access this ConfigMap (#3971)
-
β¨ Add support for experimental hermetic execution mode to TaskRuns (#3956)
Add support for experimental hermetic execution mode to TaskRuns
-
β¨ Graceful Pipeline Run Termination (#3915)
The new PipelineRun spec statuses have been added to control the way who a PipelineRun is being canceled or stopped.
- "StoppedRunFinally" - To stop (i.e. let the tasks complete, then execute finally tasks) a PipelineRun
- "CancelledRunFinally" - To cancel (i.e. interrupt any executing non finally tasks, then execute finally tasks)
- "Cancelled" - replaces today's "PipelineRunCancelled" - i.e. interrupt any executing tasks without running finally tasks
Support for existing statuses has been left unchanged. The status "PipelineRunCancelled" is deprecated and replaced by "Cancelled" (it would be removed in v1). The new states are released as alpha API features. Read more in TEP#0058.
-
β¨ TEP-0061, Allow custom task to be embedded. (#3901)
It is now possible to embed the spec of a custom task in a Run resource, whether stand-alone or embedded in a Pipeline.
- API changes, This PR adds new APIs i.e. adds a field
Spec *EmbeddedRunSpec
toRunSpec
- An embedded task will accepts new field
Spec
with typeruntime.RawExtension
in addition to
ApiVersion
andKind
fields of type string (as part ofruntime.TypeMeta
) - Validation changes, in addition to adding support for
Run.RunSpec.Spec
the validations will be changed
to support "One ofRun.RunSpec.Spec
orRun.RunSpec.Ref
" only and not both as part of a single
API request to kubernetes.
action required: Developers of custom controllers (existing and new), who would like to support
embedded spec for their custom task, need to implement the logic required to extract, validate
and use the custom task spec from the new RunSpec.Spec field. Please review the documentation
on upgrading, for more details and some examples. - API changes, This PR adds new APIs i.e. adds a field
-
β¨ Add a Timeouts optional field to pipelinerun (#3843)
- API changes
- Added field Timeouts to PipelineRun spec. It is a dict with the following sub-fields
- pipeline, to control the pipeline failure timeout
- tasks, to control the pipeline tasks failure timeout
- finally, to control the pipeline finally tasks failure timeout
- Added field Timeouts to PipelineRun spec. It is a dict with the following sub-fields
- Changes in behavior
- When supplied, a timeouts field combination permits deciding which part of the pipeline runtime is allocated to tasks and finally tasks.
- API changes
-
β¨ Add variables context.pipelineTask.retries and context.task.retry-count (#3770)
Deprecation Notices
-
π¨ "PipelineRunCancelled" is deprecated
The status "PipelineRunCancelled" is deprecated and replaced by "Cancelled" (it would be removed in v1) (#3915)
Backwards incompatible changes
N/A
Fixes
-
π Fix Windows image entrypoint paths for parity with Linux (#4018)
-
π A custom task check could be true, even though the Provided Spec is invalid. (#4005)
-
π Fix Workspaces in Sidecar to be serialized as workspaces not Workspaces (#3966)
-
π Encode scripts as base 64 to avoid k8s mangling 40 (#3963)
Scripts in Tasks are now written into the Task's pod using base64 to avoid kubernetes' built-in arg processing. This means they're a little larger than they were prior to this release but otherwise should continue working as expected.
-
π Only fetch the definitions once π§ (#3941)
Only fetch the definition once, and then used the spec stored in the status as source of truth.
This reduce the probable race condition when aPipelineRun
or aTaskRun
refers to aPipeline
orTask
that changes during its execution. -
π Skip heavy validation on deletion π (#3937)
Skip heavy validation on deletion in the webhook
-
π Validate run for both ref and spec as nil. (#3977)
Misc
-
π¨ Revert Fix issue with 69 in Script blocks (#3938)
Revert fix for instances of "$$" in script blocks. Kubernetes replaces "$$" with a single "$" and your scripts need to deal appropriately with these instances.
-
π¨ Cleanup integraton tests for multi-arch case (#3998)
-
π¨ Fix list of proposed kind labels for PRs (#3987)
-
π¨ Use tektoncd/results repo for git-init symbolic ref tests (#4038)
-
π¨ Add Dockerfiles for Windows entrypoint and nop images (#3996)
-
π¨ Add hermetic test running as non-root user (#3973)
-
π¨ Change the way we run e2e tests with feature gates in pipelines (#3930)
Docs
-
π Update api-spec.md to fix some formatting (#4030)
-
π Add v0.24.2 to the README (#4015)
-
π Fix minor typo in auth docs (#3992)
-
π Document how to use the kind tool and the Tekton/plumbing convenience script (#3972)
Documenting how to use the kind tool to setup the development environment.
-
π Organize DEVELOPMENT.md, provide consistent examples & reflect go mod support (#3955)
Organized
DEVELOPMENT.md
to provide more consistent examples and instructions. -
π Link to docs and examples for v0.24.3 (#4031)
-
π Update docs to use Kubernetes 1.18 as the minimum version (#3986)
-
π docs(pipelines): specify how to reference an array parameter (#3967)
-
π Document the safe-to-evict annotation on the webhook deployment (#3961)
-
π Add missing frontmatter to some docs (#3958)
-
π Update pipelines.md (#3946)
-
π Link to docs and examples for v0.24.1 (#3944)
-
π Format code blocks with prettier (#3911)
Thanks
Thanks to these contributors who contributed to v0.25.0!
- β€οΈ @R2wenD2
- β€οΈ @ScrapCodes
- β€οΈ @afrittoli
- β€οΈ @aiden-deloryn
- β€οΈ @barthy1
- β€οΈ @eliasnorrby
- β€οΈ @imjasonh
- β€οΈ @jeffmaury
- β€οΈ @jerop
- β€οΈ @jmlrt
- β€οΈ @mrutkows
- β€οΈ @n3wscott
- β€οΈ @nikhil-thomas
- β€οΈ @priyawadhwa
- β€οΈ @rafalbigaj
- β€οΈ @rguichard
- β€οΈ @sbwsg
- β€οΈ @souleb
- β€οΈ @vdemeester
- β€οΈ @vinamra28
- β€οΈ @yaoxiaoqi
Extra shout-out for awesome release notes:
- π @R2wenD2
- π @ScrapCodes
- π @aiden-deloryn
- π @jeffmaury
- π @jerop
- π @mrutkows
- π @nikhil-thomas
- π @priyawadhwa
- π @rafalbigaj
- π @sbwsg
- π @souleb
- π @vdemeester
- π @vinamra28
- π @yaoxiaoqi
Tekton Pipeline release v0.24.3 "Minskin Marvin"
π Align to v0.24.1, Setup WorkingDir for place-tools (#3978) π
-Docs @ v0.24.3
-Examples @ v0.24.3
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.24.3/release.yaml
Changes
Fixes
- π¨ Setup WorkingDir for place-tools init container to avoid permission error (#4025)
Fixes bug #3978
- π¨ Release v0.24.3 (#4024)
This is a minor release to fix the delta between v0.24.1 and v0.24.2.
Release v0.24.1 included by mistake three extra commits.
The next minor release v0.24.2 did not include them, but the difference is problematic: #4017
Release v0.24.3 builds on top of v0.24.2 and restores the three extra commits:
`WhenExpressions` no longer support PascalCase fields, they only support lowercase fields
action required: if you applied a `Pipeline` with `WhenExpressions` in v0.16, you have to reapply it
Thanks
Thanks to these contributors who contributed to v0.24.3!
- β€οΈ @barthy1
- β€οΈ @jerop
- β€οΈ @sbwsg
- β€οΈ @afrittoli
Extra shout-out for awesome release notes:
- π @jerop
- π @afrittoli
Tekton Pipeline release v0.24.2 "Minskin Marvin"
π Workspaces in Sidecar is serialized as workspaces not Workspaces π
-Docs @ v0.24.2
-Examples @ v0.24.2
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.24.2/release.yaml
Upgrade Notices
See upgrade notices for v0.24.0.
Sidecar Workspaces field is annotated in lowercase instead of pascalcase, so Pipelines using them need to be reapplied.
Fixes
-
π [cherry-pick] Fix Workspaces in Sidecar to be serialized as workspaces not Workspaces (#4013)
Sidecar Workspaces field is annotated in lowercase instead of pascalcase. -
π [cherry-pick] Update tektoncd/plumbing. (#4009)
-
π Revert Fix issue with 23 in Script blocks (#3942)
Revert fix for instances of "$$" in script blocks. Kubernetes replaces "$$" with a single "$" and your scripts need to deal appropriately with these instances.
Thanks
Thanks to these contributors who contributed to v0.24.2!
- β€οΈ @afrittoli
- β€οΈ @jerop
- β€οΈ @jeffmaury
- β€οΈ @wlynch
Extra shout-out for awesome release notes:
- π @afrittoli
- π @jerop
Tekton Pipeline release v0.24.1 "Minskin Marvin"
π Restore behaviour for $$
embedded in a script
π
-Docs @ v0.24.1
-Examples @ v0.24.1
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.24.1/release.yaml
Upgrade Notices
See upgrade notices for v0.24.0.
Nothing new in v0.24.1.
Changes
Fixes
Misc
- π¨ Revert Fix issue with 37 in Script blocks (#3938)
Revert fix for instances of "$$" in script blocks. Kubernetes replaces "$$" with a single "$" and your scripts need to deal appropriately with these instances.
Docs
- π Add links to v0.24.0 docs and examples (#3933)
Thanks
Thanks to these contributors who contributed to v0.24.1!
- β€οΈ @afrittoli
- β€οΈ @sbwsg
Extra shout-out for awesome release notes:
- π @sbwsg
Tekton Pipeline release v0.24.0 "Minskin Marvin"
π Feature Flags, Workspaces in Steps and Sidecars, Better Defaults for Steps and more! π
-Docs @ v0.24.0
-Examples @ v0.24.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.24.0/release.yaml
Upgrade Notices
- Release v0.24.0 of Tekton requires Kubernetes v1.18+.
- The default value of
disable-home-env-overwrite
anddisable-working-dir-overwrite
has been changed to true. See the e-mail thread and the pull request for more details.
Changes
Features
- β¨ Allow dot character in resource names (#3893)
Allow resource names to contain the dot character (".")
Resource names now validated using the common validation.IsDNS1123Subdomain()
function
- β¨ Feat: Adding hostAliases in PodTemplate spec. (#3889)
Feat: Add hostAliases in PodTemplate spec which provides Pod-level override of hostname resolution by modifing /etc/hosts.
- β¨ Implement TEP-0033: Add enable-api-fields feature-flag (#3881)
A new feature-flag, "enable-api-fields" has been added. Valid values are "alpha" and "stable". It defaults to "stable".
Setting the "enable-api-fields" flag tells Tekton what level of API stability you require in the cluster. As new features are added to Pipelines we'll first place those features under the "alpha" flag. When the feature is ready we'll promote it to "stable". This process is described in TEP-0033[1].
Opting in to "alpha" gives you early exposure to exciting new features as they're added to Pipelines but those features are still undergoing development and could be subject to backwards-incompatible changes.
[1] https://github.com/tektoncd/community/blob/main/teps/0033-tekton-feature-gates.md
- β¨ Disable the default workingDir and HOME overrides (#3878)
Steps no longer receive a default HOME env var of "/tekton/home", nor a default workingDir of "/workspace".
action required: if you rely on these defaults you now have a choice to make: either update your Task steps to include the workingDir and HOME env or set the "disable-home-env-overwrite" and "disable-working-directory-overwrite" feature flags to "false". We plan to continue supporting these flags for another 9 months following the release of 0.24 and then they too will be removed.
- β¨ an aggregate status of tasks in finally (#3817)
Introducing a variable $(tasks.status) to access aggregate execution status of tasks in finally.
- β¨ Add Step and Sidecar Workspaces feature (#3700)
New alpha feature added: "Step and Sidecar Workspaces":
- Requires "enable-api-fields: alpha" feature gate.
- Sidecars in a Task now receive Workspaces, just like Steps do.
- Steps and Sidecars can now specify which Workspaces they want access to. This isolates the workspace to only those Steps or Sidecars that need them, allowing Task authors to limit exposure of sensitive data like credentials.
- The default behaviour for workspaces in Steps remains the same - all Steps get access to them.
- β¨ Make entrypoint binary build for Windows (#3876)
Deprecation Notices
- π¨ The
disable-home-env-overwrite
anddisable-working-dir-overwrite
are now deprecated (#3878)
The default value of these flags has been changed to true
. The flags are still available so that the old behaviour can still be configured; the flags are now deprecated and will be removed in 9 months from now. e-mail thread
Fixes
- π validate the context variable in when expressions (#3899)
Do not allow when
expressions in dag
to specify the context variable accessing the execution status of any other task - $(tasks.<pipelineTask>.status)
- π Fix issue with "$$" in Script blocks (#3888)
Fix a bug where the literal characters "$$" in a Step's script block would be replaced with a single "$".
- π Skip sidecar deletion logic for canceled or timed-out TaskRun (#3877)
Do not run sidecar deletion logic for canceled or timed-out taskrun where pod was deleted
- π Bump distroless/base:debug image (#3890)
Misc
- π¨ Remove cluster-wide namespace list/watch permissions (#3880)
The controller SA no longer requests cluster-wide permission to list and watch namespaces.
- π¨ Use v1 API for RoleBinding π¦ (#3872)
Using rbac.authorization.k8s.io/v1
instead of rbac.authorization.k8s.io/v1beta1
for RoleBinding
as it is being deprecated starting in 1.17.
- π¨ Add alpha feature gate tests (integration & examples) to our CI (#3917)
Pipelines now e2e tests every commit against both the "stable" and "alpha" feature gates.
- π¨ Test multiple scripts in one task executing with different UIDs (#3914)
Added test for running Scripts with differing securityContexts in the same Task.
- π¨ Add a nodeAffinity rule to the controller and webhook deployments (#3909)
Controller and Webhook pods will no longer be scheduled on Windows nodes if any exist in a Kubernetes cluster.
- π¨ Enable Bundles and Custom Tasks when feature gate is set to alpha (#3908)
Switching the "enable-api-fields" feature gate to "alpha" also turns on Tekton Bundles and Custom Tasks support, since these are alpha features.
- π¨ Bump knative to 0.22 π§ (#3883)
Update knative dependency to 0.22, and default minimum kubernetes version supported, v1.18.0
- π¨ Updates the Tekton Bundle spec and resolver to be more explicit. (#3869)
- π¨ Fix lint issues (#3926)
- π¨ Remove field name from error returned during feature gate validation (#3918)
- π¨ Remove random suffixes on creds-init volumes (#3907)
- π¨ Add test YAML helpers (#3905)
- π¨ Last minute fixups from review feedback on "enable-api-fields" PR (#3904)
- π¨ Resolving integration test failures by bumping plumbing (#3894)
- π¨ Add doc links for 0.23.0 to README and update release-cheat-sheet (#3868)
Docs
Thanks
Thanks to these contributors who contributed to v0.24.0!
- β€οΈ @SaschaSchwarze0
- β€οΈ @Siddhesh-Ghadi
- β€οΈ @afrittoli
- β€οΈ @aiden-deloryn
- β€οΈ @imjasonh
- β€οΈ @jmcshane
- β€οΈ @joellord
- β€οΈ @pierretasci
- β€οΈ @pritidesai
- β€οΈ @psschwei
- β€οΈ @sbwsg
- β€οΈ @vdemeester
- β€οΈ @xclud
Extra shout-out for awesome release notes:
- π @SaschaSchwarze0
- π @aiden-deloryn
- π @imjasonh
- π @pritidesai
- π @psschwei
- π @sbwsg
- π @vdemeester
- π @xclud
To Be Done: Deprecation Notices, Backward Incompatible Changes
Tekton Pipeline release v0.23.0 "Cymric Data"
π Spring Cleaning Edition: reduce controller permissions, remove unused Image CRD, add non-root user to git-init and pullrequest-init π
-Docs @ v0.23.0
-Examples @ v0.23.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.23.0/release.yaml
Upgrade Notices
None in this release.
Changes
Features
- β¨ Remove YAML merge and variable from config YAML (#3842)
Make release.yaml more easily consumed by tools like kustomize and ytt
Deprecation Notices
None in this release.
Backwards incompatible changes
None in this release.
Fixes
- π PVC: Use Owner UIDs instead of Owner names. (#3856)
Misc
- π¨ Use v1 instead of v1beta1 for π€ (#3859)
Using rbac.authorization.k8s.io/v1
instead of rbac.authorization.k8s.io/v1beta1
for ClusterRoleBinding
as it is being deprecated starting in 1.17.
- π¨ Further limit cluster-wide read-write permissions (#3832)
Remove cluster-wide write access to ConfigMaps, LimitRanges and remove all cluster-wide access to Deployments
- π¨ Remove cluster-wide write access to ServiceAccounts and Secrets (#3831)
Remove cluster-wide write access to ServiceAccounts and Secrets
- π¨ Remove unused image-cache CRD (#3850)
The Image
CRD in the caching.internal.knative.dev
group is not used by Tekton
and is not included anymore in the release.
- π¨ Change to use new base images for git and pullrequest images (#3828)
Add nonroot user in the PullRequest init base image
- π¨ Add Dockerfile for pullrequest nonroot build base image (#3810)
Add Dockerfile for pullrequset nonroot build base image
- π¨ Pull request template spring cleaning π· (#3866)
- π¨ refactor pipelineTask validation (#3848)
- π¨ refactoring validate pipelineTask name (#3818)
- π¨ Add ability to run e2e tests on top of nightly release (#3847)
- π¨ Use "no-cache" in the buildkit based builds (#3834)
- π¨ Update self, community and plumbing reference to use mainβ¦ π§ (#3821)
Docs
- π Correct url in migration doc and modify to main branch in doc urls (#3860)
Correct the links in migration doc and modify url to use main branch
- π Remove mention of absolute vs relative path from workspaces doc (#3852)
Removed incorrect doc that stated workspaces with relative mountPath would be mounted relative to /workspace
- π add the latest release - 0.22.0 (#3826)
- π updating release cheat sheet (#3825)
- π Fix the pipeline release cheat-sheet (#3823)
Thanks
Thanks to these contributors who contributed to v0.23.0!
- β€οΈ @imjasonh
- β€οΈ @afrittoli
- β€οΈ @barthy1
- β€οΈ @bobcatfish
- β€οΈ @pritidesai
- β€οΈ @sbwsg
- β€οΈ @vdemeester
- β€οΈ @wlynch
- β€οΈ @zhangtbj
Extra shout-out for awesome release notes:
- π @imjasonh
- π @afrittoli
- π @sbwsg
- π @vdemeester
- π @wlynch
- π @zhangtbj
Tekton Pipeline release v0.22.0 "Balinese Zero"
π Stop API conversion spam and Disable webhook PodDisruptionBudgetπ
-Docs @ v0.22.0
-Examples @ v0.22.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.22.0/release.yaml
Features
N/A
Deprecation Notices
N/A
Backwards incompatible changes
N/A
Fixes
- π Serialize and deserialize Finally in PipelineRuns too (#3816)
Fix issue where PipelineRun with finally in nested pipeline spec would lose those finally tasks when converted down to v1alpha1 and back up to v1beta1 again.
- π Change to avoid error when service account has empty secret name (#3795)
In case of an empty secret name, the taskRun was failing with CouldntGetTask as the GET request with an empty secret name return an error saying resource name may not be empty. Fixing such failing of a taskRun by avoiding an empty secret name in the kubeclient GET request.
- π Disable Webhook PDB by default, document enabling it (#3787)
Disable PodDisruptionBudget for the webhook deployment by default
- π Set minAvailable:1 to unblock node upgrades (#3784)
Modify webhook PodDisruptionBudget minAvailable to 1, so node upgrades aren't blocked
- π Losslessly roundtrip Pipelines with Finally from beta to alpha and back (#3779)
v1beta1 Pipelines can now be requested with v1alpha1 version without losing Finally tasks. Applying the returned v1alpha1 version will store the resource as v1beta1 with the Finally section restored to its original state.
- π Short term fix for Cloud Event Source (#3761)
Resolves #2676 by providing Cloud Event source value when selfLink unset
- π Fix nightly builds (again) (#3776)
- π Fix the cr URL for crane (#3775)
- π Fix the pipeline nightly (#3772)
- π Pin golang to avoid breakages. (#3766)
Misc
-
π¨ Remove Test Builders from pipelinerunstate_test.go (#3802)
-
π¨ Remove Test Builders from remote_tests.go (#3801)
-
π¨ Remove support for build-gcs and the gcs-fetcher image (#3771)
Remove support for build-gcs and the gcs-fetcher image
- π¨ Remove tekton.dev/task label from taskrun of clustertasks (#3764)
Remove tekton.dev/task label from taskrun of clustertasks
-
π¨ Closes #3262: Modify unnecessarily exported methods to unexported (#3289)
-
π¨ Add PipelineRun and TaskRun Status work to the Roadmap (#3793)
-
π¨ Refine the comment for git init base image (#3791)
-
π¨ cleaning up the function parameter (#3808)
-
π¨ Cleanup s390x exclude test list with build-gcs tests (#3783)
-
π¨ Re-enable test now that HEAD is fixed (#3768)
-
π¨ Update roadmap for 2021! π£οΈ (#3789)
-
π¨ Rework the release pipeline to use workspaces (#3788)
-
π¨ Use legacy build and test golang tasks (#3780)
-
π¨ Move the secret mount to the correct step (#3777)
-
π¨ Adding power (ppc64le) architecture image mappings (#3630)
Docs
-
π Fix typo in Code Blocks (#3814)
-
π Add v0.21.0 to the README (#3765)
-
π Add the missing imagePullSecret configuration guidance for a developer (#3699)
-
π Add documenation about setting resource limits on a Task step (#3809)
-
π Update docs to use Kubernetes 1.17 as the minimum version (#3805)
-
π Fix a broken link to the service account docs (#3773)
Thanks
Thanks to these contributors who contributed to v0.22.0!
- β€οΈ @DanArlowski
- β€οΈ @imjasonh
- β€οΈ @afrittoli
- β€οΈ @bahetiamit
- β€οΈ @barthy1
- β€οΈ @bobcatfish
- β€οΈ @cqbqdd11519
- β€οΈ @jerop
- β€οΈ @jmcshane
- β€οΈ @kobayashi
- β€οΈ @kscherer
- β€οΈ @mattmoor
- β€οΈ @piyush-garg
- β€οΈ @popcor255
- β€οΈ @pritidesai
- β€οΈ @sbwsg
- β€οΈ @wlynch
- β€οΈ @xiujuan95
- β€οΈ @zhangtbj
Extra shout-out for awesome release notes:
- π @DanArlowski
- π @imjasonh
- π @cqbqdd11519
- π @jerop
- π @jmcshane
- π @kobayashi
- π @piyush-garg
- π @popcor255
- π @sbwsg
- π @xiujuan95
- π @zhangtbj
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
Tekton Pipeline release v0.20.1 "Himalayan Haro"
π fix task result validation with "status" π
-Docs @ v0.20.1
-Examples @ v0.20.1
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.20.1/release.yaml
Changes
Fixes
- π¨ [cherry-pick] validate execution status variable (#3697)
Avoid validating task results while validating context variable to access execution status since it follows similar pattern
Thanks
Thanks for the bug report @r0bj π» !!
Thanks for the review @sbwsg, @vdemeester, @GregDritschler, @souleb, @afrittoli !!!
Thanks to these contributors who contributed to v0.20.1!
- β€οΈ @pritidesai
Extra shout-out for awesome release notes:
- π @pritidesai