aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docker/base/Dockerfile.j213
-rw-r--r--docker/base/ceph_master.repo32
-rw-r--r--docker/cinder/cinder-base/Dockerfile.j27
-rw-r--r--docker/glance/glance-base/Dockerfile.j27
-rw-r--r--docker/gnocchi/gnocchi-base/Dockerfile.j27
-rw-r--r--docker/manila/manila-share/Dockerfile.j27
-rw-r--r--docker/nova/nova-compute/Dockerfile.j27
-rw-r--r--docker/nova/nova-libvirt/Dockerfile.j27
-rw-r--r--docker/zun/zun-compute/Dockerfile.j27
-rwxr-xr-xkolla/image/build.py7
-rw-r--r--kolla/template/repos.yaml5
11 files changed, 92 insertions, 14 deletions
diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2
index 36223cd56..41d16c708 100644
--- a/docker/base/Dockerfile.j2
+++ b/docker/base/Dockerfile.j2
@@ -231,6 +231,11 @@ RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
'centos-release-opstools',
'centos-release-qemu-ev',
] %}
+# FIXME(mnasiadka): Replace with CentOS Storage SIG packages when avail
+{% else %}
+COPY ceph_master.repo /etc/yum.repos.d/
+RUN export CEPH_MASTER_REPO=$(curl -s https://shaman.ceph.com/api/search/\?status\=ready\&project\=ceph\&ref\=master\&flavor\=default\&distros\=centos/8\&sha1\=\latest | awk -F'{|: |,|"|}' '{for(i=1;i<=NF;i++) {gsub(" ",""); if($i == "url") {print $(i+2)}}}') \
+ && sed -i "s|CHACRA_URL|${CEPH_MASTER_REPO}|g" /etc/yum.repos.d/ceph_master.repo
{% endif %}
{% if distro_package_manager == 'dnf' %}
@@ -257,6 +262,14 @@ RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
'centos-nfs-ganesha28',
'centos-qemu-ev',
] %}
+{% else %}
+ # FIXME(mgoddard): Remove when CentOS Storage SIG repo is available for CentOS 8
+ {% set base_centos_yum_repos_to_disable = base_centos_yum_repos_to_disable + [
+ 'ceph',
+ 'ceph-noarch',
+ 'ceph-el8',
+ 'ceph-lab-extras',
+ ] %}
{% endif %}
RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("centos_yum_repo_packages"), chain=True, clean=False) }} \
diff --git a/docker/base/ceph_master.repo b/docker/base/ceph_master.repo
new file mode 100644
index 000000000..b551e5cf5
--- /dev/null
+++ b/docker/base/ceph_master.repo
@@ -0,0 +1,32 @@
+[ceph]
+name=Ceph packages for $basearch
+baseurl=CHACRA_URL/$basearch
+enabled=0
+gpgcheck=0
+type=rpm-md
+gpgkey=https://download.ceph.com/keys/autobuild.asc
+
+[ceph-noarch]
+name=Ceph noarch packages
+baseurl=CHACRA_URL/noarch
+enabled=0
+gpgcheck=0
+type=rpm-md
+gpgkey=https://download.ceph.com/keys/autobuild.asc
+
+[ceph-el8]
+name=Copr repo for ceph-el8 owned by ktdreyer
+baseurl=https://copr-be.cloud.fedoraproject.org/results/ktdreyer/ceph-el8/epel-8-$basearch/
+type=rpm-md
+skip_if_unavailable=True
+gpgcheck=1
+gpgkey=https://copr-be.cloud.fedoraproject.org/results/ktdreyer/ceph-el8/pubkey.gpg
+repo_gpgcheck=0
+enabled=0
+enabled_metadata=1
+
+[ceph-lab-extras]
+name=ceph-lab-extras
+baseurl=http://apt-mirror.front.sepia.ceph.com/lab-extras/8/
+enabled=0
+gpgcheck=0
diff --git a/docker/cinder/cinder-base/Dockerfile.j2 b/docker/cinder/cinder-base/Dockerfile.j2
index 8ed7e0d20..964cfd325 100644
--- a/docker/cinder/cinder-base/Dockerfile.j2
+++ b/docker/cinder/cinder-base/Dockerfile.j2
@@ -7,7 +7,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='cinder') }}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/glance/glance-base/Dockerfile.j2 b/docker/glance/glance-base/Dockerfile.j2
index a0c0a281b..466047a71 100644
--- a/docker/glance/glance-base/Dockerfile.j2
+++ b/docker/glance/glance-base/Dockerfile.j2
@@ -7,7 +7,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='glance') }}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/gnocchi/gnocchi-base/Dockerfile.j2 b/docker/gnocchi/gnocchi-base/Dockerfile.j2
index ab1520245..4d23bd6aa 100644
--- a/docker/gnocchi/gnocchi-base/Dockerfile.j2
+++ b/docker/gnocchi/gnocchi-base/Dockerfile.j2
@@ -7,7 +7,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='gnocchi') }}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/manila/manila-share/Dockerfile.j2 b/docker/manila/manila-share/Dockerfile.j2
index 9b8f164f3..2dc599b09 100644
--- a/docker/manila/manila-share/Dockerfile.j2
+++ b/docker/manila/manila-share/Dockerfile.j2
@@ -5,7 +5,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/nova/nova-compute/Dockerfile.j2 b/docker/nova/nova-compute/Dockerfile.j2
index ff41c0fbe..36083fe4e 100644
--- a/docker/nova/nova-compute/Dockerfile.j2
+++ b/docker/nova/nova-compute/Dockerfile.j2
@@ -5,7 +5,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2
index 709d96534..8a90776ea 100644
--- a/docker/nova/nova-libvirt/Dockerfile.j2
+++ b/docker/nova/nova-libvirt/Dockerfile.j2
@@ -7,7 +7,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='nova', groups='qemu') }}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if base_package_type == 'rpm' %}
diff --git a/docker/zun/zun-compute/Dockerfile.j2 b/docker/zun/zun-compute/Dockerfile.j2
index b3442e47c..df0870435 100644
--- a/docker/zun/zun-compute/Dockerfile.j2
+++ b/docker/zun/zun-compute/Dockerfile.j2
@@ -5,7 +5,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
-{{ macros.enable_extra_repos(['ceph']) }}
+# FIXME(mnasiadka): Remove when CentOS Storage SIG repo is available for CentOS 8
+{% if distro_package_manager == 'dnf' %}
+ {{ macros.enable_extra_repos(['ceph', 'ceph-noarch', 'ceph-el8', 'ceph-lab-extras']) }}
+{% else %}
+ {{ macros.enable_extra_repos(['ceph']) }}
+{% endif %}
{% if install_type == 'binary' %}
diff --git a/kolla/image/build.py b/kolla/image/build.py
index da1f7aa22..c01615c50 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -147,19 +147,13 @@ UNBUILDABLE_IMAGES = {
# CentOS 8.
'centos8': {
"ceph-base", # Missing Ceph repo
- "cinder-base", # Missing Ceph repo
"collectd", # Missing collectd-ping and
# collectd-sensubility packages
"elasticsearch", # Missing elasticsearch repo
- "glance-base", # Missing Ceph repo
- "gnocchi-base", # Missing Ceph repo
"hacluster-base", # Missing hacluster repo
"kibana", # Missing elasticsearch repo
- "manila-share", # Missing Ceph repo
"mongodb", # Missing mongodb and mongodb-server packages
"monasca-grafana", # Using python2
- "nova-compute", # Missing Ceph repo
- "nova-libvirt", # Missing Ceph repo
"nova-spicehtml5proxy", # Missing spicehtml5 package
"opendaylight", # Missing opendaylight repo
"ovsdpdk", # Not supported on CentOS
@@ -172,7 +166,6 @@ UNBUILDABLE_IMAGES = {
"cyborg-agent", # opae-sdk does not support CentOS 8
"freezer-base", # Missing package trickle
"masakari-monitors", # Missing hacluster repo
- "zun-compute", # Missing Ceph repo
},
'debian': {
diff --git a/kolla/template/repos.yaml b/kolla/template/repos.yaml
index 3d5ce7c69..90f245368 100644
--- a/kolla/template/repos.yaml
+++ b/kolla/template/repos.yaml
@@ -37,7 +37,12 @@ centos-ppc64le:
opstools: "centos-release-opstools"
rabbitmq: "rabbitmq_rabbitmq-server"
+# TODO(mnasiadka): Rework the repo list once Ceph Octopus is released
centos8:
+ ceph: "ceph"
+ ceph-noarch: "ceph-noarch"
+ ceph-el8: "ceph-el8"
+ ceph-lab-extras: "ceph-lab-extras"
grafana: "grafana"
influxdb: "influxdb"
rabbitmq: "rabbitmq_rabbitmq-server"