github tektoncd/pipeline v0.15.0
Tekton Pipeline release v0.15.0 "Ragamuffin R2-D2"

latest releases: v0.59.0, v0.50.6, v0.47.9...
3 years ago

πŸŽ‰ Cloud Events, Run CRD, more variables and better docs πŸŽ‰

-Docs @ v0.15.0
-Examples @ v0.15.0

Installation one-liner

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

Upgrade Notices

πŸ“£ The minimum Kubernetes version is now 1.16. πŸ“£

Known Issues

There is a known issue with PullRequest Resources in 0.15.0: Tasks that write a pr.json file to be used by an output PullRequest PipelineResource will see permission errors when run: The output PullRequest Resource will attempt to read the pr.json file but will not be able to because the injected PullRequest Step is not running as root. To workaround this issue in the short term you can modify permissions on the pr.json file to be world-readable (e.g. run chmod 777 on the pr.json file in your Step). A 0.15 point release is planned to address this issue.

Changes

Features

  • ✨ Use cloud event native retries for cloud event pipeline resource (#3003)
    Cloud events sent via CloudEventPipelineResource now use retries with backoff.

  • ✨ Add pipeline run support for cloud events (#2938)
    Add cloud events for pipeline runs via the configuration option default-cloud-events-sink.
    When the default sink is setup, cloud events are sent, else they're disabled.

Send cloud events (when enabled) from the pipeline run and controller, for all non-error
events that are already notified via k8s events.

  • ✨ Add Default TaskRun Workspace Bindings to config-default (#2930)
    Users can now set a default Workspace configuration for any Workspaces that a Task declares but that a TaskRun does not explicitly provide. It can be set in the config-defaults ConfigMap in default-task-run-workspace-binding.

  • ✨ Add namespace variable interpolation for pipelinerun namespace and (#2926)
    Add namespace variable interpolation in context. for pipelinerun namespace and taskrun namespace.

  • ✨ Wire up webhook validation for Run objects (#2916)

  • ✨ Define a helper method pkg/controller.FilterRunRef (#2915)

  • ✨ Define v1alpha1 Run type and generated scaffolding (#2871)

Introduce the Run CRD. The new CRD will support the definition of new
kind of Tasks to be integrated in the pipelines.
Runs are an experimental alpha feature and should be expected to change
in breaking ways or even be removed.

Runs are not currently integrated with Pipelines, and require a running
third-party controller to actually perform any work. Without a third-party
controller, Runs will just exist without a status indefinitely.

  • ✨ Validate TaskRun compatibility with the Affinity Assistant (#2885)
    A TaskRun that mount more than one PVC-backed workspace is incompatible
    with the Affinity Assistant. Validation has been added to handle this case.

  • ✨ Allow variable substitution inside csi volumes parameters (#2643)
    This PR allow to use parameters in CSI volume parameters.

  • ✨ PR upload validates comment file extension (#2462)
    Comment files under a PullRequest need to have either:

  • no extension: for comment files that contain comment as plain text
  • .json extension: for comment files in JSON format

Deprecation Notices

None this time.

Backwards incompatible changes

None this time.

Fixes

  • πŸ› Add omitempty for SchedulerName, ImagePullSecrets, HostNetwork (#3032)
  • πŸ› Make string variable interpolation deterministic, and single-pass. (#3024)
  • πŸ› Fix assignments to nil map issues (#3001)
  • πŸ› Update shell-image to current gcr.io/distroless/base:debug SHA (#2999)
  • πŸ› Use a hash of the workspace name in PVCs from template (#2961)
  • πŸ› Remove ssh-keyscan from git credential initialization (#2953)
  • πŸ› Dont write creds-init files if none of that type are mounted (#2940)
  • πŸ› dep: update golang.org/x/text to v0.3.3 (#2929)
  • πŸ› variable substitution in finally section (#2908)
  • πŸ› change value of app.kubernetes.io/version label (#2900)
  • πŸ› Include Task name in err message when validating (#2899)
  • πŸ› cloudevent: make sure we enter the channel before… (#2895)
  • πŸ› Fix TestTaskRunPipelineRunCancel failure (#2850)

[Fill list here]

Misc

  • πŸ”¨ Run TestReconcileTimeouts as separate tests ⏰ (#3030)
  • πŸ”¨ Add nop-image to release configs (#3025)
  • πŸ”¨ Align release-generated .ko.yaml with repo config (#3018)
  • πŸ”¨ Remove default flag values for image names (#3016)
  • πŸ”¨ Add a minimal nop image (#3014)
  • πŸ”¨ deleting hard coded taskrun controller name (#3012)
  • πŸ”¨ Some timeout refactoring (#3011)
  • πŸ”¨ Update the google/go-containerregistry library to an actual release. (#2988)
  • πŸ”¨ Use filepath.Join instead of string formatting. (#2985)
  • πŸ”¨ Change podconvert.MakePod func into a configuration struct with methods (#2982)
  • πŸ”¨ Remove the "baseBuildOverrides" flag from .ko.yaml (#2972)
  • πŸ”¨ Enable the "misspell" linter, and fix some misspellings. (#2964)
  • πŸ”¨ Enable the deadcode linter in golangci, and clean up dead code. (#2960)
  • πŸ”¨ Remove an unused line of code from oci/resolver.go (#2959)
  • πŸ”¨ Add pipeline artifact config to the shared config store (#2947)
  • πŸ”¨ Add some missing json annotations. (#2920)
  • πŸ”¨ [master] Auto-update dependencies (#2910)
  • πŸ”¨ Use sets.NewString from apimachinery (#2909)
  • πŸ”¨ Stop using PATCH to update labels/annotations (#2907)
  • πŸ”¨ refactoring pipelinerun unit test (#2876)
  • πŸ”¨ Pick up the latest knative/pkg and K8s 0.17.x (#2846)
  • πŸ”¨ Remove legacy Cluster Resource behavior left in place for the 0.14.0 … (#2808)
  • πŸ”¨ Use MarkStatus* helpers in pkg/pod/status (#2804)
  • πŸ”¨ Add a test to ensure that labels are updated as a part of TaskRun (#2785)
  • πŸ”¨ Add kodata for the nop image (#3042)
  • πŸ”¨ [master] Auto-update dependencies (#3037)
  • πŸ”¨ Add .status.extraFields to the RunStatus type (#2991)
  • πŸ”¨ tekton/release-pipeline: run test after precheck (#2955)
  • πŸ”¨ Add Priti as an owner πŸŽ‰ (#2948)
  • πŸ”¨ Makefile: bump golangci-lint to 1.28.0 βš“οΈ (#2904)
  • πŸ”¨ Makefile: add a cross target 🌡 (#2903)
  • πŸ”¨ Update the pull_request_template for release-note πŸ“– (#2882)
  • πŸ”¨ Use OWNER_ALIASES defined teams and add area/* labels (#2839)
  • πŸ”¨ Google/ko 5.0+ requires images to be prefixed by ko:// . (#2675)

Docs

  • πŸ“– small typo fix (#3040)
  • πŸ“– follow on from PR 3010, formatting fix and updating resource requirements for minikube (#3034)
  • πŸ“– Remove mention of ssh-keygen from auth doc (#3033)
  • πŸ“– Document using custom SSH port for git repos (#3022)
  • πŸ“– Fixes #2971, adding a section to the tutorial for using minikube when running locally (#3010)
  • πŸ“– Rewrite the Knative Build migration guide for clarity and flow. (#2996)
  • πŸ“– Fix: host.docker.internal instead of host.docker.local (#2993)
  • πŸ“– fixes 2978, missing command in monitoring steps (#2990)
  • πŸ“– Rewrite the "Pod Templates" documentation for clarity and flow. (#2983)
  • πŸ“– TUTORIAL: Fix docker registry credentials issue (#2980)
  • πŸ“– README: fix typo with doc text (#2976)
  • πŸ“– Fix minor format issues (#2963)
  • πŸ“– README.md: add v0.14.1 and v0.14.2 release, docs links (#2956)
  • πŸ“– Rewrites the "Labels" documentation for clarity and flow. (#2946)
  • πŸ“– Flesh out the docs on using results in Pipelines (#2945)
  • πŸ“– Document that Task Results dont get trimmed (#2942)
  • πŸ“– Rewrite the "Logs" documentation for clarity and flow. (#2939)
  • πŸ“– Document all locations that variable substitution is available (#2927)
  • πŸ“– Fix a typo in development.md file (#2923)
  • πŸ“– Rewrite the "Events" documentation for clarity and flow. (#2919)
  • πŸ“– Rewrite the "Container Contract" documentation for clarity and flow. (#2914)
  • πŸ“– Rewrite the "Metrics" documentation for clarity and flow. (#2913)
  • πŸ“– Add extended documentation about PersistentVolumes within a PipelineRun (#2912)
  • πŸ“– Fix documentation about cloudevents (#2911)
  • πŸ“– Update README docs pointing to 0.14.0 release (#2896)
  • πŸ“– Fix documentation about tasks (#2893)
  • πŸ“– Improve workspace documentation (#2890)
  • πŸ“– Rewrite the Condition documentation for clarity and flow. (#2867)

Thanks

Thanks to these contributors who contributed to v0.15.0!

Extra shout-out for awesome release notes:

Don't miss a new pipeline release

NewReleases is sending notifications on new releases.