Skip to content

Releases: tektoncd/pipeline

Tekton Pipeline release v0.26.0 "Scottish Fold Doraemon"

12 Jul 22:40
Compare
Choose a tag to compare

πŸŽ‰ 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)

    1. Updated kaniko executor image to latest
    2. 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)
    3. 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.25.0 "Black-Footed Throb"

15 Jun 14:01
Compare
Choose a tag to compare

πŸŽ‰ 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 to RunSpec
    • An embedded task will accepts new field Spec with type runtime.RawExtension in addition to
      ApiVersion and Kind fields of type string (as part of runtime.TypeMeta)
    • Validation changes, in addition to adding support for Run.RunSpec.Spec the validations will be changed
      to support "One of Run.RunSpec.Spec or Run.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.

  • ✨ 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
    • Changes in behavior
      • When supplied, a timeouts field combination permits deciding which part of the pipeline runtime is allocated to tasks and finally tasks.
  • ✨ 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 a PipelineRun or a TaskRun refers to a Pipeline or Task 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.24.3 "Minskin Marvin"

10 Jun 21:08
Compare
Choose a tag to compare

πŸŽ‰ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.24.2 "Minskin Marvin"

08 Jun 21:54
Compare
Choose a tag to compare

πŸŽ‰ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.24.1 "Minskin Marvin"

12 May 15:59
Compare
Choose a tag to compare

πŸŽ‰ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.24.0 "Minskin Marvin"

10 May 19:10
Compare
Choose a tag to compare

πŸŽ‰ 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 and disable-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 and disable-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

  • πŸ“– adding clear explanation of the context variables 🀞 (#3919)
  • πŸ“– Update auth.md (#3882)

Thanks

Thanks to these contributors who contributed to v0.24.0!

Extra shout-out for awesome release notes:

To Be Done: Deprecation Notices, Backward Incompatible Changes

Tekton Pipeline release v0.23.0 "Cymric Data"

06 Apr 14:14
Compare
Choose a tag to compare

πŸŽ‰ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.22.0 "Balinese Zero"

10 Mar 19:26
Compare
Choose a tag to compare

πŸŽ‰ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.21.0 "Savannah Ash"

16 Feb 22:53
Compare
Choose a tag to compare

πŸŽ‰ 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 of Tasks in Finally

  • ✨ 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 of PipelineTasks from tasks 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)

  • πŸ”¨ Issue #3553 reduce unit test execution time (#3652)

  • πŸ”¨ 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!

Extra shout-out for awesome release notes:

Tekton Pipeline release v0.20.1 "Himalayan Haro"

19 Jan 22:29
Compare
Choose a tag to compare

πŸŽ‰ 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 $(tasks.taskname.results.status) where status is result of some task compared to context variable for referencing execution status $(tasks.taskname.status).

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!

Extra shout-out for awesome release notes: