- Ceiling of pbr version can create installation conflicts with pip.
- Fixes tox default env list to be python version agnostic
- Updated template to use newer jobs (include testing with newer python)
Bug: #1921679
Change-Id: Ifd0d2f810799992faa1db41b80bf93bc97d5d19d
Looking through the image build logs, I noticed we were pulling in
the mysql-devel packages for some reason. It turns out this is a
historical artifact of the old TripleO source installs using
os-svc-install. It was universally installing mysql-python on
every image where it was used because that package wasn't in the
requirements.txt for the OpenStack projects.
This was wrong in the first place, and now that we aren't supporting
that installation method anymore it doesn't make sense to keep
installing nine development packages that we'll never use on our
images.
Note that the only thing we use from os-svc-install now appears to
be os-svc-enable, so this should have no effect on the current
TripleO flow, except slightly smaller/faster image builds.
Change-Id: Iae3e6ae3f57de57639c4259361e82c8150fe2f0e
The version of pbr we were using was having trouble parsing a new version
identifier for python-qpid, We have the pbr version hardcoded in many
places so update it to match whats currently in global-requirements.
Fixes bug #1470871
Change-Id: Ia5aec472555ad1368684b224a55c29242ae40b58
This was added in If3300a6b1ef1c633fc339f884e9dab0d82bc0720 and should
be removed now that the new setuptools version fixes our issues.
Change-Id: I3ded4f83918d74ca91a8c7a4aede9ef4d1d7a489
Setuptools 8.0 changed the way it parses version strings and many of our
openstack packages break when using it. Pinning this for now until our
packages are fixed.
Closes-Bug: #1402305
Change-Id: If3300a6b1ef1c633fc339f884e9dab0d82bc0720
When installing openstack clients, which have been pulled in as
requirements for openstack services, allow for the installation
from source repos, if the source install type has been selected.
Change-Id: I72037c5679b17102de5df02d08194fdb56f856d4
Closes-Bug: 1390051
This reverts commit 0011e19c15.
Eventlet version 0.15.1 has been released with the fix to the
"Second Simultaneous error"
Change-Id: I1e6e27f32f1b24e14a4ecb91f3433647fbb69a3e
We have patched eventlet to resolve the issues around
Second simultanous read errors. Pulling in the eventlet
pull request here.
This is a temporary workaround until the changes get merged
into eventlet and released at which point this will be dropped.
Closes-bug: #1308079
Closed-bug: #1229475
Closed-bug: #1308045
Change-Id: I0495f8c443429d9bdbbd97d46fe9a8e180b867ee
As advised in I072cf8bf6748d0c910fecffdf2282bcc4656d038, code should
use 4 spaces for indentation.
This commit enforces the use of 4 spaces indentation.
In order to simplify the review process, this patch only cover the
following elements:
- os-apply-config
- os-collect-config
- os-refresh-config
- os-svc-install
- pacemaker
- pypi-mirror
- qpidd
- rabbitmq-server
- snmpd
- stackuser
- tripleo-cd
Change-Id: I3f365f6a1cd6fd9e56402ad3bd6572192b85d798
Create the pip-manifest element to encapsulate the saving and use
of pip manifest files.
Ensure that it installs prior to any elements that should be able
to use it.
Write pip manifest files for installs in:
* os-svc-install
* os-apply-config
* os-collect-config
* os-refresh-config
* openstack-clients
Enable using a manifest file to reinstall exact versions of
packages in a subsequent run through the DIB_PIP_MANIFEST_*
environment variables.
Change-Id: I4d4ab5921c534727b48cb9969ec8ecfd2c26e6ed
When a pypi mirror is used with certain conditions installing pbr as a
dependency fails. This is a temporary fix until the underlying cause
is resolved.
This is also required for a wheels based pip mirror to work.
Change-Id: Ia08eb16b96d9897fa2f86239ea264b145ef0b9b5
Closes-Bug: #1293812
Update os-svc-install with a new -i option which can be used
to specify the virtualenv directory.
Update os-svc-install with a new -s option which can be used
to enable system-site-packages within the virtualenv. By
default this is disabled (matches virtualenv's default...)
In doing this we remove a hard coded check for the 'nova' service
by making nova use the -s option instead.
Update os-svc-daemon with a new -i option which can be used
to specify the virtualenv directory.
NOTE:
I used -i for both os-svc-daemon and os-svc-install since it wasn't
already used and I wanted to make the option the same in both places.
Change-Id: Ief53567711b0153de890d50a28c471b1e5acd56c
Updates os-svc-install so that we disallow the -n and -c options.
Also, corrects the optargs for -h so that it doesn't take a parameter.
And fix some variable bound issues that could occur if the script
was executed with invalid args.
Change-Id: I4eb26fe6793aa1ad19b1dddc63a5f399e17a8325
Closes-bug: #1285283
We install pip with get-pip.py and use this to install virtualenv. This
is done as part of the new pip-and-virtualenv element. All elements that
need pip or virtualenv should use this element to install them.
Our motivation is that we need to talk to a pypi mirror generated with
a recent http://github.com/openstack-infra/pypi-mirror This mirror
caches some 'wheels' that the previous version of pip & virtualenv
can't install.
virtualenv contains its own version of pip that is used for all
virtualenv environments.
Change-Id: I282fd8fffc8d5707a078f78f2b4571138d7266f3
Services installed by os-svc-install tend to have sensitive information
in their config directory and shouldn't be world readable. This commit
sets appropriate permissions on the config directory in os-svc-install.
Before this commit suitable permissions were set on the nova and heat
config directories but keystone and glance were readable without any
specific permissions.
Change-Id: I9d7a1e38742f0eb2fb02bbfc10ac22a195a46f36
os-svc-install doesn't need to hard-code the OpenStack PyPI mirror :
doing so prevents the pypi element from fully benefiting image builds,
and the pypi-openstack element can select the OpenStack PyPI mirror
when that is needed.
Change-Id: Ibc73d11d776c89cf1b4ff12cdcd5b8d8b76a176d
By default, virtualenv embeds setuptools, and doesn't download its
latest version. At the moment, latest virtualenv is 1.10.1, which does
install setuptools-0.9.8
Unfortunately, setuptools-0.9.8 doesn't manage correctly HTTPS
certificates if the user is specifying a proxy with https_proxy and
http_proxy environments variables. This can raise an error if the
server to download is having TLS2_3 HTTPS certificate, by example when
pip installing python-novaclient, whick asks for
https://pypi.python.org/simple/pbr
Fixes: bug #1201253
Change-Id: I7cca000857f7691d4cb723d0a0c22a202da703f8
The incorrect url only became a problem when trying to install pyudev,
which recently became a dependancy of neutron, but neutron doesn't
list pyudev in it's requirements.txt.
Change-Id: I8ab762c115373d2c8a747567ce06d79bda465f8b
This will allow elements to install from a directory that has
been downloaded by the source-repositories element.
In cases where this install method is used no attempt is made
to verify the directory being installed from. The assumption is
that the source-repositories element errors if multiple elements
try to download to the same directory. Its also assumed that the
repository version downloaded is correct as this can now be set
by the process running d-i-b and the element shouldn't be aware
of it.
Change-Id: Iceada839f0418789156741b56979c4a287a9a24d
The --system-site-packages option essentially removes the benefits of
virtualenv, nova is a special case because it depends on python-libvirt
which can't be installed via pip.
Change-Id: Ifc3580d4b59a5f1e97de77c0c4a875b123208100
http://pad.lv/1179008 has all of OpenStack migrating tools/pip-requires
to requirements.txt. We will use both during the transition.
Fixes bug #1179008
Change-Id: I7b3c64902b4c1b6f83402a21248a4eadad725c34
Before Ubuntu 13.04 libz-dev was pulled in as a dependency of the other
libraries mentioned here, but 13.04 changed the graph. Lxml and possibly
other modules link against libz during the pip install phase.
Change-Id: I201f7dd2fc40d36e5e0b193d51cfee200f946d17
While `setup.py`s were being installed from the openstack
pypi mirror, `pip-requires` were coming from pypi.python.org,
which has been observed to be less stable.
This change installs all pip-requires via pypi.openstack.org.
Change-Id: Id78110232f1f6cbce63fbe02c63f30c0e1953212
Python package dependency conflicts have been observed
to occur for certain combinations of services at certain
revision.
Running all services in virtualenvs removes the issue.
Change-Id: I100817569b43a5af3427b0ae20cebdc7d55d03a5
The code which raises an error if two elements try
to install different versions of the same git repo
currently works correctly for SHAs, or if a branch
is specified first, followed by a SHA.
However it fails if two branches are specified, because
the shallow clone does not fetch all branch heads.
This change correctly handles any combination of
SHAs/branch-heads/tags.
Change-Id: I501e94150ddeb41b79588816576a5d7a06fa92aa
This allows openstack services to be git/pip installed
without installing any startup scripts.
This is useful for keystone-db or nova-db elements, for
example, where the service must be installed to perform
database migration, but no service start scripts need
be installed.
Additionally, add a tool to create openstack sql databases.
Use openstack pypi mirror:
Use the openstack pypi mirror for openstack service
installation. It's much faster than pypi.org.
Also, pip install $svc_repo/tools/pip-requires first,
if it exists, which is required to pick up oslo.config.
Change-Id: I72751d4da59f8597d20aea2f27a9dfabe2f63a8f