Skip to content

Releases: tektoncd/triggers

Tekton Triggers release v0.27.0 "Tekton Triggers"

10 May 12:12
Compare
Choose a tag to compare

-Docs @ v0.27.0
-Examples @ v0.27.0

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.27.0/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.27.0/interceptors.yaml

Attestation

The Rekor UUID for this release is 24296fb24b8ad77a38ac13bedf11db0c356ec34af7a0fd7103d41019a411116900fd90c970ea9d61

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77a38ac13bedf11db0c356ec34af7a0fd7103d41019a411116900fd90c970ea9d61
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/triggers/previous/v0.27.0/release.yaml
INTERCEPTORS_FILE=https://storage.googleapis.com/tekton-releases/triggers/previous/v0.27.0/interceptors.yaml
REKOR_UUID=24296fb24b8ad77a38ac13bedf11db0c356ec34af7a0fd7103d41019a411116900fd90c970ea9d61

# 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.27.0@sha256:" + .digest.sha256')

# Download the release file
curl "$RELEASE_FILE" > release.yaml
curl "$INTERCEPTORS_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

  • ✨ Node port service match kubernetes resource (#1716)

Resolve node port when serviceType is NodePort

  • ✨ Add LoadBalancerClass support in EventListener (#1708)

EventListners have a new field letting you choose on which LoadBalancer you want to expose the underlying service if you have severals.

  • ✨ Remove tekton resource validation (#1699)

Removes the limit of only creating Tekton resources from within your TriggerTemplate. This will allow for other K8s resources to be created as well like for example K8s Jobs.

Fixes

  • 🐛 Fix is-multi-ns flag for triggerGroups (#1725)

Fix that the --is-multi-ns flag on the eventlistener is set to true, when using a namespaceSelector on any triggerGroup.

  • 🐛 Pass Content-Type Header to Interceptor (#1615)

Now Content-Type: application/json is passed to the interceptor while making the request.

Misc

  • 🔨 Bump CEL to v0.20.1 (#1730)

CEL interceptor updated to cel-go v0.20.1 and extensions for manipulating lists, sets and mathematical functions have been added.

  • 🔨 Bump go to 1.21 and pipeline to v0.59.0 LTS (#1722)

Update Go version to 1.21 and Pipelines to v0.59.0. Minimum Kubernetes version is 1.27.

  • 🔨 Update ko to 0.15.1 and Go to go1.22.2 for publish task (#1731)
  • 🔨 Fix GolangCI issues causing test failures (#1724)
  • 🔨 Move inactive maintainers to emeritus status (#1709)

Docs

  • 📖 Add Minimum Kubernetes Version for Triggers (#1728)
  • 📖 Fix API doc by adding TriggerTemplate to Resource Types (#1727)
  • 📖 Document EventListener behaviour as CloudEvent sink (#1710)
  • 📖 Fix typo (#1704)
  • 📖 Add lowerAscii() and upperAscii() to documentation (#1698)

Thanks

Thanks to these contributors who contributed to v0.27.0!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.26.2 "Tekton Triggers"

30 Apr 12:17
Compare
Choose a tag to compare

-Docs @ v0.26.2
-Examples @ v0.26.2

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.2/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.2/interceptors.yaml

Attestation

The Rekor UUID for this release is 24296fb24b8ad77a09d03a4ae6b0a0cc8785588ae183b9194b9e3123e9a5659bffdae449e24d3ae5

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77a09d03a4ae6b0a0cc8785588ae183b9194b9e3123e9a5659bffdae449e24d3ae5
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/triggers/previous/v0.26.2/release.yaml
INTERCEPTORS_FILE=https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.2/interceptors.yaml
REKOR_UUID=24296fb24b8ad77a09d03a4ae6b0a0cc8785588ae183b9194b9e3123e9a5659bffdae449e24d3ae5

# 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.26.2@sha256:" + .digest.sha256')

# Download the release file
curl "$RELEASE_FILE" > release.yaml
curl "$INTERCEPTORS_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

Security Fixes

  • Bump golang.org/x/net to fix CVE issue (#1721)
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 fix CVE issue (#1715)
  • Bump github.com/cloudevents/sdk-go/v2 from 2.14.0 to 2.15.2 fix CVE issue (#1713)

Thanks

Thanks to these contributors who contributed to v0.26.2!

Tekton Triggers release v0.26.1 "Tekton Triggers"

09 Feb 08:51
Compare
Choose a tag to compare

-Docs @ v0.26.1
-Examples @ v0.26.1

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.1/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.1/interceptors.yaml

Attestation

The Rekor UUID for this release is 24296fb24b8ad77ada4bd989265c7c72c1dbd6295312ef4314f485d4221703b03c60f9edd76000c8

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77ada4bd989265c7c72c1dbd6295312ef4314f485d4221703b03c60f9edd76000c8
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/triggers/previous/v0.26.1/release.yaml
REKOR_UUID=24296fb24b8ad77ada4bd989265c7c72c1dbd6295312ef4314f485d4221703b03c60f9edd76000c8

# 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.26.1@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

Fixes

  • 🐛 Revert "Follow naming conventions for resourceTemplates" (#1694)
    Changed the resourceTemplates tag back to resourcetemplates because it's breaking the upgrade flow. This is due to the existing TriggerTemplate data with the old tag still persisting in etcd. Consequently, during an upgrade with the new tag, the data isn't fetched for the trigger template as expected.

Misc

  • 🔨 Modify the Knative package and Serving version to align with the Kubernetes version for compatibility (#1692)
    With this commit, updating the version to maintain consistency with the Kubernetes version of Tekton Pipeline

Docs

Thanks

Thanks to these contributors who contributed to v0.26.1!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.26.0 "Tekton Triggers"

07 Feb 06:28
Compare
Choose a tag to compare

-Docs @ v0.26.0
-Examples @ v0.26.0

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.0/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.26.0/interceptors.yaml

Attestation

The Rekor UUID for this release is 24296fb24b8ad77adb2b758a907715ae9c12bd31be75af1e58f488fa6d02f6f29886e7bb1aa4046c

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77adb2b758a907715ae9c12bd31be75af1e58f488fa6d02f6f29886e7bb1aa4046c
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/triggers/previous/v0.26.0/release.yaml
REKOR_UUID=24296fb24b8ad77adb2b758a907715ae9c12bd31be75af1e58f488fa6d02f6f29886e7bb1aa4046c

# 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.26.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

  • ✨ Add string translation to CEL interceptor. (#1686)

New translate function added to the CEL interceptor.

  • ✨ Add first and last functions. (#1636)

Two new functions for the CEL interceptor, to allow easy access to the first and last elements in an array.

Breaking changes

In current release:

  • 🚨

The decision to modify the tag from resourcetemplates to resourceTemplates within the triggerTemplate spec was made to align with JSON or YAML camelCase format standards. However, this alteration has caused a disruption in the upgrade process, as previous versions of Triggers relied on the resourcetemplates tag. which is a breaking change.

To address this issue, we reverted the change back and released Triggers version v0.26.1.
We will reintroduce the change when we support the new ApiVersion in Triggers. At that point, we'll utilize conversion functionality (convertTo and convertFrom) to ensure seamless transition. By incorporating the ApiVersion, we'll be able to adjust the tag accordingly. #1694

Fixes

  • 🐛 Fix bitbucket server example when both SSH and HTTPS enabled (#1641)

Misc

  • 🔨 Update Cel-go to v0.19.0 (#1688)
  • 🔨 Bump Pipelines to v0.56.0 (#1683)
  • 🔨 Bump tekton/pipelines v0.53.0 LTS release (#1671)
  • 🔨 Add Triggers v0.25.2 and v0.24.2 to the release (#1669)
  • 🔨 Follow naming conventions for resourceTemplates (#1650)
  • 🔨 Remove Pipelineressources from integration test (#1643)
  • 🔨 Bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#1679)
  • 🔨 Bump knative.dev/serving from 0.30.1-0.20220402124840-21c05dc9d9a4 to 0.39.0 (#1677)
  • 🔨 Bump GRPC from 1.56.2 to 1.59.0 (#1660)

Docs

  • 📖 Add v0.25.0 to docs (#1635)

Thanks

Thanks to these contributors who contributed to v0.26.0!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.25.3 "Tekton Triggers"

16 Nov 08:53
Compare
Choose a tag to compare

-Docs @ v0.25.3
-Examples @ v0.25.3

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.3/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.3/interceptors.yaml

Changes

Security

Fixes

  • 🐛 Update triggers core interceptor to create secret when necessary
    Now the core interceptor will create secrets in only 2 cases:
    • when there is no secret present in the cluster.
    • when certificates expire within the existing secret.
      If secret exist and have valid certificates no need to recreate secret every time

Thanks

Thanks to these contributors who contributed to v0.25.3!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.25.2 "Tekton Triggers"

19 Oct 19:08
Compare
Choose a tag to compare

-Docs @ v0.25.2
-Examples @ v0.25.2

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.2/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.2/interceptors.yaml

Changes

Security

  • [0.25.x] Bump GRPC to 1.56.3 (#1659)
    Address the GHSA-qppj-fm5r-hxr3 - which involves HTTP/2 Stream Cancellation Attack

Thanks

Thanks to these contributors who contributed to v0.25.2!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.24.2 "Tekton Triggers"

19 Oct 17:47
Compare
Choose a tag to compare

-Docs @ v0.24.2
-Examples @ v0.24.2

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.24.2/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.24.2/interceptors.yaml

Changes

Security

  • [0.24.x] Bump GRPC to 1.56.3 (#1661)
  • [v0.24.x] Bump golang.org/x/net from 0.11.0 to 0.17.0 (#1654)

Address the GHSA-qppj-fm5r-hxr3 - which involves HTTP/2 Stream Cancellation Attack

Misc

  • [release-v0.24.x] Fix integration Test by upgrading Knative (#1655)

Thanks

Thanks to these contributors who contributed to v0.24.2!

Tekton Triggers release v0.23.2 "Tekton Triggers"

19 Oct 16:51
Compare
Choose a tag to compare

-Docs @ v0.23.2
-Examples @ v0.23.2

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.23.2/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.23.2/interceptors.yaml

Changes

Fixes

Security

  • [0.23.x] Bump GRPC to 1.56.3 (#1662)
  • [v0.23.x] Bump golang.org/x/net from 0.11.0 to 0.17.0 (#1657)
    Address the GHSA-qppj-fm5r-hxr3 - which involves HTTP/2 Stream Cancellation Attack

Misc

  • [release-v0.23.x] Fix integration Test by upgrading Knative (#1656)

Thanks

Thanks to these contributors who contributed to v0.23.2!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.25.1 "Tekton Triggers"

18 Oct 16:30
Compare
Choose a tag to compare

-Docs @ v0.25.1
-Examples @ v0.25.1

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.1/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.1/interceptors.yaml

Changes

Fixes

  • Bump golang.org/x/net from 0.11.0 to 0.17.0 (#1653)

Address the CVE-2023-44487 - which involves HTTP/2 Stream Cancellation Attack

Thanks

Thanks to these contributors who contributed to v0.25.1!

Extra shout-out for awesome release notes:

Tekton Triggers release v0.25.0 "Tekton Triggers"

29 Aug 06:36
Compare
Choose a tag to compare

-Docs @ v0.25.0
-Examples @ v0.25.0

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.0/release.yaml
kubectl apply -f https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.0/interceptors.yaml

Attestation

The Rekor UUID for this release is 24296fb24b8ad77a3b75040e94727f4d7a7246d5e704172f48f5969d1202903ecd5fb22a0cc5b0f5

Obtain the attestation:

REKOR_UUID=24296fb24b8ad77a3b75040e94727f4d7a7246d5e704172f48f5969d1202903ecd5fb22a0cc5b0f5
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/triggers/previous/v0.25.0/release.yaml
INTERCEPTORS_FILE=https://storage.googleapis.com/tekton-releases/triggers/previous/v0.25.0/interceptors.yaml
REKOR_UUID=24296fb24b8ad77a3b75040e94727f4d7a7246d5e704172f48f5969d1202903ecd5fb22a0cc5b0f5

# 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.25.0@sha256:" + .digest.sha256')

# Download the release file
curl "$RELEASE_FILE" > release.yaml
curl "$INTERCEPTORS_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

  • ✨ Add probes support in Triggers eventlistener (#1633)

Triggers now support probes setting on EventListener object
Triggers now have default value for failure-threshold as 3 for both readiness and liveness probes

  • ✨ Change Leader Election Config Map for Controllers and Webhook (#1624)
  • ✨ Move interceptor structs to their specific interceptor implementations (#1588)

Backwards incompatible changes

In current release:

  • 🚨 There are changes to move Interceptors structure to their specific interceptor implementations (#1588)
    So whoever depends on interceptor structure they have to change their import path
    This change effects for those who build something using Triggers code
    Example: Tekton CLI import path change and usage

Fixes

  • 🐛 Fix EL Status URL for kubernetesresource.serviceport (#1632)

Misc

  • 🔨 Remove third_party directory (#1579)
  • 🔨 drop manual use of knative.dev/pkg::injection.Dynamic (#1594)
  • 🔨 Fix SA1019 error by staticcheck due to deprecation (#1629)
  • 🔨 Bump tekton/pipelines v0.50.1 LTS in preparation of release (#1625)
  • 🔨 Update Cel-Go to v0.17.1 (#1622)
  • 🔨 Fix integraion Test by upgrading Knative (#1616)
  • 🔨 Update Cel-Go to v0.16.0 (#1613)
  • 🔨 Add v0.23.1 and v0.24.0 (as LTS) to releases.md (#1582)

Docs

  • 📖 Added clarification about escaping special character in TB (#1631)
  • 📖 Add AWS CodeCommit examples for push request and also README to configure AWS CodeCommit (#1619)
  • 📖 Add v0.24.1 to docs (#1608)

Thanks

Thanks to these contributors who contributed to v0.25.0!

Extra shout-out for awesome release notes: