Skip to content

Commit 2b31c26

Browse files
authored
SWI-2096 Update Test Workflow (#149)
* SWI-2096 Update Test Workflow * migrate to 2 workflows * add branch logic * wf name
1 parent 61ba5ff commit 2b31c26

File tree

3 files changed

+201
-123
lines changed

3 files changed

+201
-123
lines changed

.github/workflows/test-nightly.yml

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
name: Test Main and Feature Branch Nightly
2+
3+
on:
4+
schedule:
5+
- cron: "0 4 * * *"
6+
workflow_dispatch:
7+
inputs:
8+
logLevel:
9+
description: Log level
10+
required: false
11+
default: WARNING
12+
type: choice
13+
options:
14+
- WARNING
15+
- DEBUG
16+
17+
concurrency:
18+
group: ${{ github.workflow }}-${{ github.head_ref }}
19+
cancel-in-progress: true
20+
21+
env:
22+
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
23+
BW_USERNAME: ${{ secrets.BW_USERNAME }}
24+
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
25+
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
26+
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
27+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
28+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
29+
BW_NUMBER: ${{ secrets.BW_NUMBER }}
30+
USER_NUMBER: ${{ secrets.USER_NUMBER }}
31+
VZW_NUMBER: ${{ secrets.VZW_NUMBER }}
32+
ATT_NUMBER: ${{ secrets.ATT_NUMBER }}
33+
T_MOBILE_NUMBER: ${{ secrets.T_MOBILE_NUMBER }}
34+
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
35+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
36+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
37+
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
38+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
39+
BW_NUMBER_PROVIDER: ${{ secrets.BW_NUMBER_PROVIDER }}
40+
41+
jobs:
42+
test_main:
43+
name: Test Main Branch Nightly
44+
runs-on: ${{ matrix.os }}
45+
strategy:
46+
matrix:
47+
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
48+
python-version: [3.7, 3.8, 3.9, '3.10']
49+
steps:
50+
- name: Checkout
51+
uses: actions/checkout@v3
52+
with:
53+
ref: 'main'
54+
55+
- name: Set up Python
56+
uses: actions/setup-python@v4
57+
with:
58+
python-version: ${{ matrix.python-version }}
59+
60+
- name: Install Packages and Test
61+
run: |
62+
pip install -r requirements_dev.txt
63+
python -m pytest --pyargs bandwidth
64+
65+
test_feature:
66+
name: Test Feature Branch Nightly
67+
runs-on: ${{ matrix.os }}
68+
strategy:
69+
matrix:
70+
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
71+
python-version: [3.8, 3.9, '3.10']
72+
env:
73+
PYTHON_VERSION: ${{ matrix.python-version }}
74+
OPERATING_SYSTEM: ${{ matrix.os }}
75+
steps:
76+
- name: Checkout
77+
uses: actions/checkout@v3
78+
with:
79+
ref: 'feature/openapi-generator-sdk'
80+
81+
- name: Set up Python
82+
uses: actions/setup-python@v4
83+
with:
84+
python-version: ${{ matrix.python-version }}
85+
86+
- name: Install Packages
87+
run: |
88+
pip install -r requirements.txt
89+
pip install -r test-requirements.txt
90+
91+
- name: Test at Debug Level
92+
if: ${{ inputs.logLevel == 'DEBUG' }}
93+
run: |
94+
echo "Log level: DEBUG"
95+
pytest -v --log-cli-level=DEBUG
96+
97+
- name: Test at Warning Level
98+
if: ${{( inputs.logLevel == null) || ( inputs.logLevel == 'WARNING') }}
99+
run: |
100+
echo "Log level: WARNING"
101+
pytest -v --log-cli-level=WARNING
102+
103+
notify_for_failures:
104+
name: Notify for Failures
105+
if: failure()
106+
runs-on: ubuntu-latest
107+
steps:
108+
- name: Notify Slack of Failures
109+
uses: Bandwidth/[email protected]
110+
with:
111+
job-status: failure
112+
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
113+
slack-channel: ${{ secrets.SLACK_CHANNEL }}

.github/workflows/test-pr.yml

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
name: Test PR
2+
3+
on:
4+
pull_request:
5+
6+
concurrency:
7+
group: ${{ github.workflow }}-${{ github.head_ref }}
8+
cancel-in-progress: true
9+
10+
env:
11+
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
12+
BW_USERNAME: ${{ secrets.BW_USERNAME }}
13+
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
14+
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
15+
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
16+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
17+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
18+
BW_NUMBER: ${{ secrets.BW_NUMBER }}
19+
USER_NUMBER: ${{ secrets.USER_NUMBER }}
20+
VZW_NUMBER: ${{ secrets.VZW_NUMBER }}
21+
ATT_NUMBER: ${{ secrets.ATT_NUMBER }}
22+
T_MOBILE_NUMBER: ${{ secrets.T_MOBILE_NUMBER }}
23+
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
24+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
25+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
26+
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
27+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
28+
BW_NUMBER_PROVIDER: ${{ secrets.BW_NUMBER_PROVIDER }}
29+
30+
jobs:
31+
test_pr_main:
32+
name: Test PR to Main Branch
33+
runs-on: ${{ matrix.os }}
34+
if: github.base_ref == 'main'
35+
strategy:
36+
matrix:
37+
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
38+
python-version: [3.7, 3.8, 3.9, '3.10']
39+
steps:
40+
- name: Checkout
41+
uses: actions/checkout@v3
42+
43+
- name: Set up Python
44+
uses: actions/setup-python@v4
45+
with:
46+
python-version: ${{ matrix.python-version }}
47+
48+
- name: Install Packages and Test
49+
run: |
50+
pip install -r requirements_dev.txt
51+
python -m pytest --pyargs bandwidth
52+
53+
test_feature:
54+
name: Test PR to Feature Branch
55+
runs-on: ${{ matrix.os }}
56+
if: github.base_ref == 'feature/openapi-generator-sdk'
57+
strategy:
58+
matrix:
59+
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
60+
python-version: [3.8, 3.9, '3.10']
61+
env:
62+
PYTHON_VERSION: ${{ matrix.python-version }}
63+
OPERATING_SYSTEM: ${{ matrix.os }}
64+
steps:
65+
- name: Checkout
66+
uses: actions/checkout@v3
67+
68+
- name: Set up Python
69+
uses: actions/setup-python@v4
70+
with:
71+
python-version: ${{ matrix.python-version }}
72+
73+
- name: Install Packages
74+
run: |
75+
pip install -r requirements.txt
76+
pip install -r test-requirements.txt
77+
78+
- name: Test at Debug Level
79+
if: ${{ inputs.logLevel == 'DEBUG' }}
80+
run: |
81+
echo "Log level: DEBUG"
82+
pytest -v --log-cli-level=DEBUG
83+
84+
- name: Test at Warning Level
85+
if: ${{( inputs.logLevel == null) || ( inputs.logLevel == 'WARNING') }}
86+
run: |
87+
echo "Log level: WARNING"
88+
pytest -v --log-cli-level=WARNING

.github/workflows/test.yml

Lines changed: 0 additions & 123 deletions
This file was deleted.

0 commit comments

Comments
 (0)