Clean up Makefile 73/4673/2
authorTodd Malsbary <todd.malsbary@intel.com>
Thu, 10 Feb 2022 00:58:29 +0000 (16:58 -0800)
committerTodd Malsbary <todd.malsbary@intel.com>
Thu, 10 Feb 2022 17:24:33 +0000 (09:24 -0800)
Make structure of components installed more legible and remove
unnecessary ones.

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

16 files changed:
Makefile
deploy/addons/addons.sh
deploy/clusterctl/clusterctl.sh [new file with mode: 0755]
deploy/emcoctl/emcoctl.sh [new file with mode: 0755]
deploy/flux-cli/flux-cli.sh [new file with mode: 0755]
deploy/golang/golang.sh [new file with mode: 0755]
deploy/ironic/ironic.sh
deploy/kud/kud_bm_launch.sh
deploy/kustomize/kustomize.sh [new file with mode: 0755]
deploy/site/vm/vm.sh
deploy/sops/sops.sh [new file with mode: 0755]
env/lib/common.sh
env/metal3/01_install_package.sh [deleted file]
env/metal3/02_configure.sh [deleted file]
env/metal3/06_host_cleanup.sh [deleted file]
env/ubuntu/bootloader-env/02_clean_bootloader_package_req.sh [deleted file]

index 096fd4f..86d346a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,75 +1,95 @@
 SHELL:=/bin/bash
-BMDIR:=$(CURDIR)/env/metal3
-KUD_PATH:=$(CURDIR)/deploy/kud
-SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
-BOOTLOADER_ENV:=$(CURDIR)/env/ubuntu/bootloader-env
 
 help:
        @echo "  Targets:"
-       @echo "  test             -- run unit tests"
        @echo "  jump_server      -- install jump server into this machine"
-       @echo "  cluster          -- provision cluster(s)"
-       @echo "  verifier         -- run verifier tests for CI & CD logs"
        @echo "  unit             -- run the unit tests"
+       @echo "  verifier         -- run verifier tests for CI & CD logs"
+       @echo "  vm_cluster       -- deploy VM compute cluster"
+       @echo "  pod11_cluster    -- deploy pod11 compute cluster"
        @echo "  help             -- this help output"
 
 install: jump_server
 
-jump_server: package_prerequisite \
-       kud_bm_deploy_mini \
-       bmo_install \
-       capi_install \
-       flux_install
+# The jump server
 
-clean_jump_server: bmo_clean_host \
-       kud_bm_reset \
-       clean_packages
+jump_server: management_cluster \
+       tools \
+       ironic_bridge \
+       controllers
 
-package_prerequisite:
-        pushd $(BMDIR) && ./01_install_package.sh && popd
+jump_server_clean: ironic_bridge_clean \
+       management_cluster_clean
 
-bmo_clean:
-       ./deploy/baremetal-operator/baremetal-operator.sh clean
+# The jump server requires a K8s cluster to install into
+
+management_cluster:
+       source user_config.sh && \
+       ./deploy/kud/kud_bm_launch.sh minimal
+
+management_cluster_clean:
+       ./deploy/kud/kud_bm_launch.sh reset
+
+# Tools used during the installation of jump server components
+
+tools: kustomize \
+       clusterctl \
+       flux_cli \
+       sops \
+       emcoctl
+
+kustomize:
+       ./deploy/kustomize/kustomize.sh deploy
+
+clusterctl:
+       ./deploy/clusterctl/clusterctl.sh deploy
+
+flux_cli:
+       ./deploy/flux-cli/flux-cli.sh deploy
+
+sops:
+       ./deploy/sops/sops.sh deploy
 
-bmo_clean_host:
-       pushd $(BMDIR) && ./06_host_cleanup.sh && popd
+emcoctl: golang
+       ./deploy/emcoctl/emcoctl.sh deploy
 
-clean_packages:
-       pushd $(BOOTLOADER_ENV) && \
-       ./02_clean_bootloader_package_req.sh --only-packages && popd
+golang:
+       ./deploy/golang/golang.sh deploy
 
-bmo_install:
+# Provisioning network configuration in the jump server
+
+ironic_bridge:
        source user_config.sh && env && \
