Use Pixi in macOS-intel CI - #13704
Conversation
|
Hey @scott-huberty, looking at the current diff I noticed you're setting up Found when switching to mne-python/.github/workflows/tests.yml Lines 157 to 165 in 8dd298f Wondered if a similar thing could work for |
|
TODO @scott-huberty make it so that the matrix python version specified in tests.yml gets inserted into the pixi.toml file |
- The Pixi job replaces teh MacOS pip job on main. - The MacOS pip job on main does not set MNE_TEST_ALLOW_SKIP - mne/conftest.py:1357 treats unset MNE_TEST_ALLOW_SKIP as “allow all skips"
scott-huberty
left a comment
There was a problem hiding this comment.
Doh... Never submitted this review, which was just 1 comment!!
|
after adding a "this is autogenerated" comment to the top of |
done in e5bd471 |
|
possible problem: seems like environment is getting MNE stable release (not main/PR): https://github.com/mne-tools/mne-python/actions/runs/30474035062/job/90651542841?pr=13704#step:18:61 probably because of this: https://github.com/mne-tools/mne-python/actions/runs/30474035062/job/90651542841?pr=13704#step:9:372 |
hmm The pixi.lock file has: EDIT: Maybe because |
| @@ -1,5 +1,6 @@ | |||
| #!/bin/bash -ef | |||
|
|
|||
| # TODO: I think that DEPS is cruft. Its not set anywhere?? | |||
| echo "MNE_LOGGING_LEVEL=warning" | tee -a $GITHUB_ENV | ||
| echo "MNE_TEST_ALLOW_SKIP=.*(on conda|Requires (spm|brainstorm|misc) dataset|CUDA not|Flakey verbose behavior|PySide6 causes segfaults|SCIPY_ARRAY_API).*" | tee -a $GITHUB_ENV | ||
| echo "MNE_QT_BACKEND=PySide6" | tee -a $GITHUB_ENV | ||
| # NON-DRY but just gonna get it working and then refactor. |
|
|
||
| set -eo pipefail | ||
|
|
||
|
|
I'm exploring the feasibility of using Pixi to resolve the virtual environment and run tests specifically for the MacOS Intel CI, which currently uses Mamba to create the virtual environment.
My initial strategy was to just to do
pixi init --import environment.yml, so that we can leverage our already defined YAML config file to pull in all the necessary dependencies, as well as configuringprefix-dev/setup-pixito automatically activate our virtual environment, so that we can run commands likepytestetc without having to prependpixi runeverywhere for the pixi CI...Unfortunately the only way I could get this to work was to disable use of a login shell.. Which of course makes all the condo-like CI's fail!!