-
Notifications
You must be signed in to change notification settings - Fork 362
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
Python repo is not built if CondaBuildPack is selected #1265
Comments
Thank you for opening your first issue in this project! Engagement like this is essential for open source projects! 🤗 |
Note there is a relevant Discourse post here. However, I have left this Issue open, because the proposed solutions do not work in the general case that a repo needs to be built from source. Specifically, the suggestion to add:
to the
|
fix(binder): Add separate `environment.yml` file in `.binder/` Binder builds were no longer working after renaming the environment file from `quakemigrate.yml` --> `environment.yml`. See jupyterhub/repo2docker#1265 for a full rundown. As a workaround, this commit adds a separate environment file for use in building the binder images. This doesn't interfere with the default environment file etc, and installs `quakemigrate` to the image from PyPI. This does add another file to update, and introduces the potential for the `master` branch to diverge from the binder build, but these are acceptable compromises. This PR closes #155
Using In this case, the (basically) one-liner #!/usr/bin/env bash
set -eux
python -m pip install -vv --no-deps --no-build-isolation -e path/to/package/ |
Bug description
When repo2docker sees an
environment.yml
file, it selects theCondaBuildPack
. This means it skips building the package that is contained in the repo itself.Expected behaviour
I would expect that whether a conda
environment.yml
file is provided or not, there would still be a check for whether asetup.py
file is present, as this indicatespip install .
or equivalent is required to build the package contained in the repo.Actual behaviour
repo2docker
selects theCondaBuildPack
, and the resulting image does not have the repo installed.How to reproduce
environment.yml
file, as well as a setup.py filerepo2docker
;CondaBuildPack
will be selectedsetup.py
was never run.ModuleNotFoundError
)Your personal set up
See failed build logs from binder attached. Failed notebook builds (from https://github.com/QuakeMigrate/QuakeMigrate/tree/master) are here
On a separate fork ( https://github.com/TomWinder/QuakeMigrate/tree/fix_binder) I renamed
environment.yml
, resulting in a successful build using thePythonBuildPack
. Logs are also attached, and the notebooks are here.Note that in the
CondaBuildPack
env/image, I can usepip install .
to rectify the issue. But I would again expect this to be done during the repo2docker build.Apologies if there is an example of how to deal with this situation somewhere, I have searched pretty hard and not yet found anything.
See also: QuakeMigrate/QuakeMigrate#155
The text was updated successfully, but these errors were encountered: