Skip to content

Releases: tektoncd/pipeline

Tekton Pipeline release v0.11.2 "Ragdoll Norby"

16 Apr 22:34
Compare
Choose a tag to compare

πŸŽ‰ Docs and Misc Fixes πŸŽ‰

-Docs @ v0.11.2
-Examples @ v0.11.2

Upgrade Notices

🚨 If you are upgrading from a version of Tekton Pipelines older than v0.11.0 then you may need to delete your existing tekton-pipeline deployments before applying v0.11.2.

Changes

Misc

  • πŸ”¨ Mark PipelienResourceBinding as inlined πŸ‘ #2359
  • πŸ”¨ e2e tests - use helm v3 #2368

Docs

  • πŸ“– Rewrite the Tasks documentation for clarity and flow. #2317
  • πŸ“– Doc about migrating from v1alpha1 to v1beta1 #2231
  • πŸ“– Add link from migrate doc to GCS task in catalog #2350
  • πŸ“– Add a link to the v1alpha1 migration doc #2351
  • πŸ“– Add a link to the Workspaces doc from docs/README.md #2352
  • πŸ“– Document Tekton's Many Variables #2358
  • πŸ“– Rewrite the Pipelines documentation for clarity and flow. #2355

Thanks

Thanks to these contributors who contributed to v0.11.2!

Tekton Pipeline release v0.11.1 "Ragdoll Norby"

08 Apr 12:17
Compare
Choose a tag to compare

πŸŽ‰ Beta Bug Bash 1 πŸŽ‰

This release fixes a bug with default timeouts. The default-timeout-minutes field in the config-defaults ConfigMap was being ignored. Upgrade to this release to have the default timeout respected in TaskRuns and PipelineRuns again.

-Docs @ v0.11.1
-Examples @ v0.11.1

Upgrade Notices

🚨 If you are upgrading from a version of Tekton Pipelines older than v0.11.0 then you may need to delete your existing tekton-pipeline deployments before applying v0.11.1.

Changes

