From 245992d37c0d051ed50bd843e4ba4ba852373afe Mon Sep 17 00:00:00 2001 From: Marcin Juszkiewicz Date: Fri, 13 Mar 2020 16:30:08 +0100 Subject: kibana, nova-libvirt: handle it properly for non-x86 Upstream kibana package contains NodeJS x86-64 binaries so can not be used directly on non-x86 architectures. I took upstream packages, removed NodeJS binary from it and added 'nodejs' dependency. Package is present in my Linaro OBS repository where I keep other packages needed for aarch64 kolla run. Via APT pinning I mark them as not wanted so they are not used on any architecture with two exceptions: 1. libvirt - we need fixed version to be able to use ThunderX servers 2. kibana - to be able to run it at all For x86-64 upstream kibana package is used. Closes-bug: #1867365 Change-Id: I456402849022100bde1fffdfbf6292b35690f0f2 --- docker/base/Dockerfile.j2 | 3 ++- docker/base/apt_preferences.debian | 20 ++++++++++++++++++++ docker/kibana/Dockerfile.j2 | 10 ++-------- docker/nova/nova-libvirt/Dockerfile.j2 | 2 +- 4 files changed, 25 insertions(+), 10 deletions(-) (limited to 'docker') diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2 index c854f4cdf..baa1169da 100644 --- a/docker/base/Dockerfile.j2 +++ b/docker/base/Dockerfile.j2 @@ -450,7 +450,8 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom 'https://packages.grafana.com/gpg.key', 'http://buster-train.debian.net/debian/dists/pubkey.gpg', 'https://packages.treasuredata.com/GPG-KEY-td-agent', - 'https://repos.influxdata.com/influxdb.key' + 'https://repos.influxdata.com/influxdb.key', + 'https://obs.linaro.org/repos/home:/marcin.juszkiewicz/debian-buster/Release.key', ] %} {% set base_apt_packages = base_apt_packages + ['sudo',] diff --git a/docker/base/apt_preferences.debian b/docker/base/apt_preferences.debian index 859789d32..6f5c1622a 100644 --- a/docker/base/apt_preferences.debian +++ b/docker/base/apt_preferences.debian @@ -7,3 +7,23 @@ Pin-Priority: 1000 Package: smartmontools Pin: version 7.* Pin-Priority: 1000 + +# We do not want packages from this repo +Package: * +Pin: release o=obs://private/home:marcin.juszkiewicz/debian-buster +Pin-Priority: 100 + +# Unless it is libvirt (on aarch64) +Package: *libvirt* +Pin: release o=obs://private/home:marcin.juszkiewicz/debian-buster,b=arm64 +Pin-Priority: 600 + +# Unless it is kibana (on aarch64) +Package: kibana +Pin: release o=obs://private/home:marcin.juszkiewicz/debian-buster +Pin-Priority: 600 + +# on x86-64 use upstream package for kibana +Package: kibana +Pin: release o=elastic,b=amd64 +Pin-Priority: 700 diff --git a/docker/kibana/Dockerfile.j2 b/docker/kibana/Dockerfile.j2 index 2b1421f4e..c28f2a8d0 100644 --- a/docker/kibana/Dockerfile.j2 +++ b/docker/kibana/Dockerfile.j2 @@ -11,14 +11,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {{ macros.configure_user(name='kibana') }} -{% if base_arch != 'x86_64' and base_distro in ['debian', 'ubuntu'] %} - {% set kibana_packages = [ - 'nodejs', - 'http://obs.linaro.org/home:/marcin.juszkiewicz/debian-buster/all/kibana_5.6.16-0linaro1_all.deb' - ] %} -{% else %} - {% set kibana_packages = ['kibana'] %} -{% endif %} +{% set kibana_packages = ['kibana'] %} + {{ macros.install_packages(kibana_packages | customizable("packages")) }} COPY extend_start.sh /usr/local/bin/kolla_extend_start diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2 index 2e78ca63b..c9a806a14 100644 --- a/docker/nova/nova-libvirt/Dockerfile.j2 +++ b/docker/nova/nova-libvirt/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {{ macros.configure_user(name='nova', groups='qemu') }} -{{ macros.enable_extra_repos(['ceph']) }} +{{ macros.enable_extra_repos(['ceph', 'libvirt']) }} {% if base_package_type == 'rpm' %} -- cgit v1.2.3