-       pushd $(BMDIR) && ./02_configure.sh && popd && \
-       ./deploy/ironic/ironic.sh deploy && \
-       ./deploy/cert-manager/cert-manager.sh deploy && \
+       ./deploy/ironic/ironic.sh deploy-bridge
+
+ironic_bridge_clean:
+       ./deploy/ironic/ironic.sh clean-bridge
+
+# Jump server components
+
+controllers: baremetal_operator \
+       cluster_api \
+       flux
+
+baremetal_operator: ironic cert_manager
        ./deploy/baremetal-operator/baremetal-operator.sh deploy
 
-kud_bm_deploy_mini:
-       source user_config.sh && \
-       pushd $(KUD_PATH) && ./kud_bm_launch.sh minimal && popd
+baremetal_operator_clean:
+       ./deploy/baremetal-operator/baremetal-operator.sh clean
 
-kud_bm_reset:
-       pushd $(KUD_PATH) && ./kud_bm_launch.sh reset && popd
+ironic:
+       ./deploy/ironic/ironic.sh deploy
 
-sdwan_verifier:
-       pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
+cert_manager:
+       ./deploy/cert-manager/cert-manager.sh deploy
 
-capi_install:
+cluster_api:
        ./deploy/cluster-api/cluster-api.sh deploy
 
-flux_install:
+flux:
        ./deploy/flux/flux.sh deploy
 
-unit: bashate
-
-bashate:
-       bashate -i E006,E003,E002,E010,E011,E042,E043 `find . -type f -not -path './cmd/bpa-operator/vendor/*' -not -path './ci/jjb/shell/*' -name "*.sh"`
-
-bm_verifer: jump_server \
-       pod11_cluster \
-       pod11_clean_cluster \
-       clean_jump_server
+# Example compute clusters
 
 pod11_cluster:
        ./deploy/site/pod11/pod11.sh deploy
@@ -77,23 +97,37 @@ pod11_cluster:
        ./deploy/kata/kata.sh test
        ./deploy/addons/addons.sh test
 
-pod11_clean_cluster:
+pod11_cluster_clean:
        ./deploy/site/pod11/pod11.sh clean
 
-verifier: vm_verifier
-
-vm_verifier: jump_server \
-       vm_cluster \
-       vm_clean_cluster \
-       clean_jump_server
-
 vm_cluster:
        ./deploy/site/vm/vm.sh deploy
        ./deploy/site/vm/vm.sh wait
        ./deploy/kata/kata.sh test
        ./deploy/addons/addons.sh test
 
-vm_clean_cluster:
+vm_cluster_clean:
        ./deploy/site/vm/vm.sh clean
 
-.PHONY: all bashate
+# Test targets
+
+unit: bashate
+
+bashate:
+       bashate -i E006,E003,E002,E010,E011,E042,E043 `find . -type f -not -path './ci/jjb/shell/*' -not -path './build/*' -name "*.sh"`
+
+verifier: vm_verifier
+
+vm_verifier: jump_server \
+       vm_cluster \
+       vm_cluster_clean \
+       jump_server_clean
+
+bm_verifer: jump_server \
+       pod11_cluster \
+       pod11_cluster_clean \
+       jump_server_clean
+
+SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
+sdwan_verifier:
+       pushd $(SDWAN_VERIFIER_PATH) && bash sdwan_verifier.sh && popd
index 75a8ad3..5b45e72 100755 (executable)
@@ -10,6 +10,10 @@ source $LIBDIR/common.sh
 BUILDDIR=${SCRIPTDIR/deploy/build}
 mkdir -p ${BUILDDIR}
 
