Skip to content

fixing ci pipeline for python3.9 and python3.13 #490

fixing ci pipeline for python3.9 and python3.13

fixing ci pipeline for python3.9 and python3.13 #490

Workflow file for this run

name: CI
on: [push, pull_request]
jobs:
build-Linux:
runs-on: ubuntu-22.04
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11"]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get --no-install-recommends install \
catch2=2.13.3 \
libfreetype6-dev \
libglew-dev \
libglm-dev \
libmsgpack-dev \
libnetcdf-dev \
libpng-dev \
libxml2-dev
- name: Install collada2gltf
run: |
wget -nv https://anaconda.org/schrodinger/collada2gltf/2.1.4/download/linux-64/collada2gltf-2.1.4-h6bb024c_0.tar.bz2
sudo tar xf collada2gltf-*.tar.bz2 -C / bin/collada2gltf
- name: Get additional sources
run: |
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git
cp -R mmtf-cpp/include/mmtf* include/
- name: Build
run: |
pip install --upgrade pip
pip install -v --config-settings testing=True '.[dev]'
env:
DEBUG: 1
- name: Test
run: |
pymol -ckqy testing/testing.py --run all
build-Windows:
runs-on: windows-latest
strategy:
matrix:
python-version: ["3.9"]
env:
CONDA_ROOT: ${{github.workspace}}\..\tmp\miniforge
MINIFORGE_EXEC: ${{github.workspace}}\..\tmp\miniforge.exe
steps:
- uses: actions/checkout@v4
- name: Download Miniforge
shell: cmd
run: |
if not exist %CONDA_ROOT% mkdir %CONDA_ROOT%
curl -L -o %MINIFORGE_EXEC% https://github.com/conda-forge/miniforge/releases/download/24.11.0-0/Miniforge3-24.11.0-0-Windows-x86_64.exe
start /wait %MINIFORGE_EXEC% /S /D=%CONDA_ROOT%
- name: Set up Miniforge
shell: cmd
run: |
CALL %CONDA_ROOT%\\Scripts\\activate.bat
conda create -n testing_env python=${{ matrix.python-version }}
conda activate testing_env
conda install -y -c conda-forge -c schrodinger libpng freetype glew libxml2 catch2=2.13.3 glm libnetcdf collada2gltf libffi
conda info
- name: Get additional sources
shell: cmd
run: |
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git
cp -R mmtf-cpp/include/mmtf* %CONDA_ROOT%/Library/include/
git clone --depth 1 --single-branch --branch cpp_master https://github.com/msgpack/msgpack-c.git
cp -R msgpack-c/include/msgpack* %CONDA_ROOT%/Library/include/
- name: Build PyMOL
shell: cmd
run: |
CALL %CONDA_ROOT%\\Scripts\\activate.bat
conda activate testing_env
pip install -v --config-settings testing=True .[dev]
- name: Test
shell: cmd
run: |
CALL %CONDA_ROOT%\\Scripts\\activate.bat
conda activate testing_env
pymol -ckqy testing\\testing.py --run all
build-MacOS:
runs-on: macos-latest
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
env:
CONDA_ROOT: "/tmp/miniforge"
CONDA_ENV_NAME: "testing_env"
steps:
- uses: actions/[email protected]
- name: Set up Miniforge and Build
run: |
curl -L -o $CONDA_ROOT.sh https://github.com/conda-forge/miniforge/releases/download/24.11.0-0/Miniforge3-MacOSX-x86_64.sh
bash $CONDA_ROOT.sh -b -p $CONDA_ROOT
export PATH="$CONDA_ROOT/bin:$PATH"
conda config --set quiet yes
conda create -n $CONDA_ENV_NAME python=${{ matrix.python-version }}
source activate $CONDA_ENV_NAME
conda install -y -c conda-forge -c schrodinger libpng freetype glew libxml2 catch2=2.13.3 glm libnetcdf collada2gltf
conda info
- name: Get additional sources
run: |
export PATH="$CONDA_ROOT/bin:$PATH"
source activate $CONDA_ENV_NAME
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git
cp -R mmtf-cpp/include/mmtf* ${CONDA_PREFIX}/include/
git clone --depth 1 --single-branch --branch cpp_master https://github.com/msgpack/msgpack-c.git
cp -R msgpack-c/include/msgpack* ${CONDA_PREFIX}/include/
- name: Build PyMOL
run: |
export MACOSX_DEPLOYMENT_TARGET=12.0
export PATH="$CONDA_ROOT/bin:$PATH"
source activate $CONDA_ENV_NAME
pip install -v --config-settings testing=True '.[dev]'
- name: Test
run: |
export PATH="$CONDA_ROOT/bin:$PATH"
source activate $CONDA_ENV_NAME
pymol -ckqy testing/testing.py --run all