Skip to content
50 changes: 50 additions & 0 deletions .github/workflows/integration-test-custom.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
---
name: Integration Test (Custom)

on:
pull_request: {}
workflow_dispatch:
inputs:
test-runner:
description: Name of the test runner, eg. `amd64` (see test/interu.yaml)
required: true
test-suite:
description: Name of the test-suite, eg. `openshift`
test:
description: Name of the test, eg. `smoke`

permissions: {}

jobs:
test:
name: Run Integration Test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
submodules: recursive

- name: Run Integration Test
id: test
uses: stackabletech/actions/run-integration-test@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3
with:
replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }}
otlp-bearer-token: ${{ secrets.OTLP_BEARER_TOKEN }}
test-mode-input: ${{ inputs.test-runner }}
test-suite: ${{ inputs.test-suite }}
test-mode: custom
test: ${{ inputs.test }}

- name: Send Notification
if: ${{ failure() || github.run_attempt > 1 }}
uses: stackabletech/actions/send-slack-notification@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3
with:
slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
failed-tests: ${{ steps.test.outputs.failed-tests }}
test-health: ${{ steps.test.outputs.health }}
test-result: ${{ steps.test.conclusion }}
channel-id: C07UYJYSMSN # notifications-integration-tests
type: integration-test
60 changes: 60 additions & 0 deletions .github/workflows/integration-test-profile.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
name: Integration Test (Profile + Schedule)

on:
pull_request: {}
schedule:
# At 04:00 on Sunday. See: https://crontab.guru/#0_4_*_*_0
- cron: "0 4 * * 0"
workflow_dispatch:
inputs:
test-profile:
description: Name of the test runner, eg. `smoke-latest` or `schedule` (see test/interu.yaml)
required: true

permissions: {}

jobs:
test:
name: Run Integration Test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
submodules: recursive

- name: Determine Profile
id: profile
env:
GITHUB_EVENT_NAME: ${{ github.event_name }}
PROFILE_INPUT: ${{ inputs.test-profile }}
shell: bash
run: |
if [ "$EVENT_NAME" = "schedule" ]; then
echo "PROFILE=schedule" | tee -a "$GITHUB_OUTPUT"
else
echo "PROFILE=${PROFILE_INPUT}" | tee -a "$GITHUB_OUTPUT"
fi

- name: Run Integration Test
id: test
uses: stackabletech/actions/run-integration-test@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3
with:
replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }}
otlp-bearer-token: ${{ secrets.OTLP_BEARER_TOKEN }}
test-mode-input: ${{ steps.profile.outputs.PROFILE }}
test-mode: profile

- name: Send Notification
if: ${{ failure() || github.run_attempt > 1 }}
uses: stackabletech/actions/send-slack-notification@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3
with:
slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
failed-tests: ${{ steps.test.outputs.failed-tests }}
test-health: ${{ steps.test.outputs.health }}
test-result: ${{ steps.test.conclusion }}
channel-id: C07UYJYSMSN # notifications-integration-tests
type: integration-test
5 changes: 3 additions & 2 deletions .github/workflows/integration-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,17 +43,18 @@ jobs:
# TODO: Enable the scheduled runs which hard-code what profile to use
- name: Run Integration Test
id: test
uses: stackabletech/actions/run-integration-test@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3
uses: stackabletech/actions/run-integration-test@feat/multi-line-logs # vxxx
with:
replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }}
otlp-bearer-token: ${{ secrets.OTLP_BEARER_TOKEN }}
test-mode-input: ${{ inputs.test-mode-input }}
test-suite: ${{ inputs.test-suite }}
test-mode: ${{ inputs.test-mode }}
test: ${{ inputs.test }}

- name: Send Notification
if: ${{ failure() || github.run_attempt > 1 }}
uses: stackabletech/actions/send-slack-notification@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3
uses: stackabletech/actions/send-slack-notification@feat/multi-line-logs # vxxx
with:
slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }}
failed-tests: ${{ steps.test.outputs.failed-tests }}
Expand Down
2 changes: 2 additions & 0 deletions rust/operator-binary/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ struct Opts {
cmd: Command,
}

// need a change to trigger an image build, else tests can't pull the image with the PR tag.

#[tokio::main]
async fn main() -> anyhow::Result<()> {
let opts = Opts::parse();
Expand Down
2 changes: 1 addition & 1 deletion tests/interu.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
runners:
amd64:
platform: aks-1.32
platform: aks-1.36
ttl: 6h
node-groups:
- name: default
Expand Down
Loading