Skip to content

Previous Version Integration Tests Workflow #1926

Previous Version Integration Tests Workflow

Previous Version Integration Tests Workflow #1926

name: Previous Version Integration Tests Workflow
on:
schedule:
# More information on cron https://crontab.guru/
- cron: '0 1 * * *'
env:
SELENIUM_GRID_PROVIDER: saucelabs
CLOUD_WATCH_METRIC: false
TEST_TYPE: Github-Action
SAUCE_USERNAME: ${{secrets.SAUCE_USERNAME}}
SAUCE_ACCESS_KEY: ${{secrets.SAUCE_ACCESS_KEY}}
MESSAGING_USER_ARN: ${{secrets.MESSAGING_USER_ARN}}
permissions:
id-token: write # This is required for requesting the JWT
jobs:
prev-version-integ:
name: Previous Version Integration Tests
runs-on: ubuntu-latest
steps:
- name: Setup Node.js - 20.x
uses: actions/setup-node@v4
with:
node-version: 20.x
- name: Checkout Package
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Get previous version
id: prev
run: |
prev_version=$(.github/script/get-prev-version)
echo "Previous version:" $prev_version
echo "prev_version=$prev_version" >> $GITHUB_OUTPUT
- name: Create a Job ID
id: create-job-id
uses: filipstefansson/uuid-action@v1
- name: Set JOB_ID Env Variable
run: echo "JOB_ID=${{ steps.create-job-id.outputs.uuid }}" >> $GITHUB_ENV
- name: Echo Job ID
run: echo "${{ steps.create-job-id.outputs.uuid }}"
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME_SDK_DEV }}
role-session-name: ${{ env.TEST_TYPE }}
aws-region: us-east-1
- name: Setup Sauce Connect
uses: saucelabs/sauce-connect-action@v3
with:
username: ${{ secrets.SAUCE_USERNAME }}
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }}
noSSLBumpDomains: all
tunnelIdentifier: ${{ steps.create-job-id.outputs.uuid }}
- name: Setup
run: git checkout tags/v${{ steps.prev.outputs.prev_version }}
- name: Pack the Chime SDK and install the tarball into the Demo
run: |
npm run build
npm pack
cd demos/browser
npm uninstall amazon-chime-sdk-js
npm install ../../amazon-chime-sdk-js-${{ steps.prev.outputs.prev_version }}.tgz
- name: Clean Install
run: npm ci
- name: Run Audio Test
working-directory: ./integration
run: npm run test -- --test-name AudioTest --host saucelabs --test-type browser-compatibility
- name: Run Video Test
working-directory: ./integration
run: npm run test -- --test-name VideoTest --host saucelabs --test-type browser-compatibility