+function install_deps {
+    apt-get install -y jq
+}
+
 function is_emco_ready {
     local -r cluster_name=${CLUSTER_NAME:-icn}
     local -r cluster_kubeconfig="${BUILDDIR}/${cluster_name}.conf"
@@ -85,6 +89,8 @@ function is_addon_ready {
 }
 
 function test_addons {
+    install_deps
+
     # Create a temporary kubeconfig file for the tests
     local -r cluster_name=${CLUSTER_NAME:-icn}
     local -r cluster_kubeconfig="${BUILDDIR}/${cluster_name}.conf"
diff --git a/deploy/clusterctl/clusterctl.sh b/deploy/clusterctl/clusterctl.sh
new file mode 100755 (executable)
index 0000000..21293e4
--- /dev/null
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    curl -L https://github.com/kubernetes-sigs/cluster-api/releases/download/${CAPI_VERSION}/clusterctl-linux-amd64 -o clusterctl
+    sudo install -o root -g root -m 0755 clusterctl /usr/local/bin/clusterctl
+    rm clusterctl
+    clusterctl version
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy clusterctl
+EOF
+       ;;
+esac
diff --git a/deploy/emcoctl/emcoctl.sh b/deploy/emcoctl/emcoctl.sh
new file mode 100755 (executable)
index 0000000..d558792
--- /dev/null
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    clone_emco_repository
+    make -C ${EMCOPATH}/src/tools/emcoctl
+    sudo install -o root -g root -m 0755 ${EMCOPATH}/bin/emcoctl/emcoctl /usr/local/bin/emcoctl
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy emcoctl
+EOF
+       ;;
+esac
diff --git a/deploy/flux-cli/flux-cli.sh b/deploy/flux-cli/flux-cli.sh
new file mode 100755 (executable)
index 0000000..4e47a82
--- /dev/null
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    export FLUX_VERSION
+    curl -s https://fluxcd.io/install.sh | sudo -E bash
+    flux --version
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy Flux CLI
+EOF
+       ;;
+esac
diff --git a/deploy/golang/golang.sh b/deploy/golang/golang.sh
new file mode 100755 (executable)
index 0000000..4dfb7c8
--- /dev/null
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    add-apt-repository -y ppa:longsleep/golang-backports
+    apt-get update
+    apt-get install golang-go -y
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy golang
+EOF
+       ;;
+esac
index f8bc2f8..88fb4cd 100755 (executable)
@@ -14,6 +14,65 @@ function err_exit {
     kubectl get all -n ${NAMEPREFIX}-system
 }
 
+function check_interface_ip {
+    local -r interface=$1
+    local -r ipaddr=$2
+
+    ip addr show dev ${interface}
+    if [[ $? -ne 0 ]]; then
+        exit 1
+    fi
+
+    local -r ipv4address=$(ip addr show dev ${interface} | awk '$1 == "inet" { sub("/.*", "", $2); print $2 }')
+    if [[ "$ipv4address" != "$ipaddr" ]]; then
+        exit 1
+    fi
+}
+
+function configure_ironic_bridge {
+    if [[ ! $(ip link show dev provisioning) ]]; then
+       ip link add dev provisioning type bridge
+    fi
+    ip link set provisioning up
+    ip link set dev ${IRONIC_INTERFACE} master provisioning
+    if [[ ! $(ip addr show dev provisioning to 172.22.0.1) ]]; then
+       ip addr add dev provisioning 172.22.0.1/24
+    fi
+}
+
+function configure_ironic_interfaces {
+    # 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}
+    else
+        exit 1
+    fi
+
+    for port in 80 5050 6385 ; do
+        if ! sudo iptables -C INPUT -i ${IRONIC_PROVISIONING_INTERFACE} -p tcp -m tcp --dport ${port} -j ACCEPT > /dev/null 2>&1; then
+            sudo iptables -I INPUT -i ${IRONIC_PROVISIONING_INTERFACE} -p tcp -m tcp --dport ${port} -j ACCEPT
+        fi
+    done
+
+    # Allow access to dhcp and tftp server for pxeboot
+    for port in 67 69 ; do
+        if ! sudo iptables -C INPUT -i ${IRONIC_PROVISIONING_INTERFACE} -p udp --dport ${port} -j ACCEPT 2>/dev/null ; then
+            sudo iptables -I INPUT -i ${IRONIC_PROVISIONING_INTERFACE} -p udp --dport ${port} -j ACCEPT
+        fi
+    done
+}
+
+function deploy_bridge {
+    configure_ironic_bridge
+    configure_ironic_interfaces
+}
+
+function clean_bridge {
+    ip link set provisioning down || true
+    ip link del provisioning type bridge || true
+}
+
 # This may be used to update the in-place Ironic YAML files from the
 # upstream project.  We cannot use the upstream sources directly as
 # they require an envsubst step before kustomize build.
@@ -37,19 +96,24 @@ function deploy {
 
 function clean {
     kustomize build ${SCRIPTDIR}/icn | kubectl delete -f -
+    rm -rf ${IRONIC_DATA_DIR}
 }
 
 case $1 in
     "build-source") build_source ;;
     "clean") clean ;;
+    "clean-bridge") clean_bridge ;;
     "deploy") deploy ;;
