update + debug workflows #8
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: Multi-OS Python Version Test | |
on: | |
push: | |
branches: | |
- dev | |
pull_request: | |
branches: | |
- dev | |
jobs: | |
build-and-test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
python-version: ['3.10'] | |
fail-fast: false | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install Clustal Omega and MAFFT | |
run: | | |
export $HOME_DIR=$PWD | |
ls -la | |
echo "$PWD" >> $GITHUB_PATH | |
if [ "${{ runner.os }}" = "macOS" ]; then | |
wget http://www.clustal.org/omega/clustal-omega-1.2.3-macosx -O clustalo && chmod +x clustalo | |
brew install mafft && unset MAFFT_BINARIES | |
elif [ "${{ runner.os }}" = "Linux" ]; then | |
wget http://www.clustal.org/omega/clustalo-1.2.4-Ubuntu-x86_64 -O clustalo && chmod +x clustalo | |
wget https://mafft.cbrc.jp/alignment/software/mafft-7.520-linux.tgz -O mafft.tgz && tar -xzvf mafft.tgz && chmod +x mafft-linux64/mafftdir/bin/mafft | |
echo "$PWD/mafft-linux64/mafftdir/bin/" >> $GITHUB_PATH | |
export MAFFT_BINARIES=$PWD/mafft-linux64/mafftdir/libexec/ | |
fi | |
echo 'PATH, and GITHUB_PATH:' | |
echo $PATH | |
echo $GITHUB_PATH | |
ls -la | |
clustalo --version # For debugging clustalo version | |
mafft --version # For debugging mafft version | |
- name: Install dependencies | |
run: | | |
python --version | |
python -m pip install ".[full]" --no-cache-dir | |
python -c "import qsprpred; print(qsprpred.__version__)" # For debugging package version | |
python -m pip install pytest | |
python -m pip install jupyterlab | |
python -m pip freeze # For debugging environment | |
- name: Run pytest | |
run: pytest -xv qsprpred # -x: stop on first failure, -v: verbose | |
- name: Test CLI | |
run: cd test_cli && ./run.sh && cd "$HOME_DIR" | |
- name: Test Tutorials | |
run: cd test_tutorial && ./run.sh && cd "$HOME_DIR" | |
- name: Test Consistency | |
run: cd test_consistency && ./run.sh && cd "$HOME_DIR" |