adding bm clean up script 78/1978/1
authorr.kuralamudhan <kuralamudhan.ramakrishnan@intel.com>
Thu, 14 Nov 2019 05:43:57 +0000 (05:43 +0000)
committerr.kuralamudhan <kuralamudhan.ramakrishnan@intel.com>
Thu, 14 Nov 2019 05:43:57 +0000 (05:43 +0000)
Signed-off-by: r.kuralamudhan <kuralamudhan.ramakrishnan@intel.com>
Change-Id: I89a46c09a249ed5220aaffbef0c47a3c05b5c0ca

Makefile
deploy/kud/kud_bm_launch.sh
deploy/metal3/scripts/01_metal3.sh
env/ubuntu/bootloader-env/02_clean_bootloader_package_req.sh

index 972fa22..a380bc1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -7,6 +7,7 @@ BPA_OPERATOR:=$(CURDIR)/cmd/bpa-operator/
 KUD_PATH:=$(CURDIR)/deploy/kud
 SDWAN_VERIFIER_PATH:=$(CURDIR)/sdwan/test
 BPA_REST_API:=$(CURDIR)/cmd/bpa-restapi-agent
+BOOTLOADER_ENV:=$(CURDIR)/env/ubuntu/bootloader-env
 
 help:
        @echo "  Targets:"
@@ -16,20 +17,31 @@ help:
        @echo "  unit             -- run the unit tests"
        @echo "  help             -- this help output"
 
-install: bmh_all
+install: package_prerequisite \
+       kud_bm_deploy_mini \
+       bmh_all \
+       bpa_op_bmh_verifier
+
+package_prerequisite:
+        pushd $(BMDIR) && ./01_install_package.sh && popd
 
 bmh_preinstall:
        source user_config.sh && env && \
-       pushd $(BMDIR) && ./01_install_package.sh && ./02_configure.sh && \
+       pushd $(BMDIR) && ./02_configure.sh && \
        ./03_launch_prereq.sh && popd
 
 bmh_clean:
        pushd $(METAL3DIR) && ./01_metal3.sh deprovision && \
-       ./03_verify_deprovisioning.sh && ./01_metal3.sh clean popd
+       ./03_verify_deprovisioning.sh && ./01_metal3.sh clean && \
+        ./01_metal3.sh remove && popd
 
 bmh_clean_host:
        pushd $(BMDIR) && ./06_host_cleanup.sh && popd
 
+clean_packages:
+       pushd $(BOOTLOADER_ENV) && \
+       ./02_clean_bootloader_package_req.sh --only-packages && popd
+
 bmh_install:
        source user_config.sh && env && \
        pushd $(METAL3DIR) && ./01_metal3.sh launch && \
@@ -37,7 +49,10 @@ bmh_install:
 
 bmh_all: bmh_preinstall bmh_install
 
-bmh_clean_all: bmh_clean bmh_clean_host
+clean_all: bmh_clean \
+       bmh_clean_host \
+       kud_bm_reset \
+       clean_packages
 
 kud_bm_deploy_mini:
        pushd $(KUD_PATH) && ./kud_bm_launch.sh minimal && popd
@@ -45,6 +60,9 @@ kud_bm_deploy_mini:
 kud_bm_deploy:
        pushd $(KUD_PATH) && ./kud_bm_launch.sh all && popd
 
+kud_bm_reset:
+       pushd $(KUD_PATH) && ./kud_bm_launch.sh reset && popd
+
 metal3_prerequisite:
        pushd $(METAL3VMDIR) && make bmh_install && popd
 
index 46d8e6a..60784c4 100755 (executable)
@@ -90,6 +90,14 @@ function kud_install {
     popd
 }
 
+function kud_reset {
+    pushd $DOWNLOAD_PATH/multicloud-k8s/kud/hosting_providers/vagrant/
+    ansible-playbook -i inventory/hosts.ini /opt/kubespray-2.10.4/reset.yml \
+        --become --become-user=root -e reset_confirmation=yes
+    popd
+}
+
+
 function verifier {
     APISERVER=$(kubectl config view --minify -o \
                     jsonpath='{.clusters[0].cluster.server}')
@@ -100,6 +108,11 @@ function verifier {
   call_api $APISERVER/api --header "Authorization: Bearer $TOKEN" --insecure
 }
 
+if [ "$1" == "reset" ] ; then
+    kud_reset
+    exit 0
+fi
+
 get_kud_repo
 set_ssh_key
 set_bm_kud $1
index 6e6a1e9..75719e3 100755 (executable)
@@ -99,10 +99,28 @@ function launch_baremetal_operator {
     fi
 
     pushd $GOPATH/src/github.com/metal3-io/baremetal-operator
+    docker pull quay.io/metal3-io/baremetal-operator:master
     make deploy
     popd
 }
 
+function remove_baremetal_operator {
+    if [ ! -d $GOPATH/src/github.com/metal3-io/baremetal-operator ]; then
+        go get github.com/metal3-io/baremetal-operator
+        git checkout 3d40caa29dce82878d83aeb7f8dab4dc4a856160
+    fi
+
+    pushd $GOPATH/src/github.com/metal3-io/baremetal-operator
+        kubectl delete -f deploy/operator.yaml -n metal3
+        kubectl delete -f deploy/crds/metal3_v1alpha1_baremetalhost_crd.yaml
+        kubectl delete -f deploy/role_binding.yaml
+        kubectl delete -f deploy/role.yaml -n metal3
+        kubectl delete -f deploy/service_account.yaml -n metal3
+        kubectl delete ns metal3
+        docker rmi quay.io/metal3-io/baremetal-operator:master
+    popd
+}
+
 function network_config_files {
     cat << 'EOF'
 write_files:
@@ -230,11 +248,17 @@ if [ "$1" == "clean" ]; then
     exit 0
 fi
 
+if [ "$1" == "remove" ]; then
+    remove_baremetal_operator
+    exit 0
+fi
+
 echo "Usage: metal3.sh"
 echo "launch      - Launch the metal3 operator"
 echo "provision   - provision baremetal node as specified in common.sh"
 echo "deprovision - deprovision baremetal node as specified in common.sh"
-echo "clean       - clean all the resources"
+echo "clean       - clean all the bmh resources"
+echo "remove      - remove baremetal operator"
 exit 1
 
 #Following code is tested for the offline mode
index 60fe2ea..539d540 100755 (executable)
@@ -123,6 +123,14 @@ function clean_dir {
     popd
 }
 
+if [ "$1" == "--only-packages" ]; then
+    check_prerequisite
+    clean_docker_packages
+    clean_ironic_packages
+    clean_essential_packages
+    exit 0
+fi
+
 check_prerequisite
 clean_apt_cache
 check_dir $LOCAL_APT_REPO