Short version: Is it possible to use the -e parameter in requirements.txt with a path where the editable package should be installed?
First approach
requirements.txt:
-e git+https://github.com/snake-soft/imap-storage.git#egg=imap-storage
Pro: Automated install
Contra: Editable directory is inside virtualenv src folder (not in workspace)
Second approach (Edit: Don't use this until you know what you're doing, look at bottom)
If i clone the repo and installed it like this (virtualenv activated):
cd /home/user/workspace
git clone https://github.com/snake-soft/imap-storage.git
pip install -e .
Gives the structure i want:
workspace
├── imap-storage
├── django-project # uses imap-storage module
I have what i want. The repository (imap-storage) lays parallel to the django-project, that uses it. It is importable because it is installed inside the virtualenv.
Pro: Editable directory is inside my workspace
Contra: Not automated, not intuitive
Goal
- pip install -r requirements.txt to install module from git (like first approach)
- Module is in pythonpath of virtualenv -> importable
- Editable working dir of the module is in my workspace (like second approach)
PS: Or am i completely wrong-thinking and should go for something completely different?