Files
TheGame/.github/workflows/PR-CI.yml

85 lines
1.7 KiB
YAML

name: TheGame CI
on:
pull_request:
branches:
- master
push:
branches:
- master
jobs:
test:
name: Run Tests
runs-on: ubuntu-latest
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.4.0
with:
access_token: ${{ github.token }}
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12.x
- uses: actions/cache@v2
with:
path: '**/node_modules'
key: nodeModules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
- name: Install packages
run: yarn --frozen-lockfile
env:
CI: true
- name: Typechecking
run: yarn typecheck
env:
CI: true
- name: Linting
run: yarn lint
env:
CI: true
- name: Testing
run: yarn test --ci --coverage
env:
CI: true
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.4.0
with:
access_token: ${{ github.token }}
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 12.x
- uses: actions/cache@v2
with:
path: '**/node_modules'
key: nodeModules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
- name: Install packages
run: yarn --frozen-lockfile
env:
CI: true
- name: Build Web
run: yarn web:build
env:
CI: true
NEXT_PUBLIC_GRAPHQL_URL: ${{ secrets.NEXT_PUBLIC_GRAPHQL_URL }}
- name: Build Backend
run: yarn backend:build
env:
CI: true