Skip to content

Commit 63c3105

Browse files
committed
test(e2e): verify delivery retry limits
Signed-off-by: kahirokunn <okinakahiro@gmail.com>
1 parent 73965a7 commit 63c3105

2 files changed

Lines changed: 354 additions & 12 deletions

File tree

.github/workflows/kind-e2e.yaml

Lines changed: 42 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,27 @@ on:
99
jobs:
1010

1111
ko-resolve:
12-
name: e2e tests
12+
name: e2e tests (${{ matrix.eventing-version }})
1313
runs-on: ubuntu-latest
1414
strategy:
1515
fail-fast: false # Keep running if one leg fails.
1616
matrix:
17-
k8s-version:
18-
- v1.34.3
19-
20-
eventing-version:
21-
- knative-v1.21.0
22-
23-
# Map between K8s and KinD versions.
24-
# This is attempting to make it a bit clearer what's being tested.
25-
# See: https://github.com/kubernetes-sigs/kind/releases/tag/v0.29.0
2617
include:
18+
# Keep testing the oldest supported Eventing release, and build the
19+
# upstream main commit that introduced DeliverySpec.BackoffMax.
20+
- k8s-version: v1.34.3
21+
kind-version: v0.31.0
22+
kind-image-sha: sha256:08497ee19eace7b4b5348db5c6a1591d7752b164530a36f855cb0f2bdcbadd48
23+
eventing-version: knative-v1.21.0
24+
eventing-source: release
25+
delivery-features-e2e: false
2726
- k8s-version: v1.34.3
2827
kind-version: v0.31.0
2928
kind-image-sha: sha256:08497ee19eace7b4b5348db5c6a1591d7752b164530a36f855cb0f2bdcbadd48
29+
eventing-version: main-973bbbc1
30+
eventing-source: source
31+
eventing-ref: 973bbbc1f791c274578360917c7d492828b48cb0
32+
delivery-features-e2e: true
3033
env:
3134
KO_DOCKER_REPO: kind.local
3235
SYSTEM_NAMESPACE: knative-eventing
@@ -48,6 +51,14 @@ jobs:
4851
- name: Check out code
4952
uses: actions/checkout@v4
5053

54+
- name: Check out Knative Eventing source
55+
if: matrix.eventing-source == 'source'
56+
uses: actions/checkout@v4
57+
with:
58+
repository: knative/eventing
59+
ref: ${{ matrix.eventing-ref }}
60+
path: .eventing-source
61+
5162
- name: Install KinD
5263
env:
5364
KIND_VERSION: ${{ matrix.kind-version }}
@@ -111,7 +122,8 @@ jobs:
111122
kubectl get pods -n kube-system -l k8s-app=kube-dns
112123
kubectl logs -n kube-system -l k8s-app=kube-dns
113124
114-
- name: Install Knative Eventing
125+
- name: Install released Knative Eventing
126+
if: matrix.eventing-source == 'release'
115127
run: |
116128
set -x
117129
@@ -120,6 +132,23 @@ jobs:
120132
kubectl apply --filename https://github.com/knative/eventing/releases/download/${{ matrix.eventing-version }}/eventing-core.yaml
121133
kubectl apply --filename https://github.com/knative/eventing/releases/download/${{ matrix.eventing-version }}/mt-channel-broker.yaml
122134
135+
- name: Build and install Knative Eventing source
136+
if: matrix.eventing-source == 'source'
137+
working-directory: .eventing-source
138+
run: |
139+
set -x
140+
141+
ko apply --platform=linux/amd64 -f ./config/
142+
ko apply --platform=linux/amd64 -f ./config/brokers/mt-channel-broker/
143+
144+
- name: Enable delivery features
145+
if: matrix.delivery-features-e2e
146+
run: |
147+
kubectl patch configmap config-features \
148+
--namespace knative-eventing \
149+
--type merge \
150+
--patch '{"data":{"delivery-backoff-max":"enabled","delivery-retryafter":"enabled"}}'
151+
123152
- name: Install
124153
run: |
125154
set -x
@@ -140,6 +169,8 @@ jobs:
140169
kubectl get pods --all-namespaces
141170
142171
- name: Run e2e Tests
172+
env:
173+
EVENTING_DELIVERY_FEATURES_E2E: ${{ matrix.delivery-features-e2e }}
143174
run: |
144175
set -x
145176
@@ -189,4 +220,3 @@ jobs:
189220
SLACK_TITLE: Periodic e2e for Nats on kind on (${{ matrix.k8s-version }}, ${{ matrix.eventing-version }}) failed.
190221
SLACK_MESSAGE: |
191222
For detailed logs: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
192-

0 commit comments

Comments
 (0)