hazardlib + engine + server tests #29
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
# This workflow will install Python dependencies, run tests and lint with multiple versions of Python | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
name: hazardlib + engine + server tests | |
on: | |
workflow_dispatch: | |
inputs: | |
git-ref: | |
description: Git Ref | |
default: master | |
required: true | |
schedule: | |
- cron: "00 22 * * *" | |
jobs: | |
engine: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-22.04] | |
python-version: [3.8, 3.9, "3.10"] | |
env: | |
GITHUB_HEAD_REF: ${{ github.head_ref }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
if [[ "$GITHUB_HEAD_REF" != "" ]] | |
then | |
python install.py devel --version=$GITHUB_HEAD_REF | |
else | |
python install.py devel | |
fi | |
- name: Calculators and documentation tests | |
run: | | |
source ~/openquake/bin/activate | |
pip install pytest https://wheelhouse.openquake.org/v3/py/rtgmpy-1.0.0-py3-none-any.whl | |
oq dbserver start | |
pytest --doctest-modules --disable-warnings --color=yes --durations=10 openquake/calculators && pytest doc/adv-manual/*.rst | |
hazardlib: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: [3.8, 3.9, "3.10"] | |
env: | |
GITHUB_HEAD_REF: ${{ github.head_ref }} | |
GITHUB_REPOSITORY: ${{ github.repository }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
if [[ "$GITHUB_HEAD_REF" != "" ]] | |
then | |
python install.py devel --version=$GITHUB_HEAD_REF | |
else | |
python install.py devel | |
fi | |
- name: Hazardlib tests | |
run: | | |
source ~/openquake/bin/activate | |
pip install pyshp pytest flake8 https://wheelhouse.openquake.org/v3/py/rtgmpy-1.0.0-py3-none-any.whl | |
oq dbserver start | |
cd openquake | |
pytest --doctest-modules --disable-warnings --color=yes --durations=8 sep commands engine hmtk risklib commonlib baselib hazardlib | |
server_public_mode: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: [3.8, 3.9, "3.10"] | |
env: | |
GITHUB_HEAD_REF: ${{ github.head_ref }} | |
GITHUB_REPOSITORY: ${{ github.repository }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
if [[ "$GITHUB_HEAD_REF" != "" ]] | |
then | |
python install.py devel --version=$GITHUB_HEAD_REF | |
else | |
python install.py devel | |
fi | |
- name: Server 'PUBLIC' mode tests | |
run: | | |
source ~/openquake/bin/activate | |
oq dbserver start | |
# -v 2 also logs the test names | |
OQ_APPLICATION_MODE=public ./openquake/server/manage.py test -v 2 tests.test_public_mode | |
server_read_only_mode: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: [3.8, 3.9, "3.10"] | |
env: | |
GITHUB_HEAD_REF: ${{ github.head_ref }} | |
GITHUB_REPOSITORY: ${{ github.repository }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
if [[ "$GITHUB_HEAD_REF" != "" ]] | |
then | |
python install.py devel --version=$GITHUB_HEAD_REF | |
else | |
python install.py devel | |
fi | |
- name: Server 'READ_ONLY' mode tests | |
run: | | |
source ~/openquake/bin/activate | |
oq dbserver start | |
# -v 2 also logs the test names | |
OQ_APPLICATION_MODE=read_only ./openquake/server/manage.py test -v 2 tests.test_read_only_mode | |
server_aelo_mode: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: [3.8, 3.9, "3.10"] | |
env: | |
GITHUB_HEAD_REF: ${{ github.head_ref }} | |
GITHUB_REPOSITORY: ${{ github.repository }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
if [[ "$GITHUB_HEAD_REF" != "" ]] | |
then | |
python install.py devel --version=$GITHUB_HEAD_REF | |
else | |
python install.py devel | |
fi | |
- name: Server 'AELO' mode tests | |
run: | | |
source ~/openquake/bin/activate | |
oq dbserver start | |
# -v 2 also logs the test names | |
OQ_APPLICATION_MODE=aelo OQ_CONFIG_FILE=openquake/server/tests/data/openquake.cfg ./openquake/server/manage.py test -v 2 tests.test_aelo_mode |