Clean up task & service queue #65
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: Full Suite End-to-end tests (old manager) | |
on: | |
push: | |
branches: | |
- master | |
- next | |
paths-ignore: | |
- 'docs/**' | |
pull_request: | |
branches: | |
- master | |
- next | |
paths-ignore: | |
- 'docs/**' | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.8", "3.9", "3.10"] | |
adapter: ["pool", "parsl", "dask"] | |
steps: | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Clone the QCArchive repository | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
path: qcarchive | |
################################################# | |
# QCFractal Server | |
################################################# | |
- name: Configure conda for the QCFractal server | |
uses: conda-incubator/setup-miniconda@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
miniforge-variant: Mambaforge | |
miniforge-version: latest | |
activate-environment: qcarchive-server | |
environment-file: qcarchive/qcarchivetesting/conda-envs/fulltest_server.yaml | |
auto-activate-base: false | |
- name: Install QCFractal | |
shell: bash -l {0} | |
run: | | |
pip install -e ./qcarchive/qcportal -e ./qcarchive/qcfractalcompute -e ./qcarchive/qcfractal | |
- name: Conda info for the QCFractal server | |
shell: bash -l {0} | |
run: | | |
conda info | |
conda list | |
- name: Start the QCFractal server | |
shell: bash -l {0} | |
run: | | |
mkdir server; cd server | |
cp ../qcarchive/qcarchivetesting/qcarchivetesting/config_files/gha_fractal_server.yaml ./ | |
qcfractal-server --config=gha_fractal_server.yaml init-db | |
qcfractal-server --config=gha_fractal_server.yaml start & | |
################################################# | |
# QCFractalCompute worker | |
################################################# | |
- name: Configure conda for QCFractalCompute worker | |
uses: conda-incubator/setup-miniconda@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
miniforge-variant: Mambaforge | |
miniforge-version: latest | |
activate-environment: qcarchive-worker | |
environment-file: qcarchive/qcarchivetesting/conda-envs/fulltest_oldworker_${{ matrix.adapter }}.yaml | |
auto-activate-base: false | |
- name: Install QCFractalCompute | |
shell: bash -l {0} | |
run: | | |
pip install -e ./qcarchive/qcportal -e ./qcarchive/qcfractalcompute | |
- name: Conda info for the QCFractalCompute worker | |
shell: bash -l {0} | |
run: | | |
conda info | |
conda list | |
- name: Start the QCFractalCompute worker | |
shell: bash -l {0} | |
run: | | |
mkdir compute; cd compute | |
cp ../qcarchive/qcarchivetesting/qcarchivetesting/config_files/gha_fractal_oldcompute_${{ matrix.adapter }}.yaml ./ | |
qcfractal-manager --config=gha_fractal_oldcompute_${{ matrix.adapter }}.yaml & | |
################################################# | |
# QCPortal client | |
################################################# | |
- name: Configure conda for the QCPortal client | |
uses: conda-incubator/setup-miniconda@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
miniforge-variant: Mambaforge | |
miniforge-version: latest | |
activate-environment: qcarchive-qcportal | |
environment-file: qcarchive/qcarchivetesting/conda-envs/fulltest_qcportal.yaml | |
auto-activate-base: false | |
- name: Install QCPortal | |
shell: bash -l {0} | |
run: | | |
pip install -e ./qcarchive/qcportal | |
pip install pytest | |
- name: Conda info for the QCPortal client | |
shell: bash -l {0} | |
run: | | |
conda info | |
conda list | |
################################################# | |
# Run tests | |
################################################# | |
- name: Run Tests | |
shell: bash -l {0} | |
run: | | |
python3 -m venv testing_env | |
source testing_env/bin/activate | |
pip install --upgrade pip | |
cd qcarchive | |
pip install -e ./qcportal -e ./qcfractalcompute -e ./qcfractal -e ./qcarchivetesting | |
pytest --log-level=DEBUG --fractal-uri="http://127.0.0.1:7900" qcarchivetesting | |
- name: Stop server & worker | |
shell: bash -l {0} | |
run: | | |
killall qcfractal-manager | |
killall qcfractal-server |