mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-10-25 07:27:23 +00:00
Refactor async execution handling across LDAP and Nextcloud roles
- Introduce global async configuration in group_vars/all/00_general.yml:
- ASYNC_ENABLED (disabled in debug mode)
- ASYNC_TIME (default 300s, omitted if async disabled)
- ASYNC_POLL (0 for async fire-and-forget, 10 for sync mode)
- Replace hardcoded async/poll values with global vars in:
- svc-db-openldap (03_users.yml, 04_update.yml)
- web-app-mig (02_build_data.yml)
- web-app-nextcloud (03_admin.yml, 04_system_config.yml, 05_plugin.yml,
06_plugin_routines.yml, 07_plugin_enable_and_configure.yml)
- Guard changed_when and failed_when conditions to only evaluate in synchronous
mode to avoid accessing undefined rc/stdout/stderr in async runs
https://chatgpt.com/share/689cd8cc-7fbc-800f-bd06-a667561573bf
This commit is contained in:
@@ -29,8 +29,11 @@
|
||||
when: plugin_vars_file.stat.exists
|
||||
register: config_set_shell
|
||||
changed_when: >
|
||||
not ASYNC_ENABLED and
|
||||
(config_set_shell.stdout | default('')) is search(' set to ')
|
||||
failed_when: config_set_shell.rc != 0
|
||||
failed_when: not ASYNC_ENABLED and config_set_shell.rc != 0
|
||||
async: "{{ ASYNC_TIME if ASYNC_ENABLED else omit }}"
|
||||
poll: "{{ ASYNC_POLL if ASYNC_ENABLED else omit }}"
|
||||
|
||||
- name: Check if {{nextcloud_control_node_plugin_tasks_directory}}{{ plugin_key }}.yml exists
|
||||
stat:
|
||||
|
||||
Reference in New Issue
Block a user