Permalink
Switch branches/tags
v3.11.0 v3.11.0-alpha.0 v3.11 v3.10.0 v3.10.0-rc.0 v3.0.2-2 v3.0.2-1 v3.0.1-1 v3.0.0 v3.0.0-rc v3.0.0-8 v3.0.0-7 v3.0.0-6 v3.0.0-5 v3.0.0-4 v3.0.0-3 v3.0.0-2 v3.0.0-1 v3-beta2-03-09-15 openshift-ansible-v3.6.77-stage openshift-ansible-v3.5.5.17-1 openshift-ansible-v3.4.1.26-1 openshift-ansible-v3.3.1.27-1 openshift-ansible-inventory-0.0.11-1 openshift-ansible-inventory-0.0.10-1 openshift-ansible-inventory-0.0.9-1 openshift-ansible-inventory-0.0.8-1 openshift-ansible-inventory-0.0.7-1 openshift-ansible-inventory-0.0.6-1 openshift-ansible-inventory-0.0.5-1 openshift-ansible-inventory-0.0.4-1 openshift-ansible-inventory-0.0.3-1 openshift-ansible-inventory-0.0.2-1 openshift-ansible-inventory-0.0.1-1 openshift-ansible-bin-0.0.21-1 openshift-ansible-bin-0.0.20-1 openshift-ansible-bin-0.0.19-1 openshift-ansible-bin-0.0.18-1 openshift-ansible-bin-0.0.17-1 openshift-ansible-bin-0.0.16-1 openshift-ansible-bin-0.0.15-1 openshift-ansible-bin-0.0.14-1 openshift-ansible-bin-0.0.13-1 openshift-ansible-bin-0.0.12-1 openshift-ansible-bin-0.0.11-1 openshift-ansible-bin-0.0.10-1 openshift-ansible-bin-0.0.9-1 openshift-ansible-bin-0.0.8-1 openshift-ansible-bin-0.0.7-1 openshift-ansible-bin-0.0.6-1 openshift-ansible-bin-0.0.5-1 openshift-ansible-bin-0.0.4-1 openshift-ansible-bin-0.0.3-1 openshift-ansible-bin-0.0.2-1 openshift-ansible-bin-0.0.1-1 openshift-ansible-Unexpected.0.0.0.0-1 openshift-ansible-Unexpected-1 openshift-ansible-4.0.0-0.44.0 openshift-ansible-4.0.0-0.43.0 openshift-ansible-4.0.0-0.42.0 openshift-ansible-4.0.0-0.41.0 openshift-ansible-4.0.0-0.40.0 openshift-ansible-4.0.0-0.39.0 openshift-ansible-4.0.0-0.38.0 openshift-ansible-4.0.0-0.37.0 openshift-ansible-4.0.0-0.36.0 openshift-ansible-4.0.0-0.35.0 openshift-ansible-4.0.0-0.34.0 openshift-ansible-4.0.0-0.33.0 openshift-ansible-4.0.0-0.32.0 openshift-ansible-4.0.0-0.31.0 openshift-ansible-4.0.0-0.30.0 openshift-ansible-4.0.0-0.29.0 openshift-ansible-4.0.0-0.28.0 openshift-ansible-4.0.0-0.27.0 openshift-ansible-4.0.0-0.26.0 openshift-ansible-4.0.0-0.25.0 openshift-ansible-4.0.0-0.24.0 openshift-ansible-4.0.0-0.23.0 openshift-ansible-4.0.0-0.22.0 openshift-ansible-4.0.0-0.21.0 openshift-ansible-4.0.0-0.20.0 openshift-ansible-4.0.0-0.19.0 openshift-ansible-4.0.0-0.18.0 openshift-ansible-4.0.0-0.17.0 openshift-ansible-4.0.0-0.16.0 openshift-ansible-4.0.0-0.15.0 openshift-ansible-4.0.0-0.14.0 openshift-ansible-4.0.0-0.13.0 openshift-ansible-4.0.0-0.12.0 openshift-ansible-4.0.0-0.11.0 openshift-ansible-4.0.0-0.10.0 openshift-ansible-4.0.0-0.9.0 openshift-ansible-4.0.0-0.8.0 openshift-ansible-4.0.0-0.7.0 openshift-ansible-4.0.0-0.6.0 openshift-ansible-4.0.0-0.5.0 openshift-ansible-4.0.0-0.4.0 openshift-ansible-4.0.0-0.3.0 openshift-ansible-4.0.0-0.2.0
Nothing to show
Find file Copy path
38 lines (31 sloc) 1.07 KB
#!/bin/bash
set -euo pipefail
# Restart the named component by stopping its base container.
if [[ -z "${1-}" ]]; then
echo "A component name like 'api', 'etcd', or 'controllers' must be specified." 1>&2
exit 1
fi
types=( "atomic-openshift" "origin" )
for type in "${types[@]}"; do
if systemctl cat "${type}-master-${1}.service" &>/dev/null; then
systemctl restart "${type}-master-${1}.service"
exit 0
fi
done
# TODO: move to cri-ctl
# TODO: short term hack for cri-o
# Get a child container name to wait for it to stop
child_container=$(docker ps -l -q --filter "label=io.kubernetes.container.name=${1}")
container=$(docker ps -l -q --filter "label=openshift.io/component=${1}" --filter "label=io.kubernetes.container.name=POD")
if [[ -z "${container}" ]]; then
echo "Component ${1} is already stopped" 1>&2
exit 0
fi
# Stop the pod
docker stop "${container}" --time 30 >/dev/null
# Wait for child container to change state
if [[ -z "${child_container}" ]]; then
echo "Component ${1} is already stopped" 1>&2
exit 0
fi
exec timeout 60 docker wait $child_container