Tekton Pipeline release v0.29.0 "Abyssinian Atom"
π πͺ Windows TaskRuns! πͺ π
-Docs @ v0.29.0
-Examples @ v0.29.0
Installation one-liner
kubectl apply -f https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.29.0/release.yaml
Attestation
The Rekor UUID for this release is 8ba5dcc45b9fad4d879a8b6815cdaa85fdee1d9fc24cf8811f103d537c602908
Obtain the attestation:
rekor-cli get --uuid 8ba5dcc45b9fad4d879a8b6815cdaa85fdee1d9fc24cf8811f103d537c602908 --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.29.0/release.yaml
REKOR_UUID=8ba5dcc45b9fad4d879a8b6815cdaa85fdee1d9fc24cf8811f103d537c602908
# 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.29.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
β οΈ Known Issues
- #4483 Implicit parameter mapping incorrectly passes params from the top-level
Pipeline
orPipelineRun
totaskRef
Pipeline Tasks. Mapping should only occur from top-level resource to Pipeline Tasks with in-linetaskSpec
. This issue only affects users withenable-api-fields: alpha
in thefeature-flags
ConfigMap
stored in thetekton-pipelines
namespace.
Changes
Features
- β¨ Build entrypoint image for Windows (#4260)
The entrypoint multi-arch image now includes an image built for Windows, allowing TaskRuns to execute on Windows nodes.
Notes:
- πͺ There is a Windows page in the docs folder which outlines some important details about running Windows workloads in Tekton
- πͺ If a Windows task and a Linux task are both sharing a PersistentVolumeClaim workspace, the affinity assistant may need to be disabled (those two tasks cannot run on the same node).
- πͺ PipelineResources have not been tested for Windows tasks and probably won't work.
- πͺ Windows TaskRuns require - at least for now - privileged mode
Thanks for all the contributors for making this possible. We look forward to users feedback!
- β¨ Support for single-quote bracket notation for params (#4268)
Params and result can now be referenced with bracket notation using both single and double quotes in addition to dot notation. For example, the following are equivalent:
- β¨ Promoting "onError" to beta π (#4251)
Announcement: onError in a step is now stable and available to include in your task definition without any flag.
Fixes
- π Verify failure of
PipelineRun
inTestGitPipelineRunFail
(#4273) - π release: Drop windows from pipeline-wide platforms (#4308)
- π Don't pass the pipeline's default platforms value to the publish-image task (#4305)
- π release: Include windows in pipeline default platforms (#4304)
- π nightly: Configure auth before pushing combined base image (#4302)
- π Fix nightly release process (#4301)
- π Updates webhook cluster role to work with Owner References (#4269)
- π Ignore env var ordering in taskrun reconciler tests (#4286)
Misc
- π¨ Remove unused error type CannotConvertError (#4281)
Remove unused error type CannotConvertError
- π¨ Split /tekton/run directories into separate volumes. (#4278)
- π¨ Remove upgrade via defaulting (#4275)
Use only the conversion webhook to upgrade types, remove upgrade mechanism in the defaulter
- π¨ Removing internal/builder/v1alpha1 and all usages (#4270)
- π¨ Only add gcr.io images to publish results (#4283)
Due to a technical limitation, only images published to gcr.io
, which are included in the release.yaml
, are signed.
Images on eu.gcr.io
, us.gcr.io
and asia.gcr.io
are not signed yet.
- π¨ Fix unreachable code in
TestReconcileCancelledFailsTaskRunCancellation
(#4312) - π¨ Clean up a bunch of exported comments to actually match the element (#4311)
- π¨ Update comment for
dag.GetSchedulable
(#4310) - π¨ Remove last lingering unnecessarily exported functions (#4296)
- π¨ Switch
test/*.go
to using YAML rather than structs (#4288) - π¨ Convert test/cluster_resource_test.go's Tekton structs to YAML (#4284)
- π¨ Removing internal/builder completely (#4277)
- π¨ pkg/pod: extract overrideHomeEnv/WorkingDir outside (#4250)
- π¨ pkgs: move affinity assistant to a pod transformer (#4245)
- π¨ pkg/pod: simplify orderContainers returns (#4244)
- π¨ Bump some stale dependencies in go.mod. (#4243)
- π¨ Mount entrypoint volume as read-only. (#4242)
- π¨ Mark Downward API VolumeMount as readonly. (#4236)
- π¨ Have
[Cluster]Task
andPipeline
implementkmeta.OwnerRefable
. (#4295) - π¨ Generate reconcilers for
[Cluster]Tasks
andPipelines
. (#4293) - π¨ Make sure images stored in registry mirrors are signed (#4262)
- π¨ Remove sbwsg from OWNERS_ALIAS file (#4249)
Docs
- π Add reference to authoring recommendations (#4318)
- π fix couple of small typos (#4292)
- π Fix Example in Service Account Documentation (#4274)
- π Update ToC in TaskRuns documentation (#4265)
- π Document Alpha Features (#4246)
- π links to the patch release v0.28.2 (#4314)
- π adding an entry for v0.28.1 π’ (#4267)
- π adding links to pipeline release 0.28 (#4252)
- π Revamp Tekton developer docs for /tekton paths. (#4238)
Thanks
Thanks to these contributors who contributed to v0.29.0!
- β€οΈ @abayer
- β€οΈ @afrittoli
- β€οΈ @dlorenc
- β€οΈ @guillaumerose
- β€οΈ @imjasonh
- β€οΈ @jerop
- β€οΈ @mattmoor
- β€οΈ @nbaudis
- β€οΈ @pritidesai
- β€οΈ @priyawadhwa
- β€οΈ @sbwsg
- β€οΈ @skaegi
- β€οΈ @vaikas
- β€οΈ @vdemeester
- β€οΈ @wlynch
Extra shout-out for awesome release notes:
- π @abayer
- π @afrittoli
- π @guillaumerose
- π @imjasonh
- π @jerop
- π @nbaudis
- π @pritidesai
- π @skaegi
- π @vaikas
- π @wlynch