01_reset.ymlΒΆ

---
- name: "πŸ—„οΈ Disconnect DB container from Discourse networks"
  ansible.builtin.command:
    cmd: "container network disconnect {{ discourse_network_item }} {{ lookup('database', application_id, 'container') }}"
  loop:
    - "{{ DISCOURSE_NETWORK }}"
    - "{{ DISCOURSE_PG_NETWORK }}"
  loop_control:
    loop_var: discourse_network_item
    label: "{{ discourse_network_item }}"
  register: disc_net_disconnect
  changed_when: disc_net_disconnect.rc == 0
  failed_when: >
    disc_net_disconnect.rc != 0 and
    not (disc_net_disconnect.stderr | default('') | docker_network_noop('disconnect'))

- name: "πŸ“¦ destroy container '{{ DISCOURSE_CONTAINER }}'"
  ansible.builtin.command:
    cmd: "./launcher destroy {{ DISCOURSE_CONTAINER }}"
    chdir: "{{ DISCOURSE_REPOSITORY_DIR }}"
  register: discourse_destroy
  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)) 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))