clean.sh |
|
|---|---|
|
clean.sh尽最大努力清除 Grenade 运行的痕迹,但以下内容除外:- 基础代码库和目标代码库都保留不变 - 包(系统和 pip)都保留不变 # 分隔符 #!/usr/bin/env bash # 分隔符 # 分隔符 GRENADE_DIR=$(cd $(dirname "$0") && pwd) # 分隔符 source $GRENADE_DIR/grenaderc source $GRENADE_DIR/functions # 分隔符 GetDistro # 分隔符 set -o xtrace # 分隔符 if [[ -d $BASE_DEVSTACK_DIR ]]; then bash -c " cd $BASE_DEVSTACK_DIR; \ source stackrc; \ source lib/apache; \ source lib/tls; \ source lib/cinder; \ DATA_DIR=${STACK_ROOT}/data; \ ./unstack.sh --all; \ cd -; \ sudo losetup -d \$(sudo losetup -j \$DATA_DIR/\${VOLUME_GROUP_NAME}-backing-file | awk -F':' '/backing-file/ { print \$1}'); \ if mount | grep \$DATA_DIR/swift/drives; then \ umount \$DATA_DIR/swift/drives/sdb1; \ fi; \ sudo rm -rf \$DATA_DIR \$DATA_DIR.hide; \ " # 分隔符 fi if [[ -d $TARGET_DEVSTACK_DIR ]]; then bash -x -c " cd $TARGET_DEVSTACK_DIR; \ source stackrc; \ source lib/apache; \ source lib/tls; \ source lib/cinder; \ DATA_DIR=${STACK_ROOT}/data; \ ./unstack.sh --all; \ cd -; \ # 分隔符 sudo losetup -d \$(sudo losetup -j \$DATA_DIR/\${VOLUME_GROUP_NAME}-backing-file | awk -F':' '/backing-file/ { print \$1}'); \ if mount | grep \$DATA_DIR/swift/drives; then \ sudo umount \$DATA_DIR/swift/drives/sdb1; \ fi; \ sudo rm -rf \$DATA_DIR; \ " fi # 分隔符 sudo rm -rf /etc/keystone /etc/glance /etc/nova /etc/cinder /etc/swift /etc/neutron # 分隔符 sudo rm /etc/tgt/conf.d/* # 分隔符 ps auxw | grep ^rabbitmq | awk '{print $2}' | sudo xargs kill sudo service rabbitmq-server stop sudo apt-get purge -y rabbitmq-server .*erlang if [[ "${DATABASE_TYPE}" == "mysql" ]]; then # 分隔符 service mysqld stop sudo apt-get purge -y .*mysql-server sudo rm -rf /var/lib/mysql else echo "TODO: 清理 ${DATABASE_TYPE}" fi # 分隔符 ps auxw | grep swift | awk '{print $2}' | xargs kill # 分隔符 sudo rm -rf $BASE_RELEASE_DIR sudo rm -rf $TARGET_RELEASE_DIR # 分隔符 | |
|
这意味着所有数据文件都会被删除。更多?? | |
|
跟踪 Grenade 目录 | |
|
导入常用函数 | |
|
确定我们正在运行的系统。这提供了os_VENDOR, os_RELEASE, os_UPDATE, os_PACKAGE, os_CODENAME和DISTRO | |
|
打印正在运行的命令,以便我们可以看到触发错误的命令。它在安装过程中也很有用。 | |
|
首先尝试执行一对 unstack 调用 | |
|
摆脱上面硬编码的文件名!!! | |
|
需要测试卷是否存在 | |
|
清理 /etc | |
|
清理 tgt | |
|
对 #$%%&^^#$%#@$%ing rabbit 狠一点 | |
|
对 mysql 狠一点 | |
|
杀死 swift,它不在 screen 中运行,因此不会在 screen 中停止 | |
|
清除所有仓库拉取 | |