Merge "Added support for a stop playbook in kolla"
This commit is contained in:
commit
15a917a62a
17
ansible/roles/stop/tasks/copy_tools.yml
Normal file
17
ansible/roles/stop/tasks/copy_tools.yml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- name: Creating /kolla-stop/tools directory on node
|
||||
file:
|
||||
state: directory
|
||||
path: /tmp/kolla-stop/tools
|
||||
|
||||
- name: Copying validate-docker-execute.sh file
|
||||
copy:
|
||||
src: ../tools/validate-docker-execute.sh
|
||||
dest: /tmp/kolla-stop/tools
|
||||
mode: 0755
|
||||
|
||||
- name: Copying stop-containers file
|
||||
copy:
|
||||
src: ../tools/stop-containers
|
||||
dest: /tmp/kolla-stop/tools
|
||||
mode: 0755
|
4
ansible/roles/stop/tasks/main.yml
Normal file
4
ansible/roles/stop/tasks/main.yml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
- include: copy_tools.yml
|
||||
|
||||
- include: stop_containers.yml
|
4
ansible/roles/stop/tasks/stop_containers.yml
Normal file
4
ansible/roles/stop/tasks/stop_containers.yml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
- name: Stopping Kolla containers
|
||||
command: /tmp/kolla-stop/tools/stop-containers
|
||||
|
4
ansible/stop.yml
Normal file
4
ansible/stop.yml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
- hosts: all
|
||||
roles:
|
||||
- stop
|
@ -30,6 +30,7 @@ data_files =
|
||||
share/kolla/tools = tools/cleanup-containers
|
||||
share/kolla/tools = tools/cleanup-host
|
||||
share/kolla/tools = tools/cleanup-images
|
||||
share/kolla/tools = tools/stop-containers
|
||||
share/kolla/doc = doc/*
|
||||
share/kolla/etc_examples = etc/*
|
||||
share/kolla = tools/init-runonce
|
||||
|
@ -50,6 +50,7 @@ Commands:
|
||||
post-deploy Do post deploy on deploy node
|
||||
pull Pull all images for containers (only pulls, no running container changes)
|
||||
reconfigure Reconfigure OpenStack service
|
||||
stop Stop Kolla containers
|
||||
certificates Generate self-signed certificate for TLS *For Development Only*
|
||||
upgrade Upgrades existing OpenStack Environment
|
||||
genconfig Generate configuration files for enabled OpenStack services
|
||||
@ -206,6 +207,10 @@ EOF
|
||||
ACTION="Reconfigure OpenStack service"
|
||||
EXTRA_OPTS="$EXTRA_OPTS -e action=reconfigure -e serial=30%"
|
||||
;;
|
||||
(stop)
|
||||
ACTION="Stop Kolla containers"
|
||||
PLAYBOOK="${BASEDIR}/ansible/stop.yml"
|
||||
;;
|
||||
(certificates)
|
||||
ACTION="Generate TLS Certificates"
|
||||
PLAYBOOK="${BASEDIR}/ansible/certificates.yml"
|
||||
|
18
tools/stop-containers
Executable file
18
tools/stop-containers
Executable file
@ -0,0 +1,18 @@
|
||||
#!/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
|
||||
|
||||
if [ -n "$1" ]; then
|
||||
containers_to_stop=($(docker ps | grep -E "$1" | awk '{print $1}'))
|
||||
else
|
||||
containers_to_stop=$(docker ps --filter "label=kolla_version" --format "{{.Names}}" -a)
|
||||
fi
|
||||
|
||||
echo "Stopping containers..."
|
||||
(docker stop -t 30 ${containers_to_stop} 2>&1) > /dev/null
|
||||
|
||||
echo "All containers stopped!"
|
Loading…
Reference in New Issue
Block a user