Electron-phonon extension #415
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: CI | |
on: [pull_request] | |
jobs: | |
health: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Setup MPI | |
uses: mpi4py/setup-mpi@v1 | |
with: | |
mpi: openmpi | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install -r dev/dev.txt | |
- name: pylint | |
run: | | |
python dev/run_tests.py --pylint | |
- name: format | |
run: | | |
python dev/run_tests.py --black | |
- name: flynt | |
run: | | |
python dev/run_tests.py --flynt | |
pytest-mpi4py: | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: [ '3.10', '3.11', '3.12' ] | |
mpi: | |
- openmpi | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: 'x64' | |
- name: Setup MPI | |
uses: mpi4py/setup-mpi@v1 | |
with: | |
mpi: ${{ matrix.mpi }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install -r dev/dev.txt | |
pip install pyblock | |
# https://github.com/JoonhoLee-Group/ipie/issues/278 | |
pip install pyscf | |
- name: Install package | |
run: | | |
# HACK FOR LEGACY CODE! | |
export BUILD_LEGACY_IPIE=1; python -m pip install -e . | |
- name: Test with pytest | |
run: | | |
pip install pytest | |
pip install pytest-xdist | |
#python -m pytest -n=auto | |
- name: mpi test | |
timeout-minutes: 10 | |
run: | | |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 2 python -m pytest ipie/legacy/walkers/tests/test_handler.py | |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 6 python ipie/estimators/tests/test_generic_chunked.py | |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 6 python -m pytest ipie/propagation/tests/test_generic_chunked.py | |
pytest-no_mpi: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install pytest-xdist | |
- name: Install package | |
run: | | |
python -m pip install -e . | |
- name: No mpi4py | |
run: | | |
python -c "from ipie.config import MPI; assert \"FakeComm\" in str(MPI.COMM_WORLD)" | |
python -m pytest -n=auto | |
- name: wicks helper | |
run: | | |
sudo apt-get -y update && sudo apt-get -y install cmake | |
cc --version | |
root=$(pwd) | |
cd ipie/lib/wicks && mkdir build && cd build && cmake .. && make VERBOSE=1 && cd $root | |
# pytest ipie/trial_wavefunction/ -m wicks | |
# pytest ipie/lib/wicks -m wicks | |
integration: | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Setup MPI | |
uses: mpi4py/setup-mpi@v1 | |
with: | |
mpi: openmpi | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install -r dev/dev.txt | |
- name: Install package | |
run: | | |
export BUILD_LEGACY_IPIE=1; python -m pip install -e . | |
- name: Test Integration | |
timeout-minutes: 10 | |
run: | | |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -np 4 python -u ipie/qmc/tests/test_mpi_integration.py | |
examples: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install pyblock | |
pip install torch | |
# https://github.com/JoonhoLee-Group/ipie/issues/278 | |
pip install pyscf fqe | |
- name: Install package | |
run: | | |
python -m pip install -e . | |
- name: Test Examples | |
timeout-minutes: 10 | |
run: | | |
python dev/run_tests.py --examples |