Commit Graph

96 Commits

Author SHA1 Message Date
Michal Nasiadka de7939a975 nova-compute: Remove duplicate openvswitch package
openvswitch package is already installed in nova-base from
CentOS NFV SIG repos - and in nova-compute we don't enable this
repo - so we get openvswitch installed from RDO packages.

Closes-Bug: #2064098
Change-Id: If39e045357563111219a008fa7a81a82ef906627
2024-04-29 11:44:25 +02:00
Michal Wyszkowski abb969502f Nova: fix swtpm and swtpm-tools missing from deb installs
Closes-Bug: 2062572
Change-Id: I456a5b8f66aa88a82fb54938e8df7195d127d9cd
2024-04-22 13:03:38 +02:00
Michal Nasiadka 66e27b3b0a Remove calls to libvirt repo
It does not exist in repos.yaml since [1].

[1]: Id585c7744ba130ad1dfc28138fb0f9e6eeae771d

Change-Id: Ic74eba44fc6e5508976de24cf20a5039f3292731
2024-02-26 13:04:19 +01:00
Pierre Riteau 33c988a6ce Update Ceph repo name for dnf config-manager command
Since change I1bc19f8198da3f9ab2ae2a8864c3349b21b0249e we install the
centos-release-ceph-reef package as a dependency, but some code was
still expecting the quincy package.

Change-Id: I8ebcf815d80f3bead25e0078d69b34e17ad013bd
2023-11-22 10:06:39 +00:00
Jeffrey Zhang 92cedcd2b1 Add rsync to nova-compute
when configure `remote_filesystem_transport` to rsync, rsync binary is
required.

Change-Id: I07be614846be9305f0775df22a6d931ceab1720a
2023-10-22 15:41:30 +08:00
Radosław Piliszek 9e92e4c8e4 Support qemu block rbd in nova-compute
This is necessary if using nova-compute with RBD backend (directly,
not via Cinder) and wishing to make an instance image to Glance
while (1) following the recommended Ceph permissions which do not
give Nova write permissions to the images' pool or (2) not using
RBD with Glance or (3) not revealing what Glance actually uses
as the backend (hiding locations).

Change-Id: I88e1e0ca01b2b2effad9515b905cc761fbb5d2d4
2022-10-04 17:53:57 +00:00
Marcin Juszkiewicz 878b00013b Move to CentOS Stream 9
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
2022-09-27 07:40:06 +00:00
Marcin Juszkiewicz 016c5ed30c adjust permissions on _extend_start files (part II)
Tim Shearer started it in 1d96a2bbe1.

Since all extend_start files are sourced rather than executed, the executable
bits are now cleared throughout the project.

Change-Id: Ia1797c32fc6a35f9f077c673abf4d8e16e51a760
2022-04-22 11:34:55 +02:00
Marcin Juszkiewicz e21aeb5ae9 flatten images a bit
As we have one type of images now some RUN calls could be merged so we
will have less layers in resulting images.

Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
2022-04-21 18:53:14 +00:00
Marcin Juszkiewicz 1749da2fbf docker: drop binary parts
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.

Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
2022-04-09 17:44:26 +02:00
Mark Goddard e1efa9d257 libvirt: add Cyrus SASL packages for DIGEST-MD5
Adds Cyrus SASL packages necessary for the DIGEST-MD5 and SCRAM-SHA-256
mechanisms. These can be used for libvirt SASL authentication.

Change-Id: I13e19ca29eeab40cd08fa3afe2cdf7531867f81b
Partial-Bug: #1964013
2022-03-10 10:59:38 +00:00
Marcin Juszkiewicz c638e768a8 nova-compute: 'ndctl' is available on all archs
In past 'ndctl' was x86-64 only in Ubuntu. This changed in 19.04 so time
to adapt.

Change-Id: I3e599f780e8f84ea131988f4a9a45f17055c8ab2
2022-02-05 09:32:15 +00:00
Pierre Riteau 30eddf72f6 Ensure nvme-cli is present in nova-compute images
The nvme-cli package is required to get the nvme command executed by
os-brick, which is used by nova-compute.

We don't need to explicitely install it for centos binary images, as it
is required by os-brick which is required by openstack-nova-common, but
all other types of images were missing it.

Change-Id: I754939da7636c57d2a8d5b83debb5d8a58e38432
Closes-Bug: #1953509
2021-12-07 16:02:03 +01:00
Marcin Juszkiewicz bbef9846c3 nova-compute: trim image a bit on CentOS
libguestfs package fetched kernel-core one which fetched linux-firmware.
We remove the last one and save ~500MB of space:

before/centos-binary-nova-compute: 3.3GB
after1/centos-binary-nova-compute: 2.71GB

