diff options
| -rw-r--r-- | docker/base/Dockerfile.j2 | 13 | ||||
| -rw-r--r-- | docker/base/ceph_master.repo | 32 | ||||
| -rw-r--r-- | docker/cinder/cinder-base/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/glance/glance-base/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/gnocchi/gnocchi-base/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/manila/manila-share/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/nova/nova-compute/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/nova/nova-libvirt/Dockerfile.j2 | 7 | ||||
| -rw-r--r-- | docker/zun/zun-compute/Dockerfile.j2 | 7 | ||||
| -rwxr-xr-x | kolla/image/build.py | 7 | ||||
| -rw-r--r-- | kolla/template/repos.yaml | 5 |
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" |
