Skip to content

Commit 3b1e74c

Browse files
authored
SWI-6937 Add Smoke Tests for UP Account (#135)
* SWI-6937 Add Smoke Tests for UP Account * update notify slack deps
1 parent 4aa066c commit 3b1e74c

File tree

3 files changed

+73
-97
lines changed

3 files changed

+73
-97
lines changed

.github/workflows/deploy.yml

Lines changed: 21 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -5,91 +5,32 @@ on:
55
types:
66
- published
77

8-
env:
9-
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
10-
BW_USERNAME: ${{ secrets.BW_USERNAME }}
11-
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
12-
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN}}
13-
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN}}
14-
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
15-
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
16-
BW_NUMBER: ${{ secrets.BW_NUMBER }}
17-
USER_NUMBER: ${{ secrets.USER_NUMBER }}
18-
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
19-
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
20-
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
21-
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
22-
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
23-
OPERATING_SYSTEM: ubuntu-latest
24-
DOTNET_VERSION: 8.0.x
25-
268
jobs:
27-
deploy_pre_release:
28-
name: Deploy OpenAPI Generator Client Pre-Release
29-
if: ${{ github.event.release.prerelease && github.event.release.target_commitish == 'feature/openapi-generator-sdk' }}
30-
runs-on: ubuntu-latest
31-
env:
32-
BW_PROJECT_NAME: src/Bandwidth.Standard
33-
BW_PROJECT_TEST_NAME: src/Bandwidth.Standard.Test
34-
steps:
35-
- name: Set release version
36-
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/v}" >> $GITHUB_ENV
37-
38-
- name: Check Release Tag Format
39-
run: |
40-
if ! [[ $RELEASE_VERSION =~ ^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(-(beta|alpha|rc))(\.[0-9][0-9]*)?$ ]]; then
41-
echo 'Tag does not match expected regex pattern for beta releases (^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(-(beta|alpha|rc))(\.[0-9][0-9]*)?$)'
42-
echo $RELEASE_VERSION
43-
echo 'Please update your tag to match the expected regex pattern'
44-
exit 1
45-
fi
46-
47-
- name: Checkout
48-
uses: actions/checkout@v4
49-
with:
50-
ref: feature/openapi-generator-sdk
51-
52-
- name: Setup Dotnet
53-
uses: actions/setup-dotnet@v4
54-
with:
55-
dotnet-version: '8.0.x'
56-
57-
- name: Build SDK
58-
uses: Bandwidth/generate-sdk-action@v4.0.0
59-
with:
60-
openapi-generator-version: 7.7.0
61-
language: csharp
62-
additional-properties: --additional-properties=packageVersion=$RELEASE_VERSION
63-
64-
- name: Run Unit Tests
65-
run: dotnet test src/Bandwidth.Standard.Test --filter DisplayName~Bandwidth.Standard.Test.Unit
66-
67-
- name: Pack NuGet package
68-
run: dotnet pack --configuration Release $BW_PROJECT_NAME -p:PackageVersion=$RELEASE_VERSION
69-
70-
- name: Publish NuGet package
71-
env:
72-
NUGET_KEY: ${{ secrets.NUGET_KEY }}
73-
NUGET_SOURCE: https://api.nuget.org/v3/index.json
74-
run: dotnet nuget push $BW_PROJECT_NAME/bin/Release/*.nupkg -s $NUGET_SOURCE -k $NUGET_KEY
75-
76-
- name: Notify Slack of build status
77-
uses: Bandwidth/build-notify-slack-action@v2.0.0
78-
if: always()
79-
with:
80-
job-status: ${{ job.status }}
81-
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
82-
slack-channel: ${{ secrets.SLACK_CHANNEL }}
83-
849
deploy:
85-
name: deploy 'main' branch
86-
if: ${{ !github.event.release.prerelease && github.event.release.target_commitish == 'main' }}
10+
name: Deploy SDK to NuGet
8711
runs-on: ubuntu-latest
8812
env:
8913
BW_PROJECT_NAME: src/Bandwidth.Standard
9014
BW_PROJECT_TEST_NAME: src/Bandwidth.Standard.Test
15+
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
16+
BW_USERNAME: ${{ secrets.BW_USERNAME }}
17+
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
18+
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN}}
19+
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN}}
20+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
21+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
22+
BW_NUMBER: ${{ secrets.BW_NUMBER }}
23+
USER_NUMBER: ${{ secrets.USER_NUMBER }}
24+
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
25+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
26+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
27+
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
28+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
29+
OPERATING_SYSTEM: ubuntu-latest
30+
DOTNET_VERSION: 8.0.x
31+
9132
steps:
92-
- name: Set release version
33+
- name: Set Release Version
9334
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/v}" >> $GITHUB_ENV
9435

9536
- name: Check Release Tag Format
@@ -109,7 +50,7 @@ jobs:
10950
with:
11051
dotnet-version: '8.0.x'
11152

112-
- name: Build SDK
53+
- name: Generate SDK with Updated Version
11354
uses: Bandwidth/generate-sdk-action@v4.0.0
11455
with:
11556
openapi-generator-version: 7.7.0
@@ -128,8 +69,7 @@ jobs:
12869
NUGET_SOURCE: https://api.nuget.org/v3/index.json
12970
run: dotnet nuget push $BW_PROJECT_NAME/bin/Release/*.nupkg -s $NUGET_SOURCE -k $NUGET_KEY
13071

131-
- name: Notify Slack of build status
132-
uses: Bandwidth/build-notify-slack-action@v2.0.0
72+
- uses: Bandwidth/build-notify-slack-action@v2.0.0
13373
if: always()
13474
with:
13575
job-status: ${{ job.status }}

.github/workflows/test-pr.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
name: Test PR
2+
23
on:
34
pull_request:
45
branches:
56
- main
6-
workflow_dispatch:
7+
8+
concurrency:
9+
group: ${{ github.workflow }}-${{ github.head_ref }}
10+
cancel-in-progress: true
711

812
env:
913
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
@@ -31,7 +35,7 @@ jobs:
3135
dotnet: [6.0.x, 7.0.x, 8.0.x]
3236
fail-fast: false
3337
steps:
34-
- name: Checkout repo
38+
- name: Checkout
3539
uses: actions/checkout@v4
3640

3741
- name: Setup .NET

.github/workflows/test-smoke.yml

Lines changed: 46 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,65 @@
1-
name: Smoke Test
1+
name: Smoke Tests
2+
23
on:
34
schedule:
45
- cron: "0 4 * * *"
56
pull_request:
6-
branches:
7-
- main
87
paths:
98
- "src/Bandwidth.Standard.Test/Smoke/*"
9+
- ".github/workflows/test-smoke.yml"
10+
11+
concurrency:
12+
group: ${{ github.workflow }}-${{ github.head_ref }}
13+
cancel-in-progress: true
1014

1115
env:
12-
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
1316
BW_USERNAME: ${{ secrets.BW_USERNAME }}
1417
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
15-
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN}}
16-
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN}}
17-
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
18-
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
19-
BW_NUMBER: ${{ secrets.BW_NUMBER }}
18+
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
19+
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
2020
USER_NUMBER: ${{ secrets.USER_NUMBER }}
2121
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
22-
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
23-
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
2422
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
25-
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
2623

2724
jobs:
2825
test:
2926
name: Smoke Test
3027
runs-on: ubuntu-latest
28+
env:
29+
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
30+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
31+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
32+
BW_NUMBER: ${{ secrets.BW_NUMBER }}
33+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
34+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
35+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
36+
steps:
37+
- name: Checkout
38+
uses: actions/checkout@v4
39+
40+
- name: Setup .NET
41+
uses: actions/setup-dotnet@v4
42+
with:
43+
dotnet-version: 8.0.x
44+
45+
- name: Run Tests
46+
env:
47+
OPERATING_SYSTEM: ubuntu-latest
48+
DOTNET_VERSION: 8.0.x
49+
run: |
50+
dotnet test src/Bandwidth.Standard.Test --filter DisplayName~Bandwidth.Standard.Test.Smoke
51+
52+
test_up:
53+
name: Smoke Test UP Account
54+
runs-on: ubuntu-latest
55+
env:
56+
BW_ACCOUNT_ID: ${{ secrets.BW_UP_ACCOUNT_ID }}
57+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_UP_VOICE_APPLICATION_ID }}
58+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_UP_MESSAGING_APPLICATION_ID }}
59+
BW_NUMBER: ${{ secrets.BW_UP_NUMBER }}
60+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_UP_ACTIVE_NUMBER }}
61+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_UP_IDLE_NUMBER }}
62+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_UP_APPLICATION_ID }}
3163
steps:
3264
- name: Checkout
3365
uses: actions/checkout@v4
@@ -37,7 +69,7 @@ jobs:
3769
with:
3870
dotnet-version: 8.0.x
3971

40-
- name: Run functional tests
72+
- name: Run Tests
4173
env:
4274
OPERATING_SYSTEM: ubuntu-latest
4375
DOTNET_VERSION: 8.0.x
@@ -46,7 +78,7 @@ jobs:
4678
4779
notify_for_failures:
4880
name: Notify for failures
49-
needs: [test]
81+
needs: [test, test_up]
5082
if: failure()
5183
runs-on: ubuntu-latest
5284
steps:

0 commit comments

Comments
 (0)