Skip to content

final 6.0

final 6.0 #512

Workflow file for this run

name: Linting and tests
on:
push:
branches:
- master
- development
pull_request:
branches:
- master
- development
jobs:
isort:
runs-on: ubuntu-latest
steps:
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python environment
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install dependencies
run: pip install -U pip pre-commit
- name: Apply isort
run: pre-commit run isort --all-files
ruff:
runs-on: ubuntu-latest
steps:
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python environment
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install dependencies
run: pip install -U pip pre-commit
- name: Apply linting
run: pre-commit run ruff --all-files
mypy:
runs-on: ubuntu-latest
steps:
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python environment
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install dependencies
run: pip install -U pip pre-commit
- name: Check type hints
run: pre-commit run mypy --all-files
code-quality-codeql:
runs-on: ubuntu-latest
steps:
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python environment
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Code quality analysis with CodeQL
uses: github/codeql-action/init@v3
with:
languages: python
unit-tests:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
python-version: ["3.10", "3.11"]
steps:
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }} environment
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install -U pip setuptools
pip install -U pytest pytest-mock pytest-cov pytest-xdist
pip install -e .[full]
pip install cmdstanpy==0.9.5 # Fixes https://github.com/facebook/prophet/issues/2354
- name: Run tests w/ coverage
run: pytest -n=auto --cov=atom --cov-report=xml tests/
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
if: ${{ matrix.os == 'ubuntu-latest' && matrix.python-version == '3.11' }}
with:
files: ./coverage.xml
examples-tests:
runs-on: ubuntu-latest
steps:
- name: Free disk space
run: |
echo "=============================================="
echo "Freeing up disk space on CI system"
echo "=============================================="
echo "Listing 100 largest packages"
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100
df -h
echo "Removing large packages"
sudo apt-get remove -y '^dotnet-.*'
sudo apt-get remove -y '^llvm-.*'
sudo apt-get remove -y azure-cli google-cloud-cli google-chrome-stable firefox mono-devel
sudo apt-get autoremove -y
sudo apt-get clean
df -h
echo "Removing large directories"
# deleting 15GB
rm -rf /usr/share/dotnet/
df -h
- name: Check out source repository
uses: actions/checkout@v3
- name: Set up Python environment
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install dependencies
run: |
python -m pip install -U pip setuptools
pip install -U pytest pytest-xdist nbmake scikeras tensorflow
pip install -e .[full]
- name: Run example notebooks
run: |
pytest \
-n=auto \
--nbmake \
--nbmake-timeout=600 \
--ignore=./examples/webapp/ \
--ignore=./examples/accelerating_cuml.ipynb \
--ignore=./examples/ray_backend.ipynb \
./examples/