MyGit

v0.36.0

tektoncd/pipeline

版本发布时间: 2022-06-01 16:44:56

tektoncd/pipeline最新发布版本:v0.63.0(2024-08-31 02:58:24)

🎉 Params and Workspace propagation, Task Remote resolution, Dictionary in Params, Array in Results and Minimal status 🎉

-Docs @ v0.36.0 -Examples @ v0.36.0

Installation one-liner

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

Attestation

The Rekor UUID for this release is 0c2001385a53e34162b7370fbe72fc99f464a8de78fb1d134e93e9bb99d076c2

Obtain the attestation:

REKOR_UUID=0c2001385a53e34162b7370fbe72fc99f464a8de78fb1d134e93e9bb99d076c2
rekor-cli get --uuid $REKOR_UUID --format json | jq -r .Attestation | base64 --decode | 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.36.0/release.yaml
REKOR_UUID=0c2001385a53e34162b7370fbe72fc99f464a8de78fb1d134e93e9bb99d076c2

# Obtains the list of images with sha from the attestation
REKOR_ATTESTATION_IMAGES=$(rekor-cli get --uuid "$REKOR_UUID" --format json | jq -r .Attestation | base64 --decode | jq -r '.subject[]|.name + ":v0.36.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

Users can specify the Workspace to use for PipelineTask in the name label to reduce verbosity when the names of the Workspaces declared in the Pipeline and PipelineTask are the same. Users can continue to explicitly map Workspaces.

Allow taskRefs to be resolved directly from public git repos, using the tektoncd/resolution project.

Added helper functions for retrieving full TaskRun and Run statuses when using embedded-status=minimal.

Parameters are propagated in embedded specifications without mutations.

Support Specifying Metadata per Task in Runtime (PipelineRun)

Add support for dictionary in Params values (and Results as well). This should affect backward compatibilities but it will break forward compatibilities in some cases (a.k.a. old client with new pipeline version) action required: This changes the ArrayOrStruct structure, which will have effect on project using the go API as a library.

Extract full parameter name when using dots inside single/double quotes.

Added validation for parameters with bracket notation

Add SkippingReason to SkippedTasks field of PipelineRunStatus. This enables users to know the exact reason why a given PipelineTask was skipped.

Support array type for emitting results from a task as an alpha feature.

The type of the result is changed from string to ArrayOrString.

A task can specify a type to produce array result, such as:

  results:
    - name: array-results
      type: array
      description: The array results

And the task script can populate result in an array form with:

echo -n "[\"hello\",\"world\"]" | tee $(results.array-results.path)

This feature is part of the TEP-0076 and its in progress to index into the array result while consuming that result.

Add validation for duplicated param names in TaskSpec.

Add Type for TaskRunResult and TaskResult.

Deprecation Notices

Deprecate timeout field in PipelineRuns and promote PipelineRun.Timeouts field from alpha to stable

Backwards incompatible changes

Implicit Parameters is deprecated and removed. A replacement feature will be included in the same release. This only affect users who enable alpha api feature gate

Fixes

SBOM generated during the release process now works and is available along with released images. SBOM can be retrieved for instance using "cosign download bom "

Pods will not be unconditionally PATCHed to set the ready annotation, avoiding some API server traffic.

he entrypoint resolve will now reslove Entrypoint and Cmd in case the steps has no command and no args specified.

place-tools and step-init init containers are merged together to reduce the number of container in each Task's Pod.

Variable are now correctly interpolated on stepTemplate field for Task

Omit init containers from limitrange default request calculations

Fix tekton_pipelines_controller_pipelinerun_count which was increasing without any new addition of pipelinerun.

Misc

Add deprecated Step/StepTemplate fields to deprecation table

Deprecate unusable/unsupported fields of Step and StepTemplate

SBOM built by "ko" in SPDX format is published along Tekton container images

[Change to Go libraries]: Task.Step, Task.StepTemplate, and Task.Sidecar use Container fields directly instead of embedding the Container struct

Docs

Thanks

Thanks to these contributors who contributed to v0.36.0!

Extra shout-out for awesome release notes:

相关地址:原始地址 下载(tar) 下载(zip)

1、 release.notags.yaml 79.67KB

2、 release.yaml 79.74KB

查看:2022-06-01发行的版本