Introduces a new block `openstack_base_override_upper_constraints` to
provide users with the capability to globally override version
constraints for services.
This enables more flexible dependency management across all services.
Change-Id: I0d627487973311de8b23dd1519d41a0cab622fac
Signed-off-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@industrialdiscipline.com>
upper_constraints_remove() macro allows to remove line
upper_constraints_version_change() allows to change versions
This way we have cleaner way to alter u-c in those images which need it.
Change-Id: I8fc354b8aa4d03fcd3ecfb9cbfe75de67492a0e3
Debian 'bookworm' does not like when someone installs Python packages
into system directories. So instead of installing 'virtualenv' from pip
we move to use 'python3 -m venv' which we install from distribution
repositories (on Debian/Ubuntu as EL9 has it in base 'python3').
Change-Id: I7092b561d81c362ca24f84a3d753e777e5625ab3
OpenStack 'zed' requires Python 3.8+ so RHEL 8 family has to go.
This changeset moves to CentOS Stream 9 while move to RockyLinux 9 is
planned as final solution.
CI moved to CentOS Stream 9 nodes.
Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/839715
Change-Id: I113b9984294cf8663d3fc0c8840320e1d40ea731
The etcd3 extra in tooz has been deprecated [1] as the library it uses
under the hood, python-etcd3, is currently stale and unmaintained. It
will be removed in a future release. Stop installing this.
[1] 7ee2780af8
Change-Id: Ib54a2868cb33de5fc2800f314b2811c67ef13461
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
There is proposed change in kolla-ansible below
which is changing the way how central-logging
works and adding native fluent logging.
Because of this, it's needed to add python
fluent library to openstack images.
Proposed Change:
- https://review.opendev.org/#/c/755775/
Change-Id: Iedc782a3317c93a2af0da4696fd71c05e0e4a55e
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.
Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
We should use the same Python OVS bindings package
version as running OpenvSwitch. See related bug.
Closes-Bug: #1961874
Change-Id: Id6968e3ec1093f26f25f3045e2a6d8cc4f41adaa
Since CentOS Linux 8 repository retirement from
CentOS mirrors - we need to use CentOS Stream 8
version of Opstools repo.
Listed below packages are missing from the repo,
and according to the maintainer dpdk_telemetry is
not going to show up at all (it's basically dead).
The rest of the packages might show up at a later
stage - but it's not a priority for the maintainer.
- collectd-dpdk_telemetry
- collectd-libpod-stats
- collectd-sensubility
- python3-sqlalchemy-collectd
Change-Id: I5f446fc276e245c1e6974ceeb6ff3dccd84ee502
New pip has nice features for detection of conflicting
requirements.
When installing from PyPI, as we do in source images, running
the latest pip+setuptools+wheel is recommended.
Co-authored-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Change-Id: I4ae3a82cc796a60450c2a35beba32972964bc5d0
With RDO use we did not disabled some repositories. This patch disable
them and enable where needed.
Change-Id: Ia9d537fe9c1ad54789d2bfb4027254fbb3defe7e
Since Rally has virtualenv in requirements, and is using contraints - it's
trying to downgrade virtualenv from inside a virtualenv.
Let's try to install proper version of packages in openstack-base.
Closes-Bug: #1900419
Change-Id: I2a1e2b6661fd4b62648756416e6147b604dda686
There is small subset of images where we need to know which install_type
or install_metatype is used. So add them only there (and their
children).
Change-Id: Ib7d5e36b958d6c8daf2989df32e29fa24b46c62a
Implements: blueprint infra-images
This is a follow-up on "Refactor httpd install to base image"
[1].
It seems a copy-paste algorithm was used to craft Dockerfiles
for some httpd-enabled services which resulted in an abundance of
ldappool packages getting installed, even in the 'source' case.
This seems to have also kept ldappool at a lower version because
it did not get updated via pip later.
This patch deals with that and also moves ldap deps for Keystone
to their proper place in 'source' case (extras).
Note Keystone client gets installed in openstack-base.
Cinder does not need to include Keystone either.
[1] https://review.opendev.org/744037
Change-Id: I017d7a6a5d2b1ae6c04556dcf172453a36de5be7
Refactor installing and initial setup of httpd and mod wsgi from
individual services to base image.
Change-Id: I651a55a9ebe258ef403d33de010a4dfb368a4021
'messaging-rabbitmq' and 'opstools' are enabled by RDO
delorean-deps.repo file
'influxdb' was also enabled
Depends-On: https://review.opendev.org/728687
Change-Id: Ibb0a7edc9e5632c1b89a7d52601f55a223b49dfb
With the move to RHEL/CentOS 8 we no longer have Python 2 in our images
so there is no need for checking which Python version (2.x or 3.x) is
used inside of containers.
We also no longer have to support yum as a value for
distro_package_manager.
Partially-Implements: blueprint centos-rhel-8
Change-Id: Ie45cf3465fedddbde7856961527421883ba3d5c9
INFO:kolla.common.utils.openstack-base: File "setup.py", line 159, in run
INFO:kolla.common.utils.openstack-base: raise Exception("ERROR: The 'make' utility is missing from PATH")
INFO:kolla.common.utils.openstack-base: Exception: ERROR: The 'make' utility is missing from PATH
INFO:kolla.common.utils.openstack-base: ----------------------------------------
INFO:kolla.common.utils.openstack-base:
INFO:kolla.common.utils.openstack-base: ERROR: Failed building wheel for PyNaCl
Change-Id: Id8be6cc8f98207bc9ebf546c55d34cf9c6360cd7
pyScss used by Horizon fails to work with setuptools > 46 version.
It's last release was in 2016 so probably no one fix it.
Let make sure that we get older version of setuptools.
Broken due to https://bugs.launchpad.net/kolla/+bug/1866961
Change-Id: I2a3fa657a3e1a9b8b0acb0b50bd4f3e98078f4ff
The disable_extra_repos macro accepts a list as its only argument. We
were calling it like this to disable EPEL:
disable_extra_repos('epel')
The macro interpreted this as a request to disable three repos, e, p, l.
Thanks Python! Type validation to be improved separately.
Additionally, on CentOS 8 the EPEL repository was not included in the
repository mapping file, repos.yaml. There is also another EPEL
repository on CentOS 8, epel-modular, which is enabled by default after
installing epel-release.
This change adds mappings for epel and epel-modular repos to repos.yaml,
and fixes the disabling of epel in the base image, as well as disabling
epel-modular.
There are some cases where EPEL is still used (it seemed a bit too
easy...), and the repository has been enabled for these images:
* bifrost-base (nginx)
* ironic-conductor (C7 only, shellinabox)
* freezer-base (C7 only, trickle)
* gnocchi-base (C8 binary only, python3-boto3)
* mariadb (pv)
* mongodb (C7 only, mongodb)
* nova-spicehtml5proxy (C7 only, spice-html5)
* telegraf (C7 only, python2-pip)
A few other things were changed:
* ironic-conductor does not require the ceph repo
* python3-pika is no longer installed in the openstack-base image
Related: blueprint remove-epel
Change-Id: I3761825239dfc462072383cde6276c4fb3e1bf12
Adds support to the base and openstack-base images for CentOS 8.
These images have been removed from the list of unbuildable images, and
replaced with all dependent images.
Change-Id: I18fba8a5c2f99b700990cbf41c76077a1ec2408a
Partially-Implements: blueprint centos-rhel-8