Ensure Dockerfile base images are refreshed during the no-cache build
fallback by unconditionally enabling --pull. This avoids stale FROM
layers when MODE_UPDATE is false and aligns build behavior with the
preceding compose pull strategy.
https://chatgpt.com/share/69847205-2c78-800f-9a29-2d7ff541a854
Replace attribute-style access (lookup('database', app).volume/.host/etc.)
with explicit want= lookups across docker-compose and matrix templates
to align with updated database lookup plugin interface.
https://chatgpt.com/share/6983ddfd-aee4-800f-bce9-18eca2144f25
- group central database creation and backup seeding into a single block
- resolve database metadata (type, instance, host, etc.) via lookup('database')
- remove legacy per-task central DB handling
- prepare sys-svc-rdbms for unified database plugin usage
https://chatgpt.com/share/6983cd01-a430-800f-9fe7-36551b14d30d
- Extend database lookup with `id` (e.g. svc-db-postgres, svc-db-mariadb)
- Return empty id when no database type is configured
- Replace dynamic 'svc-db-{{ type }}' constructions with lookup-provided id
- Update docker network templates to rely on lookup database id
- Adjust sys-svc-rdbms to load DB role via lookup id
- Extend unit tests to assert correct id behavior for all cases
This makes DB role resolution explicit, safer, and less error-prone.
https://chatgpt.com/share/6983c6de-c5f8-800f-a5e3-786f90e0ebc1
Expose database.enabled and database.shared via the database lookup plugin.
Use shared flag consistently to determine central DB behavior and surface both
flags even when no database type is configured. Update unit tests to cover the
new fields and verify behavior for dedicated vs. shared databases.
https://chatgpt.com/share/6983bcf6-85bc-800f-a0fc-5684b9078469
- Move get_docker_paths() implementation from filter_plugins to module_utils
to make it reusable by filters and lookup plugins (single source of truth)
- Adapt filter_plugins/get_docker_paths.py to re-export the shared util
- Add new lookup plugin "database" resolving DB settings from applications config
- Fix unit test patching: patch module_utils.docker_paths_utils.get_entity_name
instead of filter module, because imports are now bound at util level
- Add comprehensive unit tests for database lookup covering all helper-variable cases
https://chatgpt.com/share/6983b526-00dc-800f-b3a0-b71e4104d0fc
CoreDNS was forwarding external queries via its own /etc/resolv.conf,
which caused SERVFAIL in systemd-based CI containers due to a broken
Docker/host resolver chain.
Switch to explicit upstream DNS servers (1.1.1.1, 8.8.8.8) to ensure
reliable external name resolution (e.g. pypi.org, google.com) in CI.
https://chatgpt.com/share/69837671-6884-800f-8ded-706b35e82bab
- Introduce database_consumer_id_passed to avoid fact/vars collisions
- Explicitly pass consumer context into svc-db-postgres via include_role
- Strengthen context assertion in postgres init tasks
- Move once-flag include to the beginning of postgres core tasks
- Make POSTGRES_EXEC_SHELL non-interactive by injecting PGPASSWORD
- Improve test coverage to detect facts overridden by include-time vars
https://chatgpt.com/share/69833e56-93a0-800f-8e3d-d970cf87daef
Add an integration test that statically scans all Ansible task files under
roles/*/tasks/** and tasks/** and fails if a variable set via set_fact is
also passed via vars: on include/import tasks or roles.
This guards against scope leaks and accidental host-fact overrides caused
by mixing context variables with set_fact.
https://chatgpt.com/share/6983220c-29f4-800f-bb9b-5145b1c1cf75
- Align database config key spacing and add missing newline in config/main.yml
- Run socket readiness check as OS user postgres
- Introduce POSTGRES_EXEC_SHELL helper and use it for TCP/auth debug psql calls
- Update sys-svc-rdbms comment (behavior note seems outdated)
https://chatgpt.com/share/6982a0b9-be28-800f-b5dc-d489b1e4eed8
- Add local dedicated_distro.sh implementing the same two-pass deploy logic
as CI (ASYNC_ENABLED=false/true) without destructive cleanup
- Switch test-local-dedicated to pure ENV-based interface (TEST_DEPLOY_TYPE, APP)
- Refactor local deploy helpers into utils/ structure:
- move reset.sh to utils/reset.sh
- split cleanup into targeted purge helpers (entity, web, lib)
- Update Makefile targets to reflect new structure and workflows
https://chatgpt.com/share/6982804e-1f60-800f-809e-629d0fe62de3
- Add purge/entity/all.sh orchestrator with --wipe-data-only and --db-only
- Extract DB purge logic into purge/entity/db.sh (best-effort Postgres + MariaDB)
- Add purge/entity/compose.sh to bring stacks down with volumes removed
- Add purge/entity/dir.sh to remove stack directory and volumes folder
- Rename purge_web.sh to purge/web.sh for consistent layout
https://chatgpt.com/share/69826b33-1470-800f-9def-6b4289713e2f