-
Notifications
You must be signed in to change notification settings - Fork 6
76 lines (74 loc) · 4.22 KB
/
Copy pathuse-case-TT02.yaml
File metadata and controls
76 lines (74 loc) · 4.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
name: Use Case - TT02
on:
workflow_dispatch:
schedule:
- cron: '*/15 * * * *'
jobs:
test:
environment: TT02
runs-on: ubuntu-latest
permissions:
contents: read
env: # Shared environment vars for all k6 test scripts
altinn_env: TT02
partyId: ${{ secrets.PARTYID }}
pid: ${{ secrets.PID }}
userID: ${{ secrets.USERID }}
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Set up K6
uses: grafana/setup-k6-action@db07bd9765aac508ef18982e52ab937fe633a065 # v1.2.1
- name: Create k6 secrets file
id: k6-secrets
env:
MP_ENCODEDJWK: ${{ secrets.MP_ENCODEDJWK }}
MP_CLIENT_ID: ${{ secrets.MP_CLIENT_ID }}
MP_KID: ${{ secrets.MP_KID }}
APIM_SUBSCRIPTION_KEY: ${{ secrets.AUTOMATEDTEST_APIM_SUBSCRIPTION_KEY }}
run: |
umask 077
SECRETS_FILE="${{ runner.temp }}/k6.secrets"
printf 'encodedJwk=%s\n' "$MP_ENCODEDJWK" > "$SECRETS_FILE"
printf 'mpClientId=%s\n' "$MP_CLIENT_ID" >> "$SECRETS_FILE"
printf 'mpKid=%s\n' "$MP_KID" >> "$SECRETS_FILE"
printf 'subscriptionKey=%s\n' "$APIM_SUBSCRIPTION_KEY" >> "$SECRETS_FILE"
echo "file=$SECRETS_FILE" >> "$GITHUB_OUTPUT"
- name: Run API v2 tests
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: components/api/test/k6/src/tests/orders-v2.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e ninRecipient=${{ vars.AUTOMATEDTEST_NINRECIPIENT }} -e emailRecipient=${{ vars.AUTOMATEDTEST_EMAILRECIPIENT }} -e smsRecipient=${{ vars.AUTOMATEDTEST_SMSRECIPIENT }}
inspect-flags: -e altinn_env=TT02 # Supplies the value for pre-run validation, when env vars / flags are not yet defined
- name: Run API v2 recipientOrganization tests
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: components/api/test/k6/src/tests/orders-org-no-v2.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e orgNoRecipient=${{ vars.AUTOMATEDTEST_ORG_NO_RECIPIENT }} -e resourceId=${{ vars.AUTOMATEDTEST_URN_RESOURCE_ID }}
inspect-flags: -e altinn_env=TT02 # Supplies the value for pre-run validation, when env vars / flags are not yet defined
- name: Run email notification order use case tests
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: components/api/test/k6/src/tests/orders-email.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e emailRecipient=${{ vars.AUTOMATEDTEST_EMAILRECIPIENT }} -e ninRecipient=${{ vars.AUTOMATEDTEST_NINRECIPIENT }}
inspect-flags: -e altinn_env=TT02 # Supplies the value for pre-run validation, when env vars / flags are not yet defined
- name: Run contact(s) lookup by organization number use case tests with generating an email notification
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: components/api/test/k6/src/tests/orders-org-no.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e orgNoRecipient=${{ vars.AUTOMATEDTEST_ORG_NO_RECIPIENT }} -e resourceId=${{ vars.AUTOMATEDTEST_RESOURCE_ID }}
inspect-flags: -e altinn_env=TT02 # Supplies the value for pre-run validation, when env vars / flags are not yet defined
- name: Run sms notification order use case tests
uses: grafana/run-k6-action@de51a7390bdf0ac85a3bef493691bd71d4c7c158 # v1.4.0
with:
path: components/api/test/k6/src/tests/orders-sms.js
flags: --secret-source=file=${{ steps.k6-secrets.outputs.file }} -e smsRecipient=${{ vars.AUTOMATEDTEST_SMSRECIPIENT }}
inspect-flags: -e altinn_env=TT02 # Supplies the value for pre-run validation, when env vars / flags are not yet defined
slack-notify:
if: failure()
needs: test
uses: ./.github/workflows/send-slack-warning.yml
permissions: {}
with:
warning-message: 'Notifications use case test failure in TT02'
secrets:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL_PROD }}