Skip to content

Integration Test (Profile + Schedule) #2

Integration Test (Profile + Schedule)

Integration Test (Profile + Schedule) #2

---
name: Integration Test (Profile + Schedule)
on:
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@0fe048f952bee522474903a925ea48dc706a0bb4 # v0.17.5
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@0fe048f952bee522474903a925ea48dc706a0bb4 # v0.17.5
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