Remove environment chaching (for now) #1436
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
# Continuous integration using conda installation | |
name: CI | |
on: | |
pull_request: | |
types: [opened, reopened, synchronize] | |
paths: | |
- "sleap/**" | |
- "tests/**" | |
- ".github/workflows/ci.yml" | |
- "environment_no_cuda.yml" | |
- "requirements.txt" | |
- "dev_requirements.txt" | |
push: | |
branches: | |
- master | |
- develop | |
- liezl/update_ci_workflow | |
paths: | |
- "sleap/**" | |
- "tests/**" | |
- ".github/workflows/ci.yml" | |
- "environment_no_cuda.yml" | |
- "requirements.txt" | |
- "dev_requirements.txt" | |
jobs: | |
type_check: | |
name: Type Check | |
runs-on: "ubuntu-20.04" | |
steps: | |
- uses: actions/checkout@v1 | |
- name: Set up Python 3.7 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.7 | |
- name: Install Dependencies | |
run: | | |
pip install mypy | |
- name: Run MyPy | |
# TODO: remove this once all MyPy errors get fixed | |
continue-on-error: true | |
run: | | |
mypy --follow-imports=skip --ignore-missing-imports sleap tests | |
lint: | |
name: Lint | |
runs-on: "ubuntu-20.04" | |
steps: | |
- uses: actions/checkout@v1 | |
- name: Set up Python 3.7 | |
uses: actions/setup-python@v1 | |
with: | |
python-version: 3.7 | |
- name: Install Dependencies | |
run: | | |
pip install click==8.0.4 | |
pip install black==21.6b0 | |
- name: Run Black | |
run: | | |
black --check sleap tests | |
tests: | |
name: Tests (${{ matrix.os }}) | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: ["ubuntu-22.04", "windows-2022", "macos-latest"] | |
steps: | |
- name: Setup Micromamba | |
# https://github.com/mamba-org/setup-micromamba | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: environment_no_cuda.yml | |
environment-name: sleap_ci | |
init-shell: >- | |
bash | |
powershell | |
cache-environment: false | |
post-cleanup: 'all' | |
# Print environment info | |
- name: Print environment info | |
shell: bash -l {0} | |
run: | | |
which python | |
micromamba info | |
- name: Micromamba list | |
run: micromamba list | |
# Test environment | |
- name: Test with pytest (Windows) | |
if: matrix.os == 'windows-2022' | |
run: | | |
pytest --durations=-1 | |
- name: Test with pytest (Ubuntu) | |
if: matrix.os == 'ubuntu-22.04' | |
run: | | |
pytest --cov=sleap --cov-report=xml --durations=-1 tests/ | |
- name: Test with pytest (Mac) | |
if: matrix.os == 'macos-latest' | |
run: | | |
pytest --durations=-1 tests/ | |
# Upload coverage | |
- name: Upload coverage | |
uses: codecov/codecov-action@v1 | |
if: matrix.os == 'ubuntu-22.04' | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
fail_ci_if_error: true | |
verbose: false |