Apologies if this has been asked before.

My deployment workflow is git-pull based and it usually works well but I've 
hit the following snag:

1. I have an entry in requirements.txt such as py-foo
2. I fork it and switch to a -e entry: -e 
git+...@github.com:ixxy/py-foo.git#egg=py-foo
3. I make changes to the git repo
4. I push my new code to the foo repo
5. I push my new requirements.txt to the project repo
6. My deploy script does a git pull on the staging server, and then does 
pip install -r requirements.txt -U

So - step 2 is where this breaks. The foo package is still in site-packages 
and that takes priority over the fork in my virtual-env src dir (which is 
linked via the egg info .link file)

I found a workaround several months ago - I always modified the #egg= to be 
unique to the repo and branch.

This has stopped working recently - I think it was from pip 8.0 onwards and 
pip complains if the egg name differs from the package name.

What's the correct way to deal with this? I can manually uninstall but that 
is an extra step I have to remember to do for every deployed instance - and 
only if I've switched to a git entry in requirements which is fairly 
uncommon. It's therefore very easy to forget to do this.

The only bullet-proof solution is to tear down and recreate my virtualenv 
for every deploy - which slows things down considerably.

-- 
You received this message because you are subscribed to the Google Groups 
"virtualenv" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to python-virtualenv+unsubscr...@googlegroups.com.
To post to this group, send email to python-virtualenv@googlegroups.com.
Visit this group at https://groups.google.com/group/python-virtualenv.
For more options, visit https://groups.google.com/d/optout.

Reply via email to