Closes-Bug: #1946801
Change-Id: I98cc19c95fcec07dd4e494c14c09938d754f1de0
2021-11-26 12:10:32 +00:00
Marcin Juszkiewicz fb61ba7dac enable 'libvirt' repo for images with python*-libvirt
There are several images installing 'python3-libvirt' package. Which for
Debian reside in 'libvirt' repo. So let's enable it where needed.

Change-Id: I1c91d27f2578f5ca7c83c4747725b1d9371880b0
2021-03-23 22:08:11 +01:00
Marcin Juszkiewicz edb6b60a98 nova-compute: daxio on CentOS 8 is x86-64 only
I somehow missed that when it was sent for review.

Change-Id: Iabacaeccdb360544125ad910d5c3f5f9d895dac5
2020-12-18 14:32:46 +01:00
Martin Schuppert 6176d54179 Add daxio for nvdimm scenario
nova-compute uses daxio to cleanup vpmem backend device on instance
delete. If the daxio binary is missing in the nova-compute container
instance delete fails. daxio is provided in centos via daxio, in
ubuntu via the pmdk-tools package.

Change-Id: Ifb5948653565e2ae902783762e20e33527020efe
Closes-Bug: 1907124
2020-12-15 14:22:12 +01:00
Radosław Piliszek 0c8702c96f Add sysfsutils to nova-compute ubuntu source
This fixes the FC Cinder backend usage in Nova.

Change-Id: I036cfe3af3dd96625f986a820c78a10e6558b086
Closes-bug: #1884484
2020-06-22 11:06:58 +02:00
Zuul b53ddab4b6 Merge "nova-compute: add ndctl to expose NVDIMMs to guests" 2020-04-15 15:30:52 +00:00
Marcin Juszkiewicz 53443c5c71 Remove support for CentOS 7
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
2020-04-15 09:32:06 +00:00
Piotr Kopec f9ea23d940 nova-compute: add ndctl to expose NVDIMMs to guests
`ndctl` is a utility for managing the nvdimm subsystem required
by Nova for attaching PMEM(persistent memory) namespaces to guests [0].

[0]: https://docs.openstack.org/nova/latest/admin/virtual-persistent-memory.html

Change-Id: I8ed1b6c1d0985b2a73206bd9249a5664cd80c912
Closes-Bug: #1870455
2020-04-14 15:46:12 +02:00
Alfredo Moralejo 0c63129682 Use StorageSIG repos for Ceph in CentOS8
Storage SIG has built Ceph Nautilus and Ganesha for CentOS8 in CentOS
Build System.

Let's switch to use them in kolla.

Change-Id: Id37dca84c4eb918aaf2d3c036ef5387fe75988dd
2020-03-03 16:31:53 +05:30
Christian Berendt 861f55fbfd Add block labels to all Dockerfiles
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2020-03-01 17:25:58 +00:00
Michal Nasiadka 70423f1959 CentOS 8: Use upstream Ceph/master
The only Ceph version that will support CentOS 8 is Octopus.
It will be released end of March 2020 - so for now let's use master.

Change-Id: I5955acb41e7346802d76f4f2b244cbf5c36f5bf2
Partially-Implements: blueprint centos-rhel-8
2020-01-30 10:35:50 +00:00
Mark Goddard 4b4e26262b CentOS 8: Update packages in images
* Some further changes for python2 vs python3 packages
* Allow rabbitmq 3.7.*, since a newer erlang is available
* Switch from qemu-img-ev to qemu-img on CentOS 8
* bridge-utils no longer available on CentOS 8
* libvirt-daemon-driver-lxc no longer available on CentOS 8
* Mark some more images buildable for CentOS 8

Change-Id: Iaf5b68ff6d944ae730ca0b1d5832172c106a6c08
Partially-Implements: blueprint centos-rhel-8
Partially-Implements: blueprint centos-rhel-python-3
2020-01-29 11:41:38 +00:00
Marcin Juszkiewicz cf11cd6f3d Enable repos only when needed
Disable external repositories by default and enable only when needed.

Depends-on: https://review.opendev.org/696480

Implements: blueprint repos-off-by-default

Change-Id: Icf2a8397a8349e0fe849d88d160409fd234480a9
2019-11-29 11:38:06 +01:00
Martin Schuppert 9b1a243a3a Add xfsprogs to nova-compute
xfsprogs is required for formatting XFS ephemeral disk partitions
when format=xfs is specified as instance create failes with
'mkfs.xfs: No such file or directory' due to missing xfsprogs
package in the nova-compute container.

Closes-Bug: #1850610

Change-Id: Iaf3414464f3dd747427247339c6b201b352063cb
2019-10-30 10:13:38 +01:00
Zuul 17ce7d4de6 Merge "Debian/Ubuntu: more python3 packages for binary" 2019-06-07 08:29:09 +00:00
Mark Goddard aa59f0db6f Debian/Ubuntu: more python3 packages for binary
backport: Stein

