Skip to content

Merge branch 'a-r-j:master' into amorehead-pdbmanager-chain-interface… #24

Merge branch 'a-r-j:master' into amorehead-pdbmanager-chain-interface…

Merge branch 'a-r-j:master' into amorehead-pdbmanager-chain-interface… #24

Workflow file for this run

name: build
on:
push:
paths-ignore:
- "README.md"
- "docs/**"
pull_request:
paths-ignore:
- "README.md"
- "docs/*"
jobs:
build_cpu:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9]
torch: [1.12.0, 1.13.0, 2.0.0]
#include:
# - torch: 1.6.0
# torchvision: 0.7.0
# - torch: 1.7.0
# torchvision: 0.8.1
# - torch: 1.8.0
# torchvision: 0.9.0
# - torch: 1.9.0
# torchvision: 0.10.0
# - torch: 1.8.0
# torchvision: 0.9.0
# python-version: 3.9
# - torch: 1.9.0
# torchvision: 0.10.0
# python-version: 3.8
# - torch: 1.9.0
# torchvision: 0.10.0
# python-version: 3.9
# https://github.com/marketplace/actions/setup-miniconda#use-a-default-shell
defaults:
run:
shell: bash -l {0}
steps:
- name: Checkout repository
uses: actions/checkout@v3
# See: https://github.com/marketplace/actions/setup-miniconda
- name: Setup miniconda
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
miniforge-variant: Mambaforge
channels: "conda-forge, salilab, pytorch, pyg"
python-version: ${{ matrix.python-version }}
use-mamba: true
#- name: Set up Python ${{ matrix.python-version }}
# uses: actions/setup-python@v2
# with:
#python-version: ${{ matrix.python-version }}
#- name: Setup conda environment
# run: conda env create -n graphein-dev python=${{ matrix.python-version }}
#- name: Activate Conda Environment
# run: source activate graphein-dev
- name: Install DSSP
run: conda install -c salilab dssp
- name: Install mmseqs
run: mamba install -c conda-forge -c bioconda mmseqs2
- name: Install PyTorch
run: mamba install -c pytorch pytorch==${{matrix.torch}} cpuonly
#run: pip install torch==${{matrix.torch}}+cpu torchvision==${{matrix.torchvision}}+cpu -f https://download.pytorch.org/whl/torch_stable.html
- name: Install PyG
run: mamba install -c pyg pyg
- name: Install torch-cluster
run: mamba install pytorch-cluster -c pyg
- name: Install BLAST
run: sudo apt install ncbi-blast+
- name: Install Graphein
run: pip install -e .
- name: Install Extras
run: pip install -r .requirements/extras.in
- name: Install Dev Dependencies
run: pip install -r .requirements/dev.in
- name: Install doc dependencies
run: pip install -r .requirements/docs.in
- name: Run unit tests and generate coverage report
run: pytest .
- name: Test notebook execution
run: pytest --nbval-lax notebooks/ --current-env --ignore-glob="notebooks/dataloader_tutorial.ipynb" --ignore-glob="notebooks/datasets_and_dataloaders.ipynb" --ignore-glob="notebooks/foldcomp.ipynb"