Skip to content
This repository has been archived by the owner on Aug 7, 2024. It is now read-only.

fix: Move game creator to Django #600

fix: Move game creator to Django

fix: Move game creator to Django #600

Workflow file for this run

name: CI/CD
on:
release:
types: [published]
pull_request:
jobs:
test:
name: Run JS/Python/Cypress tests
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.8"
architecture: "x64"
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install dependencies
run: |
pip install pipenv==2022.10.4
pipenv install --dev --system
cd game_frontend
yarn --frozen-lockfile
- name: Run Javascript tests
run: |
cd game_frontend
yarn lint
yarn test --coverage
- name: Bundle Frontend
env:
NODE_ENV: production
run: |
cd game_frontend
node djangoBundler.js
- name: Run migration
env:
LOAD_KUBE_CONFIG: 0
run: python example_project/manage.py makemigrations
- name: Run Python tests
run: pytest --cov=. --cov-report=xml aimmo
- name: Run Cypress tests
uses: cypress-io/github-action@v5
with:
browser: chrome
install: false
start: python ../run.py -c
working-directory: game_frontend
wait-on: http://localhost:8000
wait-on-timeout: 400
record: true
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
test-aimmo-game:
name: Test aimmo-game
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Build docker image
run: |
cd aimmo-game
docker build -t ocadotechnology/aimmo-game:test --target tester .
- name: Run tests
run: docker run -i -p 5000:5000 ocadotechnology/aimmo-game:test /bin/bash -c "coverage run setup.py test && coverage xml"
- name: Get the coverage data from the container
run: |
read CONTAINERID <<< $(docker ps --all -q | head -1)
docker cp -a $CONTAINERID:.coverage $(pwd)/.coverage
docker cp -a $CONTAINERID:coverage.xml $(pwd)/coverage.xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
test-aimmo-game-worker:
name: Test aimmo-game-worker
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Build docker image
run: |
cd aimmo-game-worker
docker build -t ocadotechnology/aimmo-game-worker:test --target tester .
- name: Run tests
run: docker run -i -p 5000:5000 ocadotechnology/aimmo-game-worker:test /bin/bash -c "coverage run setup.py test && coverage xml"
- name: Get the coverage data from the container
run: |
read CONTAINERID <<< $(docker ps --all -q | head -1)
docker cp -a $CONTAINERID:.coverage $(pwd)/.coverage
docker cp -a $CONTAINERID:coverage.xml $(pwd)/coverage.xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3