Skip to content

feat: Update styling [PT-187736835] #45

feat: Update styling [PT-187736835]

feat: Update styling [PT-187736835] #45

Workflow file for this run

name: Continuous Integration
on: push
jobs:
build_test:
name: Build and Run Jest Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '16'
- name: Install Dependencies
run: npm ci
- name: Build
run: npm run build
- name: Run Tests
run: npm run test
cypress:
runs-on: ubuntu-latest
strategy:
# when one test fails, DO NOT cancel the other
# containers, because this will kill Cypress processes
# leaving the Dashboard hanging ...
# https://github.com/cypress-io/github-action/issues/48
fail-fast: false
matrix:
# run 3 copies of the current job in parallel
containers: [1, 2, 3]
steps:
- name: Checkout
uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '16'
- name: Install Dependencies
run: npm ci
- name: Build
run: npm run build
- uses: cypress-io/github-action@v4
with:
start: npm start
wait-on: 'http://localhost:8080'
# only record the results to dashboard.cypress.io if CYPRESS_RECORD_KEY is set
record: ${{ !!secrets.CYPRESS_RECORD_KEY }}
# only do parallel if we have a record key
parallel: ${{ !!secrets.CYPRESS_RECORD_KEY }}
env:
# pass the Dashboard record key as an environment variable
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# pass GitHub token to allow accurately detecting a build vs a re-run build
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# turn on code coverage when running npm start
# so far we've been using a webpack istanbul-instrumenter-loader for this
# but there has been work on building code coverage into node itself, which
# should be much faster
CODE_COVERAGE: true
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
flags: cypress
s3-deploy:
name: Deploy to Amazon S3
needs:
- build_test
- cypress
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: "16"
- name: Install Dependencies
run: npm ci
env:
# Skip installing Cypress since it isn't needed for just building
# This decreases the deploy time quite a bit
CYPRESS_INSTALL_BINARY: 0
- name: Deploy files to Amazon S3
uses: concord-consortium/s3-deploy-action@v1
with:
bucket: models-resources
prefix: ${{ github.event.repository.name }} # 'question-interactives'
awsAccessKeyId: ${{ secrets.AWS_ACCESS_KEY_ID }}
awsSecretAccessKey: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# Add the default branch as a top branch
topBranches: |-
[
"${{ github.event.repository.default_branch }}"
]