+    "deploy-bridge") deploy_bridge ;;
     *) cat <<EOF
 Usage: $(basename $0) COMMAND
 
 Commands:
   build-source  - Rebuild the in-tree Ironic YAML files
   clean         - Remove Ironic
+  clean-bridge  - Uninstall provisioning network bridge
   deploy        - Deploy Ironic
+  deploy-bridge - Install provisioning network bridge
 EOF
        ;;
 esac
index 3b40ffc..6b5aa89 100755 (executable)
@@ -1,9 +1,10 @@
 #!/usr/bin/env bash
 set -eu -o pipefail
 
-LIBDIR="$(dirname "$(dirname "$PWD")")"
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
 
-source $LIBDIR/env/lib/common.sh
+source $LIBDIR/common.sh
 
 export KUBESPRAY_VERSION=2.16.0
 
diff --git a/deploy/kustomize/kustomize.sh b/deploy/kustomize/kustomize.sh
new file mode 100755 (executable)
index 0000000..f3f428d
--- /dev/null
@@ -0,0 +1,26 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    curl -sL "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2F${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz" -o kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz
+    tar xzf kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz --no-same-owner
+    sudo install -o root -g root -m 0755 kustomize /usr/local/bin/kustomize
+    rm kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz kustomize
+    kustomize version
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy kustomize
+EOF
+       ;;
+esac
index b35784d..3f3b3fb 100755 (executable)
@@ -70,6 +70,10 @@ function insert_control_plane_network_identity_into_ssh_config {
     # This enables logging into the control plane machines from this
     # machine without specifying the identify file on the command line
 
+    if [[ ! $(which ipcalc) ]]; then
+        apt-get install -y ipcalc
+    fi
+
     # Create ssh config if it doesn't exist
     mkdir -p ${HOME}/.ssh && chmod 700 ${HOME}/.ssh
     touch ${HOME}/.ssh/config
diff --git a/deploy/sops/sops.sh b/deploy/sops/sops.sh
new file mode 100755 (executable)
index 0000000..bf99887
--- /dev/null
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+set -eux -o pipefail
+
+SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
+LIBDIR="$(dirname $(dirname ${SCRIPTDIR}))/env/lib"
+
+source $LIBDIR/common.sh
+
+function deploy {
+    curl -L https://github.com/mozilla/sops/releases/download/${SOPS_VERSION}/sops-${SOPS_VERSION}.linux -o sops
+    sudo install -o root -g root -m 0755 sops /usr/local/bin/sops
+    rm sops
+    sops --version
+}
+
+case $1 in
+    "deploy") deploy ;;
+    *) cat <<EOF
+Usage: $(basename $0) COMMAND
+
+Commands:
+  deploy        - Deploy SOPS
+EOF
+       ;;
+esac
index 26c9a65..14f7680 100755 (executable)
@@ -274,40 +274,6 @@ function clone_emco_repository {
     clone_repository ${EMCOPATH} ${EMCOREPO} ${EMCO_VERSION}
 }
 
