-
Notifications
You must be signed in to change notification settings - Fork 20
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
Version 2: Stop writing to ~/.condarc
and remove some options
#103
Comments
@wolfv I want to start working on this this week, if you have any opionions please share! |
Sorry to jump here from nowhere, but I use that action extensively. One use case is releasing a library using only a couple of deps (versus installing everything that is in the repo For this need, it's important for us to be able to set steps:
- name: Setup Mamba
uses: mamba-org/provision-with-micromamba@v14
with:
environment-file: false
environment-name: rever
cache-downloads: true
cache-env: true
channel-priority: strict
channels: conda-forge
extra-specs: |
python
pip
conda-smithy
semver
git
rever>=0.5.1
For this use case, the below proposal would work, but I can imagine some other cases where being able to set Would that be possible to keep it but only when |
Thanks Hadrien, that's valuable input! You seem to have some non-trivial environment setup in your GHA workflow, making it hard to run that CI step outside of GHA. I'd argue that one should put code that's not specific to GHA (list of dependencies, list of channels, ...) outside the workflow. Thus rendering those options unnecessary. For very simple CI steps it might not be worth having that code outside the workflow, but I'd argue your setup is already past that. (Convenient for my argument, I'm defining "simple" = "needs only conda-forge packages with no other options changed" :-)) |
Idea: condarc input as literal string. But could also use cat |
Please continue discussion of the new version's spec here #114 |
The current interface has a bunch of problems:
channels
overridden even if empty #112channels
andchannel-priority
is very confusing:~/.condarc
.condarc-options: channels
has precedence.channel
fallback toconda-forge
.channel-priority: strict
(also automatically add that to~/.condarc
)Some of the problems with
channels
have been inherited fromsetup-miniconda
but I don't think it's worth staying compatible (we're not compatible in other ways anyways).I don't think we should be using
channels
in the first place, with one exception. We should be specifyingchannels
in theenvironment.yml
and in a.condarc
. You want to be able to install fromenvironment.yml
outside of CI anyways. I'm not sure why we setchannel_priority: strict
but I think this one should also not be CI specific, so set in.condarc
. The exception for a valid use case forchannels
being if you don't have anenvironment.yml
.My suggestion is as follows:
channels
option.channel_priority
option and remove thechannel-priority
option.environmnent-file: false
usechannels: [conda-forge]
. Other channels are not supported in that case (must create anenvironment.yml
file or use acondarc-file
instead).~/.condarc
. (Maybe keep thecondarc-file
->~/.condarc
copying.)condarc-options
option? We could also keep it but make it mutually exclusive withcondarc-file
.@wolfv @pavelzw
The text was updated successfully, but these errors were encountered: