mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-09 04:06:42 +00:00
87beaced7b put environment: {} on the interpreter bootstrap to isolate it
from the play's environment block. It does not. Ansible declares
environment as FieldAttribute(isa='list', extend=True, prepend=True), so
the task's value is combined with the play's rather than replacing it, and
the action plugin skips an empty dict when exporting. The task has been
running with the full CA_TRUST block all along.
Removing it changes no behaviour and removes a line that claims the
opposite of what it does. The real constraint it was reaching for: nothing
in the play's environment may require facts, because the first task now
runs before they are gathered. Everything there is literal today —
DOMAIN_PRIMARY, DIR_BIN, and the CA_TRUST members that resolve through
them — and DOCKER_IN_CONTAINER, the one fact-dependent variable in
group_vars, is not in that block.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
39 lines
1.5 KiB
YAML
39 lines
1.5 KiB
YAML
---
|
|
- name: "Execute Infinito.Nexus Play"
|
|
hosts: all
|
|
any_errors_fatal: true
|
|
environment:
|
|
CA_TRUST_CERT_HOST: "{{ CA_TRUST.cert_host }}"
|
|
CA_TRUST_WRAPPER_HOST: "{{ CA_TRUST.wrapper_host }}"
|
|
CA_TRUST_NAME: "{{ CA_TRUST.trust_name }}"
|
|
CA_TRUST_CERT_CONTAINER: "{{ CA_TRUST.inject_cert_container }}"
|
|
CA_TRUST_WRAPPER_CONTAINER: "{{ CA_TRUST.inject_wrapper_container }}"
|
|
CA_CONTAINER_ENABLED: "{{ CA_CONTAINER_ENABLED | int }}"
|
|
COMPOSE_HTTP_TIMEOUT: "600"
|
|
DOCKER_CLIENT_TIMEOUT: "600"
|
|
DOCKER_BUILDKIT: "{{ BUILDKIT_ENABLED | int }}"
|
|
COMPOSE_DOCKER_CLI_BUILD: "{{ BUILDKIT_ENABLED | int }}"
|
|
INFINITO_RESCUE_DIAGNOSTICS_DIR: "{{ DIR_RESCUE_DIAGNOSTICS }}"
|
|
CONTAINER_EXEC_TIMEOUT: "{{ SYS_TIMEOUT_CONTAINER_EXEC }}"
|
|
gather_facts: false
|
|
pre_tasks:
|
|
- name: "🐍 Link the managed Python interpreter before any module needs it"
|
|
ansible.builtin.script: scripts/system/python/managed_interpreter.sh
|
|
register: managed_interpreter
|
|
changed_when: "'linked' in managed_interpreter.stdout"
|
|
|
|
- name: "🔍 Gather facts"
|
|
ansible.builtin.setup:
|
|
|
|
tasks:
|
|
- name: "Load 'constructor' tasks"
|
|
include_tasks: "tasks/stages/01_constructor.yml"
|
|
|
|
- name: Load host-type stages
|
|
ansible.builtin.include_tasks: "tasks/stages/02_{{ item }}.yml"
|
|
loop: "{{ group_names | get_deployment_types_from_groups }}"
|
|
|
|
- name: "Load 'destructor' tasks"
|
|
include_tasks: "tasks/stages/03_destructor.yml"
|
|
become: true
|