aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Goddard <mark@stackhpc.com>2020-02-26 10:06:28 +0000
committerMark Goddard <mark@stackhpc.com>2020-02-26 13:46:04 +0000
commit1fe8012ce2aec549430212d90ffd728889d6e4aa (patch)
treeef5c5e9c6b2a82c43d4e4e6dbbfafe7f256ad34c
parent8e9a8e7aed54e798527fed04c3a21d0914b458fd (diff)
downloadkolla-1fe8012ce2aec549430212d90ffd728889d6e4aa.tar.gz
kolla-1fe8012ce2aec549430212d90ffd728889d6e4aa.zip
Actually disable EPEL, and epel-modular
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
-rw-r--r--docker/base/Dockerfile.j22
-rw-r--r--docker/bifrost/bifrost-base/Dockerfile.j23
-rw-r--r--docker/freezer/freezer-base/Dockerfile.j25
-rw-r--r--docker/gnocchi/gnocchi-base/Dockerfile.j26
-rw-r--r--docker/ironic/ironic-conductor/Dockerfile.j25
-rw-r--r--docker/mariadb/Dockerfile.j23
-rw-r--r--docker/mongodb/Dockerfile.j25
-rw-r--r--docker/nova/nova-spicehtml5proxy/Dockerfile.j25
-rw-r--r--docker/openstack-base/Dockerfile.j21
-rw-r--r--docker/telegraf/Dockerfile.j25
-rw-r--r--kolla/template/repos.yaml2
11 files changed, 38 insertions, 4 deletions
diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2
index 85237f663..15898af61 100644
--- a/docker/base/Dockerfile.j2
+++ b/docker/base/Dockerfile.j2
@@ -359,7 +359,7 @@ RUN yum-config-manager --enable rhel-7-server-optional-rpms \
# Install base packages
{{ macros.install_packages( base_centos_packages | customizable("centos_packages") | customizable("centos_binary_packages") | customizable("centos_source_packages") ) }}
-{{ macros.disable_extra_repos('epel') }}
+{{ macros.disable_extra_repos(['epel', 'epel-modular']) }}
{# endif for base_package_type rpm #}
{% elif base_package_type == 'deb' %}
diff --git a/docker/bifrost/bifrost-base/Dockerfile.j2 b/docker/bifrost/bifrost-base/Dockerfile.j2
index 8cf1b62d6..effd996c2 100644
--- a/docker/bifrost/bifrost-base/Dockerfile.j2
+++ b/docker/bifrost/bifrost-base/Dockerfile.j2
@@ -7,6 +7,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='bifrost') }}
+{# NOTE(mgoddard): EPEL required for nginx #}
+{{ macros.enable_extra_repos(['epel']) }}
+
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' && /bin/false
diff --git a/docker/freezer/freezer-base/Dockerfile.j2 b/docker/freezer/freezer-base/Dockerfile.j2
index 9b27fbdf1..b1787651d 100644
--- a/docker/freezer/freezer-base/Dockerfile.j2
+++ b/docker/freezer/freezer-base/Dockerfile.j2
@@ -7,6 +7,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='freezer') }}
+{# NOTE(mgoddard): EPEL required for trickle package. Not provided by EPEL8 #}
+{% if distro_package_manager == 'yum' %}
+{{ macros.enable_extra_repos(['epel']) }}
+{% endif %}
+
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
diff --git a/docker/gnocchi/gnocchi-base/Dockerfile.j2 b/docker/gnocchi/gnocchi-base/Dockerfile.j2
index 4d23bd6aa..5ef69800e 100644
--- a/docker/gnocchi/gnocchi-base/Dockerfile.j2
+++ b/docker/gnocchi/gnocchi-base/Dockerfile.j2
@@ -15,6 +15,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% endif %}
{% if install_type == 'binary' %}
+
+ {# NOTE(mgoddard): EPEL required for python3-boto3 package on CentOS 8 #}
+ {% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['epel']) }}
+ {% endif %}
+
{% if base_package_type == 'rpm' %}
{% set gnocchi_base_packages = [
diff --git a/docker/ironic/ironic-conductor/Dockerfile.j2 b/docker/ironic/ironic-conductor/Dockerfile.j2
index 943cd206c..39d0957ac 100644
--- a/docker/ironic/ironic-conductor/Dockerfile.j2
+++ b/docker/ironic/ironic-conductor/Dockerfile.j2
@@ -5,7 +5,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
-{{ macros.enable_extra_repos(['ceph']) }}
+{# NOTE(mgoddard): EPEL required for shellinabox package. Not provided by EPEL8 #}
+{% if distro_package_manager == 'yum' %}
+{{ macros.enable_extra_repos(['epel']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/mariadb/Dockerfile.j2 b/docker/mariadb/Dockerfile.j2
index d958b03b0..fffa48426 100644
--- a/docker/mariadb/Dockerfile.j2
+++ b/docker/mariadb/Dockerfile.j2
@@ -7,7 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='mysql') }}
-{{ macros.enable_extra_repos(['mariadb']) }}
+{# NOTE(mgoddard): EPEL required for pv package #}
+{{ macros.enable_extra_repos(['epel', 'mariadb']) }}
{% if base_package_type == 'rpm' %}
{% set mariadb_packages = [
diff --git a/docker/mongodb/Dockerfile.j2 b/docker/mongodb/Dockerfile.j2
index 2a9c3312e..b6d7985c5 100644
--- a/docker/mongodb/Dockerfile.j2
+++ b/docker/mongodb/Dockerfile.j2
@@ -7,6 +7,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='mongodb') }}
+{# NOTE(mgoddard): EPEL required for mongodb packages. Not provided by EPEL8 #}
+{% if distro_package_manager == 'yum' %}
+{{ macros.enable_extra_repos(['epel']) }}
+{% endif %}
+
{% if base_package_type == 'rpm' %}
{% set mongodb_packages = [
'mongodb',
diff --git a/docker/nova/nova-spicehtml5proxy/Dockerfile.j2 b/docker/nova/nova-spicehtml5proxy/Dockerfile.j2
index b5da34c12..fce71702e 100644
--- a/docker/nova/nova-spicehtml5proxy/Dockerfile.j2
+++ b/docker/nova/nova-spicehtml5proxy/Dockerfile.j2
@@ -5,6 +5,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
+{# NOTE(mgoddard): EPEL required for spice-html5 package. Not provided by EPEL8 #}
+{% if distro_package_manager == 'yum' %}
+{{ macros.enable_extra_repos(['epel']) }}
+{% endif %}
+
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/openstack-base/Dockerfile.j2 b/docker/openstack-base/Dockerfile.j2
index 7b276bdc3..0b36e26e4 100644
--- a/docker/openstack-base/Dockerfile.j2
+++ b/docker/openstack-base/Dockerfile.j2
@@ -76,7 +76,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'python3-paramiko',
'python3-paste-deploy',
'python3-pbr',
- 'python3-pika',
'python3-posix_ipc',
'python3-prettytable',
'python3-psycopg2',
diff --git a/docker/telegraf/Dockerfile.j2 b/docker/telegraf/Dockerfile.j2
index 15134bc6f..3ca337051 100644
--- a/docker/telegraf/Dockerfile.j2
+++ b/docker/telegraf/Dockerfile.j2
@@ -7,6 +7,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='telegraf', homedir='/etc/telegraf') }}
+{# NOTE(mgoddard): EPEL required for python2-pip package. python3-pip available in CentOS8 #}
+{% if distro_package_manager == 'yum' %}
+{{ macros.enable_extra_repos(['epel']) }}
+{% endif %}
+
{{ macros.enable_extra_repos(['influxdb']) }}
{% set telegraf_packages = [
diff --git a/kolla/template/repos.yaml b/kolla/template/repos.yaml
index 777a0ed6c..36981b488 100644
--- a/kolla/template/repos.yaml
+++ b/kolla/template/repos.yaml
@@ -43,6 +43,8 @@ centos8:
ceph-noarch: "ceph-noarch"
ceph-el8: "ceph-el8"
ceph-lab-extras: "ceph-lab-extras"
+ epel: "epel"
+ epel-modular: "epel-modular"
grafana: "grafana"
influxdb: "influxdb"
rabbitmq: "rabbitmq_rabbitmq-server"