Skip to content

Commit

Permalink
Prevents Scheduled Workflow From Being Deactivated & [IBCDPE-898] Fix…
Browse files Browse the repository at this point in the history
… Python Versioning Issue for CI (#3)

* prevents scheduled workflow from turning off

* drop 3.8 support

* updates ci for correct python versioning

* trailing whitespace

* updates ci for correct environment configuration

* pre-commit

* removes 3.8 support
  • Loading branch information
BWMac authored Apr 1, 2024
1 parent 785a03b commit f3aabf6
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 12 deletions.
26 changes: 18 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,10 @@ jobs:
with: {python-version: "3.11"}
- name: Run static analysis and format checkers
run: pipx run pre-commit run --all-files --show-diff-on-failure
- name: Install tox-gh plugin
run: python -m pip install tox-gh>=1.2
- name: Build package distribution files
run: pipx run --spec 'tox~=3.0' tox -e clean,build
run: tox -e clean,build
- name: Record the paths of wheel and source tarball distributions
id: distribution-paths
run: |
Expand All @@ -48,43 +50,51 @@ jobs:
name: python-distribution-files
path: dist/
retention-days: 1
- name: Keepalive Workflow
uses: gautamkrishnar/[email protected]
with:
time_elapsed: 44

test:
needs: prepare
strategy:
matrix:
python:
- "3.8"
- "3.9" # oldest Python that is supported
- "3.11" # newest Python that is stable
platform:
- ubuntu-latest
- macos-latest
# TODO: Debug the Windows issues
# - windows-latest
env:
OS: ${{ matrix.platform }}
PYTHON: ${{ matrix.python }}
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- name: Retrieve pre-built distribution files
uses: actions/download-artifact@v3
- uses: actions/download-artifact@v3
with: {name: python-distribution-files, path: dist/}
- name: Install tox-gh plugin
run: python -m pip install tox-gh>=1.2
- name: Setup test suite
run: tox -vv --notest
- name: Run tests (without integration tests)
if: matrix.platform != 'ubuntu-latest' || matrix.python != '3.11'
env:
SYNAPSE_AUTH_TOKEN: ${{ secrets.SYNAPSE_AUTH_TOKEN }}
run: >-
pipx run --spec 'tox~=3.0' tox
--installpkg '${{ needs.prepare.outputs.wheel-path }}'
tox --installpkg '${{ needs.prepare.outputs.wheel-path }}'
-- -rFEx --durations 10 --color yes -m "not integration"
- name: Run tests (with integration tests)
if: matrix.platform == 'ubuntu-latest' && matrix.python == '3.11'
env:
SYNAPSE_AUTH_TOKEN: ${{ secrets.SYNAPSE_AUTH_TOKEN }}
run: >-
pipx run --spec 'tox~=3.0' tox
--installpkg '${{ needs.prepare.outputs.wheel-path }}'
tox --installpkg '${{ needs.prepare.outputs.wheel-path }}'
-- -rFEx --durations 10 --color yes
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
Expand Down
2 changes: 1 addition & 1 deletion .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ formats:
- pdf

python:
version: 3.8
version: 3.9
install:
- requirements: docs/requirements.txt
- {path: ., method: pip}
2 changes: 1 addition & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ package_dir =
=src

# Require a min/specific Python version (comma-separated conditions)
python_requires = >=3.8
python_requires = >=3.9, <3.12

# Add here dependencies of your project (line-separated), e.g. requests>=2.2,<3.0.
# Version specifiers like >=2.2,<3.0 avoid problems due to API changes in
Expand Down
8 changes: 6 additions & 2 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,14 @@
# THIS SCRIPT IS SUPPOSED TO BE AN EXAMPLE. MODIFY IT ACCORDING TO YOUR NEEDS!

[tox]
minversion = 3.24
envlist = default
minversion = 4.2
isolated_build = True

[gh]
python =
3.9: py39
3.10: py310
3.11: py311

[testenv]
description = Invoke pytest to run automated tests
Expand Down

0 comments on commit f3aabf6

Please sign in to comment.