During the switch to Stein UCA, we did not switch all packages to python
3 for Debian/Ubuntu binary images. This change switches some more of
those packages.

Change-Id: I0bff21384d88ea678608392de2db1ba418c96665
Co-Authored-By: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
2019-06-06 11:06:58 +00:00
Marcin Juszkiewicz d436001b43 Debian/Ubuntu: move to Python 3 for source images
Commit 43b74ccc15 enabled use of Python 3
based packages but not switched to use Python 3.

Some of images still contain Python 2. There are two reasons:

- Ceph (ceph-common depends on Py2)
- python3-ldappool on Ubuntu 18.04

In Ceph situation Py3 packages were added. For second one we can not do
anything - Py2 dependency got dropped in Ubuntu 18.10 version.

Removed neutron-server-plugin-networking-infoblox due to being not
maintained. Once https://review.opendev.org/#/c/657578/ get merged
someone may revert that part.

Implements: blueprint debian-ubuntu-python3

Depends-on: Ie2a1077f7def0743f1403341985e2109aa490026

Change-Id: Ibfe0c2b8be98db56c61f74fb0247488ab3749ef4
2019-06-06 11:59:03 +01:00
Marcin Juszkiewicz 4d31ca695b Move to Debian 'buster'
Buster is at freeze phase so safe to update and use. Will give us
Python 3 based OpenStack packages (usually release delayed).

Change-Id: I48c2d252a834716f1bcf10b18f2d32fe541e8137
2019-03-14 10:20:27 +00:00
Alex Schultz 3e5d8e2653 Add python3 packages for RHEL systems
RDO is currently working on python3 support for the next version of
CentOS/RHEL based systems.  This package uses the distro_python3 flag
that was added as part of I4028991bad92c0e8e21066cc4173c06ce5eba393 to
use the python3 specific package names.  This change only adds python3
package names for RHEL systems.

Conflicts-With: https://review.openstack.org/#/c/636457/
Change-Id: Iad6b70b433a0dd1b0f8ae6790fd280594517661a
Related-Blueprint: python3-support
2019-03-12 17:48:18 +00:00
Alex Schultz ae1322ec10 Use base_package_type
This change updates the docker files to use base_package_type instead
of doing specific distro checks for the rhel/deb generic cases. The
base_distro is still available and is used when a specific distro needs
a customization but if the differences are purely rpm vs deb, then the
base_package_type can be used.

Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
2019-01-17 08:23:41 -07:00
Hamdy Khader 332a0a9601 Add nvme-cli to nova compute packages
Change-Id: I7688a1c2065ed9183e5eeaaade8e31e0f76b4467
2018-08-20 23:13:52 +00:00
Martin André 5951977eab Stop using deprecated rpm package names
These packages produce a warning during the installation, we should
switch to their new names, usually to be specific about their use of
python2.

Change-Id: I0a80e822f64222d9a32aabd1fd834bcf794d6320
2018-07-10 16:32:18 +02:00
Jeffrey Zhang 14374e715d Bump Ubuntu base image to 18.04
Ubuntu 18.04 has been released. We need upgrade to it this cycle.

Changes made in this patch

- Bump ubuntu repo from xenial to bionic. Some repos do not have bionic
  packages, so still using xenial repos.
- Drop mariadb, percona and nfs-ganesha repo, because these packages are
  already provided by Ubuntu official repo.
- Since qdrouterd does not have bionic repo and xenial packages does not
  work on Ubuntu bionic, just add it into ignore image list.
- Use python-rtslib-fb and targetcli-fb rather than python-rtslib
  and targetcli
- use xen-utils package name rather than with package version one.
- Seems unsigned repo won't work on Ubuntu bionic, stop using infra
  mirrored unsigned repo in gate building job.

Needed-By: https://review.openstack.org/568728
Implement blueprint: ubuntu-bionic
Change-Id: I4e3b0ca669cfbf6316bf591f2d8428fa1a0d6182
2018-05-26 00:24:30 +08:00
Marcin Juszkiewicz d50cc5d5d4 base/nova-compute: install udev/systemd to satisfy dependencies
For Debian we use 'stretch-backports' image due to requirements of some
images. That means that we also have systemd from backports. This breaks
'open-iscsi' (base) and 'python-guestfs' (nova-compute) installation.
Solution is to install 'udev' and 'systemd' in proper versions.

INFO:kolla.common.utils.base:Some packages could not be installed. This may mean that you have
INFO:kolla.common.utils.base:requested an impossible situation or if you are using the unstable
INFO:kolla.common.utils.base:distribution that some required packages have not yet been created
INFO:kolla.common.utils.base:or been moved out of Incoming.
INFO:kolla.common.utils.base:The following information may help to resolve the situation:
INFO:kolla.common.utils.base:The following packages have unmet dependencies:
INFO:kolla.common.utils.base: open-iscsi : Depends: udev but it is not going to be installed
INFO:kolla.common.utils.base:E: Unable to correct problems, you have held broken packages.

