name: CI on: [push, pull_request] jobs: build-Linux: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4.0.0 - name: Install system dependencies run: > sudo apt-get update; sudo apt-get --no-install-recommends install catch2 cmake libfreetype6-dev libglew-dev libglm-dev libmsgpack-dev libnetcdf-dev libpng-dev libxml2-dev python-is-python3 python3-biopython python3-dev python3-setuptools python3-numpy python3-pil python3-pytest python3-pip - 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 . env: DEBUG: 1 - name: Test run: | pymol -ckqy testing/testing.py --run all build-Windows: runs-on: windows-latest env: CONDA_ROOT: ${{github.workspace}}\..\tmp\miniforge MINIFORGE_EXEC: ${{github.workspace}}\..\tmp\miniforge.exe steps: - uses: actions/checkout@v4.0.0 - 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 install -y -c conda-forge -c schrodinger python cmake libpng freetype pyside6 glew libxml2 numpy=1.26.4 catch2=2.13.3 glm libnetcdf collada2gltf biopython pillow msgpack-python pytest pip python-build - name: Conda info shell: cmd run: |- CALL %CONDA_ROOT%\\Scripts\\activate.bat 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 pip install -v --config-settings testing=True . - name: Test shell: cmd run: | CALL %CONDA_ROOT%\\Scripts\\activate.bat pymol -ckqy testing\\testing.py --run all build-MacOS: runs-on: macos-latest env: CONDA_ROOT: "/tmp/miniforge" steps: - uses: actions/checkout@v4.0.0 - 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 install -y -c conda-forge -c schrodinger python cmake libpng freetype pyside6 glew libxml2 numpy=1.26.4 catch2=2.13.3 glm libnetcdf collada2gltf biopython pillow msgpack-python pytest pip python-build conda info - name: Get additional sources run: | git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git cp -R mmtf-cpp/include/mmtf* ${CONDA_ROOT}/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}/include/ - name: Build PyMOL run: |- export MACOSX_DEPLOYMENT_TARGET=12.0 export PATH="$CONDA_ROOT/bin:$PATH" pip install -v --config-settings testing=True . - name: Test run: |- export PATH="$CONDA_ROOT/bin:$PATH" pymol -ckqy testing/testing.py --run all