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.

Conflicts:
  docker/base/apt_preferences.debian

Also:
nova-compute: daxio on CentOS 8 is x86-64 only

Change-Id: Ifb5948653565e2ae902783762e20e33527020efe
Closes-Bug: 1907124
(cherry picked from commit 6176d54179)
(cherry picked from commit 40a1c7a6eb)
This commit is contained in:
Martin Schuppert 2020-12-07 18:16:07 +01:00 committed by Radosław Piliszek
parent ed85b40532
commit 12c898e992
2 changed files with 25 additions and 2 deletions

View File

@ -32,6 +32,13 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'xfsprogs'
] %}
# NOTE(hrw): daxio is part of pmdk which is x86-64 only in CentOS 8
{% if base_arch == 'x86_64' %}
{% set nova_compute_packages = nova_compute_packages + [
'daxio'
] %}
{% endif %}
{{ macros.install_packages(nova_compute_packages | customizable("packages")) }}
{% elif base_package_type == 'deb' %}
@ -48,6 +55,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'openvswitch-switch',
'open-iscsi',
'parted',
'pmdk-tools',
'python3-cephfs',
'python3-guestfs',
'python3-ironicclient',
@ -64,7 +72,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% if base_distro == 'debian' or
(base_distro == 'ubuntu' and base_arch == 'x86_64') %}
{% set nova_compute_packages = nova_compute_packages + [
'ndctl'
'ndctl',
] %}
{% endif %}
@ -97,6 +105,13 @@ RUN rm -f /etc/nova/nova-compute.conf
'xfsprogs'
] %}
# NOTE(hrw): daxio is part of pmdk which is x86-64 only in CentOS 8
{% if base_arch == 'x86_64' %}
{% set nova_compute_packages = nova_compute_packages + [
'daxio'
] %}
{% endif %}
{% elif base_package_type == 'deb' %}
{% set nova_compute_packages = [
@ -109,6 +124,7 @@ RUN rm -f /etc/nova/nova-compute.conf
'nfs-common',
'open-iscsi',
'parted',
'pmdk-tools',
'python3-cephfs',
'python3-guestfs',
'python3-libvirt',
@ -131,7 +147,7 @@ RUN rm -f /etc/nova/nova-compute.conf
{% if base_distro == 'debian' or
(base_distro == 'ubuntu' and base_arch == 'x86_64') %}
{% set nova_compute_packages = nova_compute_packages + [
'ndctl'
'ndctl',
] %}
{% endif %}

View File

@ -0,0 +1,7 @@
---
fixes:
- |
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.