From 13b10ff85b0407fec1f2bf33d56a7687e7388b33 Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Tue, 2 Dec 2025 09:41:49 +0100 Subject: [PATCH] Refactor docker-compose/core and Discourse reset logic - Move docker-container role loading after directory creation in docker-compose/01_core.yml - Extend allowed non-fatal errors for docker network disconnect (network missing, container missing, not found) - Extend allowed non-fatal errors for ./launcher destroy (missing script, missing directory, not found) Details: https://chatgpt.com/share/692ea63e-7738-800f-bdf1-011e96dc28e5 --- roles/docker-compose/tasks/01_core.yml | 10 +++++----- roles/web-app-discourse/tasks/02_reset.yml | 8 ++++++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/roles/docker-compose/tasks/01_core.yml b/roles/docker-compose/tasks/01_core.yml index 7890cae9..9fd74696 100644 --- a/roles/docker-compose/tasks/01_core.yml +++ b/roles/docker-compose/tasks/01_core.yml @@ -9,11 +9,6 @@ include_tasks: 02_reset.yml when: MODE_RESET | bool -- name: "Load docker container role" - include_role: - name: docker-container - when: run_once_docker_container is not defined - - name: "create {{ PATH_DOCKER_COMPOSE_INSTANCES }}" file: path: "{{ PATH_DOCKER_COMPOSE_INSTANCES }}" @@ -21,3 +16,8 @@ mode: 0700 owner: root group: root + +- name: "Load docker container role" + include_role: + name: docker-container + when: run_once_docker_container is not defined diff --git a/roles/web-app-discourse/tasks/02_reset.yml b/roles/web-app-discourse/tasks/02_reset.yml index 4ea0e20f..27176515 100644 --- a/roles/web-app-discourse/tasks/02_reset.yml +++ b/roles/web-app-discourse/tasks/02_reset.yml @@ -33,7 +33,8 @@ disc_net_disconnect.rc != 0 and ('is not connected' not in (disc_net_disconnect.stderr | default('') | lower)) and ('no such network' not in (disc_net_disconnect.stderr | default('') | lower)) and - ('no such container' not in (disc_net_disconnect.stderr | default('') | lower)) + ('no such container' not in (disc_net_disconnect.stderr | default('') | lower)) and + ('not found' not in (disc_net_disconnect.stderr | default('') | lower)) - name: "destroy container '{{ DISCOURSE_CONTAINER }}'" ansible.builtin.command: @@ -43,4 +44,7 @@ changed_when: discourse_destroy.rc == 0 failed_when: > discourse_destroy.rc != 0 and - ('unable to change directory before execution' not in (discourse_destroy.msg | default('') | lower)) + ('unable to change directory before execution' not in (discourse_destroy.msg | default('') | lower)) and + ('no such file or directory' not in (discourse_destroy.msg | default('') | lower)) and + ('no such file or directory' not in (discourse_destroy.stderr | default('') | lower)) and + ('not found' not in (discourse_destroy.stderr | default('') | lower))