diff --git a/.github/workflows/testslurm.yml b/.github/workflows/testslurm.yml index dd4d153e60..e4f4bddec2 100644 --- a/.github/workflows/testslurm.yml +++ b/.github/workflows/testslurm.yml @@ -8,9 +8,13 @@ on: jobs: build: + strategy: + matrix: + python-version: [3.8.16, 3.9.16, 3.10.9, 3.11.5] + fail-fast: false runs-on: ubuntu-latest env: - DOCKER_IMAGE: giovtorres/docker-centos7-slurm:latest + DOCKER_IMAGE: adi611/docker-centos7-slurm:23.02.1 steps: - name: Disable etelemetry @@ -24,10 +28,7 @@ jobs: - name: Display previous jobs with sacct run: | echo "Allowing ports/daemons time to start" && sleep 10 - docker exec slurm bash -c "sacctmgr -i add cluster name=linux \ - && supervisorctl restart slurmdbd \ - && supervisorctl restart slurmctld \ - && sacctmgr -i add account none,test Cluster=linux Description='none' Organization='none'" + docker exec slurm bash -c "sacctmgr -i add account none,test Cluster=linux Description='none' Organization='none'" docker exec slurm bash -c "sacct && sinfo && squeue" 2&> /dev/null if [ $? -ne 0 ]; then echo "Slurm docker image error" @@ -38,12 +39,16 @@ jobs: docker exec slurm bash -c "echo $NO_ET" docker exec slurm bash -c "ls -la && echo list top level dir" docker exec slurm bash -c "ls -la /pydra && echo list pydra dir" - docker exec slurm bash -c "pip3.9 install --upgrade pip && pip3.9 install -e /pydra[test] && python3.9 -c 'import pydra; print(pydra.__version__)'" + if [[ "${{ matrix.python-version }}" == "3.11.5" ]]; then + docker exec slurm bash -c "CONFIGURE_OPTS=\"-with-openssl=/opt/openssl\" pyenv install -v 3.11.5" + fi + docker exec slurm bash -c "pyenv global ${{ matrix.python-version }}" + docker exec slurm bash -c "pip install --upgrade pip && pip install -e /pydra[test] && python -c 'import pydra; print(pydra.__version__)'" - name: Run pytest run: | - docker exec slurm bash -c "pytest --color=yes -vs -n auto --cov pydra --cov-config /pydra/.coveragerc --cov-report xml:/pydra/cov.xml --doctest-modules /pydra/pydra/ -k 'not test_audit_prov and not test_audit_prov_messdir_1 and not test_audit_prov_messdir_2 and not test_audit_prov_wf and not test_audit_all'" + docker exec slurm bash -c "pytest --color=yes -vs --cov pydra --cov-config /pydra/.coveragerc --cov-report xml:/pydra/cov.xml --doctest-modules /pydra/pydra/ -k 'not test_audit_prov and not test_audit_prov_messdir_1 and not test_audit_prov_messdir_2 and not test_audit_prov_wf and not test_audit_all'" - name: Upload to codecov run: | - docker exec slurm bash -c "pip3.9 install urllib3==1.26.6" + docker exec slurm bash -c "pip install urllib3==1.26.6" docker exec slurm bash -c "codecov --root /pydra -f /pydra/cov.xml -F unittests" docker rm -f slurm diff --git a/pyproject.toml b/pyproject.toml index 188a219ea8..e40b98f693 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "flit_scm:buildapi" name = "pydra" description = "Pydra dataflow engine" readme = "README.rst" -requires-python = ">=3.8" +requires-python = ">=3.8, !=3.11.1" dependencies = [ "attrs >=19.1.0", "cloudpickle >=2.0.0",