Merge lp:~cjwatson/turnip/virtualenv into lp:turnip
Status: | Merged |
---|---|
Merged at revision: | 184 |
Proposed branch: | lp:~cjwatson/turnip/virtualenv |
Merge into: | lp:turnip |
Diff against target: |
150 lines (+80/-10) 5 files modified
.bzrignore (+3/-1) Makefile (+69/-9) bootstrap-requirements.txt (+2/-0) deploy-requirements.txt (+5/-0) test-requirements.txt (+1/-0) |
To merge this branch: | bzr merge lp:~cjwatson/turnip/virtualenv |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Kit Randel (community) | Approve | ||
Review via email: mp+274701@code.launchpad.net |
Commit message
Add targets to build a virtualenv and to build a tarball with included pip cache.
Description of the change
Add targets to build a virtualenv and to build a tarball with included pip cache.
This is the first step towards making our deployment system more sensible: it will eventually allow us to have a mojo manifest that builds the entire code asset in an appropriate container, virtualenv and all, run tests the whole thing, and upload it to swift for the charm to deploy. This will involve less downtime on upgrades and will support the autodeployment scheme currently being trialled by Canonical IS. As a bonus, since the intended use of this is to run the build step in an environment that matches the deployment target, we can switch to installing pygit2 from pip like everything else; 0.22.1 includes our current set of local patches.
This of course requires some additions to turnip-dependencies (pbr-1.8.1.tar.gz, pip-7.1.2.tar.gz, pygit2-
The turnip charm will need to be updated to use this, and that update will involve quite a bit of refactoring, but this part of it can be landed in advance of that, and as a bonus it makes "make check" much more reliable.
This is great, and I'll be updating rutabaga to reflect this shortly!
I did wonder however if it would be worth providing a similar warning to `make build-tarball`, when PIP_SOURCE_DIR is not set for the `make` target? The `pip install` will fail without it.