From 7dd29cc44fadb0a76c235879a35bc3fffc814a55 Mon Sep 17 00:00:00 2001 From: tyler Date: Fri, 5 Jun 2026 19:09:40 -0600 Subject: [PATCH] fix: use separate docker ps calls to remove containers by name prefix Multiple --filter name= flags are ANDed in docker ps, so combining route_commerce_ and route-commerce- in one call matched nothing and left db/minio running. Split into two calls, dedup with sort -u. Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/deploy.yml | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 7f93259..752cc16 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -42,17 +42,21 @@ jobs: # Hard-stop the previous stack by name — works even if docker-compose.yml # is missing or stale from a prior failed deploy. - docker ps -aq --filter "name=route_commerce_" --filter "name=route-commerce-" | xargs -r docker rm -f 2>/dev/null || true - docker compose -f $APP_DIR/docker-compose.yml down --remove-orphans 2>/dev/null || true - # Remove the network explicitly so Docker allocates a fresh subnet. + # Note: multiple --filter name= flags are ANDed; use two separate calls. + { + docker ps -aq --filter "name=route_commerce_" + docker ps -aq --filter "name=route-commerce-" + } | sort -u | xargs -r docker rm -f + # Network can only be removed after all containers are detached. docker network rm route-commerce_default 2>/dev/null || true - sleep 3 + sleep 2 # Verify all route-commerce containers are gone before picking a port. - REMAINING=$(docker ps -aq --filter "name=route_commerce_" --filter "name=route-commerce-" | wc -l) + REMAINING=$({ docker ps -aq --filter "name=route_commerce_"; docker ps -aq --filter "name=route-commerce-"; } | sort -u | wc -l) if [ "$REMAINING" -gt 0 ]; then echo "ERROR: $REMAINING route-commerce container(s) still running after teardown" - docker ps --filter "name=route_commerce_" --filter "name=route-commerce-" + docker ps --filter "name=route_commerce_" + docker ps --filter "name=route-commerce-" exit 1 fi