-
Notifications
You must be signed in to change notification settings - Fork 65
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
Use conda-lock to create test environments #281
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #281 +/- ##
=======================================
Coverage 75.86% 75.86%
=======================================
Files 20 20
Lines 1305 1305
=======================================
Hits 990 990
Misses 315 315 ☔ View full report in Codecov by Sentry. |
It looks like the Python 3.8 doctests are hanging right after:
I'm not sure what's the next test that's running here. EDIT: Looking at the other runs, it seems the test that's hanging may be:
|
Cool. This is outside my comfort zone at the moment, so let's jump on a quick call at some point when you have time. |
I'm happy to discuss when I find a moment, but let me write a few words about how this works, because I think ideally these sorts of things should be documented somewhere. The starting point is a bunch of test environment definitions. They include a particular version of Python, and pip. For completeness, I define environments for Python 3.11 and 3.12, even though they aren't used. The next step is generating/updating the lockfiles via the The final step is updating the test CI to install and cache the environment based on the lockfile. This guarantees that the installed dependencies are deterministic, reproducible, regularly updated, and done in the recommended Conda way. |
We're currently running tests under 3.10, 3.11, 3.12, so I think we can remove 3.8 and 3.9 related stuff. Happy to chat if it's time to revisit this. |
Ya, let's discuss next week and move this forward. |
Will probably use pixi instead |
Closes #279, if I'm understanding correctly.
This needs to be tested, but it uses lockfiles (which are generated by a separate CI) to set up a Conda environment for running the tests.
We need to set up a fine-grained GitHub token with the following permissions to the CausalPy repo:
and make it available as a secret named
GH_PAT_FOR_PR
. (I can't do it myself since I'm not admin here.)