-function install_kustomize {
-    curl -sL "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2F${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz" -o kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz
-    tar xzf kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz --no-same-owner
-    sudo install -o root -g root -m 0755 kustomize /usr/local/bin/kustomize
-    rm kustomize_${KUSTOMIZE_VERSION}_linux_amd64.tar.gz kustomize
-    kustomize version
-}
-
-function install_clusterctl {
-    curl -L https://github.com/kubernetes-sigs/cluster-api/releases/download/${CAPI_VERSION}/clusterctl-linux-amd64 -o clusterctl
-    sudo install -o root -g root -m 0755 clusterctl /usr/local/bin/clusterctl
-    rm clusterctl
-    clusterctl version
-}
-
-function install_flux_cli {
-    export FLUX_VERSION
-    curl -s https://fluxcd.io/install.sh | sudo -E bash
-    flux --version
-}
-
-function install_emcoctl {
-    clone_emco_repository
-    make -C ${EMCOPATH}/src/tools/emcoctl
-    sudo install -o root -g root -m 0755 ${EMCOPATH}/bin/emcoctl/emcoctl /usr/local/bin/emcoctl
-}
-
-function install_sops {
-    curl -L https://github.com/mozilla/sops/releases/download/${SOPS_VERSION}/sops-${SOPS_VERSION}.linux -o sops
-    sudo install -o root -g root -m 0755 sops /usr/local/bin/sops
-    rm sops
-    sops --version
-}
-
 function fetch_image {
     if [[ "${BM_IMAGE_URL}" && "${BM_IMAGE}" ]]; then
        mkdir -p "${IRONIC_DATA_DIR}/html/images"
diff --git a/env/metal3/01_install_package.sh b/env/metal3/01_install_package.sh
deleted file mode 100755 (executable)
index 32160ba..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/usr/bin/env bash
-set -eux -o pipefail
-
-LIBDIR="$(dirname "$PWD")"
-
-source $LIBDIR/lib/common.sh
-source $LIBDIR/lib/logging.sh
-
-if [[ $EUID -ne 0 ]]; then
-    echo "This script must be run as root"
-    exit 1
-fi
-
-function install_essential_packages {
-    export DEBIAN_FRONTEND=noninteractive
-    apt-get update
-    apt-get -y install \
-    ca-certificates \
-    crudini \
-    curl \
-    figlet \
-    ipcalc \
-    nmap \
-    patch \
-    psmisc \
-    python3-pip \
-    python3-requests \
-    python3-setuptools \
-    vim \
-    wget \
-    git \
-    software-properties-common
-
-    update-alternatives --install /usr/bin/python python /usr/bin/python3 1
-    update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
-
-    add-apt-repository -y ppa:longsleep/golang-backports
-    apt-get update
-    apt-get install golang-go -y
-}
-
-function install_ironic_packages {
-    apt-get update
-    apt-get -y install \
-    jq \
-    nodejs \
-    python3-ironicclient \
-    python3-ironic-inspector-client \
-    python3-lxml \
-    python3-netaddr \
-    python3-openstackclient \
-    unzip \
-    genisoimage \
-    whois
-
-    pip install \
-    lolcat \
-    yq
-}
-
-install() {
-    install_essential_packages
-    install_ironic_packages
-    install_kustomize
-    install_clusterctl
-    install_flux_cli
-    install_sops
-    install_emcoctl
-}
-
-install
diff --git a/env/metal3/02_configure.sh b/env/metal3/02_configure.sh
deleted file mode 100755 (executable)
index c20ff11..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/usr/bin/env bash
-set -eux -o pipefail
-
-SCRIPTDIR="$(readlink -f $(dirname ${BASH_SOURCE[0]}))"
-LIBDIR="$(dirname ${SCRIPTDIR})/lib"
-
-source $LIBDIR/logging.sh
-source $LIBDIR/common.sh
-
-if [[ $EUID -ne 0 ]]; then
-    echo "confgiure script must be run as root"
-    exit 1
-fi
-
-function check_interface_ip {
-    local interface=$1
-    local ipaddr=$2
-
-    ip addr show dev $interface
-    if [ $? -ne 0 ]; then
-        exit 1
-    fi
-
-    local ipv4address=$(ip addr show dev $interface | awk '$1 == "inet" { sub("/.*", "", $2); print $2 }')
-    if [ "$ipv4address" != "$ipaddr" ]; then
-        exit 1
-    fi
-}
-
-function configure_ironic_bridge {
-    ip link add dev provisioning type bridge
-    ip link set provisioning up
-    ip link set dev $IRONIC_INTERFACE master provisioning
-    ip addr add dev provisioning 172.22.0.1/24
-}
-
-function configure_ironic_interfaces {
-    # 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
-    else
-        exit 1
-    fi
-
-    for port in 80 5050 6385 ; do
-        if ! sudo iptables -C INPUT -i $IRONIC_PROVISIONING_INTERFACE -p tcp -m tcp --dport $port -j ACCEPT > /dev/null 2>&1; then
-            sudo iptables -I INPUT -i $IRONIC_PROVISIONING_INTERFACE -p tcp -m tcp --dport $port -j ACCEPT
-        fi
-    done
-
-    #Allow access to dhcp and tftp server for pxeboot
-    for port in 67 69 ; do
-        if ! sudo iptables -C INPUT -i $IRONIC_PROVISIONING_INTERFACE -p udp --dport $port -j ACCEPT 2>/dev/null ; then
-            sudo iptables -I INPUT -i $IRONIC_PROVISIONING_INTERFACE -p udp --dport $port -j ACCEPT
-        fi
-    done
-}
-
-function configure {
-    configure_ironic_bridge
-    configure_ironic_interfaces
-}
-
-configure
diff --git a/env/metal3/06_host_cleanup.sh b/env/metal3/06_host_cleanup.sh
deleted file mode 100755 (executable)
index a649511..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env bash
-set -eux -o pipefail
-
-LIBDIR="$(dirname "$PWD")"
-
-source $LIBDIR/lib/common.sh
-
-# Kill and remove the running ironic containers
-for name in ironic ironic-inspector dnsmasq httpd mariadb ipa-downloader; do
-    sudo docker ps | grep -w "$name$" && sudo docker kill "$name"
-    sudo docker ps --all | grep -w "$name$" && sudo docker rm "$name" -f
-done
-
-ip link set provisioning down || true
-ip link del provisioning type bridge || true
-
-rm -rf ${IRONIC_DATA_DIR}
diff --git a/env/ubuntu/bootloader-env/02_clean_bootloader_package_req.sh b/env/ubuntu/bootloader-env/02_clean_bootloader_package_req.sh
deleted file mode 100755 (executable)
index 6bb3b15..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/usr/bin/env bash
-set -eux -o pipefail
-
-source $(dirname $PWD)/../lib/common.sh
-source $(dirname $PWD)/../lib/logging.sh
-
-if [[ $EUID -ne 0 ]]; then
-    echo "This script must be run as root"
-    exit 1
-fi
-
-function autoremove {
-    rm -rf /etc/apt/sources.list.d/*
-}
-
-function clean_essential_packages {
-    apt-get update
-    for package in crudini curl dnsmasq figlet golang nmap patch psmisc \
-        python3-pip python3-requests python3-setuptools vim wget; do
-        apt-get remove $package -y
-    done
-    update-alternatives --remove python /usr/bin/python3
-    update-alternatives --remove pip /usr/bin/pip3
-
-    autoremove
-}
-
-function check_prerequisite {
-    if !(which pip); then
-        apt-get install python3-pip -y
-    fi
-    update-alternatives --install /usr/bin/python python /usr/bin/python3 1
-    update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
-
-    if !(which curl); then
-        apt-get install curl -y
-    fi
-
-    if !(which add-apt-repository); then
-        apt-get install software-properties-common -y
-    fi
-}
-
-function clean_ironic_packages {
-    for package in python3-ironicclient \
-        python3-ironic-inspector-client \
-        python3-openstackclient genisoimage; do
-        apt-get remove $package -y
-    done
-}
-
-function clean_docker_packages {
-    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
-    add-apt-repository \
-        "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
-        $(lsb_release -cs) \
-        stable"
-    apt-get update
-    docker rmi -f $(docker image ls -a -q)
-    apt-get remove docker-ce -y
-    apt-get remove -y docker \
-        docker-engine \
-        docker.io \
-        containerd \
-        runc \
-        docker-ce
-    apt-get purge docker-* -y --allow-change-held-packages
-    apt-get update
-}
-
-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 -
-    bash -c 'cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
-deb https://apt.kubernetes.io/ kubernetes-xenial main
-EOF'
-    apt-get update
-    apt-get remove kubelet kubeadm kubectl -y
-}
-
-function clean_apt_cache {
-    shopt -s extglob
-    pushd /var/cache/apt/archives
-
-    if [ $(ls -1q . | wc -l ) -ge 3 ]; then
-        $(rm !("lock"|"partial"))
-    fi
-    popd
-
-}
-
-if [ "$1" == "--only-packages" ]; then
-    check_prerequisite
-    clean_docker_packages || true
-    autoremove
-    exit 0
-fi
-
-check_prerequisite
-clean_apt_cache
-clean_kubernetes_packages
-clean_docker_packages
-clean_ironic_packages
-clean_essential_packages