{"action":"opened","issue":{"url":"https://api.github.com/repos/Shippable/support/issues/1891","labels_url":"https://api.github.com/repos/Shippable/support/issues/1891/labels{/name}","comments_url":"https://api.github.com/repos/Shippable/support/issues/1891/comments","events_url":"https://api.github.com/repos/Shippable/support/issues/1891/events","html_url":"https://github.com/Shippable/support/issues/1891","id":107448237,"number":1891,"title":"Using /root/ve as a custom virtualenv causes surprising errors","user":{"login":"pquentin","id":42327,"avatar_url":"https://avatars.githubusercontent.com/u/42327?v=3","gravatar_id":"","url":"https://api.github.com/users/pquentin","html_url":"https://github.com/pquentin","followers_url":"https://api.github.com/users/pquentin/followers","following_url":"https://api.github.com/users/pquentin/following{/other_user}","gists_url":"https://api.github.com/users/pquentin/gists{/gist_id}","starred_url":"https://api.github.com/users/pquentin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pquentin/subscriptions","organizations_url":"https://api.github.com/users/pquentin/orgs","repos_url":"https://api.github.com/users/pquentin/repos","events_url":"https://api.github.com/users/pquentin/events{/privacy}","received_events_url":"https://api.github.com/users/pquentin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-09-21T05:49:34Z","updated_at":"2015-09-21T05:49:34Z","closed_at":null,"body":"When using a custom build image, the [Languages docs](http://docs.shippable.com/languages/#build-image_5) recommend using a custom virtual environment with `$SHIPPABLE_PYTHON` as an interpreter. It's already a source of confusion, because it's not clear why Shippable cannot do this for us.\r\n\r\nAnyway, in your example you're using `/root/bldve`. It's not clear what bld means, so we naturally used `/root/ve`. However, this virtual environment already exists with Python 2 (Shippable created it?), and virtualenv does not rewrite python or pip when run in an existing virtual environment. So this virtual environment did contain python3.4 and pip3.4, but it also contained python2.7 and pip2.7. Worse, pip and python pointed to the Python 2 versions. This meant that `pip install -r requirement.txt` pointed to Python 2 instead of Python 3, which caused confusing errors.\r\n\r\nIs there a way to avoid this issue? The best way seems to use something less obvious than /root/ve to avoid the name clash.\r\n\r\nThanks for Shippable."}}