fix: Use immutable operations for Docker daemon config merge
Some checks failed
🚀 Build & Deploy Image / Determine Build Necessity (push) Successful in 55s
Security Vulnerability Scan / Check for Dependency Changes (push) Successful in 27s
🚀 Build & Deploy Image / Build Runtime Base Image (push) Successful in 13s
🚀 Build & Deploy Image / Run Tests & Quality Checks (push) Has been skipped
Security Vulnerability Scan / Composer Security Audit (push) Has been skipped
🚀 Build & Deploy Image / Build Docker Image (push) Successful in 12s
🚀 Build & Deploy Image / Auto-deploy to Staging (push) Failing after 1m26s
🚀 Build & Deploy Image / Auto-deploy to Production (push) Has been skipped

- Replace append() with list concatenation (+ operator)
- Use combine filter instead of update() method
- Avoids 'unsafe append' error with AnsibleLazyTemplateList
- All operations are now immutable and safe
This commit is contained in:
2025-11-08 16:09:56 +01:00
parent bf25f088c0
commit 294e6721eb

View File

@@ -192,16 +192,19 @@
set_fact: set_fact:
docker_daemon_config_dict: "{{ docker_daemon_config.content | b64decode | from_json if (docker_daemon_json.stat.exists and docker_daemon_config.content is defined) else {} }}" docker_daemon_config_dict: "{{ docker_daemon_config.content | b64decode | from_json if (docker_daemon_json.stat.exists and docker_daemon_config.content is defined) else {} }}"
- name: Build insecure registries list
set_fact:
insecure_registries_list: >-
{%- set existing = docker_daemon_config_dict.get('insecure-registries', []) | list -%}
{%- if 'git.michaelschiemer.de:5000' not in existing -%}
{{ existing + ['git.michaelschiemer.de:5000'] }}
{%- else -%}
{{ existing }}
{%- endif -%}
- name: Merge insecure registry into Docker daemon config - name: Merge insecure registry into Docker daemon config
set_fact: set_fact:
docker_daemon_config_merged: >- docker_daemon_config_merged: "{{ docker_daemon_config_dict | combine({'insecure-registries': insecure_registries_list}) }}"
{%- set config = docker_daemon_config_dict.copy() -%}
{%- set existing_registries = config.get('insecure-registries', []) | list -%}
{%- if 'git.michaelschiemer.de:5000' not in existing_registries -%}
{%- set _ = existing_registries.append('git.michaelschiemer.de:5000') -%}
{%- endif -%}
{%- set _ = config.update({'insecure-registries': existing_registries}) -%}
{{ config }}
- name: Update Docker daemon.json with insecure registry - name: Update Docker daemon.json with insecure registry
copy: copy: