-
Notifications
You must be signed in to change notification settings - Fork 168
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
add support for multi_env installers #509
Conversation
# TODO: we can't support menu_packages for extra envs yet | ||
# will implement when the PR for new menuinst lands | ||
# "menu_packages": (list, tuple), |
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.
Would this require #474 (and thus conda/conda#11035 and conda/menuinst#91)? I'm having a bit of trouble following... I guess all of conda/ceps#8 should be merged around the same time to enable "new menuinst"?
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.
Yep. The new menuinst
support will be trickier to land, as it requires sync across many projects.
This one needs a rebase/merge now |
… clarify channels(_remap) handling
So I added some tests to ensure things were working ok and I found out that The way constructor works is the following:
To sum up, what I've done is the following:
Additionally, I found out that conda-standalone WILL inherit the user configuration in |
@larsoner Ready for your eyes now :) |
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 finally read through the code and it looks reasonable to me, and is tested by an example and things are green. Feel free to merge unless you want someone else to look @jaimergp !
So the NSIS changes recently to constructor fixed the windows install issue and was working as of a couple of days ago. I just rebuilt... and windows is faiiling again due to "anaconda directories not being initialized". I suspect this commit (since its so recent has broken windows again). I'm buildng from trunk. |
@scottwsides Please create an issue with full details about your input file, full logs and screenshots of the error if necessary. Thanks! |
Closes #359 (possible solution)
In this PR I suggest adding a new keyword,
extra_envs
, that allows a user to specify additional environments in the same installer. It has some rules:extra_envs
is a mapping of environment names to environment creation options. The options map supports:specs
,channels
,channels_remap
,user_requested_specs
,exclude
: same as the global valuemenu_packages
support is planned but not implemented yet (we need the menuinst stuff in place for a cleaner implementation)conda
onspecs
(either explicitly or implicitly, but better be explicit).ignore_duplicate_files
will always be consideredTrue
This approach guarantees backwards compatibility at the expense of a slightly more complicated install logic. The other option would have been reworking ALL specs-based installations to follow the
envs
mapping (includingbase
). Maybe in a (much needed) refactor in the future.