From: Nizamudeen A Date: Mon, 6 Oct 2025 04:05:33 +0000 (+0530) Subject: cephadm-dashboard-e2e: replace docker with podman X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=90ddec5b28b858021e61ec0a5bd54a97dc653bf3;p=ceph-build.git cephadm-dashboard-e2e: replace docker with podman - cleanup the docker installation if its installed through docker-ce Signed-off-by: Nizamudeen A --- diff --git a/ceph-dashboard-cephadm-e2e-nightly/config/definitions/ceph-dashboard-cephadm-e2e-nightly.yml b/ceph-dashboard-cephadm-e2e-nightly/config/definitions/ceph-dashboard-cephadm-e2e-nightly.yml index 61a87127..b53a2058 100644 --- a/ceph-dashboard-cephadm-e2e-nightly/config/definitions/ceph-dashboard-cephadm-e2e-nightly.yml +++ b/ceph-dashboard-cephadm-e2e-nightly/config/definitions/ceph-dashboard-cephadm-e2e-nightly.yml @@ -15,7 +15,7 @@ project-type: freestyle defaults: global concurrent: true - node: huge && focal && x86_64 + node: huge && noble && x86_64 quiet-period: 5 block-downstream: false block-upstream: false @@ -58,6 +58,7 @@ builders: - shell: !include-raw-escape: + - ../../../scripts/setup_container_runtime.sh - ../../../scripts/dashboard/install-e2e-test-deps.sh - ../../../scripts/dashboard/install-cephadm-e2e-deps.sh - shell: | diff --git a/ceph-dashboard-cephadm-e2e/build/cleanup b/ceph-dashboard-cephadm-e2e/build/cleanup index d690cdf4..8bb6c0fc 100755 --- a/ceph-dashboard-cephadm-e2e/build/cleanup +++ b/ceph-dashboard-cephadm-e2e/build/cleanup @@ -5,5 +5,5 @@ kcli delete plan -y ceph || true kcli delete network ceph-dashboard -y kcli delete pool ceph-dashboard -y sudo rm -rf ${HOME}/.kcli -docker container prune -f +podman container prune -f echo "Cleanup completed." diff --git a/ceph-dashboard-cephadm-e2e/config/definitions/ceph-dashboard-cephadm-e2e.yml b/ceph-dashboard-cephadm-e2e/config/definitions/ceph-dashboard-cephadm-e2e.yml index 85623ee6..51dad519 100644 --- a/ceph-dashboard-cephadm-e2e/config/definitions/ceph-dashboard-cephadm-e2e.yml +++ b/ceph-dashboard-cephadm-e2e/config/definitions/ceph-dashboard-cephadm-e2e.yml @@ -3,7 +3,7 @@ project-type: freestyle defaults: global concurrent: true - node: huge && focal && x86_64 + node: huge && noble && x86_64 display-name: 'ceph: Dashboard + Cephadm E2E' quiet-period: 5 block-downstream: false @@ -41,6 +41,9 @@ - luminous - mimic - nautilus + - pacific + - quincy + - octopus trigger-phrase: 'jenkins test dashboard cephadm' skip-build-phrase: '^jenkins do not test.*' only-trigger-phrase: false @@ -73,6 +76,7 @@ builders: - shell: !include-raw-verbatim: + - ../../../scripts/setup_container_runtime.sh - ../../../scripts/dashboard/install-e2e-test-deps.sh - ../../../scripts/dashboard/install-cephadm-e2e-deps.sh - shell: | diff --git a/scripts/dashboard/install-cephadm-e2e-deps.sh b/scripts/dashboard/install-cephadm-e2e-deps.sh index 85f62e7b..81158d58 100644 --- a/scripts/dashboard/install-cephadm-e2e-deps.sh +++ b/scripts/dashboard/install-cephadm-e2e-deps.sh @@ -8,7 +8,7 @@ on_error() { printf "\n\nCollecting info...\n\n" sudo journalctl --since "10 min ago" --no-tail --no-pager -x printf "\n\nERROR: displaying containers' logs:\n\n" - docker ps -aq | xargs -r docker logs + podman ps -aq | xargs -r podman logs printf "\n\nTEST FAILED.\n\n" fi } @@ -39,31 +39,12 @@ nvm install nvm use popd -sudo apt install -y libvirt-daemon-system libvirt-daemon-driver-qemu qemu-kvm libvirt-clients runc +sudo apt install -y libvirt-daemon-system libvirt-daemon-driver-qemu qemu-kvm libvirt-clients sudo usermod -aG libvirt $(id -un) newgrp libvirt # Avoid having to log out and log in for group addition to take effect. sudo systemctl enable --now libvirtd -DISTRO="$(lsb_release -cs)" - -if [[ $(command -v docker) == '' ]]; then - # Set up docker official repo and install docker. - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg - echo \ - "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ - ${DISTRO} stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null - sudo apt update -y - sudo apt install -y docker-ce docker-ce-cli containerd.io -fi -sudo groupadd docker || true -sudo usermod -aG docker $(id -un) -sudo systemctl start docker -sudo chgrp "$(id -un)" /var/run/docker.sock - -docker info -docker container prune -f - KCLI_CONFIG_DIR="${HOME}/.kcli" mkdir -p ${KCLI_CONFIG_DIR} if [[ ! -f "${KCLI_CONFIG_DIR}/id_rsa" ]]; then @@ -72,11 +53,11 @@ fi : ${KCLI_CONTAINER_IMAGE:='quay.io/karmab/kcli:2543a61'} -docker pull ${KCLI_CONTAINER_IMAGE} +podman pull ${KCLI_CONTAINER_IMAGE} echo "#!/usr/bin/env bash -docker run --net host --security-opt label=disable \ +podman run --rm --net host --security-opt label=disable \ -v ${KCLI_CONFIG_DIR}:/root/.kcli \ -v ${PWD}:/workdir \ -v /var/lib/libvirt/images:/var/lib/libvirt/images \ @@ -89,6 +70,6 @@ sudo chmod +x /usr/local/bin/kcli # KCLI cleanup function can be found here: https://github.com/ceph/ceph/blob/main/src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh sudo mkdir -p /var/lib/libvirt/images/ceph-dashboard kcli delete plan ceph -y || true -kcli delete network ceph-dashboard -y +kcli delete network ceph-dashboard -y || true kcli create pool -p /var/lib/libvirt/images/ceph-dashboard ceph-dashboard kcli create network -c 192.168.100.0/24 ceph-dashboard