2aa2a89cdb
* Add basic support for hypervisor plugins in lib/nova_plugins * Add lib/nova_plugins/hypervisor-docker to use Docker as a Nova hypervisor. * Add tools/install_docker.sh to install the Docker daemon and registry container, download base image and import * Configure Nova to use docker plugin * Add docker exercise and skip unsupported ones Nova blueprint: new-hypervisor-docker Change-Id: I9e7065b562dce2ce853def583ab1165886612227
100 lines
2.3 KiB
Bash
Executable File
100 lines
2.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# **clean.sh**
|
|
|
|
# ``clean.sh`` does its best to eradicate traces of a Grenade
|
|
# run except for the following:
|
|
# - both base and target code repos are left alone
|
|
# - packages (system and pip) are left alone
|
|
|
|
# This means that all data files are removed. More??
|
|
|
|
# Keep track of the current devstack directory.
|
|
TOP_DIR=$(cd $(dirname "$0") && pwd)
|
|
|
|
# Import common functions
|
|
source $TOP_DIR/functions
|
|
|
|
# Load local configuration
|
|
source $TOP_DIR/stackrc
|
|
|
|
# Get the variables that are set in stack.sh
|
|
if [[ -r $TOP_DIR/.stackenv ]]; then
|
|
source $TOP_DIR/.stackenv
|
|
fi
|
|
|
|
# Determine what system we are running on. This provides ``os_VENDOR``,
|
|
# ``os_RELEASE``, ``os_UPDATE``, ``os_PACKAGE``, ``os_CODENAME``
|
|
# and ``DISTRO``
|
|
GetDistro
|
|
|
|
|
|
# Import database library
|
|
source $TOP_DIR/lib/database
|
|
source $TOP_DIR/lib/rpc_backend
|
|
|
|
source $TOP_DIR/lib/tls
|
|
source $TOP_DIR/lib/horizon
|
|
source $TOP_DIR/lib/keystone
|
|
source $TOP_DIR/lib/glance
|
|
source $TOP_DIR/lib/nova
|
|
source $TOP_DIR/lib/cinder
|
|
source $TOP_DIR/lib/swift
|
|
source $TOP_DIR/lib/ceilometer
|
|
source $TOP_DIR/lib/heat
|
|
source $TOP_DIR/lib/neutron
|
|
source $TOP_DIR/lib/baremetal
|
|
source $TOP_DIR/lib/ldap
|
|
|
|
|
|
# See if there is anything running...
|
|
# need to adapt when run_service is merged
|
|
SESSION=$(screen -ls | awk '/[0-9].stack/ { print $1 }')
|
|
if [[ -n "$SESSION" ]]; then
|
|
# Let unstack.sh do its thing first
|
|
$TOP_DIR/unstack.sh --all
|
|
fi
|
|
|
|
# Clean projects
|
|
cleanup_oslo
|
|
cleanup_cinder
|
|
cleanup_glance
|
|
cleanup_keystone
|
|
cleanup_nova
|
|
cleanup_neutron
|
|
cleanup_swift
|
|
|
|
# Do the hypervisor cleanup until this can be moved back into lib/nova
|
|
if [[ -r $NOVA_PLUGINS/hypervisor-$VIRT_DRIVER ]]; then
|
|
cleanup_nova_hypervisor
|
|
fi
|
|
|
|
# cinder doesn't always clean up the volume group as it might be used elsewhere...
|
|
# clean it up if it is a loop device
|
|
VG_DEV=$(sudo losetup -j $DATA_DIR/${VOLUME_GROUP}-backing-file | awk -F':' '/backing-file/ { print $1}')
|
|
if [[ -n "$VG_DEV" ]]; then
|
|
sudo losetup -d $VG_DEV
|
|
fi
|
|
|
|
#if mount | grep $DATA_DIR/swift/drives; then
|
|
# sudo umount $DATA_DIR/swift/drives/sdb1
|
|
#fi
|
|
|
|
|
|
# Clean out /etc
|
|
sudo rm -rf /etc/keystone /etc/glance /etc/nova /etc/cinder /etc/swift
|
|
|
|
# Clean out tgt
|
|
sudo rm /etc/tgt/conf.d/*
|
|
|
|
# Clean up the message queue
|
|
cleanup_rpc_backend
|
|
cleanup_database
|
|
|
|
# Clean up networking...
|
|
# should this be in nova?
|
|
# FIXED_IP_ADDR in br100
|
|
|
|
# Clean up files
|
|
rm -f $TOP_DIR/.stackenv
|