use frequency validation from utilsforecast (#717) #1326
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: CI | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
defaults: | |
run: | |
shell: bash -l {0} | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
NIXTLA_NUMBA_CACHE: '1' | |
jobs: | |
nb-sync: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone repo | |
uses: actions/checkout@v2 | |
- name: Set up python | |
uses: actions/setup-python@v2 | |
- name: Install nbdev | |
run: pip install nbdev | |
- name: Check if all notebooks are cleaned | |
run: | | |
echo "Check we are starting with clean git checkout" | |
if [ -n "$(git status -uno -s)" ]; then echo "git status is not clean"; false; fi | |
echo "Trying to strip out notebooks" | |
./action_files/clean_nbs | |
echo "Check that strip out was unnecessary" | |
git status -s # display the status to see which nbs need cleaning up | |
if [ -n "$(git status -uno -s)" ]; then echo -e "!!! Detected unstripped out notebooks\n!!!Remember to run nbdev_install_git_hooks and running ./action_files/clean_nbs before committing"; false; fi | |
run-local-tests: | |
runs-on: windows-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11'] | |
steps: | |
- name: Clone repo | |
uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: dev/local_environment.yml | |
create-args: python=${{ matrix.python-version }} | |
cache-environment: true | |
- name: Install pip requirements | |
run: pip install ./ | |
- name: Run local tests | |
run: nbdev_test --skip_file_re '(models|distributed|ets).*.ipynb' --pause 1.0 | |
run-tests: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
python-version: ['3.8', '3.9', '3.10', '3.11'] | |
steps: | |
- name: Clone repo | |
uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: dev/environment.yml | |
create-args: python=${{ matrix.python-version }} | |
cache-environment: true | |
- name: Install pip requirements | |
run: pip install ./ | |
- name: Run tests | |
run: nbdev_test --skip_file_re '(distributed).*.ipynb' --pause 1.0 | |
- name: Run integration tests | |
run: | | |
pip install ".[dev]" pytest | |
pytest --durations=0 action_files | |
test-m3-performance: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- name: Clone repo | |
uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: dev/environment.yml | |
create-args: python=3.10 | |
cache-environment: true | |
- name: Install library and extra deps | |
run: pip install ".[dev]" fire | |
- name: Run M3 experiment | |
run: | | |
python -m src.experiment | |
python -m src.evaluation --test | |
working-directory: ./experiments/m3 |