Remove unsupported podman container runtime 53/4453/2
authorTodd Malsbary <todd.malsbary@intel.com>
Fri, 17 Sep 2021 23:16:58 +0000 (16:16 -0700)
committerKuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com>
Thu, 30 Sep 2021 17:35:49 +0000 (17:35 +0000)
Remove unused functions and code as part of this work.

Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
Change-Id: I838ee3a8ef0b54d1caf4df4732d3d416af0f4d93

deploy/metal3-vm/02_configure_host.sh
deploy/metal3-vm/05_host_cleanup.sh
deploy/metal3-vm/config_example.sh
deploy/metal3-vm/ubuntu_install_requirements.sh
env/lib/common.sh
env/metal3/02_configure.sh
env/metal3/03_launch_prereq.sh
env/ubuntu/bootloader-env/01_bootloader_package_req.sh
env/ubuntu/bootloader-env/02_clean_bootloader_package_req.sh

index 2787750..c316522 100755 (executable)
@@ -169,18 +169,6 @@ done
 # set password for mariadb
 mariadb_password="$(echo "$(date;hostname)"|sha256sum |cut -c-20)"
 
-if [[ "${CONTAINER_RUNTIME}" == "podman" ]]; then
-  # Remove existing pod
-  if  sudo "${CONTAINER_RUNTIME}" pod exists ironic-pod ; then
-      sudo "${CONTAINER_RUNTIME}" pod rm ironic-pod -f
-  fi
-  # Create pod
-  sudo "${CONTAINER_RUNTIME}" pod create -n ironic-pod
-  POD_NAME="--pod ironic-pod"
-else
-  POD_NAME=""
-fi
-
 cat <<EOF > ${PWD}/ironic.env
 PROVISIONING_INTERFACE=provisioning
 DHCP_RANGE=172.22.0.10,172.22.0.100
index 9ad8088..1e69d12 100755 (executable)
@@ -15,13 +15,6 @@ for name in ironic ironic-inspector dnsmasq httpd mariadb ipa-downloader; do
     sudo "${CONTAINER_RUNTIME}" ps --all | grep -w "$name$" && sudo "${CONTAINER_RUNTIME}" rm $name -f
 done
 
-# Remove existing pod
-if [[ "${CONTAINER_RUNTIME}" == "podman" ]]; then
-  if  sudo "${CONTAINER_RUNTIME}" pod exists ironic-pod ; then
-      sudo "${CONTAINER_RUNTIME}" pod rm ironic-pod -f
-  fi
-fi
-
 # Kill the locally running operators
 if [ "${BMO_RUN_LOCAL}" = true ]; then
   kill "$(pgrep "operator-sdk")" 2> /dev/null || true
index 8b99f88..9f53d24 100644 (file)
 #export SSH_PUB_KEY=~/.ssh/id_rsa.pub
 
 #
-# Select the Container Runtime, can be "podman" or "docker"
-# Defaults to "podman"
+# Select the Container Runtime, can be "docker" or "containerd"
+# Defaults to "docker"
 #
-#export CONTAINER_RUNTIME="podman"
+#export CONTAINER_RUNTIME="docker"
 
 #
 # Set the Baremetal Operator repository to clone
index d3dede0..c39e1d1 100755 (executable)
@@ -6,29 +6,9 @@ source lib/logging.sh
 # shellcheck disable=SC1091
 source lib/common.sh
 
-# sudo apt install -y libselinux-utils
-# if selinuxenabled ; then
-#     sudo setenforce permissive
-#     sudo sed -i "s/=enforcing/=permissive/g" /etc/selinux/config
-# fi
-
 # Update to latest packages first
 sudo apt -y update
 
-# Install EPEL required by some packages
-# if [ ! -f /etc/yum.repos.d/epel.repo ] ; then
-#     if grep -q "Red Hat Enterprise Linux" /etc/redhat-release ; then
-#         sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/epel-release-7-11.noarch.rpm
-#     else
-#         sudo yum -y install epel-release --enablerepo=extras
-#     fi
-# fi
-
-# Work around a conflict with a newer zeromq from epel
-# if ! grep -q zeromq /etc/yum.repos.d/epel.repo; then
-#   sudo sed -i '/enabled=1/a exclude=zeromq*' /etc/yum.repos.d/epel.repo
-# fi
-
 # Install required packages
 
 sudo apt -y install \
@@ -79,8 +59,6 @@ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
 #curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
 echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
 
