Scripts for asQ manuscript #811
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: Lint and test | |
on: | |
# Run on pushes to master | |
push: | |
branches: | |
- master | |
# And all pull requests | |
pull_request: | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
concurrency: | |
# Cancels jobs running if new commits are pushed | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build: | |
name: "Build and test asQ" | |
# The type of runner that the job will run on | |
# runs-on: ubuntu-latest | |
runs-on: self-hosted | |
# The docker container to use. | |
container: | |
image: firedrakeproject/firedrake:latest | |
env: | |
ASQ_CI_TESTS: 1 | |
OMP_NUM_THREADS: 1 | |
OPENBLAS_NUM_THREADS: 1 | |
# Steps represent a sequence of tasks that will be executed as | |
# part of the jobs | |
steps: | |
- name: Fix permissions | |
# Firedrake's Dockerfile sets USER to firedrake instead of | |
# using the default user, so we need to update file | |
# permissions for this image to work on GH Actions. | |
# See https://help.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners#docker-container-filesystem | |
# (copied from https://help.github.com/en/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions) | |
run: | | |
sudo chmod -R 777 $GITHUB_WORKSPACE /github /__w/_temp | |
- uses: actions/checkout@v2 | |
- name: Install test dependencies | |
run: | | |
. /home/firedrake/firedrake/bin/activate | |
python -m pip install pytest-timeout | |
python -m pip install pytest-cov | |
- name: Lint | |
run: | | |
. /home/firedrake/firedrake/bin/activate | |
flake8 --version | |
flake8 . | |
- name: Test | |
run: | | |
. /home/firedrake/firedrake/bin/activate | |
python --version | |
python -m pytest --version | |
firedrake-status | |
python -m pytest -v -n 6 --durations=40 --timeout=600 --cov=asQ --cov-report=term tests/ |