forked from modin-project/unidist
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
FIX-modin-project#320: Improve CI (modin-project#321)
Signed-off-by: Igoshev, Iaroslav <[email protected]>
- Loading branch information
Showing
4 changed files
with
46 additions
and
171 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
name: ci-required | ||
on: pull_request | ||
concurrency: | ||
# Cancel other jobs in the same branch. We don't care whether CI passes | ||
# on old commits. | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
check-pr-title: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: Slashgear/[email protected] | ||
with: | ||
# NOTE: If you change the allowed prefixes here, update | ||
# the documentation about them in /docs/development/contributing.rst | ||
regexp: '^(?:FEAT|DOCS|FIX|REFACTOR|TEST|PERF)-#\d+:' |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,21 @@ | ||
name: ci | ||
on: pull_request | ||
on: | ||
pull_request: | ||
paths: | ||
- .github/workflows/** | ||
- unidist/** | ||
- environment.yml | ||
- requirements.txt | ||
- setup.cfg | ||
- setup.py | ||
- versioneer.py | ||
push: | ||
concurrency: | ||
# Cancel other jobs in the same branch. We don't care whether CI passes | ||
# on old commits. | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
check-pr-title: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: Slashgear/[email protected] | ||
with: | ||
# NOTE: If you change the allowed prefixes here, update | ||
# the documentation about them in /docs/developer/contributing.rst | ||
regexp: '^(?:FEAT|DOCS|FIX|REFACTOR|TEST|PERF)-#\d+:' | ||
|
||
lint-black: | ||
name: lint (black) | ||
runs-on: ubuntu-latest | ||
|
@@ -38,15 +44,18 @@ jobs: | |
- run: pip install flake8 flake8-print | ||
- run: flake8 --enable=T . | ||
|
||
test-ubuntu: | ||
needs: [check-pr-title, lint-black, lint-flake8] | ||
test-all: | ||
needs: [lint-black, lint-flake8] | ||
runs-on: ubuntu-latest | ||
defaults: | ||
run: | ||
shell: bash -l {0} | ||
strategy: | ||
matrix: | ||
python-version: ["3.7", "3.8", "3.9"] | ||
os: | ||
- ubuntu | ||
- windows | ||
python-version: ["3.8", "3.9"] | ||
backend: ["ray", "mpi", "dask", "pymp", "pyseq"] | ||
env: | ||
UNIDIST_BACKEND: ${{matrix.backend}} | ||
|
@@ -64,66 +73,17 @@ jobs: | |
# we set use-only-tar-bz2 to false in order for conda to properly find new packages to be installed | ||
# for more info see https://github.com/conda-incubator/setup-miniconda/issues/264 | ||
use-only-tar-bz2: false | ||
# we install pickle5 here as it is missing in Ray for python 3.7 from PyPI | ||
# remove this when we return Ray back to installation from conda-forge | ||
# see details in https://github.com/modin-project/unidist/issues/219 | ||
- name: Pickle5 installation for python 3.7 | ||
run: conda install pickle5 -c conda-forge | ||
if: matrix.python-version == '3.7' | ||
- name: Conda environment | ||
run: | | ||
conda info | ||
conda list | ||
- run: python -m pytest unidist/test/ | ||
- run: python -m pytest unidist/test/test_actor.py | ||
if: matrix.backend != 'mpi' | ||
# when using a directory to run with mpiexec MPI gets hung after executing tests | ||
# so we run the test files one by one | ||
- run: mpiexec -n 1 python -m pytest unidist/test/test_actor.py | ||
if: matrix.backend == 'mpi' | ||
- run: mpiexec -n 1 python -m pytest unidist/test/test_async_actor.py | ||
if: matrix.backend == 'mpi' | ||
- run: mpiexec -n 1 python -m pytest unidist/test/test_task.py | ||
if: matrix.backend == 'mpi' | ||
- run: mpiexec -n 1 python -m pytest unidist/test/test_general.py | ||
if: matrix.backend == 'mpi' | ||
|
||
test-windows: | ||
needs: [check-pr-title, lint-black, lint-flake8] | ||
runs-on: windows-latest | ||
defaults: | ||
run: | ||
shell: bash -l {0} | ||
strategy: | ||
matrix: | ||
python-version: ["3.7", "3.8", "3.9"] | ||
backend: ["ray", "mpi", "dask", "pymp", "pyseq"] | ||
env: | ||
UNIDIST_BACKEND: ${{matrix.backend}} | ||
name: test-windows (backend ${{matrix.backend}}, python ${{matrix.python-version}}) | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
fetch-depth: 2 | ||
- uses: conda-incubator/setup-miniconda@v2 | ||
with: | ||
activate-environment: unidist | ||
environment-file: environment.yml | ||
python-version: ${{matrix.python-version}} | ||
channel-priority: strict | ||
# we set use-only-tar-bz2 to false in order for conda to properly find new packages to be installed | ||
# for more info see https://github.com/conda-incubator/setup-miniconda/issues/264 | ||
use-only-tar-bz2: false | ||
# we install pickle5 here as it is missing in Ray for python 3.7 from PyPI | ||
# remove this when we return Ray back to installation from conda-forge | ||
# see details in https://github.com/modin-project/unidist/issues/219 | ||
- name: Pickle5 installation for python 3.7 | ||
run: conda install pickle5 -c conda-forge | ||
if: matrix.python-version == '3.7' | ||
- name: Conda environment | ||
run: | | ||
conda info | ||
conda list | ||
- run: python -m pytest unidist/test/ | ||
- run: python -m pytest unidist/test/test_async_actor.py | ||
if: matrix.backend != 'mpi' | ||
- run: python -m pytest unidist/test/test_task.py | ||
if: matrix.backend != 'mpi' | ||
- run: python -m pytest unidist/test/test_general.py | ||
if: matrix.backend != 'mpi' | ||
# when using a directory to run with mpiexec MPI gets hung after executing tests | ||
# so we run the test files one by one | ||
|
This file was deleted.
Oops, something went wrong.
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