-# Add this repository to install podman
-sudo add-apt-repository -y ppa:projectatomic/ppa
 # Add this repository to install Golang 1.12
 sudo add-apt-repository -y ppa:longsleep/golang-backports
 
@@ -101,11 +79,6 @@ sudo apt -y install \
   yarn \
   genisoimage
 
-
-if [[ "${CONTAINER_RUNTIME}" == "podman" ]]; then
-  sudo apt -y install podman
-fi
-
 # Install python packages not included as rpms
 sudo pip install \
   ansible==2.8.2 \
index 0e4c752..dd51fb2 100755 (executable)
@@ -15,7 +15,6 @@ CONTAINER_IMAGES_DIR=${CONTAINER_IMAGES_DIR:-$DOWNLOAD_PATH/docker-dir}
 #Todo include over all variables here
 KUBE_VERSION=${KUBE_VERSION:-"v1.15.0"}
 POD_NETWORK_CIDR=${POD_NETWORK_CIDR:-"10.244.0.0/16"}
-PODMAN_CNI_CONFLIST=${PODMAN_CNI_CONFLIST:-"https://raw.githubusercontent.com/containers/libpod/v1.4.4/cni/87-podman-bridge.conflist"}
 
 #Ironic variables
 IRONIC_IMAGE=${IRONIC_IMAGE:-"integratedcloudnative/ironic:v1.0-icn"}
index c893f78..6ae1c60 100755 (executable)
@@ -33,28 +33,7 @@ function configure_ironic_bridge {
     ip addr add dev provisioning 172.22.0.1/24
 }
 
