Skip to content

Use Case - TT02

Use Case - TT02 #98300

name: Use Case - TT02
on:
workflow_dispatch:
schedule:
- cron: '*/15 * * * *'
jobs:
use-case-test:
environment: TT02
runs-on: ubuntu-latest
permissions:
contents: read
env: # Shared environment vars for k6 test scripts
altinn_env: tt02
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Set up k6
uses: grafana/setup-k6-action@db07bd9765aac508ef18982e52ab937fe633a065 # v1.2.1
- name: Create k6 secrets file
id: k6-secrets
env:
PID: ${{ secrets.PERSON_NUMBER }}
MP_CLIENT_ID: ${{ secrets.MP_CLIENT_ID }}
MP_KID: ${{ secrets.MP_KID }}
ENCODED_JWK: ${{ secrets.MP_ENCODEDJWK }}
WEBHOOK_ENDPOINT: ${{ secrets.WEBHOOK_ENDPOINT }}
TESTIDPPWD: ${{ secrets.TESTIDPPWD }}
run: |
umask 077
SECRETS_FILE="${{ runner.temp }}/k6.secrets"
printf 'pid=%s\n' "$PID" >> "$SECRETS_FILE"
printf 'testidppwd=%s\n' "$TESTIDPPWD" >> "$SECRETS_FILE"
printf 'mpClientId=%s\n' "$MP_CLIENT_ID" >> "$SECRETS_FILE"
printf 'mpKid=%s\n' "$MP_KID" >> "$SECRETS_FILE"
printf 'encodedJwk=%s\n' "$ENCODED_JWK" >> "$SECRETS_FILE"
printf 'webhookEndpoint=%s\n' "$WEBHOOK_ENDPOINT" >> "$SECRETS_FILE"
echo "file=$SECRETS_FILE" >> "$GITHUB_OUTPUT"
- name: Run app-events use case tests
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: test/k6/src/tests/app-events.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e app=apps-test
- name: Run events use case tests (POST)
if: always()
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: test/k6/src/tests/events/post.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }}
- name: Run events use case tests (GET)
if: always()
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: test/k6/src/tests/events/get.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }}
- name: Run subscription use case tests
if: always()
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: test/k6/src/tests/subscriptions.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e app=apps-test
slack-notify:
if: failure()
needs: use-case-test
permissions: {}
uses: ./.github/workflows/send-slack-warning.yml
with:
warning-message: 'Events use case test failure in TT02'
secrets:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL_PROD }}