Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time. Cannot retrieve contributors at this time
89 lines (69 sloc) 3.3 KB
language: python
python:
- "3.5"
- "3.6"
- "3.7"
- "3.8"
env:
global:
- HYDRA_LAUNCHER=fork
- OMPI_MCA_rmaps_base_oversubscribe=yes
- MPI=mpich
- CCTOOLS_VERSION=7.0.11
before_install:
- sudo apt-get update -q
- python$PY -m pip install Cython
- python$PY -m pip install numpy
- python$PY --version
- python$PY -m cython --version
- python$PY -c "import numpy;print(numpy.__version__)"
# install parsl with no optional extras
install:
- pip install .
# Os tests
os:
- linux
# command to run tests
script:
- pip install -r test-requirements.txt
- flake8 parsl/
- parsl/tests/lint-inits.sh
# This uses all of the configurations and tests as the base from which to
# run mypy checks - these are likely to capture most of the code used in
# parsl
- MYPYPATH=$(pwd)/mypy-stubs mypy parsl/tests/configs/
- MYPYPATH=$(pwd)/mypy-stubs mypy parsl/tests/test*/
- MYPYPATH=$(pwd)/mypy-stubs mypy parsl/tests/sites/
- MYPYPATH=$(pwd)/mypy-stubs mypy parsl/app/ parsl/channels/ parsl/dataflow/ parsl/data_provider/ parsl/launchers parsl/providers/
# do this before any testing, but not in-between tests
- rm -f .coverage
- pytest parsl -k "not cleannet" --config parsl/tests/configs/htex_local.py --cov=parsl --cov-append --cov-report= --random-order
- pytest parsl -k "not cleannet" --config parsl/tests/configs/local_threads.py --cov=parsl --cov-append --cov-report= --random-order
# some of the site/ tests require more dependencies. These are installed here as needed,
# so that the above tests happen with only the basic requirements installed.
# workqueue
- ./parsl/executors/workqueue/install-workqueue.sh
- export PATH=$PATH:/tmp/cctools/bin
- export PYTHONPATH=/tmp/cctools/lib/python3.5/site-packages
# mpi
- bash parsl/executors/extreme_scale/install-mpi.sh $MPI
- if [[ "$MPI" == "mpich" ]]; then mpichversion; fi
- if [[ "$MPI" == "openmpi" ]]; then ompi_info; fi
- pip install .[extreme_scale,monitoring]
- pytest parsl -k "not cleannet" --config parsl/tests/configs/htex_local_alternate.py --cov=parsl --cov-append --cov-report= --random-order
- work_queue_worker localhost 9000 &> /dev/null &
- pytest parsl -k "not cleannet" --config parsl/tests/configs/workqueue_ex.py --cov=parsl --cov-append --cov-report= --random-order --bodge-dfk-per-test
- kill -3 $(ps aux | grep -E -e "[0-9]+:[0-9]+ work_queue_worker" | tr -s ' ' | cut -f 2 -d " ")
# these tests run with specific configs loaded within the tests themselves.
# This mode is enabled with: --config local
- pytest parsl -k "not cleannet" --config local --cov=parsl --cov-append --cov-report= --random-order
# check that 'all' install target works, even though we aren't doing any further
# testing of what is installed
- pip install .[all]
# run simple worker test. this is unlikely to scale due to
# a stdout/stderr buffering bug in present master.
# - coverage run --append --source=parsl parsl/tests/manual_tests/test_worker_count.py -c 1000
# TODO: ^ this test has been removed pending investigation ... when restored or removed,
# sort out this commented out block appropriately.
# prints report of coverage data stored in .coverage
- coverage report
You can’t perform that action at this time.