Skip to content

Tekton Pipeline release v0.43.0 "British-Shorthair Jarvis"

Compare
Choose a tag to compare
@tekton-robot tekton-robot released this 22 Dec 14:26

πŸŽ‰ Larger Results, Custom Tasks Beta, V1 CRDs, Improved Retries, and Environment Variables in PodTemplate πŸŽ‰

-Docs @ v0.43.0
-Examples @ v0.43.0

Installation one-liner

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

Attestation

The Rekor UUID for this release is 24296fb24b8ad77ab5c2fccf5d8344332332d06ae5cc99d8daa86744b122e3a4a875b8842315d884

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77ab5c2fccf5d8344332332d06ae5cc99d8daa86744b122e3a4a875b8842315d884
rekor-cli get --uuid $REKOR_UUID --format json | jq -r .Attestation | jq .

Verify that all container images in the attestation are in the release file:

RELEASE_FILE=https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.43.0/release.yaml
REKOR_UUID=24296fb24b8ad77ab5c2fccf5d8344332332d06ae5cc99d8daa86744b122e3a4a875b8842315d884

# Obtains the list of images with sha from the attestation
REKOR_ATTESTATION_IMAGES=$(rekor-cli get --uuid "$REKOR_UUID" --format json | jq -r .Attestation | jq -r '.subject[]|.name + ":v0.43.0@sha256:" + .digest.sha256')

# Download the release file
curl "$RELEASE_FILE" > release.yaml

# For each image in the attestation, match it to the release file
for image in $REKOR_ATTESTATION_IMAGES; do
  printf $image; grep -q $image release.yaml && echo " ===> ok" || echo " ===> no match";
done

Changes

