In order to radically simplify how we prepare the service
venvs, we use a common role to do the wheel builds and the
venv preparation. This makes the process far simpler to
understand, because the role does its own building and
installing. It also reduces the code maintenance burden,
because instead of duplicating the build processes in the
repo_build role and the service role - we only have it all
done in a single place.
We also change the role venv tag var to use the integrated
build's common venv tag so that we can remove the role's
venv tag in group_vars in the integrated build. This reduces
memory consumption and also reduces the duplication.
This is by no means the final stop in the simplification
process, but it is a step forward. The will be work to follow
which:
1. Replaces 'developer mode' with an equivalent mechanism
that uses the common role and is simpler to understand.
We will also simplify the provisioning of pip install
arguments when doing this.
This patch also cleans up the unnecessary tags and makes a
few changes to the role to tidy things up a bit.
Depends-On: https://review.openstack.org/598957
Change-Id: I61d005d4732bd1d6cf4125cbf1adfdb1479a4b1b
Implements: blueprint python-build-install-simplification
Signed-off-by: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
In order to make it easier to differentiate between the lists of
python packages, distribution packages, downloaded packages,
package pins and other similar variables the variable names are
being changed to ensure that they have a more explicit suffix
that defines the purpose and makes the naming more consistent.
This is to facilitate a lookup plugin which will be able to look
up all the package lists and present them as a consolidated piece
of data which may be used for artifact preparation.
Change-Id: Ib607e78bd3be2f50fbfe2c7098706df7e91cd780
Previously only role convergence was tested.
This patch paves the way to have functional testing support
the addition of Xenial support as well as adding more
thorough functional testing using the Tempest plugin
available in the zaqar source.
Change-Id: I593fe5e61df2daca0857548394e04aa2afa35499
* The default apt packages have been moved into a var file that is only loaded when the detected OS is matched.
* The Install task file has had the apt specific tasks moved into a named install task file.
Change-Id: Id95826a9dd9e5d2ed83a95c3f02d18929735a8f2
Implements: blueprint multi-platform-host