-function configure_kubelet {
-    swapoff -a
-    #Todo addition kubelet configuration
-}
-
-function configure_kubeadm {
-    #Todo error handing
-    if [ "$1" == "offline" ]; then
-        for images in kube-apiserver kube-controller-manager kube-scheduler kube-proxy; do
-            docker load --input $CONTAINER_IMAGES_DIR/$images.tar;
-       done
-
-       docker load --input $CONTAINER_IMAGES_DIR/pause.tar
-       docker load --input $CONTAINER_IMAGES_DIR/etcd.tar
-       docker load --input $CONTAINER_IMAGES_DIR/coredns.tar
-        return
-    fi
-    kubeadm config images pull --kubernetes-version=$KUBE_VERSION
-}
-
 function configure_ironic_interfaces {
-    #Todo later to change the CNI networking for podman networking
     # Add firewall rules to ensure the IPA ramdisk can reach httpd, Ironic and the Inspector API on the host
     if [ "$IRONIC_PROVISIONING_INTERFACE" ]; then
         check_interface_ip $IRONIC_PROVISIONING_INTERFACE $IRONIC_PROVISIONING_INTERFACE_IP
@@ -92,7 +71,7 @@ function configure_ironic_offline {
         exit 1
     fi
 
-    for image in ironic-inspector-image ironic-image podman-pause \
+    for image in ironic-inspector-image ironic-image \
        baremetal-operator socat; do
        if [ ! -f "$CONTAINER_IMAGES_DIR/$image" ]; then
            exit 1
@@ -105,10 +84,6 @@ function configure_ironic_offline {
         exit 1
     fi
 
-    podman load --input $CONTAINER_IMAGES_DIR/ironic-inspector-image.tar
-    podman load --input $CONTAINER_IMAGES_DIR/ironic-image.tar
-    podman load --input $CONTAINER_IMAGES_DIR/podman-pause.tar
-
     docker load --input $CONTAINER_IMAGES_DIR/baremetal-operator.tar
     docker load --input $CONTAINER_IMAGES_DIR/socat.tar
 
@@ -149,9 +124,6 @@ function configure_ironic {
 }
 
 function configure {
-    #Kubeadm usage deprecated for v1.0.0 release
-    #configure_kubeadm $1
-    #configure_kubelet
     configure_ironic $1
     configure_ironic_bridge
     configure_ironic_interfaces
index b2bba22..e8fa538 100755 (executable)
@@ -11,71 +11,6 @@ if [[ $EUID -ne 0 ]]; then
     exit 1
 fi
 
-function get_default_interface_ipaddress {
-    local _ip=$1
-    local _default_interface=$(awk '$2 == 00000000 { print $1 }' /proc/net/route)
-    local _ipv4address=$(ip addr show dev $_default_interface | awk '$1 == "inet" { sub("/.*", "", $2); print $2 }')
-    eval $_ip="'$_ipv4address'"
-}
-
-function check_cni_network {
-    #since bootstrap cluster is a single node cluster,
-    #podman and bootstap cluster have same network configuration to avoid the cni network conf conflicts
-    if [ ! -d "/etc/cni/net.d" ]; then
-        mkdir -p "/etc/cni/net.d"
-    fi
-
-    if [ -f "/etc/cni/net.d/87-podman-bridge.conflist" ]; then
-        rm -rf /etc/cni/net.d/87-podman-bridge.conflist
-    fi
-
-    if [ "$1" == "offline" ]; then
-        cp $BUILD_DIR/87-podman-bridge.conflist /etc/cni/net.d/
-        return
-    fi
-
-    if !(wget $PODMAN_CNI_CONFLIST -P /etc/cni/net.d/); then
-        exit 1
-    fi
-}
-
-function create_k8s_regular_user {
-    if [ ! -d "$HOME/.kube" ]; then
-        mkdir -p $HOME/.kube
-    fi
-
-    if [ ! -f /etc/kubernetes/admin.conf]; then
-        exit 1
-    fi
-
-    cp -rf /etc/kubernetes/admin.conf $HOME/.kube/config
-    chown $(id -u):$(id -g) $HOME/.kube/config
-}
-
-function check_k8s_node_status {
-    echo 'checking bootstrap cluster single node status'
-    node_status="False"
-
-    for i in {1..5}; do
-        check_node=$(kubectl get node -o \
-            jsonpath='{.items[0].status.conditions[?(@.reason == "KubeletReady")].status}')
-        if [ $check_node != "" ]; then
-            node_status=${check_node}
-        fi
-
-        if [ $node_status == "True" ]; then
-            break
-        fi
-
-        sleep 3
-    done
-
-    if [ $node_status != "True" ]; then
-        echo "bootstrap cluster single node status is not ready"
-        exit 1
-    fi
-}
-
 function install_ironic_container {
     # set password for mariadb
     mariadb_password=$(echo $(date;hostname)|sha256sum |cut -c-20)
@@ -122,24 +57,6 @@ function install_ironic_container {
         -v "$IRONIC_DATA_DIR:/shared" "${IRONIC_INSPECTOR_IMAGE}"
 }
 
-function remove_k8s_noschedule_taint {
-    #Bootstrap cluster is a single node
-    nodename=$(kubectl get node -o jsonpath='{.items[0].metadata.name}')
-    if !(kubectl taint node $nodename node-role.kubernetes.io/master:NoSchedule-); then
-        exit 1
-    fi
-}
-
-function install_k8s_single_node {
-    get_default_interface_ipaddress apiserver_advertise_addr
-    kubeadm_init="kubeadm init --kubernetes-version=$KUBE_VERSION \
-        --pod-network-cidr=$POD_NETWORK_CIDR \
-        --apiserver-advertise-address=$apiserver_advertise_addr"
-    if !(${kubeadm_init}); then
-        exit 1
-    fi
-}
-
 function create_ironic_env {
     cat <<EOF > ${PWD}/ironic.env
 PROVISIONING_INTERFACE=provisioning
@@ -155,16 +72,6 @@ EOF
 }
 
 function install {
-    #Kubeadm usage is deprecated in v1,0,0 version
-    #install_kubernetes
-    #install_k8s_single_node
-    #check_cni_network $1
-    #create_k8s_regular_user
-    #check_k8s_node_status
-    #remove_k8s_noschedule_taint
-
-    #install_podman
-    #Todo - error handling mechanism
     create_ironic_env
     install_ironic_container
 }
index 39223d3..d861cb2 100755 (executable)
@@ -25,51 +25,6 @@ function download_essential_packages {
     update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
 }
 
-function build_baremetal_operator_images {
-    if [ ! -d "$BUILD_DIR/baremetal-operator"]; then
-    return
-    fi
-
-    pushd $BUILD_DIR/baremetal-operator
-    docker build -t $IRONIC_BAREMETAL_IMAGE . -f build/Dockerfile
-    docker save --output \
-    $CONTAINER_IMAGES_DIR/baremetal-operator.tar $IRONIC_BAREMETAL_IMAGE
-    popd
-
-    docker pull $IRONIC_BAREMETAL_SOCAT_IMAGE
-    docker save --output $CONTAINER_IMAGES_DIR/socat.tar $IRONIC_BAREMETAL_SOCAT_IMAGE
-}
-
-function build_ironic_images {
-    for images in ironic-image ironic-inspector-image; do
-    if [ -d "$BUILD_DIR/$images" ]; then
-        pushd $BUILD_DIR/$images
-        podman build -t $images .
-        popd
-    fi
-    done
-
-    if podman images -q localhost/ironic-inspector-image ; then
-    podman tag localhost/ironic-inspector-image $IRONIC_INSPECTOR_IMAGE
-    podman save --output \
-        $CONTAINER_IMAGES_DIR/ironic-inspector-image.tar \
-        $IRONIC_INSPECTOR_IMAGE
-    fi
-
-    if podman images -q localhost/ironic-image ; then
-        podman tag localhost/ironic-inspector-image $IRONIC_IMAGE
-    podman save --output $CONTAINER_IMAGES_DIR/ironic-image.tar \
-        $IRONIC_IMAGE
-    fi
-
-    podman pull k8s.gcr.io/pause:3.1
-    podman save --output $CONTAINER_IMAGES_DIR/podman-pause.tar \
-    k8s.gcr.io/pause:3.1
-
-    #build_baremetal_operator_images
-}
-
-
 function download_container_images {
     check_docker
     pushd $CONTAINER_IMAGES_DIR
@@ -88,13 +43,6 @@ function download_container_images {
     docker pull k8s.gcr.io/coredns:1.3.1
     docker save --output coredns.tar k8s.gcr.io/coredns
 
-    #podman images for Ironic
-    check_podman
-    build_ironic_images
-    #podman pull $IRONIC_IMAGE
-    #podman save --output ironic.tar $IRONIC_IMAGE
-    #podman pull $IRONIC_INSPECTOR_IMAGE
-    #podman save --output ironic-inspector.tar $IRONIC_INSPECTOR_IMAGE
     popd
 }
 
@@ -111,10 +59,6 @@ function download_build_packages {
     md5sum ${BM_IMAGE} | awk '{print $1}' > ${BM_IMAGE}.md5sum
     fi
 
-    if [ ! -f 87-podman-bridge.conflist ]; then
-    curl --insecure --compressed -O -L $PODMAN_CNI_CONFLIST
-    fi
-
     if [ ! -d baremetal-operator ]; then
     git clone https://github.com/metal3-io/baremetal-operator.git
     pushd ./baremetal-operator
@@ -195,16 +139,6 @@ function check_docker {
     apt-get install docker-ce=19.03.15~3-0~ubuntu-bionic -y
 }
 
-function check_podman {
-    if which podman; then
-    return
-    fi
-
-    add-apt-repository -y ppa:projectatomic/ppa
-    apt-get update
-    apt-get install podman -y
-}
-
 function download_docker_packages {
     apt-get remove -y docker \
         docker-engine \
@@ -229,12 +163,6 @@ function download_docker_packages {
     apt-get -d install docker-ce=19.03.15~3-0~ubuntu-bionic -y
 }
 
-function download_podman_packages {
-    apt-get update
-    add-apt-repository -y ppa:projectatomic/ppa
-    apt-get -d install podman -y
-}
-
 function download_kubernetes_packages {
     curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
     bash -c 'cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
@@ -290,7 +218,6 @@ clean_dir $CONTAINER_IMAGES_DIR
 download_essential_packages
 download_ironic_packages
 download_docker_packages
-download_podman_packages
 download_kubernetes_packages
 download_build_packages
 download_container_images
index 1f6c474..439abea 100755 (executable)
@@ -10,7 +10,6 @@ if [[ $EUID -ne 0 ]]; then
 fi
 
 function autoremove {
-    #apt-get autoremove -y
     rm -rf /etc/apt/sources.list.d/*
 }
 
@@ -69,12 +68,6 @@ function clean_docker_packages {
     apt-get update
 }
 
-function clean_podman_packages {
-    apt-get update
-    add-apt-repository -y ppa:projectatomic/ppa
-    apt-get remove podman -y
-}
-
 function clean_kubernetes_packages {
     #Just to make sure kubernetes packages are removed during the download
     curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
@@ -147,7 +140,6 @@ function clean_dir {
 if [ "$1" == "--only-packages" ]; then
     check_prerequisite
     clean_docker_packages || true
-    #clean_ironic_packages
     autoremove
     exit 0
 fi
@@ -169,7 +161,6 @@ clean_dir $BUILD_DIR
 check_dir $CONTAINER_IMAGES_DIR
 clean_dir $CONTAINER_IMAGES_DIR
 clean_kubernetes_packages
-clean_podman_packages
 clean_docker_packages
 clean_ironic_packages
 clean_essential_packages