Run tests #504
Workflow file for this run
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: Run tests | |
on: [push] | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
env: | |
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true' | |
DOCKER_COMPOSE: docker-compose -f docker-compose.yml -f docker-compose.frontend.yml -p circles | |
steps: | |
- name: Add hosts to /etc/hosts | |
run: | | |
sudo echo "127.0.1.1 api.circles.local" | sudo tee -a /etc/hosts | |
sudo echo "127.0.1.1 graph.circles.local" | sudo tee -a /etc/hosts | |
sudo echo "127.0.1.1 relay.circles.local" | sudo tee -a /etc/hosts | |
- name: Check out circles-core repository code | |
uses: actions/checkout@v2 | |
with: | |
path: circles-core | |
- name: Copy core configs | |
working-directory: circles-core | |
run: cp .env.example .env | |
- name: Read node version from .nvmrc | |
working-directory: circles-core | |
id: nvmrc | |
run: echo ::set-output name=NODE_VERSION::$(cat .nvmrc) | |
- name: Setup node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: '${{ steps.nvmrc.outputs.NODE_VERSION }}' | |
- name: Cache Node.js modules | |
uses: actions/cache@v2 | |
with: | |
# npm cache files are stored in `~/.npm` on Linux/macOS. | |
path: ~/.npm | |
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.OS }}-node- | |
${{ runner.OS }}- | |
- name: Get circles-docker repository and copy configs | |
uses: actions/checkout@v2 | |
with: | |
repository: CirclesUBI/circles-docker.git | |
ref: main | |
path: circles-docker | |
- name: Setup docker repo | |
working-directory: circles-docker | |
run: cp .env.example .env | |
- name: Container setup via docker-compose | |
working-directory: circles-docker | |
run: docker-compose -f docker-compose.yml -f docker-compose.relayer-pull.yml -f docker-compose.api-pull.yml -p circles up --detach --remove-orphans --build | |
- name: Download and migrate contracts | |
working-directory: circles-docker | |
run: ./scripts/migrate-contracts.sh | |
- name: Create and deploy subgraph | |
working-directory: circles-docker | |
run: ./scripts/deploy-subgraph.sh | |
- name: Try starting failed services | |
working-directory: circles-docker | |
run: docker-compose -f docker-compose.yml -f docker-compose.relayer-pull.yml -f docker-compose.api-pull.yml -p circles up --detach --remove-orphans --build | |
- name: Install dependencies | |
working-directory: circles-core | |
run: npm install | |
- name: Check code formatting | |
working-directory: circles-core | |
run: npm run lint | |
- name: Run tests | |
working-directory: circles-core | |
run: npm run test | |
- name: Build | |
working-directory: circles-core | |
run: npm run build |