Push to pypi-test on release #60
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: AlphaPulldown-github-CI | |
on: [pull_request, push] | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
python-version: ["3.10.12", "3.11"] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Debug List Directory | |
run: ls -la -R | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: "pip" | |
- name: Display Python version | |
run: python -c "import sys; print(sys.version)" | |
- name: Add Conda to System Path | |
run: | | |
pwd | |
echo $CONDA/bin >> $GITHUB_PATH | |
echo "$GITHUB_WORKSPACE/alphapulldown" >> $GITHUB_PATH | |
- name: Install AlphaPulldown without dependencies | |
run: | | |
conda create --name AlphaPulldown python=${{ matrix.python-version }} | |
eval "$(conda shell.bash hook)" | |
conda activate AlphaPulldown | |
conda install -c anaconda conda-build | |
conda develop alphapulldown | |
conda develop alphapulldown/ColabFold | |
conda develop alphafold | |
python -c "import alphafold; import os; print('Alphafold module is located at:', alphafold.__file__); alphafold_dir = os.path.dirname(alphafold.__file__); print('Contents of the Alphafold directory:', os.listdir(alphafold_dir))" | |
- name: Install Dependencies | |
run: | | |
eval "$(conda shell.bash hook)" | |
conda activate AlphaPulldown | |
conda install -c omnia -c bioconda -c conda-forge openmm==8.0 pdbfixer==1.9 kalign2 cctbx-base importlib_metadata | |
pip install jax==0.3.25 jaxlib==0.3.25+cuda11.cudnn805 -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html | |
pip install "absl-py>=0.13.0" dm-haiku "dm-tree>=0.1.6" "h5py>=3.1.0" "ml-collections>=0.1.0" "pandas>=1.3.4" tensorflow "importlib-resources==5.8.0" "nbformat==5.4.0" "py3Dmol==2.0.1" ipython appdirs jupyterlab ipywidgets pytest | |
- name: Run Tests | |
run: | | |
eval "$(conda shell.bash hook)" | |
conda activate AlphaPulldown | |
pytest -s test/test_custom_db.py | |
pytest -s test/test_remove_clashes_low_plddt.py | |
#TODO: mock AF dbs and add other tests | |
publish: | |
runs-on: ubuntu-latest | |
if: github.event_name == 'release' && github.event.action == 'published' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- run: python3 -m pip install --upgrade build && python3 -m build | |
- name: Publish package | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
user: ${{ secrets.PYPI_LOGIN_DIMA }} | |
password: ${{ secrets.PYPI_PASSWORD_DIMA }} | |
repository_url: https://test.pypi.org/legacy/ |