Skip to content

Commit

Permalink
SWI-5183 Update Test Workflows and README (#22)
Browse files Browse the repository at this point in the history
* SWI-5183 Update Test Workflows and README

* add node 22 to tests
  • Loading branch information
ckoegel authored May 9, 2024
1 parent 78d7905 commit 5aca8c3
Show file tree
Hide file tree
Showing 4 changed files with 173 additions and 91 deletions.
106 changes: 53 additions & 53 deletions .github/workflows/test-nightly.yml
Original file line number Diff line number Diff line change
@@ -1,65 +1,65 @@
name: Test Main Branch Nightly

on:
schedule:
- cron: "0 4 * * *"
schedule:
- cron: "0 4 * * *"

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true

env:
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
BW_USERNAME: ${{ secrets.BW_USERNAME }}
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
BW_NUMBER: ${{ secrets.BW_NUMBER }}
USER_NUMBER: ${{ secrets.USER_NUMBER }}
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
BW_USERNAME: ${{ secrets.BW_USERNAME }}
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
BW_NUMBER: ${{ secrets.BW_NUMBER }}
USER_NUMBER: ${{ secrets.USER_NUMBER }}
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}

jobs:
test_main:
name: Test Main Branch Nightly
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
node-version: [16, 18, 20]
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: "main"
test_main:
name: Test Main Branch Nightly
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
node-version: [16, 18, 20, 22]
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: "main"

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

- name: Install Packages and Test
run: |
yarn
yarn test
env:
OPERATING_SYSTEM: ${{ matrix.os }}
- name: Install Packages and Test
run: |
yarn
yarn test
env:
OPERATING_SYSTEM: ${{ matrix.os }}

notify_for_failures:
name: Notify for Failures
needs: [test_main]
if: failure()
runs-on: ubuntu-latest
steps:
- name: Notify Slack of Failures
uses: Bandwidth/build-notify-slack-action@v1.0.0
with:
job-status: failure
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
slack-channel: ${{ secrets.SLACK_CHANNEL }}
notify_for_failures:
name: Notify for Failures
needs: [test_main]
if: failure()
runs-on: ubuntu-latest
steps:
- name: Notify Slack of Failures
uses: Bandwidth/build-notify-slack-action@v2.0.0
with:
job-status: failure
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
slack-channel: ${{ secrets.SLACK_CHANNEL }}
78 changes: 40 additions & 38 deletions .github/workflows/test-pr.yml
Original file line number Diff line number Diff line change
@@ -1,49 +1,51 @@
name: Test PR

on:
pull_request:
pull_request:
branches:
- main

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true

env:
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
BW_USERNAME: ${{ secrets.BW_USERNAME }}
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
BW_NUMBER: ${{ secrets.BW_NUMBER }}
USER_NUMBER: ${{ secrets.USER_NUMBER }}
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
BW_USERNAME: ${{ secrets.BW_USERNAME }}
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
BW_NUMBER: ${{ secrets.BW_NUMBER }}
USER_NUMBER: ${{ secrets.USER_NUMBER }}
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}

jobs:
test_pr:
name: Test PR
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
node-version: [16, 18, 20]
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
test_pr:
name: Test PR
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-2022, windows-2019, ubuntu-20.04, ubuntu-22.04]
node-version: [16, 18, 20, 22]
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

- name: Install Packages and Test
run: |
yarn
yarn test
env:
OPERATING_SYSTEM: ${{ matrix.os }}
- name: Install Packages and Test
run: |
yarn
yarn test
env:
OPERATING_SYSTEM: ${{ matrix.os }}
40 changes: 40 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
## bandwidth-sdk

[![Tests](https://github.com/Bandwidth/node-sdk/actions/workflows/test-nightly.yml/badge.svg)](https://github.com/Bandwidth/node-sdk/actions/workflows/test-nightly.yml)

### Test Matrix
| **OS** | **Node** |
|:---:|:---:|
| Windows 2019 | 16, 18, 20, 22 |
| Windows 2022 | 16, 18, 20, 22 |
| Ubuntu 20.04 | 16, 18, 20, 22 |
| Ubuntu 22.04 | 16, 18, 20, 22 |

#### Available on NPM
```
npm install bandwidth-sdk
```

This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments:

Environment
Expand Down Expand Up @@ -43,3 +58,28 @@ _unPublished (not recommended):_

```
npm install PATH_TO_GENERATED_PACKAGE --save
```

### Getting Started

The following is a simple example of how to use this module:

```javascript
import { CallsApi, Configuration } from 'bandwidth-sdk';

const config = new Configuration({
username: BW_USERNAME,
password: BW_PASSWORD
});
const callsApi = new CallsApi(config);

const body = {
applicationId: BW_VOICE_APPLICATION_ID,
to: TO_NUMBER,
from: BW_NUMBER
};

await callsApi.createCall(BW_ACCOUNT_ID, body);
```

More samples can be found in the [Bandwidth Samples](https://github.com/orgs/Bandwidth-Samples/repositories?q=lang%3Ajavascript&type=all) GitHub Organization.
40 changes: 40 additions & 0 deletions custom_templates/README.mustache
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
## {{npmName}}

[![Tests](https://github.com/Bandwidth/node-sdk/actions/workflows/test-nightly.yml/badge.svg)](https://github.com/Bandwidth/node-sdk/actions/workflows/test-nightly.yml)

### Test Matrix
| **OS** | **Node** |
|:---:|:---:|
| Windows 2019 | 16, 18, 20, 22 |
| Windows 2022 | 16, 18, 20, 22 |
| Ubuntu 20.04 | 16, 18, 20, 22 |
| Ubuntu 22.04 | 16, 18, 20, 22 |

#### Available on NPM
```
npm install {{npmName}}
```

This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments:

Environment
Expand Down Expand Up @@ -43,3 +58,28 @@ _unPublished (not recommended):_

```
npm install PATH_TO_GENERATED_PACKAGE --save
```

### Getting Started

The following is a simple example of how to use this module:

```javascript
import { CallsApi, Configuration } from '{{npmName}}';

const config = new Configuration({
username: BW_USERNAME,
password: BW_PASSWORD
});
const callsApi = new CallsApi(config);

const body = {
applicationId: BW_VOICE_APPLICATION_ID,
to: TO_NUMBER,
from: BW_NUMBER
};

await callsApi.createCall(BW_ACCOUNT_ID, body);
```

More samples can be found in the [Bandwidth Samples](https://github.com/orgs/Bandwidth-Samples/repositories?q=lang%3Ajavascript&type=all) GitHub Organization.

0 comments on commit 5aca8c3

Please sign in to comment.