From 2ffb35ee5308ece3717263d38163e5fd9b29a3ae Mon Sep 17 00:00:00 2001 From: Sean Mooney Date: Wed, 2 Dec 2015 22:54:52 +0000 Subject: [PATCH] adds tools/cleanup-containers regex support - this change extends the tools/cleanup-containers script to support a grep extended regex as a first paramater. - if tools/cleanup-containers is called with a grep extended regex string as a first paramater, only containers mataching that regex will be cleaned up. - e.g. tools/cleanup-containers "neutron|openvswitch" will cleanup all container whoes name contains either neutron or openvswitch. Change-Id: Iadb68c0a8de40e9ec2c0a27568e3a372ec0e8303 Closes-Bug: #1522168 --- tools/cleanup-containers | 44 ++++++++++++++++++++++------------------ 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/tools/cleanup-containers b/tools/cleanup-containers index 2e9f57ac32..6f87aa2395 100755 --- a/tools/cleanup-containers +++ b/tools/cleanup-containers @@ -6,26 +6,30 @@ if [[ $(pgrep qemu) ]]; then exit 1 fi -containers_to_kill=( - glance_{api,registry,data} \ - haproxy \ - heat_{api{,_cfn},engine} \ - horizon \ - keepalived - keystone \ - kolla_ansible \ - log_data \ - magnum_{api,conductor} \ - mariadb{,_data} \ - murano_{api,engine} \ - neutron_{server,agents,linuxbridge_agent,openvswitch_agent} \ - nova_{data,scheduler,novncproxy,consoleauth,conductor,api,compute,libvirt} \ - openvswitch_{vswitchd,db,data} \ - rabbitmq{,_data} \ - rsyslog \ - swift_{account_{auditor,reaper,replicator,server},container_{auditor,expirer,replicator,server,updater},proxy_server,rsyncd} \ - memcached -) +if [ -n "$1" ]; then + containers_to_kill=($(docker ps | grep -E "$1" | awk '{print $1}')) +else + containers_to_kill=( + glance_{api,registry,data} \ + haproxy \ + heat_{api{,_cfn},engine} \ + horizon \ + keepalived + keystone \ + kolla_ansible \ + log_data \ + magnum_{api,conductor} \ + mariadb{,_data} \ + murano_{api,engine} \ + neutron_{server,agents,linuxbridge_agent,openvswitch_agent} \ + nova_{data,scheduler,novncproxy,consoleauth,conductor,api,compute,libvirt} \ + openvswitch_{vswitchd,db,data} \ + rabbitmq{,_data} \ + rsyslog \ + swift_{account_{auditor,reaper,replicator,server},container_{auditor,expirer,replicator,server,updater},proxy_server,rsyncd} \ + memcached + ) +fi echo "Stopping containers..." (docker stop -t 2 ${containers_to_kill[@]} 2>&1) > /dev/null