#!/bin/bash
if [[ $(pgrep qemu) ]]; then
    echo "Some qemu processes were detected."
    echo "Docker will not be able to stop the nova_libvirt container with those running."
    echo "Please clean them up before rerunning this script."
    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} \
    rabbitmq{,_data} \
    rsyslog \
    swift_{account_{auditor,reaper,replicator,server},container_{auditor,expirer,replicator,server,updater},proxy_server,rsyncd} \
    memcached
)

echo "Stopping containers..."
(docker stop -t 2 ${containers_to_kill[@]} 2>&1) > /dev/null

echo "Removing containers..."
(docker rm -v -f ${containers_to_kill[@]} 2>&1) > /dev/null

echo "All cleaned up!"