Progress on the integration of sports2D & Real-time #560
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
# This workflow will install Python dependencies, run tests and lint on several OS with a several versions of Python | |
# See: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
name: Build on Win-MacOS-Ubuntu with Python 3.9-3.11 | |
on: | |
push: | |
branches: [ "main" ] | |
paths-ignore: | |
- 'README.md' | |
- 'Content/**' | |
pull_request: | |
branches: [ "main" ] | |
permissions: | |
contents: read | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
python-version: [3.9, "3.10", "3.11"] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Cache conda environment | |
uses: actions/cache@v4 | |
with: | |
path: ${{ matrix.os == 'windows-latest' && 'C:\\Users\\runneradmin\\.conda' || '~/.conda' }} | |
key: ${{ runner.os }}-conda-${{ matrix.python-version }}-${{ hashFiles('**/environment.yml') }} | |
restore-keys: ${{ runner.os }}-conda-${{ matrix.python-version }}- | |
- name: Install Miniconda | |
uses: conda-incubator/setup-miniconda@v3 | |
with: | |
auto-update-conda: true | |
python-version: ${{ matrix.python-version }} | |
activate-environment: pose2sim | |
- name: Install OpenSim with conda | |
run: | | |
conda install -n pose2sim -c conda-forge -c defaults pip | |
conda install -n pose2sim opensim-org::opensim -y | |
- name: Cache pip dependencies | |
uses: actions/cache@v4 | |
with: | |
path: ${{ matrix.os == 'windows-latest' && 'C:\\Users\\runneradmin\\AppData\\Local\\pip\\Cache' || '~/.cache/pip' }} | |
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('**/requirements.txt') }} | |
restore-keys: ${{ runner.os }}-pip-${{ matrix.python-version }}- | |
- name: Install pip dependencies | |
run: | | |
conda run -n pose2sim python -m pip install --upgrade pip | |
conda run -n pose2sim python -m pip install flake8 pytest | |
conda run -n pose2sim python -m pip install git+https://github.com/${{ github.repository }}.git@${{ github.sha }} | |
- name: Lint with flake8 | |
run: | | |
# stop the build if there are Python syntax errors or undefined names | |
conda run -n pose2sim flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics | |
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide | |
conda run -n pose2sim flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics | |
- name: Test with pytest | |
env: | |
PYTHONIOENCODING: utf-8 | |
PYTHONUNBUFFERED: "1" | |
KMP_DUPLICATE_LIB_OK: TRUE | |
run: | | |
cd Pose2Sim/Utilities | |
conda run -n pose2sim pytest -v tests.py --capture=sys |