Harden serverless demo check on attendee count #1211
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# For the backwards compatibility test, this should be run on the release branch only as part. | |
# The release branch should not be tagged with the new version yet (that happens when we create a Github Release) | |
# so we can checkout the latest tag and install the new version tarball into the demo. | |
# For example, if we're about to release v2.14.0, first create a tarball (the relase commit should bump the pacakge.json version to v2.14.0) | |
# then check out the previous v2.13.0 demo using the v2.13.0 tag, then navigate to the v2.13.0 demo and install the v2.14.0 amazon-chime-sdk-js tarball. | |
# Then run the entire integration test suite on the demo. | |
name: Backwards Compatibility Test | |
on: | |
push: | |
branches: | |
- 'release-**' | |
- '!release-**.x' | |
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}} | |
jobs: | |
check-backward-compatibility-run: | |
name: Check need for backward compatibility checks | |
runs-on: ubuntu-latest | |
outputs: | |
run-check: ${{ steps.version-check.outputs.run-check }} | |
steps: | |
- name: Checkout Package | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Version check for backward compatibility check | |
id: version-check | |
run: echo "::set-output name=run-check::$(node .github/script/backward-compatibility-run-check.js)" | |
release-integ-test: | |
name: Run Backwards Compatible Integration Tests with Release Tarball | |
runs-on: ubuntu-latest | |
needs: check-backward-compatibility-run | |
if: contains(needs.check-backward-compatibility-run.outputs.run-check, 'Run backward compatibility checks') | |
steps: | |
- name: Setup Node.js - 16.x | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 16.x | |
- name: Checkout Package | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Pack the Chime SDK and install the tarball into the previous version Demo | |
run: node script/backward-compatibility-demo-setup.js | |
- name: Create a Job ID | |
id: create-job-id | |
uses: filipstefansson/uuid-action@ce29ebbb0981ac2448c2e406e848bfaa30ddf04c | |
- 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@v1 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: us-east-1 | |
- name: Setup Sauce Connect | |
uses: saucelabs/sauce-connect-action@v2 | |
with: | |
username: ${{ secrets.SAUCE_USERNAME }} | |
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} | |
noSSLBumpDomains: all | |
tunnelIdentifier: ${{ steps.create-job-id.outputs.uuid }} | |
- name: Install Kite | |
run: integration/js/script/install-kite | |
- name: Clean Install | |
run: npm ci | |
- name: Run Audio Integration Test | |
run: npm run test:integration-audio | |
- name: Run Video Integ Test | |
run: npm run test:integration-video | |
- name: Run Content Share Integration Test Job One | |
run: npm run test:integration-content-share-test-suite-one | |
- name: Run Content Share Integration Test Job Two | |
run: npm run test:integration-content-share-test-suite-two | |
- name: Run Data Message Integration Test | |
run: npm run test:integration-data-message | |
- name: Run Meeting Readiness Checker Integration Test | |
run: npm run test:integration-meeting-readiness-checker | |
- name: Setup userArn | |
run: integration/js/script/test-setup | |
- name: Run Messaging Integration Test | |
run: npm run test:integration-messaging |