fix(swarm-test): keep the lab roles out of the disable set

extend_inventory._host_topology writes svc-swarm-node and
svc-storage-nfs-server into devices.yml unconditionally — without them
there is no swarm and no NFS export, so the throwaway cluster cannot
exist. Deriving the disable set from dynamic_services put their service
keys node and nfs-server on that same list, and the deploy aborted on
the provider-role branch of the consistency guard.

That branch never reads shared, so the force-shared fix cannot reach it:
with clean host_vars the guard still returns these two conflicts, and it
raises on any non-empty list.

Keep both keys instead of relaxing the guard — the guard is reporting a
real contradiction between the disable set and the lab topology, and the
disable set is the wrong side. roundtrip drives the same swarm-zombie
and extend_inventory path, so it needs the same keep-keys.

The keys are copied from _host_topology by hand; deriving them from it
would remove the duplication, at the cost of a helper this does not need
yet.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
kevinveenbirkenbachandClaude Opus 5 committed 2026-08-08 08:35:37 +02:00
1 parent c634368957
commit db87a1a1ce
2 files changed
+2 -2

No files matched your search

+1 -1
View File
@@ -15,7 +15,7 @@ docker image inspect "${node_image}" >/dev/null 2>&1 || {
}
echo "Deploying the MariaDB database role ${MARIADB_APP} on a throwaway swarm cluster."
make swarm-zombie app="${MARIADB_APP}" disable="$(variable_services mariadb)"
make swarm-zombie app="${MARIADB_APP}" disable="$(variable_services mariadb node nfs-server)"
echo "Releasing the swarm cluster."
make swarm-down name="${MARIADB_APP}"
+1 -1
View File
@@ -9,4 +9,4 @@ source "${SCRIPT_DIR}/utils/common.sh"
cd "${REPO_ROOT}"
echo "Running the full compose+swarm roundtrip against the PostgreSQL database role ${POSTGRES_APP}."
make roundtrip apps="${POSTGRES_APP}" disable="$(variable_services postgres)"
make roundtrip apps="${POSTGRES_APP}" disable="$(variable_services postgres node nfs-server)"