Merge pull request #373 from neuroanatomy/dependabot/npm_and_yarn/get… #352
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
name: CI | |
on: [push, pull_request] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- uses: supercharge/mongodb-github-action@1.3.0 | |
with: | |
mongodb-version: 4.2 | |
- run: npm install | |
- name: Instantiate github-keys.json | |
run: 'echo "{ \"clientID\": \"clientID\", \"clientSecret\": \"clientSecret\", \"callbackURL\": \"http://localhost:3001/auth/github/callback\"}" > github-keys.json' | |
- name: Instantiate blacklist | |
run: echo {} > controller/atlasmakerServer/blacklist.json | |
- name: Instantiate whitelist | |
run: echo "{}" > controller/atlasmakerServer/whitelist.json | |
- name: Instantiate websocket configuration file | |
run: cp cfg.json.example cfg.json | |
- run: npm run build | |
- name: Run server | |
run: timeout 3 npm start || code=$?; if [[ $code -ne 124 && $code -ne 0 ]]; then exit $code; fi | |
- name: Run unit tests | |
run: npm run test-unit | |
- name: Upload unit tests coverage to Codecov | |
uses: codecov/codecov-action@v2 | |
with: | |
directory: ./test/unit/coverage | |
flags: unittests | |
- name: Run integration tests | |
run: npm run test-integration | |
- name: Upload integration tests coverage to Codecov | |
uses: codecov/codecov-action@v2 | |
with: | |
directory: ./test/integration/coverage | |
flags: integration | |
- name: Archive screenshots | |
if: always() | |
uses: actions/upload-artifact@v2 | |
with: | |
name: screenshots | |
path: test/screenshots/ | |
deploy: | |
needs: test | |
if: github.event_name == 'push' && github.ref == 'refs/heads/master' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Invoke deployment hook | |
uses: distributhor/workflow-webhook@v1 | |
env: | |
webhook_url: ${{ secrets.WEBHOOK_URL }} | |
webhook_secret: ${{ secrets.WEBHOOK_SECRET }} |