mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
web-app-matrix forces compose mode for its own ansible flavor; when it was the first consumer to lazy-load the object-store provider, the include_role inherited that override and web-app-seaweedfs came up via compose up instead of docker stack deploy, so seaweedfs_seaweedfs never existed and the next consumer's bucket provisioning died on resolve-container-id. Neutralize compose_mode_force on the lazy provider includes of sys-svc-objstore and sys-svc-engine, matching the neutralization sys-svc-rdbms already carries. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
40 lines
1.5 KiB
YAML
40 lines
1.5 KiB
YAML
---
|
|
# nocheck: run-once
|
|
- name: "🧊 For '{{ application_id }}': Freeze object-store consumer id"
|
|
ansible.builtin.set_fact:
|
|
_objstore_consumer_id: "{{ objstore_consumer_id | default(application_id) }}"
|
|
changed_when: false
|
|
|
|
- name: "📁 For '{{ _objstore_consumer_id }}': Provision on central object-store"
|
|
vars:
|
|
_provider_role: "{{ lookup('objstore', _objstore_consumer_id, 'id') }}"
|
|
when: lookup('objstore', _objstore_consumer_id, 'shared') | bool
|
|
block:
|
|
- name: "🧩 Load object-store provider '{{ _provider_role }}' (lazy)"
|
|
ansible.builtin.include_role:
|
|
name: "{{ _provider_role }}"
|
|
vars:
|
|
application_id: "{{ _provider_role }}"
|
|
domain: "{{ lookup('domain', _provider_role) }}"
|
|
database_consumer_id: "{{ _provider_role }}"
|
|
compose_repository_url: "{{ '' }}"
|
|
compose_repository_ref: "{{ '' }}"
|
|
compose_repository_pull: false
|
|
compose_mode_force: ""
|
|
when: >-
|
|
lookup(
|
|
'vars',
|
|
'run_once_' ~ (_provider_role | replace('-', '_')),
|
|
default='__missing__'
|
|
) == '__missing__'
|
|
|
|
- name: "🎬 Init '{{ _objstore_consumer_id }}' on provider '{{ _provider_role }}'"
|
|
ansible.builtin.include_role:
|
|
name: "{{ _provider_role }}"
|
|
vars:
|
|
application_id: "{{ _provider_role }}"
|
|
objstore_init: true
|
|
objstore_consumer_id: "{{ _objstore_consumer_id }}"
|
|
compose_repository_pull: false
|
|
compose_mode_force: ""
|