#!/usr/bin/env bash
-set -ex
+set -eux -o pipefail
source $(dirname $PWD)/../lib/common.sh
source $(dirname $PWD)/../lib/logging.sh
fi
function autoremove {
- #apt-get autoremove -y
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 \
- python-pip python-requests python-setuptools vim wget; do
+ 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 python-pip -y
+ 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
}
function clean_ironic_packages {
- for package in python-ironicclient \
- python-ironic-inspector-client \
- python-openstackclient genisoimage; do
+ for package in python3-ironicclient \
+ python3-ironic-inspector-client \
+ python3-openstackclient genisoimage; do
apt-get remove $package -y
done
}
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 -
}
-function mv_apt_cache {
- shopt -s extglob
- pushd /var/cache/apt/archives
-
- if [ $(ls -1q . | wc -l ) -gt 2 ]; then
- $(mv !("lock"|"partial") $LOCAL_APT_REPO)
- fi
- popd
-}
-
-function check_dir {
- if [ ! -d $1 ]; then
- mkdir -p $1
- fi
-}
-
-function clean_dir {
- shopt -s extglob
- pushd $1
-
- if [ $(ls -1q . | wc -l ) -ne 0 ]; then
- $(rm -r ./*)
- fi
- popd
-}
-
if [ "$1" == "--only-packages" ]; then
check_prerequisite
clean_docker_packages || true
- #clean_ironic_packages
autoremove
exit 0
fi
if [ "$1" == "--bm-cleanall" ]; then
- clean_all
+ clean_all || true
autoremove
exit 0
fi
check_prerequisite
clean_apt_cache
-check_dir $LOCAL_APT_REPO
-clean_dir $LOCAL_APT_REPO
-check_dir $PIP_CACHE_DIR
-clean_dir $PIP_CACHE_DIR
-check_dir $BUILD_DIR
-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
-rm -rf $LOCAL_APT_REPO
-rm -rf $PIP_CACHE_DIR
-rm -rf $BUILD_DIR
-rm -rf $CONTAINER_IMAGES_DIR