INFO:kolla.common.utils.nova-compute: python-guestfs : Depends: libguestfs0 (= 1:1.34.6-2) but it is not going to be installed
INFO:kolla.common.utils.nova-compute:E: Unable to correct problems, you have held broken packages.

Closes-bug: #1769850

Change-Id: I4865c279d665cf34fc150794c01368a1602319f0
2018-05-08 11:16:43 +01:00
Zuul 2a50816706 Merge "Remove customizable for plugins_pip_packages" 2018-03-13 16:15:51 +00:00
Zuul b4b0798eaa Merge "change python-libguestfs to python-guestfs for ubuntu" 2018-02-19 17:18:06 +00:00
Martin André 6b81f91c5e Remove customizable for plugins_pip_packages
The pip packages are normally already configurable with the
<image_name>_pip_packages variable. It doesn't make much sense to make
the list of packages installed with the plugins mechanism configurable
via the <image_name>_plugins_pip_packages variable too.

And even if we wanted to, the parameter to the `customizable()`
function should be 'plugins_pip_packages' and not 'pip_packages'.

This commit removes the customizable bits from the plugins install
macro, at least until we get a good use case for it.

Change-Id: I90dd28b8c5d981e6028af353e34645712ef09b0b
2018-01-23 14:15:51 +01:00
Zhaokun Fu 1567a19b52 change python-libguestfs to python-guestfs for ubuntu
python-libguestfs is for centos,
python-guestfs is for ubuntu.

Related-Bug: #1742029

Change-Id: Ia1578dfcc9e4dbf32d29773f07424bbfe9328951
2018-01-11 08:40:34 +00:00
ZhongShengping 097b4da85d Remove /lib/udev in $PATH for nova-compute
Add /lib/udev environment variable[1] is to solve the scsi_id access
problems, but the patch[2][3] pointed out the absolute path scsi_id,
we can not add /lib/udev environment variables in the system for
nova-compute. So we can remove /lib/udev in $PATH for nova-compute.

[1]https://review.openstack.org/#/c/291285/
[2]https://review.openstack.org/#/c/277224/
[3]https://github.com/openstack/os-brick/blob/master/os_brick/initiator/linuxscsi.py#L147

Change-Id: I5326edf8fff5745ef119c0c3decd6f4c51e8bd5d
Closes-Bug: #1742340
2018-01-10 11:42:51 +08:00
naichuans 48df9f27b0 XenServer: Add packages for initial support
Add `parted` to support xenserver in nova.

Change-Id: I07d88702a8f8443efe4487837c2b47b06e16e417
blueprint: xenserver-support
2017-10-26 09:45:00 +00:00
Jeffrey Zhang beebbda9b5 Install multipath binary in nova-compute image
multipath binary is required after enabled multipath in nova.

This patch is pushed to ocata branch first by mistake. Need cherry pick
into master and pike branch.

Change-Id: I0a1d85597999415cab11feb71a7fdfd7af3f7148
Closes-Bug: #1713639
(cherry picked from commit 4e6add7dbd)
2017-09-23 09:14:02 +08:00
Jenkins 06deb74d58 Merge "nova-compute: add package qemu-efi to support uefi image" 2017-08-29 05:00:17 +00:00
Jeffrey Zhang 17c5123fda libvirt should be installed from OS rather than pip
python-libvirt need be compiled with libvirt header. compiling
it with different libvirt header may be failed.

So better install python-libvirt from OS distro.

Closes-Bug: #1707841
Change-Id: I0d7bf1576aaf24fc7c60f49923e37a6a1afe9a8e
2017-08-15 17:17:32 +08:00
Zhangfei Gao 1c81a87221 nova-compute: add package qemu-efi to support uefi image
On arm64, uefi image is usually used via --property hw_firmware_type=uefi
In order to support this, qemu-efi has to be installed
Ohterwise error reports:
Terminating instance: UEFINotSupported: UEFI is not supported

Signed-off-by: Kevin Zhao <kevin.zhao@linaro.org>
Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>

Change-Id: I1a5099e45ad4e8dc5e21ebdf25639ef938b16822
2017-08-15 09:43:53 +08:00
Zhaokun Fu 0389c4a18d Fix injecting password into image error
Change-Id: I25d029cb879097e489c9846d658e696a8d3194b0
2017-07-18 01:45:03 -07:00
Jenkins c23b39f703 Merge "Add e2fsprogs in nova-compute images" 2017-06-05 12:24:12 +00:00
Jenkins 399b2f1d5f Merge "Only copy plugin-archive into image for source builds" 2017-06-02 10:10:37 +00:00