aboutsummaryrefslogtreecommitdiff
path: root/tests/check-failure.sh
diff options
context:
space:
mode:
authorMichal Nasiadka <mnasiadka@gmail.com>2026-07-25 11:28:41 +0200
committerMichal Nasiadka <mnasiadka@gmail.com>2026-09-30 08:26:26 +0000
commiteaf673940f5a5a7c9baa5269447034215c2c69ef (patch)
treedf39a91a5b74c65d343352e2fec0d76a1c003d0c /tests/check-failure.sh
parented01be2239b37fc84a8d7843e4e6c9bd57ca1303 (diff)
downloadkolla-ansible-eaf673940f5a5a7c9baa5269447034215c2c69ef.tar.gz
kolla-ansible-eaf673940f5a5a7c9baa5269447034215c2c69ef.zip
CI: Don't fail on Neutron wrapper managed containers
Filter out the ones in state removing and also by name Change-Id: I0ea5522b1a3a3dbb2071ff93f6800f898858f41b Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com> (cherry picked from commit 983379e1e4bc9c0db9965315e0cdfd76aa2921bd)
Diffstat (limited to 'tests/check-failure.sh')
-rwxr-xr-xtests/check-failure.sh30
1 files changed, 23 insertions, 7 deletions
diff --git a/tests/check-failure.sh b/tests/check-failure.sh
index 19d2f071f..ecd3a10ac 100755
--- a/tests/check-failure.sh
+++ b/tests/check-failure.sh
@@ -6,13 +6,25 @@ set -o errexit
# Enable unbuffered output for Ansible in Jenkins.
export PYTHONUNBUFFERED=1
+# neutron_agents_wrappers (see ansible/roles/neutron) spawns per-namespace
+# helper containers (dnsmasq/haproxy/keepalived) that are not managed by
+# Kolla and can be created/removed by Neutron independently of the deploy,
+# e.g. neutron_dhcp_agent_dnsmasq_qdhcp-<uuid>. Ignore them in these checks.
+IGNORE_CONTAINERS_REGEX='_(qdhcp|qrouter|ovnmeta)-'
+
+filter_unmanaged_containers() {
+ grep -Ev "$IGNORE_CONTAINERS_REGEX" || true
+}
+
check_podman_failures() {
failed_containers=$(sudo podman ps -a --format "{{.Names}}" \
--filter status=created \
- --filter status=paused \
--filter status=exited \
- --filter status=unknown)
+ --filter status=paused \
+ --filter status=removing \
+ --filter status=unknown \
+ | filter_unmanaged_containers)
for container in $failed_containers; do
sudo podman inspect $container
@@ -28,7 +40,8 @@ check_podman_unhealthies() {
done
unhealthy_containers=$(sudo podman ps -a --format "{{.Names}}" \
- --filter health=unhealthy)
+ --filter health=unhealthy \
+ | filter_unmanaged_containers)
for container in $unhealthy_containers; do
echo "Discovered unhealthy container: $container"
@@ -50,10 +63,12 @@ check_docker_failures() {
# are treated as failure.
failed_containers=$(sudo docker ps -a --format "{{.Names}}" \
--filter status=created \
- --filter status=restarting \
- --filter status=paused \
--filter status=exited \
- --filter status=dead)
+ --filter status=dead \
+ --filter status=paused \
+ --filter status=removing \
+ --filter status=restarting \
+ | filter_unmanaged_containers)
for container in $failed_containers; do
sudo docker inspect $container
@@ -69,7 +84,8 @@ check_docker_unhealthies() {
done
unhealthy_containers=$(sudo docker ps -a --format "{{.Names}}" \
- --filter health=unhealthy)
+ --filter health=unhealthy \
+ | filter_unmanaged_containers)
for container in $unhealthy_containers; do
echo "Discovered unhealthy container: $container"