Features

  • ✨ TEP-0127-: Larger results using sidecar logs - Always enforce ReservedSidecarName validation (#5877)
    Always enforce ReservedSidecarName validation check regardless of what the results-from feature flag is set to.

  • ✨ TEP-0114: Enable Custom Tasks in Pipelines by Default (#5858)
    Custom Tasks in Pipelines are enabled by default. To disable, set enable-custom-tasks feature flag "false".

  • ✨ TEP-0121: Adds a new field for TaskRun (#5842)
    API change: new Retries field in v1beta1.TaskRun and v1.TaskRun.

  • ✨ TEP-0127: Larger results using sidecar logs - parsing sidecar logs to extract results (#5840)
    Parsing sidecar logs to extract results into the task run CRD.

  • ✨ TEP-0127: make stdout and stderror paths readable (#5838)
    Make stdout and stderr files readable by all.

  • ✨ TEP-0127: Larger results using sidecar logs - entrypoint, sidecar binary and injecting results sidecar (#5834)
    Implemented sidecar binary and entrypoint related changes.

  • ✨ TEP-0114: Add support for PipelineRun reconciler to create CustomRuns (#5832)
    Custom task runs created from PipelineRuns can now be v1beta1.CustomRuns instead of v1alpha1.Runs, if the "custom-task-version" feature flag is set to "v1beta1", instead of the default "v1alpha1". Note that custom task controllers would need to be updated to listen for *v1beta1.CustomRun instead of *v1alpha1.Run in order to respond to v1beta1.CustomRuns.

  • ✨ TEP-0127: Larger results using sidecar logs - feature flags and cluster-roles (#5828)
    Implemented feature flags to enable larger results using sidecar logs.

  • ✨ [TEP-0091] Add VerificationPolicy types to configure public keys (#5714)
    VerificationPolicy is added as a v1alpha1 type to enable users to config public keys for trusted resources.
    Please refer to https://github.com/tektoncd/pipeline/blob/main/docs/trusted-resources.md for more details

  • ✨ TEP-0101 PodTemplate should support environment variables. (#5699)
    PodTemplate can be used to update environment variables globally as well as PipelineRun and TaskRun level.
    Added new configuration option default-forbidden-env to disallow specified environment variables from being updated via podTemplate.

  • ✨ TEP-0127: Larger results using sidecar logs: Validation, documentation and examples (#5695)
    Admission webhook validation to ensure that the reserved sidecar name is not used by the user, user documentation and larger results TaskRun and PipelineRun examples.

  • ✨ Add a PipelineRun Example for Creating a Wait CustomRun (#5906)

  • ✨ TEP-0121: Retries - Reconciler Implementation (#5844)

  • ✨ TEP-0114: Migrate the testing Wait Task to reconcile on v1beta1.CustomRun (#5815)

Fixes

  • πŸ› string results that can be parsed as json should not fail (#5814)

    Task can emit string type results that can be parsed as json.

  • πŸ› Fix apiVersion assignment in ChildReference Conversion (#5854)

  • πŸ› TEP-0121: Modify metrics recorder for TaskRun Retries (#5853)

  • πŸ› Add v1 clients for examples_test (#5799)

  • πŸ› Add PipelineRunStatus Conversion (#5797)

  • πŸ› ref: prompt for specific error fields (#5682)

Misc

  • πŸ”¨ TEP-0127: Larger Results via Sidecar Logs - Cleanup (#5843)
    Moved config to enable access to sidecar logs into a different folder.

  • πŸ”¨ TEP-0114: Add FilterFuncs for CustomRun (#5822)
    Add FilterFuncs for custom task controllers using CustomRuns

  • πŸ”¨ Change all ducktype status to v1 (#5809)
    API changes: swap all duckv1beta1 status to duckv1 status

  • πŸ”¨ V1 CRD release (#5579)
    Releases v1 CRD for task, taskrun, pipeline and pipelinerun. Served v1 CRDs are included in this release for users as a preview, and also for users to start preparing for the migration. v1 is served but CLI, Dashboard, Chains etc support won't be available until the following release. v1 will be the official version starting with the next release when it has been released as the storage version.

  • πŸ”¨ Fix Wrong Condition Reason When Fails to Stop Sidecars for A Finished TaskRun (#5901)

  • πŸ”¨ Sorted linters -- because neatness counts. (#5898)

  • πŸ”¨ [pkg/remote] clean up ioutil (#5895)

  • πŸ”¨ Enabled the whitespace linter. (#5889)

  • πŸ”¨ [pkg/termination] cleanup io/ioutil (#5885)

  • πŸ”¨ Replaced deadcode linter with unused linter. (#5881)

  • πŸ”¨ [pkg/pullrequest] cleanup ioutil for new go version (#5880)

  • πŸ”¨ [pkg/credentials] clean up io/ioutil package (#5879)

  • πŸ”¨ [pkg/entrypoint] remove ioutil for new go version (#5878)

  • πŸ”¨ Stop Metric Recorder Listing TaskRuns When Records Data (#5876)

  • πŸ”¨ Added govet to our Golang linter suite (#5871)

  • πŸ”¨ Increases Test Coverage on GetSkippedTasks() (#5856)

  • πŸ”¨ Align the naming when referring to a TaskRun in comments in taskrun_types.go (#5847)

  • πŸ”¨ Remove return error in GetTaskFunc and GetPipelineFunc (#5826)

  • πŸ”¨ Refactor events to decouple k8s event and cloud event (#5817)

  • πŸ”¨ Bump github.com/containerd/containerd from 1.6.12 to 1.6.14 (#5908)

  • πŸ”¨ Bump github.com/jenkins-x/go-scm from 1.11.35 to 1.12.3 (#5905)

  • πŸ”¨ Bump github.com/containerd/containerd from 1.6.10 to 1.6.12 (#5855)

  • πŸ”¨ Bump golang.org/x/crypto from 0.3.0 to 0.4.0 (#5845)

  • πŸ”¨ Bump golang.org/x/oauth2 from 0.2.0 to 0.3.0 (#5839)

  • πŸ”¨ Add embedded-status to config-feature-flags.yaml (#5825)

  • πŸ”¨ Bump go.uber.org/zap from 1.23.0 to 1.24.0 (#5816)

  • πŸ”¨ Add TaskRunStatus Conversion (#5794)

  • πŸ”¨ Bump github.com/sigstore/sigstore from 1.4.5 to 1.4.6 (#5792)

  • πŸ”¨ Bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#5774)

  • πŸ”¨ Skip TestGitResolver_API on other archs (#5713)

  • πŸ”¨ [test] clean up io/ioutil package (#5894)

Docs

  • πŸ“– Update releases for v0.42.0 (#5789)
    Update releases file for v0.42.0

  • πŸ“– Fix typo (#5787)
    Fix typo

  • πŸ“– docs: fixing wrong matrix syntax in some places (#5911)

  • πŸ“– Added documentation for local golangci-lint use. (#5900)

  • πŸ“– TEP-0127: Add "Larger Results via Sidecar Logs" to alpha features (#5888)

  • πŸ“– fix errant backtick in TOC link (#5860)

  • πŸ“– TEP-0114: Migration Doc for Custom Task Beta Promotion (#5850)

  • πŸ“– Add TaskRuns and Runs Status migration deprecation fields (#5811)

  • πŸ“– TEP-0114: Clarify that CustomRun is the beta version of Run (#5801)

Thanks

Thanks to these contributors who contributed to v0.43.0!

Extra shout-out for awesome release notes: