Upstream nightly version CI #80
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: Upstream nightly version CI | |
on: | |
schedule: | |
# weekly tests, Sundays at midnight | |
- cron: "0 0 * * 0" | |
workflow_dispatch: | |
concurrency: | |
# Specific group naming so CI is only cancelled | |
# within same PR or on merge to main | |
group: ${{ github.ref }}-${{ github.head_ref }}-${{ github.workflow }} | |
cancel-in-progress: true | |
defaults: | |
run: | |
shell: bash -l {0} | |
env: | |
OE_LICENSE: ${{ github.workspace }}/oe_license.txt | |
DGL_HOME: ${{ github.workspace }}/dgl | |
jobs: | |
nightly_check: | |
name: Nightly check | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macOS-13, macOS-latest, ubuntu-latest] | |
python-version: ["3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build information | |
run: | | |
uname -a | |
df -h | |
ulimit -a | |
- name: Install environment | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: devtools/conda-envs/nightly.yaml | |
create-args: >- | |
python=${{ matrix.python-version }} | |
pydantic=2 | |
- name: Install nightly pytorch | |
run: | | |
python -m pip install https://github.com/Lightning-AI/lightning/archive/refs/heads/master.zip -U | |
- name: Download DGL source | |
run: | | |
git clone --recurse-submodules https://github.com/dmlc/dgl.git | |
- name: Set up DGL | |
if: matrix.os != 'ubuntu-latest' | |
run: | | |
# from https://docs.dgl.ai/en/latest/install/index.html#macos | |
cd dgl/ | |
mkdir build && cd build | |
cmake -DUSE_OPENMP=off -DUSE_LIBXSMM=OFF .. | |
make -j4 | |
cd ../.. | |
- name: Set up DGL (Ubuntu) | |
if: matrix.os == 'ubuntu-latest' | |
run: | | |
cd dgl/ | |
mkdir build && cd build | |
cmake -DBUILD_TYPE=dev -DUSE_CUDA=OFF -DUSE_LIBXSMM=OFF .. | |
make | |
cd ../.. | |
- name: Install DGL Python bindings | |
run: | | |
cd dgl/python | |
python setup.py install | |
python setup.py build_ext --inplace | |
cd ../.. | |
- uses: ./.github/actions/include-openeye | |
with: | |
openeye-license-text: ${{ secrets.OE_LICENSE }} | |
openeye-license-file: ${{ env.OE_LICENSE }} | |
- name: Check toolkit installations | |
shell: bash -l -c "python -u {0}" | |
run: | | |
from openff.toolkit.utils.toolkits import OPENEYE_AVAILABLE, RDKIT_AVAILABLE | |
assert str(OPENEYE_AVAILABLE).lower() == 'true' | |
assert str(RDKIT_AVAILABLE).lower() == 'true' | |
- name: Check Python environment | |
run: | | |
pip list | |
- name: Import DGL | |
run: | | |
python -c "import dgl; import dgl.nn" | |
- name: Install package | |
run: | | |
python -m pip install . --no-deps | |
- name: Run tests | |
run: | | |
python -m pytest -n 4 -v --cov=openff/nagl --cov-config=setup.cfg --cov-append --cov-report=xml --color=yes openff/nagl/ | |