Single-source CI jobs & use alls-green to check status#646
Conversation
e79104f to
8830c20
Compare
89ef54f to
ec7b529
Compare
ec7b529 to
b70c2df
Compare
697888f to
ef3720e
Compare
853f281 to
c6060af
Compare
c6060af to
498f9ba
Compare
783280c to
ca536f9
Compare
|
There appears to be a bit of a Heisenbug with the tests on Ubuntu - Python 3.12 - PyQt5, Pip or Conda, as when I tried to set the coverage job to run on the latest 3.13 instead of 3.12 (when it wasn't running initially at all), these jobs started core dumping consistently every run. The only differences between the runs with and without is adding For now I have the coverage run on 3.12, though an alternate solution would be installing the coverage deps and running coverage unconditionally (and only uploading it for certain jobs--perhaps only one job was intended originally?) |
|
@ccordoba12 I recommend merging it as "Merge" rather than "Squash", since I've structured things into atomic commits and it makes it much easier to see what has actually been changed and added versus the previous CI workflows rather than one big commit deleting the old and adding a brand new one. |
ccordoba12
left a comment
There was a problem hiding this comment.
Thanks @CAM-Gerlach for your work on this!
774ab3f to
07f0019
Compare
ccordoba12
left a comment
There was a problem hiding this comment.
Great work, thanks @CAM-Gerlach!
Note: This PR is from an upstream branch since newly-added GH Actions workflows won't kick off from a fork branch; see PR #645 for the previous failed attempt.
We currently have three GH Actions workflow files to run the test, one per platform, each with largely duplicative content which is not very DRY. Additionally, the number of matrix jobs make it a pain to keep on top of setting the correct jobs as required given the serious limitations of GitHub's interface in that regard.
Therefore, this PR single-sources the various jobs to all run via a single workflow without duplication, and uses the alls-green action to check their required status, like we do for CPython, so that only that job need be required and it will ensure the matrix jobs are required automatically.
It also refactors the workflow to fix some other minor issues and cruft:
conda-remove-defaults: trueto address an outstanding warningbash -el {0}instead of duplicating it every step