-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci(api,shared-data): run test matrix on Python 3.7 thru 3.10 #9497
Conversation
Codecov Report
@@ Coverage Diff @@
## edge #9497 +/- ##
==========================================
+ Coverage 75.61% 75.84% +0.22%
==========================================
Files 1916 1916
Lines 50916 51388 +472
Branches 4895 4895
==========================================
+ Hits 38502 38974 +472
Misses 11492 11492
Partials 922 922
Flags with carried forward coverage won't be shown. Click here to find out more.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is going to make these tests take a) forever by wall clock and b) use way more github actions runners, which is something we're already fairly frequently rate limited on.
Can we investigate using something like tox to do it inside a single runner?
I am not sure if tox solves our problem. We would still need 3 OS runners customized to have the 4 versions of python installed making 3 long running runners. Other folks seem to use the matrix even with tox. Regardless of this, I would like to know how we are hitting rate limits. I see usage of runners increasing so I would like to spearhead solutions. Besides @bndo who else might be good pull into conversation on this? |
For reference, here's a full matrix run with everything passing from an earlier iteration of this branch: https://github.com/Opentrons/opentrons/actions/runs/1792647885 Each job in the matrix took 5 to 10 minutes, depending on OS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me, then! Love to see the changes
# Conflicts: # .github/workflows/api-test-lint-deploy.yaml # .github/workflows/shared-data-test-lint-deploy.yaml
Overview
This PR adds a CI matrix for Python 3.7 through 3.10 for our pip-installable packages:
opentrons
andopentrons_shared_data
.Takes over for the CI portion of #9368 for review and git history purposes.
Changelog
Pipfile.lock
behaves on Python 3.7 all the way to Python 3.10setup.py
with support for Python >= 3.7Review requests
With this PR and a copy of Python 3.10 installed somewhere on your system (e.g. via
pyenv
), to set up a venv in a new Python version:Risk assessment
No risk to production environment. However, for our dev environment, runs the following risks:
api
andshared-data
will likely take more time