Skip to content

Commit a1cfdb7

Browse files
authored
Merge branch 'main' into fix/bug-report-newline
2 parents f6e7f3b + 7f24a17 commit a1cfdb7

File tree

1 file changed

+31
-108
lines changed

1 file changed

+31
-108
lines changed
Lines changed: 31 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -1,137 +1,60 @@
11
---
22
name: Integration Test
3-
run-name: |
4-
Integration Test on ${{ inputs.test-platform }}-${{ inputs.test-architecture }} (${{ inputs.test-run == 'all' && 'all' || format('{0}={1}', inputs.test-run, inputs.test-parameter) }})
5-
6-
env:
7-
DEFAULT_TEST_PLATFORM: kind-1.31.0
8-
DEFAULT_TEST_ARCHITECTURE: amd64
9-
DEFAULT_TEST_RUN: all
10-
DEFAULT_TEST_PARAMETER: "" # Unused when the test-run is 'all'
11-
TEST_PLATFORM: ${{ inputs.test-platform }}
12-
TEST_ARCHITECTURE: ${{ inputs.test-architecture }}
13-
TEST_RUN: ${{ inputs.test-run }}
14-
TEST_PARAMETER: ${{ inputs.test-parameter }}
153

164
on:
175
# schedule:
186
# At 00:00 on Sunday. See: https://crontab.guru/#0_0_*_*_0
197
# - cron: "0 0 * * 0"
208
workflow_dispatch:
219
inputs:
22-
test-platform:
23-
description: |
24-
The test platform to run on
25-
required: true
26-
type: choice
27-
options:
28-
- kind-1.31.2
29-
- kind-1.30.6
30-
- rke2-1.31.2
31-
- rke2-1.30.6
32-
- k3s-1.31.2
33-
- k3s-1.30.6
34-
- aks-1.29
35-
- aks-1.28
36-
- aks-1.27
37-
- eks-1.29
38-
- eks-1.28
39-
- eks-1.27
40-
- gke-1.29
41-
- gke-1.28
42-
- gke-1.27
43-
- okd-4.15
44-
- okd-4.14
45-
- okd-4.13
46-
test-architecture:
47-
description: |
48-
The architecture the tests will run on. Consult the run-integration-test action README for
49-
more details on supported architectures for each distribution
10+
test-mode:
11+
description: Test mode
5012
required: true
5113
type: choice
5214
options:
53-
- amd64
54-
- arm64
55-
test-run:
56-
description: Type of test run
15+
- profile
16+
- custom
17+
test-mode-input:
18+
description: The profile or the runner used
5719
required: true
58-
type: choice
59-
options:
60-
- all
61-
- test-suite
62-
- test
63-
test-parameter:
64-
description: Parameter to `--test-suite` or `--test` (ignored for `all`)
65-
default: smoke
20+
test-suite:
21+
description: Name of the test-suite. Only used if test-mode is `custom`
22+
test:
23+
description: Name of the test. Only used of test-mode is `custom`
6624

6725
jobs:
6826
test:
6927
name: Run Integration Test
7028
runs-on: ubuntu-latest
29+
# services:
30+
# otel-collector:
31+
# image: ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-k8s:0.131.1
32+
# volumes:
33+
# - .:/mnt
7134
steps:
72-
- name: Override integration test options for scheduled run
73-
if: github.event_name == 'schedule'
74-
shell: bash
75-
run: |
76-
set -euo pipefail
77-
78-
echo "TEST_PLATFORM=$DEFAULT_TEST_PLATFORM" | tee -a "$GITHUB_ENV"
79-
echo "TEST_ARCHITECTURE=$DEFAULT_TEST_ARCHITECTURE" | tee -a "$GITHUB_ENV"
80-
echo "TEST_RUN=$DEFAULT_TEST_RUN" | tee -a "$GITHUB_ENV"
81-
echo "TEST_PARAMETER=$DEFAULT_TEST_PARAMETER" | tee -a "$GITHUB_ENV"
82-
83-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
35+
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
8436
with:
37+
persist-credentials: false
8538
submodules: recursive
8639

40+
# TODO: Enable the scheduled runs which hard-code what profile to use
8741
- name: Run Integration Test
8842
id: test
89-
uses: stackabletech/actions/run-integration-test@4483641a7e24057bd2ba51cb4c3f2f0010ad21b7 # v0.8.4
43+
uses: stackabletech/actions/run-integration-test@736565e3b8f657bcddff2897abcf5ccb82ae3e6c # v0.9.0
9044
with:
91-
test-platform: ${{ env.TEST_PLATFORM }}-${{ env.TEST_ARCHITECTURE }}
92-
test-run: ${{ env.TEST_RUN }}
93-
test-parameter: ${{ env.TEST_PARAMETER }}
9445
replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }}
46+
test-mode-input: ${{ inputs.test-mode-input }}
47+
test-suite: ${{ inputs.test-suite }}
48+
test-mode: ${{ inputs.test-mode }}
49+
test: ${{ inputs.test }}
9550

9651
- name: Send Notification
97-
if: ${{ failure() }}
98-
env:
99-
SLACK_BOT_TOKEN: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
100-
uses: slackapi/slack-github-action@fcfb566f8b0aab22203f066d80ca1d7e4b5d05b3 # v1.27.1
52+
if: ${{ failure() || github.run_attempt > 1 }}
53+
uses: stackabletech/actions/send-slack-notification@736565e3b8f657bcddff2897abcf5ccb82ae3e6c # v0.9.0
10154
with:
102-
channel-id: "C07UYJYSMSN" # notifications-integration-tests
103-
payload: |
104-
{
105-
"text": "Integration Test *${{ github.repository }}* failed",
106-
"attachments": [
107-
{
108-
"pretext": "Started at ${{ steps.test.outputs.start-time }}, failed at ${{ steps.test.outputs.end-time }}",
109-
"color": "#aa0000",
110-
"actions": [
111-
{
112-
"type": "button",
113-
"text": "Go to integration test run",
114-
"url": "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
115-
}
116-
]
117-
}
118-
]
119-
}
120-
# TODO: Update to version 2.1.0. This could look something like the following.
121-
# The workflow is currently not in use, testing that the new version still works imposes effort.
122-
# So I left it as a future exercise, but saved the current state.
123-
#
124-
# uses: slackapi/slack-github-action@b0fa283ad8fea605de13dc3f449259339835fc52 # v2.1.0
125-
# with:
126-
# method: chat.postMessage
127-
# token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
128-
# payload: |
129-
# channel: "C07UYJYSMSN" # notifications-integration-tests
130-
# text: "Integration Test *${{ github.repository }}* failed"
131-
# attachments:
132-
# - pretext: "Started at ${{ steps.test.outputs.start-time }}, failed at ${{ steps.test.outputs.end-time }}"
133-
# color: "#aa0000"
134-
# actions:
135-
# - type: button
136-
# text: Go to integration test run
137-
# url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
55+
slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
56+
failed-tests: ${{ steps.test.outputs.failed-tests }}
57+
test-health: ${{ steps.test.outputs.health }}
58+
test-result: ${{ steps.test.conclusion }}
59+
channel-id: C07UYJYSMSN # notifications-integration-tests
60+
type: integration-test

0 commit comments

Comments
 (0)