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.
2. Simplifies the installation of optional pip packages.
Right now it's more complicated than it needs to be due
to us needing to keep the py_pkgs plugin working in the
integrated build.
3. Deduplicates the distro package installs. Right now the
role installs the distro packages twice - just before
building the venv, and during the python_venv_build role
execution.
Depends-On: https://review.openstack.org/598957
Change-Id: Ic00b23cb61ea7f0269d4e01b944d93accc3a218b
Implements: blueprint python-build-install-simplification
Signed-off-by: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
The virtualenv shouldn't be installed individually by a role,
therefore should be removed. The other packages are not really
necessary since they are remnant from the role creation (copied
and pasted from another role).
Thus we also remove the task related to the install of those.
Change-Id: I76b870ae54602a0c7f99774b250c447c748fb6aa
virtualenv-tools has a bug which gets triggered in gates: it can't
change the shebang of a virtualenv python bin/ files if they
were generated with a virtualenv script whose shebang ends with
python2 instead of python.
Because we can't modify virtualenv-tools, we use shell scripts
instead.
Change-Id: Ic37abfb14303b93dfc80398d6e37706a68135cb0
Partial-Bug: #1741634
Partial-Bug: #1764470
The default role is missing keystoneauth1 and oslo.utils pip
packages. Both of them are needed by monasca-agent venv to work
and build properly.
Change-Id: I10f61ac70effdcb8758fd44c92d6248af6b4ce2d
Closes-Bug: #1736036
This change adds the configuration for the ceph plugin, a plugin
to monitor an ceph cluster.
Also, fixes:
- host alive, http and process plugins
- the agent configuration
Also, moved the dashboards to the grafana role, where they are
already being imported to grafana.
Change-Id: I70b10630c9181f293fc9dbe268029b251fad7823
This patch refactors the monasca-agent role by bringing consistency
with the other openstack-ansible roles. Main changes include:
- Plugins are automatically configured based on the openstack-ansible
configuration;
- Added tests;
- Added documentation.
The extras directory contains changes necessary to openstack-
ansible to setup monasca-agent.
Change-Id: I3678af93ef460e5c32751e08201e68cef216787d