Fixes

  • πŸ› Fix default-timeout from config not correctly set (#2333)

Known Issues

  • ⚠️ Cancelling PipelineRuns does not work properly in this release. A cancelled PipelineRun should cancel any of its executing TaskRuns. However, currently, any TaskRuns that are executing when a PipelineRun is cancelled will continue until they exit on their own. Follow Issue 2337 for updates.

Thanks

Thanks to these contributors who contributed to v0.11.1!

Tekton Pipelines Beta release v0.11.0 "Ragdoll Norby"

31 Mar 15:53
Compare
Choose a tag to compare

πŸŽ‰ Tekton Pipelines Beta πŸŽ‰

This release is the first official Tekton Pipelines Beta.

If you've been following along with prior release candidates there have been no code changes since yesterday's release of RC4. The only noticeable change is that applying the latest version of Tekton to your clusters will now yield a controller with version label of "v0.11.0" instead of "v0.11.0-rc4".

Installation one-liner:

kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.11.0/release.yaml

Upgrade Notices

🚨 The minimum version of Kubernetes required to run Tekton Pipelines is now 1.15.

🚨 If you are upgrading from an older version of Tekton Pipelines you may need to delete your existing tekton-pipeline deployments before applying v0.11.0.

🚨 Submitting the same v1alpha1 Tasks more than once results in errors. Use kubectl replace instead of kubectl apply.

Deprecation Notices

  • 🚨 PipelineResources are not moving to Beta with Tekton's other types

    We do not plan to promote PipelineResources into Beta. They will continue to work as part of Beta but their use is discouraged when possible. We are progressively adding documentation and Catalog Tasks to help users migrate away from them:

    • The git-clone Task in the catalog performs the same work as the Git PipelineResource.
    • The pullrequest Task in the catalog performs the same work as the PullRequest PipelineResource.
    • Workspaces are intended for sharing files between Tasks.
  • 🚨 The $HOME env var and workingDir of Steps will change in the next release (#2044)

    Tekton currently overwrites the HOME environment variable in a Step's container to always be /tekton/home and the workingDir field of the Step's image to always be /workspace. This behaviour will change in the next release: those two fields will be left untouched by Tekton, using whatever settings are defined in the container image and Task's YAML. We have introduced a new ConfigMap, named feature-flags, that allows you to use this new behaviour now:

    • disable-home-env-overwrite: When this flag is set to "true" Tekton will allow a Step's image to dictate its own $HOME directory.
    • disable-working-directory-overwrite: When this flag is set to "true" Tekton will allow a Step's image to dictate its own workingDir.

    In the next release we plan to flip these flags so that they are opt-out rather than opt-in. At some point in the future we plan to remove support for this overwriting behaviour entirely.

Changes

Below is the complete list of changes that have been added to Tekton Pipelines across all of the Beta Release Candidates.

Features

  • ✨ Introduce the v1beta1 API Version (#2035)
  • ✨ Improved LimitRange support (#2020)
  • ✨ Pipeline Resources can now be marked as optional (#1910)
  • ✨ Data can now be shared between Tasks using Task Results and Task Params (#1921)
  • ✨ Tekton Pipelines can be configured to no longer overwrite the HOME environment variable and workingDir of Steps (#2044)
  • ✨ Sidecars now support Script mode, just like in Task Steps (#1987)
  • ✨ TaskRuns can now specify a different Scheduler Name in their podTemplate (#1790)
  • ✨ JSONPath-like Star Array Notation can now be used in variable substitutions (#2085)
  • ✨ The Tekton Controller can now be configured to monitor an individual namespace (#2144)
  • ✨ Add description field to Spec (#2089)
  • ✨ Add proxy parameters to Git PipelineResources (#2215)

Fixes

  • πŸ› Fix redundant type conversion (#2142)
  • πŸ› Fail step-script if param value is not applied (#1934)
  • πŸ› Fix params-applied example (#1925)
  • πŸ› Make pipelinerun as "cancelled" when taskrun is "cancelled" (#1935)
  • πŸ› Fix release yaml for openshift install (#1959)
  • πŸ› Remove Code Comment From v1alpha2 taskrun_types_test.go (#1967)
  • πŸ› Correct message of Pipelinerun when timeout (#2024)
  • πŸ› Enhance reconcile of taskrun to avoid extra pod creation (#2022)
  • πŸ› Add random suffix when make volumn from secret (#2048)
  • πŸ› Validate PipelineTask name as Task names (#2099)
  • πŸ› Fixes Steps container spec serialization/deserialization (#2151)
  • πŸ› Remove result initcontainer (#2175)
  • πŸ› SetDefaults for embedded specs (Pipeline, Task) πŸ₯„ (#2162)
  • πŸ› Fix to FieldError fields name for duplicate param names and associated unit tests (#2195)
  • πŸ› Fixes Task workspaces marshalling (#2200)
  • πŸ› Handle the case of multiple versions of a status (#2194)
  • πŸ› Panic in controller when step fails before image digest exporter (#2222)
  • πŸ› Fix copying description also during upgrade (#2247)
  • πŸ› Add checking for duplicate declared resources (#2266)
  • πŸ› Fix re-applying v1beta1 TaskRun failing (#2285)
  • πŸ› Fix the variable substitution for task results inside array parameters (#2300)
  • πŸ› Add missing omitempty that breaks compatibility (#2301)
  • πŸ› Correct missing field(s) error (#2295)

Misc

  • πŸ”¨ Update dind example to connect to daemon using TCP+TLS (#1932)
  • πŸ”¨ Add tekton.dev/release annotation to the webhook (#1942)
  • πŸ”¨ Use named field in test tables taco (#1954)
  • πŸ”¨ Add e2e test to cover TaskRun retries (#1975)
  • πŸ”¨ Increase timeout for e2e test_retry test (#1985)
  • πŸ”¨ Prepend tekton-bucket resource name with pipeline pill (#1982)
  • πŸ”¨ Remove messages about kodata in task logs (#2000)
  • πŸ”¨ Correct the number of expected pods created in e2e test case of "retry" (#1996)
  • πŸ”¨ Remove deprecated fields from PipelineResourceResult sweet_potato (#2011)
  • πŸ”¨ Make testcase of "retry" raise error rather than just log (#2033)
  • πŸ”¨ update cloudevents dependency and clean up deps (#2014)
  • πŸ”¨ Add symlink in kodata link (#2032)
  • πŸ”¨ Add a description field to pipeline workspace declarations (#2054)
  • πŸ”¨ Add jsonpath expand library (#1951)
  • πŸ”¨ Use vendor folder to speed up CI spoon (#2040)
  • πŸ”¨ Adding a version label to controller and webhook (#2064)
  • πŸ”¨ Refining status when Condition failed (#1696)
  • πŸ”¨ Add ContainerState and ContainerName for Sidecars (#2075)
  • πŸ”¨ Move Resources implementation to their package (#2103)
  • πŸ”¨ Update the kaniko executor image version to 0.17.1 (#2136)
  • πŸ”¨ Invalid Sink URI CloudEvent test sometimes includes quotes (#2166)
  • πŸ”¨ Add builder for resource description (#2224)
  • πŸ”¨ Creds-init writes to fixed location when HOME override is disabled (#2180)
  • πŸ”¨ Introduce v1beta1 e2e go tests (#2252)
  • πŸ”¨ Add the git resource ref to the ResourceResult for git resources. (#2238)
  • πŸ”¨ fix skipRootUserTests flag 🎏 (#2304)

Docs

  • πŸ“– Adding Documentation on PipelineTask Timeout (#2130)
  • πŸ“– Fix Install Guide formatting. (#2149)
  • πŸ“– Rewrite the Tekton Pipelines overview for clarity and flow (#2030)
  • πŸ“– Document default-managed-by-label (#1964)
  • πŸ“– fix wrong default pod template example (#1997)
  • πŸ“– Updating to include Tekton installtion (#2012)
  • πŸ“– Linking to conditions-doc insteadof self (#2046)
  • πŸ“– Indicate minimum cluster version is now 1.15 police_car (#2052)
  • πŸ“– Add authority for resource deployments.apps to tutorial-role (#2034)
  • πŸ“– Correct the wrong MD format for document: podTemplates (#2090)
  • πŸ“– Fix Broken Link and Typo for LimitRange Docs (#2108)
  • πŸ“– Installation: Added example for GoogleCloudStorage backend (#2123)
  • πŸ“– Rewrite Install Guide for clarity and flow. (#2146)
  • πŸ“– Fix Install Guide formatting. (#2149)
  • πŸ“– Rewrite the Pipelines tutorial for clarity and flow. (#2068)
  • πŸ“– Update some more example links and move task results example (#2148)
  • πŸ“– Document Task Results maximum size (#2167)
  • πŸ“– Update install instructions on OpenShift (#2169)
  • πŸ“– Add params section to Pipelinerun doc (#2173)
  • πŸ“– Fix pipeline spelling bug in developers/readme.md (#2184)
  • πŸ“– Update docs to use v1beta1
  • πŸ“– Remove MiniShift from install documentation (#2189)
  • πŸ“– Fix broken markdown links in our doc (#2205)
  • πŸ“– Spelling fixes in our doc (#2206)
  • πŸ“– Add a Workspaces doc (#2230)
  • πŸ“– Improve the clarity and flow in Workspaces documentation. (#2256)
  • πŸ“– Fix unavailable link in document (#2271)
  • πŸ“– Adds "commented" website front matter to docs (#2283)

Thanks

Thanks to all those who have contributed to the Beta!

Tekton Pipeline release v0.11.0-rc4 "Ragdoll Norby"

30 Mar 18:03
Compare
Choose a tag to compare

πŸŽ‰ Beta Release Candidate 4 πŸŽ‰

This is the fourth release towards Beta and includes a few final bug fixes for issues discovered after RC3 went out. This will be the final release before we formally declare Beta ready.

🚨 If you are upgrading from an older version of Tekton you may need to delete your existing tekton-pipeline deployments before applying the 0.11 release candidates.

🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail. To work around this problem use kubectl replace instead of apply or first delete the Task and then re-apply it.

This is a side-effect of the way Tekton internally upgrades Tasks from v1alpha1 to v1beta1. This issue will affect any Task that includes inputs.params or inputs.resources. On submission Kubernetes will return an error such as error when applying patch [...] validation failed: expected exactly one, got both: inputs.params, params.

🚨 Please also note that the minimum version of Kubernetes required to run Tekton is now 1.15.

Changes

Deprecation Notices (Same as RC1)

  • 🚨 PipelineResources are not moving to Beta with Tekton's other types

    PipelineResources have been a source of some contention within the Tekton community over the past several months. While the abstraction they expose does provide some value they can often be difficult to understand, hard to debug when they go wrong, and are far too limited in number and scope. For these reasons and more we do not plan to promote PipelineResources into Beta and will instead provide a documented migration path for users that does not use the type at all. Towards this goal we have already introduced a git-clone Task to the Tekton Catalog that provides exactly the same behaviour as the Git PipelineResource and we plan to introduce similar Tasks for all of the other existing PipelineResource types as well.

    See the git-clone Task in the catalog.

  • 🚨 The $HOME env var and workingDir of Steps will change in the next release

    Tekton currently overwrites the HOME environment variable in a Step's container to always be /tekton/home and the workingDir field of the Step's image to always be /workspace. This behaviour is problematic when a container depends on those values to be something specific for it to run correctly.

    In this release we are leaving Tekton's default behaviour alone but have introduced a new ConfigMap, named feature-flags, that allows you to disable it. In the next release we plan to flip this behaviour so that it is opt-in rather than opt-out. At some point in the future we plan to remove support for this overwriting behaviour entirely. (#2044).

Backwards incompatible changes (Same as RC1)

In current release:

  • 🚨 The minimum required version of Kubernetes is now 1.15

    Bump kubernetes to 1.16.5 and knative/pkg to release-0.12 (#1894)

  • 🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail.

Fixes

  • πŸ› Fix the variable substitution for task results inside array parameters (#2300)
  • πŸ› Add missing omitempty that breaks compatibility (#2301)
  • πŸ› Correct missing field(s) error (#2295)

Misc

  • πŸ”¨ fix skipRootUserTests flag 🎏 (#2304)

Thanks

Thanks to these contributors who contributed to v0.11.0-rc4!

Tekton Pipeline release v0.11.0-rc3 "Ragdoll Norby"

25 Mar 17:17
Compare
Choose a tag to compare

πŸŽ‰ Beta Release Candidate 3 πŸŽ‰

This is the third release towards Beta and includes bug fixes for issues discovered after RC2 went out. This is planned to be the final release before we formally declare Beta ready.

🚨 If you are upgrading from an older version of Tekton you may need to delete your existing tekton-pipeline deployments before applying the 0.11 release candidates.

🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail. To work around this problem use kubectl replace instead of apply or first delete the Task and then re-apply it.

This is a side-effect of the way Tekton internally upgrades Tasks from v1alpha1 to v1beta1. This issue will affect any Task that includes inputs.params or inputs.resources. On submission Kubernetes will return an error such as error when applying patch [...] validation failed: expected exactly one, got both: inputs.params, params.

🚨 Please also note that the minimum version of Kubernetes required to run Tekton is now 1.15.

-Docs @ v0.11.0-rc3
-Examples @ v0.11.0-rc3

Changes

Deprecation Notices (Same as RC1)

  • 🚨 PipelineResources are not moving to Beta with Tekton's other types

    PipelineResources have been a source of some contention within the Tekton community over the past several months. While the abstraction they expose does provide some value they can often be difficult to understand, hard to debug when they go wrong, and are far too limited in number and scope. For these reasons and more we do not plan to promote PipelineResources into Beta and will instead provide a documented migration path for users that does not use the type at all. Towards this goal we have already introduced a git-clone Task to the Tekton Catalog that provides exactly the same behaviour as the Git PipelineResource and we plan to introduce similar Tasks for all of the other existing PipelineResource types as well.

    See the git-clone Task in the catalog.

  • 🚨 The $HOME env var and workingDir of Steps will change in the next release

    Tekton currently overwrites the HOME environment variable in a Step's container to always be /tekton/home and the workingDir field of the Step's image to always be /workspace. This behaviour is problematic when a container depends on those values to be something specific for it to run correctly.

    In this release we are leaving Tekton's default behaviour alone but have introduced a new ConfigMap, named feature-flags, that allows you to disable it. In the next release we plan to flip this behaviour so that it is opt-in rather than opt-out. At some point in the future we plan to remove support for this overwriting behaviour entirely. (#2044).

Backwards incompatible changes (Same as RC1)

In current release:

  • 🚨 The minimum required version of Kubernetes is now 1.15

    Bump kubernetes to 1.16.5 and knative/pkg to release-0.12 (#1894)

  • 🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail.

Features

  • ✨ Add proxy parameters to Git PipelineResources (#2215)

Fixes

  • πŸ› Panic in controller when step fails before image digest exporter (#2222)
  • πŸ› Fix copying description also during upgrade (#2247)
  • πŸ› Add checking for duplicate declared resources (#2266)
  • πŸ› Fix re-applying v1beta1 TaskRun failing (#2285)

Misc

  • πŸ”¨ Add builder for resource description (#2224)
  • πŸ”¨ Creds-init writes to fixed location when HOME override is disabled (#2180)
  • πŸ”¨ Introduce v1beta1 e2e go tests (#2252)
  • πŸ”¨ Add the git resource ref to the ResourceResult for git resources. (#2238)

Docs

  • πŸ“– Add a Workspaces doc (#2230)
  • πŸ“– Improve the clarity and flow in Workspaces documentation. (#2256)
  • πŸ“– Fix unavailable link in document (#2271)
  • πŸ“– Adds "commented" website front matter to docs (#2283)

Thanks

Thanks to these contributors who contributed to v0.11.0-rc3!

Tekton Pipeline release v0.10.2 "Bombay Robbie"

19 Mar 15:28
Compare
Choose a tag to compare

-Docs @ v0.10.2
-Examples @ v0.10.2

Fixes

  • πŸ› Fix panic in controller related to image digest exporter (#2222)]

Tekton Pipeline release v0.11.0-rc2 "Ragdoll Norby"

11 Mar 15:42
Compare
Choose a tag to compare

πŸŽ‰ Beta Release Candidate 2 πŸŽ‰

This is the second release towards Beta and includes bug fixes for issues discovered after RC1 went out. There will be at least one more release candidate before the actual Beta.

🚨 If you are upgrading from an older version of Tekton you may need to delete your existing tekton-pipeline deployments before applying the 0.11 release candidates.

🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail. To work around this problem use kubectl replace instead of apply or first delete the Task and then re-apply it.

This is a side-effect of the way Tekton internally upgrades Tasks from v1alpha1 to v1beta1. This issue will affect any Task that includes inputs.params or inputs.resources. On submission Kubernetes will return an error such as error when applying patch [...] validation failed: expected exactly one, got both: inputs.params, params.

🚨 Please also note that the minimum version of Kubernetes required to run Tekton is now 1.15.

-Docs @ v0.11.0-rc2
-Examples @ v0.11.0-rc2

Changes

Features

  • ✨ Add description field to Spec (#2089)

Deprecation Notices (Same as RC1)

  • 🚨 PipelineResources are not moving to Beta with Tekton's other types

    PipelineResources have been a source of some contention within the Tekton community over the past several months. While the abstraction they expose does provide some value they can often be difficult to understand, hard to debug when they go wrong, and are far too limited in number and scope. For these reasons and more we do not plan to promote PipelineResources into Beta and will instead provide a documented migration path for users that does not use the type at all. Towards this goal we have already introduced a git-clone Task to the Tekton Catalog that provides exactly the same behaviour as the Git PipelineResource and we plan to introduce similar Tasks for all of the other existing PipelineResource types as well.

    See the git-clone Task in the catalog.

  • 🚨 The $HOME env var and workingDir of Steps will change in the next release

    Tekton currently overwrites the HOME environment variable in a Step's container to always be /tekton/home and the workingDir field of the Step's image to always be /workspace. This behaviour is problematic when a container depends on those values to be something specific for it to run correctly.

    In this release we are leaving Tekton's default behaviour alone but have introduced a new ConfigMap, named feature-flags, that allows you to disable it. In the next release we plan to flip this behaviour so that it is opt-in rather than opt-out. At some point in the future we plan to remove support for this overwriting behaviour entirely. (#2044).

Backwards incompatible changes (Same as RC1)

In current release:

  • 🚨 The minimum required version of Kubernetes is now 1.15

    Bump kubernetes to 1.16.5 and knative/pkg to release-0.12 (#1894)

  • 🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail.

Fixes

  • πŸ› Remove result initcontainer (#2175)
  • πŸ› SetDefaults for embedded specs (Pipeline, Task) πŸ₯„ (#2162)
  • πŸ› Fix to FieldError fields name for duplicate param names and associated unit tests (#2195)
  • πŸ› Fixes Task workspaces marshalling (#2200)
  • πŸ› Handle the case of multiple versions of a status (#2194)

Misc

  • πŸ”¨ Invalid Sink URI CloudEvent test sometimes includes quotes (#2166)

Docs

  • πŸ“– Rewrite the Pipelines tutorial for clarity and flow. (#2068)
  • πŸ“– Update some more example links and move task results example (#2148)
  • πŸ“– Document Task Results maximum size (#2167)
  • πŸ“– Update install instructions on OpenShift (#2169)
  • πŸ“– Add params section to Pipelinerun doc (#2173)
  • πŸ“– Fix pipeline spelling bug in developers/readme.md (#2184)
  • πŸ“– Update docs to use v1beta1
  • πŸ“– Remove MiniShift from install documentation (#2189)
  • πŸ“– Fix broken markdown links in our doc (#2205)
  • πŸ“– Spelling fixes in our doc (#2206)

Thanks

Thanks to these contributors who contributed to v0.11.0-rc2!

Tekton Pipeline release v0.11.0-rc1 "Ragdoll Norby"

04 Mar 19:26
Compare
Choose a tag to compare

πŸŽ‰ Beta Release Candidate 1 πŸŽ‰

With this release Tekton Pipelines introduces a new apiVersion, v1beta1. While the v1alpha1 version is continuing to be supported at this time we'd like to encourage anyone integrating with Pipelines to be aware of the upcoming API change and begin thinking about migrating over to the beta API. Documentation on migrating will be forthcoming, this release simply introduces the new version and allows us to publicise it.

Over the coming weeks we'll be working with the other Tekton projects to migrate their integrations to v1beta1 and fixing problems as they arise in subsequent Release Candidates.

🚨 If you are upgrading from an older version of Tekton you may need to delete your existing tekton-pipeline deployments before applying the 0.11 release candidates.

🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail. To work around this problem first delete the Task and then reapply it.

This is a side-effect of the way Tekton internally upgrades Tasks from v1alpha1 to v1beta1. This issue will affect any Task that includes inputs.params or inputs.resources. On submission Kubernetes will return an error such as error when applying patch [...] validation failed: expected exactly one, got both: inputs.params, params.

🚨 Please also note that the minimum version of Kubernetes required to run Tekton is now 1.15.

Changes

Features

  • ✨ Introduce the v1beta1 API Version

    Tekton Pipelines has introduced a new API version, v1beta1, with improvements to some of its APIs and Types.

    Add ClusterTask to v1alpha2 (#1946)
    Port TaskResults and TaskRunResults to v1alpha2 (#1948)
    Port Workspace in pipeline support to v1alpha2 (#1949)
    Add PipelineRun types to v1alpha2 (#1955)
    Add LimitRangeName to v1alpha2.PipelineRun tulip (#2009)
    Task, ClusterTask and Pipeline auto-conversion from v1alpha1 to v1alpha2 (#2002)
    TaskRun, and PipelineRun auto-conversion from v1alpha1 to v1alpha2 (#2025)
    Expose v1beta1 to the world (#2035)

  • ✨ Improved LimitRange support

    Tekton Pipelines now plays more nicely with LimitRanges in a namespace when creating new Pods for TaskRuns.

    Leave Max Container Request Values at Original Indices (#1937)
    Check for LimitRange Minimum for TaskRun Container Requests (#1991)
    Add LimitRange Examples for PipelineRun and TaskRun (#2004)
    Pods created by TaskRuns will now respect any LimitRange minimums that exist in the namespace that the Pod runs in (#2020).

  • ✨ Pipeline Resources can now be marked as optional

    PipelineResources can now be declared as optional, allowing Tasks to be more flexible in their handling of input resources.

    Enabling Pipeline Resources to be marked as Optional (#1910)

  • ✨ Data can now be shared between Tasks using Task Results and Task Params

    A Pipeline can now feed Task Results into other Tasks through their Params. It is now much easier to pass small pieces of data through a Pipeline.

    Update task run status with results (#1921)
    Adding substitution for result path variable (#2018)
    Adding pipeline results (#2042)
    Make results folder writable (Fix for #2131) (#2143)

  • ✨ Tekton Pipelines can be configured to no longer overwrite the HOME environment variable and workingDir of Steps

    In the next release of Tekton this behaviour will become the default!

    Allow disabling implicit HOME overwrite (#2044)
    Add handling of working directory (#2115)

  • ✨ Sidecars now support Script mode, just like in Task Steps

    Add Script Support to Sidecars (#1987)

  • ✨ TaskRuns can now specify a different Scheduler Name in their podTemplate

    Add SchedulerName to TaskRunSpec (#1790)

  • ✨ JSONPath-like Star Array Notation can now be used in variable substitutions

    Adds Basic Support for Star Array Notation (#2085)

  • ✨ The Tekton Controller can now be configured to monitor an individual namespace

    Allow controller to watch a specified namespace (#2144)

Deprecation Notices

  • 🚨 PipelineResources are not moving to Beta with Tekton's other types

    PipelineResources have been a source of some contention within the Tekton community over the past several months. While the abstraction they expose does provide some value they can often be difficult to understand, hard to debug when they go wrong, and are far too limited in number and scope. For these reasons and more we do not plan to promote PipelineResources into Beta and will instead provide a documented migration path for users that does not use the type at all. Towards this goal we have already introduced a git-clone Task to the Tekton Catalog that provides exactly the same behaviour as the Git PipelineResource and we plan to introduce similar Tasks for all of the other existing PipelineResource types as well.

    See the git-clone Task in the catalog.

  • 🚨 The $HOME env var and workingDir of Steps will change in the next release

    Tekton currently overwrites the HOME environment variable in a Step's container to always be /tekton/home and the workingDir field of the Step's image to always be /workspace. This behaviour is problematic when a container depends on those values to be something specific for it to run correctly.

    In this release we are leaving Tekton's default behaviour alone but have introduced a new ConfigMap, named feature-flags, that allows you to disable it. In the next release we plan to flip this behaviour so that it is opt-in rather than opt-out. At some point in the future we plan to remove support for this overwriting behaviour entirely. (#2044).

Backwards incompatible changes

In current release:

  • 🚨 The minimum required version of Kubernetes is now 1.15

    Bump kubernetes to 1.16.5 and knative/pkg to release-0.12 (#1894)

  • 🚨 Submitting v1alpha1 Tasks more than once can now result in errors. Submitting a v1alpha1 Task once will work but submitting the same Task again will fail. To work around this problem first delete the Task and then reapply it.

Fixes

  • πŸ› Fix redundant type conversion (#2142)
  • πŸ› Fail step-script if param value is not applied (#1934)
  • πŸ› Fix params-applied example (#1925)
  • πŸ› Make pipelinerun as "cancelled" when taskrun is "cancelled" (#1935)
  • πŸ› Fix release yaml for openshift install (#1959)
  • πŸ› Remove Code Comment From v1alpha2 taskrun_types_test.go (#1967)
  • πŸ› Correct message of Pipelinerun when timeout (#2024)
  • πŸ› Enhance reconcile of taskrun to avoid extra pod creation (#2022)
  • πŸ› Add random suffix when make volumn from secret (#2048)
  • πŸ› Validate PipelineTask name as Task names (#2099)
  • πŸ› Fixes Steps container spec serialization/deserialization (#2151)

Misc

  • πŸ”¨ Update dind example to connect to daemon using TCP+TLS (#1932)
  • πŸ”¨ Add tekton.dev/release annotation to the webhook (#1942)
  • πŸ”¨ Use named field in test tables taco (#1954)
  • πŸ”¨ Add e2e test to cover TaskRun retries (#1975)
  • πŸ”¨ Increase timeout for e2e test_retry test (#1985)
  • πŸ”¨ Prepend tekton-bucket resource name with pipeline pill (#1982)
  • πŸ”¨ Remove messages about kodata in task logs (#2000)
  • πŸ”¨ Correct the number of expected pods created in e2e test case of "retry" (#1996)
  • πŸ”¨ Remove deprecated fields from PipelineResourceResult sweet_potato (#2011)
  • πŸ”¨ Make testcase of "retry" raise error rather than just log (#2033)
  • πŸ”¨ update cloudevents dependency and clean up deps (#2014)
  • πŸ”¨ Add symlink in kodata link (#2032)
  • πŸ”¨ Add a description field to pipeline workspace declarations (#2054)
  • πŸ”¨ Add jsonpath expand library (#1951)
  • πŸ”¨ Use vendor folder to speed up CI spoon (#2040)
  • πŸ”¨ Adding a version label to controller and webhook (#2064)
  • πŸ”¨ Refining status when Condition failed (#1696)
  • πŸ”¨ Add ContainerState and ContainerName for Sidecars (#2075)
  • πŸ”¨ Move Resources implementation to their package (#2103)
  • πŸ”¨ Update the kaniko executor image version to 0.17.1 (#2136)

Docs

  • πŸ“– Adding Documentation on PipelineTask Timeout (#2130)
  • πŸ“– Fix Install Guide formatting. (#2149)
  • πŸ“– Rewrite the Tekton Pipelines overview for clarity and flow (#2030)
  • πŸ“– Document default-managed-by-label (#1964)
  • πŸ“– fix wrong default pod template example (#1997)
  • πŸ“– Updating to include Tekton installtion (#2012)
  • πŸ“– Linking to conditions-doc insteadof self (#2046)
  • πŸ“– Indicate minimum cluster version is now 1.15 police_car (#2052)
  • πŸ“– Add authority for resource deployments.apps to tutorial-role (#2034)
  • πŸ“– Correct the wrong MD format for document: podTemplates (#2090)
  • πŸ“– Fix Broken Link and Typo for LimitRange Docs (#2108)
  • πŸ“– Installation: Added example for GoogleCloudStorage backend (#2123)
  • πŸ“– Rewrite Install Guide for clarity and flow. (#2146)
  • πŸ“– Fix Install Guide formatting. (#2149)

Thanks

Thanks to these contributors who contributed to v0.11.0-rc1!

Read more

Tekton Pipeline release v0.10.1 "Bombay Robbie"

30 Jan 07:11
Compare
Choose a tag to compare

-Docs @ v0.10.1
-Examples @ v0.10.1

Fixes

  • πŸ› Ensure taskRef is non nil before setting defaults as this is an optio… #1966 (#1970)
  • πŸ› Avoid a panic when sorting container statuses #1927 (#1943)
  • πŸ› Add tekton.dev/release annotation to the webhook πŸ‹ #1942 (#1945)
  • πŸ› leave max container request values at original index #1937 (#1962)
  • πŸ› Fix release yaml for openshift install 🐸 #1959 (#1963)
  • πŸ› Revert "Don't rely on .status.podName to find Pod associated with a T… #1971 (#1973)

Thanks

Thanks to these contributors who contributed to v0.10.1!

Tekton Pipeline release v0.10.0 "Bombay Robbie"

23 Jan 11:46
Compare
Choose a tag to compare

πŸŽ‰ Happy new year release with a lot of gift πŸŽ‰

Go modules switch, Enhancements of scripts (no shebang required, Condition support, …), workspace addition, embedded TaskSpec in PipelineSpec, More PodTemplate (and defaults support), Optional and allowing unused PipelineResources.

Note: starting from this release, there will be a release.notags.yaml in addition to the usual release.yaml. This file (release.notags.yaml) is meant to be used if the container runtime used by your kubernetes distribution is not compatible with the image reference notation name:tag@digest (which is currently the case for cri-o and thus for OpenShift 4.x).

-Docs @ v0.10.0
-Examples @ v0.10.0

Changes

Features

  • ✨ Script enhancements

    Task steps that use script mode no longer need to specify a shebang line. Scripts that do not start with a shebang will use a default value of "#!/bin/sh". (#1691)
    Allow args with script mode (#1656)
    Script mode will now insert set -xe to scripts that don't include a shebang #!, which will in turn fail scripts with commands that error our and also print the command that is about to run. This default behaviour can be disabled by simply specifying your own #! at the top of the script. (#1736)
    Add script mode for Conditions (#1798)

  • ✨ Add workspace support to Task{,Run} and Pipeline{,Run}

    Adds the concept of "workspaces" to Tasks. This allows Task authors to declare directories they expect to be provided via Volumes at runtime. At runtime, TaskRuns can provide PVCs or EmptyDirs to use for these directories. (#1639)
    A Task's workspaces can be declared as readOnly: true. When this is set, the underlying volume mount will likewise be marked as read-only and the task will not be able to write to the volume. (#1760)
    A ConfigMap can be bound to a workspace. This allows users to easily expose the contents of a ConfigMap as a volume in Task containers. (#1800)
    Secrets can now be used for the contents of task workspaces. Users can now more easily declare and expose a secret as a volume for tasks to use in their step containers. (#1801)
    Pipelines and PipelineRuns can now declare workspaces to more easily thread shared storage through the tasks in a pipeline (#1866)

  • ✨ PipelineResource enhancements

    Do not error out in case of extra, unused resource (#1679)
    PullRequestResource: Adds read-only pr.json to include other various pull request information. (#1685)
    Introducing a new key called optional as part of the PipelineResourceDeclaration by default a resource is required (as is - no change in behavior). (#1601)

  • ✨ Adding support for taskSpec with pipelineSpec
    Allow embedding task specification with taskSpec under pipelineSpec (#1554)

  • ✨ Add Go module support for pipelines. (#1607)

  • ✨ PodTemplates enhancements

    Support the automountServiceAccountToken, dnsPolicy, dnsConfig, and enableServiceLinks fields in pod templates (#1781)
    Add support for default pod template (#1901)

  • ✨ Use tekton instead of all as categories 🎿

    Remove the category all for our CRD and have a tekton categorie that is shared with other tektoncd projects (#1884)

  • ✨ Changes to add results to a task

    Add results to the task spec and handle all changes in the entrypoint code. (#1888)

  • ✨ Don't hard-code too much 😝
    The webhook service and deployment can have a name specified by the user. (#1724)
    ConfigMaps used to configure artifact storage can have a name specified by the user (#1723)

  • ✨ Reflect tektoncd/pipeline release version as an annotation on pod
    tekton.dev/release annotation will be added to all pods created by the controller which would let us know what release of tekton is running. (#1758)

  • ✨ Add support for from usage in Pipeline Conditions

    Resources in Pipeline Conditions can now declare that they depend on the output of previous tasks using the from clause. (#1527)

  • ✨ Issue 1182: Add sslVerify flag to pipelineresource type git

    The sslVerify parameter is now available on PipelineResource's of type git. This property defines whether http.sslVerify should be set to true or false in the global git config. Setting the property to false will disable certificate validation during the running of the git fetch against the git server and will be of use to people hosting git servers with self signed certificates. The parameter sslVerify defaults to true if omitted. (#1752)

  • ✨ Add Description to ResourceDeclaration (#1875)

  • ✨ Make default managed-by label configurable

    The default app.kubernetes.io/managed-by label value is configurable in a ConfigMap (#1893)

  • ✨ Add gitlab support to the PR resource. (#1550)

Additionaly there has been ground work on the next API version, v1alpha2:

  • ❇️ Add Task to v1alpha2 πŸŽ‹ (#1651)
  • ❇️ Port workspace and script without shebang to v1alpha2 (#1841)
  • ❇️ Add TaskRun to v1alpha2 πŸŽ‹ (#1725)
  • ❇️ Add Pipeline to v1alpha2 πŸŽ‹ (#1864)

Deprecation Notices

  • 🚨 Removes unused status fields from Pipeline and PipelineResource.

    Those fields stays in v1alpha1 but should be gone in the next API version (#1640, #1762, #1766)

  • 🚨 Don't rely on .status.podName to find Pod associated with a TaskRun

    TaskRuns identify Tekton-owned Pods using label selectors, instead of relying on the value of .status.podName. This valus is still provided in case clients rely on its presence. (#1709)

Backwards incompatible changes

In current release:

  • 🚨 Remove /builder/home mount (#1700)

    Possibly breaking: Remove /builder/home volume mount; users should use the value of $HOME, which points to /tekton/home```

  • 🚨 Reserve /tekton/ paths and "tekton-internal-" volume names

    Reject volune names starting with "tekton-internal-" and volume mounts mounting under /tekton/* -- these are reserved for Tekton internal implementation details. (#1701)

  • 🚨 Remove the support for legacy image output paths.

    Support for the legacy image output path (/builder/home/image-outputs) has been removed. The new location (/workspace/output/) should be used instead. (#1671)

  • 🚨 Remove support for the name parameter to cluster resources.

    Support for the "name" parameter to the cluster resource has been removed. Users should use the standard "name" parameter on the resource object itself instead. (#1672)

Fixes

  • πŸ› Restrict length of volumes generated from secret names (#1756)
  • πŸ› Fix bug in entrypoint lookup for steps by digest (#1675)
  • πŸ› Handle injected sidecars more correctly (#1688)
  • πŸ› Set scm.PR.Sha to scm.PR.Head.Sha when loading from disk. (#1693)
  • πŸ› Mark task as failed if OOMKilled. (#1812)
  • πŸ› Fix passing -submodules flag to git-init (#1813)
  • πŸ› Correctly report step start times (#1722)
  • πŸ› Issue 1862: Gitlab status upload fails with missing commit error (#1863)
  • πŸ› Avoid stuck on pending when hit "CreateContainerConfigError" (#1907)

Misc

  • πŸ”¨ Split out step resource request management (#1655)
  • πŸ”¨ Don't fail if there are no comments, labels or statuses. (#1666)
  • πŸ”¨ Generate Pod name using names package (#1664)
  • πŸ”¨ Restore builder/home for publish nightly (#1667)
  • πŸ”¨ Add workingdir integration test (#1625)
  • πŸ”¨ Set default resource requests in Pod test builder (#1668)
  • πŸ”¨ Add copyright headers in pkg/pod (#1669)
  • πŸ”¨ Fetch {Cluster}Tasks using generated client (#1662)
  • πŸ”¨ Address review comments from #1653 (#1670)
  • πŸ”¨ Store tektoncd/pipeline release version to a variable during build (#1650)
  • πŸ”¨ Use dogfooding ko image during release and nightly 🌞 (#1678)
  • πŸ”¨ Move image data extraction into entrypoint_lookup.go (#1686)
  • πŸ”¨ Add golint to the linters (#1682)
  • πŸ”¨ Bump plumbing to get latest fixes πŸ‘¨β€πŸš€ (#1699)
  • πŸ”¨ Fix lint failure (#1708)
  • πŸ”¨ Remove imports of golang.org/x/xerrors (#1711)
  • πŸ”¨ Fix linter errors in log messages (#1719)
  • πŸ”¨ Increase the linter timeout to 5m (#1726)
  • πŸ”¨ Simplify variable substitution tests βš—οΈ (#1702)
  • πŸ”¨ Fix golint error strings. (#1732)
  • πŸ”¨ Rename constants.go to storagetypes.go πŸ’Ž (#1730)
  • πŸ”¨ Fixes flaky metrics unit tests (#1731)
  • πŸ”¨ Cleanup the prow nightly release task and pipeline (#1718)
  • πŸ”¨ Format pullrequest-init example JSON files. (#1728)
  • πŸ”¨ Move context*.go to pkg/contexts and add tests 🎐 (#1720)
  • πŸ”¨ Use the ko image with gcloud for release (#1734)
  • πŸ”¨ Pin the version of golangci-lint in release pipeline (#1721)
  • πŸ”¨ Fix nightly modules tags (#1737)
  • πŸ”¨ Fix the release docs (#1738)
  • πŸ”¨ (Temporarly) disable markdown link check πŸ˜… (#1743)
  • πŸ”¨ Parameterize git clone depth and fix disabling submodules (#1729)
  • πŸ”¨ Move *RunControllerName out of v1alpha1 🐸 (#1706)
  • πŸ”¨ Call gcloud auth activate-service-account if GOOGLE_APPLICATION_CREDENTIALS is set (#1757)
  • πŸ”¨ go.mod changes: less replace (#1751)
  • πŸ”¨ Use vendored version of plumbing instead of go get 🦸 (#1763)
  • πŸ”¨ Running ./hack/update-deps.sh on master 🍢 (#1767)
  • πŸ”¨ Correcting Comment Typos and Updating cancelPipelineRun Error Message (#1780)
  • πŸ”¨ Ignore code coverage for auto generated file (#1778)
  • πŸ”¨ Python2 has been deprecated (#1799)
  • πŸ”¨ Change variable name: non-existent variabl...
Read more