Tekton Triggers v0.13.0
Tekton Triggers v0.13.0
-Docs @ v0.13.0
-Examples @ v0.13.0
Installation
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.13.0/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.13.0/interceptors.yaml
Upgrade Notices
-
As of this release, the Triggers release will contain two YAML files.
release.yaml
contains the core release artifacts whileinterceptors.yaml
contain the 4 core interceptors (GitHub, GitLab, BitBucket, and CEL). -
The EventListener ServiceAccount will now need a ClusterRole (and corresponding ClusterRoleBinding) to use the new ClusterInterceptor types (example)
How to upgrade from v0.12.1 :up_arrow:
- Apply the new releases
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.13.0/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.13.0/interceptors.yaml
- Update your EventListener's ServiceAccount so that it can access ClusterInterceptors:
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: tekton-triggers-example-clusterrole
rules:
# EventListeners need to be able to fetch any clustertriggerbindings
- apiGroups: ["triggers.tekton.dev"]
resources: ["clustertriggerbindings", "clusterinterceptors"]
verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: tekton-triggers-example-clusterbinding
subjects:
- kind: ServiceAccount
name: tekton-triggers-example-sa
namespace: default
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: tekton-triggers-example-clusterrole
Changes
Features
-
✨ Adding label selector for triggers (#970)
Users can now configure triggers for an EventListener using labels
-
✨ Added URL field to WebhookInterceptor (#1002)
Users can now configure webhook interceptors by referencing a URL
-
✨ Add ClusterInterceptor CRD for registering interceptors (#960)
A new CRD called ClusterInterceptor has been added that allows for users to register new pluggable Interceptor types
-
✨ Add API to configure Interceptors from a Trigger (#1001)
Trigger spec authors can now configure interceptors using a new API that includes a
ref
field to refer to a ClusterInterceptor, and
aparams
field to add parameters to pass on to the interceptor for processing -
✨ Migrate core interceptors to use InterceptorType CRD (#976)
The four bundled interceptors (CEL, GitHub, GitLab, BitBucket) are now implemented using the new ClusterInterceptor CRD
-
✨ Migrate core interceptors to new format (#1029)
Any new Triggers created using the old style syntax for core interceptors is now automatically switched to the new refs/params
based syntax.
Deprecation Notices
-
🚨 Move replicas to KubernetesResource from eventlistener spec (#1021)
Deprecated replicas from EventListener spec level and added replicas to KubernetesResource.
-
🚨 Migrate core interceptors to new format (#1029)
Interceptors in a Trigger are now configured using a new
ref
andparams
based syntax as described in #1001, and in #976 we
have implemented the core interceptors using the new ClusterInterceptor CRD. So, these core interceptors can now be configured
using the new syntax. The old way of configuring these interceptors is now deprecated but it will continue to work until it is removed
in a future release. The defaulting webhook will automatically switch any usages of the old syntax to the new for any new Triggers.
Fixes
- 🐛 Forcing eventlistener sink to resolve eventlistener before startup (#977)
- 🐛 resources: Fail on non-string template labels. (#1030)
- 🐛 Resolving file read issue with binding-eval (#1039)
- 🐛 Resolving cache sync issues (#1037)
- 🐛 Fixes Triggers release pipeline and tasks (#1024)
- 🐛 Cleanup existing k8s resources after updating to customeResources (#1022)
- 🐛 Update selector RBAC to include ClusterInterceptor (#1016)
- 🐛 Sync lister informers before serving traffic (#1013)
- 🐛 fix: Cron task needs to post json body (#989)
Misc
- 🔨 Update triggers, community and cli reference to use main… (#987)
- 🔨 Use v1 API for RoleBinding 🦝 (#1046)
- 🔨 Add separate interceptors file result to release pipeline (#1044)
- 🔨 Update publish task to include core interceptors (#1007)
- 🔨 Update Release Pipeline and associated Task 🧑💻 😺 (#1000)
- 🔨 Add links to versioned docs for v0.12.1 (#999)
Docs
- 📖 Rewrite the Triggers tutorial for clarity and flow (#1018)
- 📖 Delete obsolete file (#1011)
- 📖 Replace debugging-eventlisteners.md with the new Troubleshooting page (#1010)
- 📖 Rewrite debugging-eventlisteners.md for clarity and flow (#1004)
- 📖 Rewrite triggers.md for clarity and flow (#992)
- 📖 Update descriptions for
TriggerTemplates
andTriggerBindings
(#991) - 📖 Rewrite triggerbindings.md for clarity and flow (#988)
- 📖 Rewrite triggertemplates.md for clarity and flow (#981)
- 📖 Update examples to use both old and new syntax (#1028)
- 📖 Update eventlisteners.md (#993)
- 📖 Correct eventlistener docs to properly set service account for a trigger (#984)
- 📖 Add link to versioned docs for v0.12.0 (#982)
- 📖 fix a typo (#979)
- 📖 Fix broken link to Getting Started (#978)
Thanks
Thanks to these contributors who contributed to v0.13.0!
- ❤️ @dibyom
- ❤️ @djfinnoy
- ❤️ @jmcshane
- ❤️ @kscherer
- ❤️ @mpetason
- ❤️ @nikhil-thomas
- ❤️ @savitaashture
- ❤️ @sbose78
- ❤️ @sergetron
- ❤️ @vdemeester
- ❤️ @wlynch
- ❤️ @wstrange
Extra shout-out for awesome release notes:
- 😍 @dibyom
- 😍 @djfinnoy
- 😍 @jmcshane
- 😍 @mpetason
- 😍 @nikhil-thomas
- 😍 @savitaashture
- 😍 @sbose78
- 😍 @vdemeester
To Be Done: Deprecation Notices, Backward Incompatible Changes