Files
computer-playbook/roles/sys-svc-objstore/tasks/main.yml
kevinveenbirkenbachandClaude Opus 4.8 131231ee28 fix(loader): stop consumer compose_mode_force from leaking into lazy providers
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>
2026-07-15 16:07:39 +02:00

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: ""