From 71c493528eb17f4280b50df67bfd437e054cb6aa Mon Sep 17 00:00:00 2001 From: Pere Diaz Bou Date: Thu, 27 Jan 2022 18:29:16 +0100 Subject: [PATCH] cephadm/box: fix remove image tar error and cleanups Signed-off-by: Pere Diaz Bou --- src/cephadm/box/Dockerfile | 7 +++++-- src/cephadm/box/box.py | 22 ++++++++++++++-------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/cephadm/box/Dockerfile b/src/cephadm/box/Dockerfile index 7b1afd8952f..d3bd9c28a88 100644 --- a/src/cephadm/box/Dockerfile +++ b/src/cephadm/box/Dockerfile @@ -2,6 +2,11 @@ FROM centos:8 as centos-systemd ENV container docker ENV CEPHADM_PATH=/usr/local/sbin/cephadm + +# Centos met EOL and the content of the CentOS 8 repos has been moved to vault.centos.org +RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-* +RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-* + RUN dnf -y install chrony firewalld lvm2 \ openssh-server openssh-clients python3 \ yum-utils sudo which && dnf clean all @@ -23,7 +28,5 @@ EXPOSE 22 FROM centos-systemd-docker WORKDIR /root -# VOLUME /var/run/docker.sock -COPY start /usr/local/bin CMD [ "/usr/sbin/init" ] diff --git a/src/cephadm/box/box.py b/src/cephadm/box/box.py index 96acc8b3777..da41e2a7675 100755 --- a/src/cephadm/box/box.py +++ b/src/cephadm/box/box.py @@ -14,8 +14,18 @@ from util import (Config, Target, ensure_inside_container, CEPH_IMAGE = 'quay.ceph.io/ceph-ci/ceph:master' BOX_IMAGE = 'cephadm-box:latest' +# NOTE: this image tar is a trickeroo so cephadm won't pull the image everytime +# we deploy a cluster. Keep in mind that you'll be responsible of pulling the +# image yourself with `box cluster setup` +CEPH_IMAGE_TAR = 'docker/ceph/image/quay.ceph.image.tar' + +def remove_ceph_image_tar(): + if os.path.exists(CEPH_IMAGE_TAR): + os.remove(CEPH_IMAGE_TAR) + def cleanup_box() -> None: osd.cleanup() + remove_ceph_image_tar() def image_exists(image_name: str): # extract_tag @@ -39,10 +49,10 @@ def get_ceph_image(): run_shell_command(f'docker build -t {CEPH_IMAGE} docker/ceph') if not os.path.exists('docker/ceph/image'): os.mkdir('docker/ceph/image') - image_tar = 'docker/ceph/image/quay.ceph.image.tar' - if not os.path.exists(image_tar): - os.remove(image_tar) - run_shell_command(f'docker save {CEPH_IMAGE} -o {image_tar}') + + remove_ceph_image_tar() + + run_shell_command(f'docker save {CEPH_IMAGE} -o {CEPH_IMAGE_TAR}') print('Ceph image added') def get_box_image(): @@ -92,10 +102,6 @@ class Cluster(Target): extra_args = [] - shared_ceph_folder = os.environ.get('SHARED_CEPH_FOLDER') - if shared_ceph_folder: - extra_args.extend(['--shared_ceph_folder', shared_ceph_folder]) - extra_args.append('--skip-pull') # cephadm prints in warning, let's redirect it to the output so shell_command doesn't -- 2.39.5