diff --git a/roles/sys-ctl-alm-compose/tasks/01_core.yml b/roles/sys-ctl-alm-compose/tasks/01_core.yml index 87820dd2..8fb91f48 100644 --- a/roles/sys-ctl-alm-compose/tasks/01_core.yml +++ b/roles/sys-ctl-alm-compose/tasks/01_core.yml @@ -1,9 +1,7 @@ - name: "Include dependent services for '{{ system_service_id }}'" include_role: name: '{{ item }}' - loop: - - sys-ctl-alm-telegram - - sys-ctl-alm-email + loop: '{{ SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES }}' vars: flush_handlers: true system_service_timer_enabled: false diff --git a/roles/sys-ctl-alm-compose/vars/main.yml b/roles/sys-ctl-alm-compose/vars/main.yml index 916ce01b..6f69f094 100644 --- a/roles/sys-ctl-alm-compose/vars/main.yml +++ b/roles/sys-ctl-alm-compose/vars/main.yml @@ -1,7 +1,16 @@ system_service_id: sys-ctl-alm-compose@ -SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES: +SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES_BASE: - 'sys-ctl-alm-email' - 'sys-ctl-alm-telegram' +SYSTEMCTL_ALARM_EMAIL_ENABLED: "{{ users['no-reply'].mailu_token | default(false) and not MODE_RESET }}" + +SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES: >- + {{ + SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES_BASE + if SYSTEMCTL_ALARM_EMAIL_ENABLED else + SYSTEMCTL_ALARM_COMPOSER_SUBSERVICES_BASE | reject('equalto', 'sys-ctl-alm-email') | list + }} + SYSTEMCTL_ALARM_COMPOSER_DUMMY_MESSAGE: "[Info] Dummy Message: No Failure; Ansible is initializing {{ SOFTWARE_NAME }} on {{ inventory_hostname }}." \ No newline at end of file diff --git a/roles/sys-service/tasks/04_files.yml b/roles/sys-service/tasks/04_files.yml index 4a1bc9bc..0fd01b8c 100644 --- a/roles/sys-service/tasks/04_files.yml +++ b/roles/sys-service/tasks/04_files.yml @@ -12,7 +12,7 @@ src: "{{ system_service_script_src }}" dest: "{{ [system_service_script_dir, (system_service_script_src | basename | regex_replace('\\.j2$', ''))] | path_join }}" mode: "0755" - notify: refresh systemctl service # Just refresh service for testing that script is working in debug mode. In productive due to async it shouldn't make a difference + notify: "{{ 'reload system daemon' if system_service_is_template | bool else 'refresh systemctl service' }}" when: system_service_script_src.endswith('.j2') - name: "copy raw file" @@ -21,5 +21,5 @@ dest: "{{ [system_service_script_dir, (system_service_script_src | basename)] | path_join }}" mode: "0755" when: not system_service_script_src.endswith('.j2') - notify: refresh systemctl service # Just refresh service for testing that script is working in debug mode. In productive due to async it shouldn't make a difference + notify: "{{ 'reload system daemon' if system_service_is_template | bool else 'refresh systemctl service' }}" when: system_service_copy_files | bool diff --git a/roles/sys-service/tasks/05_service.yml b/roles/sys-service/tasks/05_service.yml index 3812cc43..ff1f43e4 100644 --- a/roles/sys-service/tasks/05_service.yml +++ b/roles/sys-service/tasks/05_service.yml @@ -24,10 +24,6 @@ {{ system_service_role_dir }}/templates/ and {{ role_path }}/templates/. when: MODE_ASSERT | bool -- name: Flag whether @-template is used - set_fact: - system_service_uses_at: "{{ system_service_id.endswith('@') }}" - - name: "setup systemctl '{{ system_service_id }}'" template: src: "{{ system_service_template_src }}" @@ -35,7 +31,7 @@ owner: root group: root mode: '0644' - notify: "{{ 'reload system daemon' if system_service_uses_at else 'refresh systemctl service' }}" + notify: "{{ 'reload system daemon' if system_service_is_template | bool else 'refresh systemctl service' }}" - name: refresh systemctl service when SYS_SERVICE_ALL_ENABLE block: @@ -45,6 +41,6 @@ - name: refresh systemctl service command: /bin/true notify: refresh systemctl service - when: not system_service_uses_at + when: not system_service_is_template | bool when: system_service_force_flush | bool diff --git a/roles/sys-service/vars/main.yml b/roles/sys-service/vars/main.yml index 836ff833..15fb4dd6 100644 --- a/roles/sys-service/vars/main.yml +++ b/roles/sys-service/vars/main.yml @@ -1,5 +1,8 @@ UNIT_SUFFIX_REMOVER_PACKAGE: "unsure" + +# meta system_service_name: "{{ system_service_id | get_service_name(SOFTWARE_NAME) }}" +system_service_is_template: "{{ system_service_id.endswith('@') }}" ## Paths system_service_role_name: "{{ system_service_id | regex_replace('@','') }}" diff --git a/roles/sys-svc-msmtp/tasks/main.yml b/roles/sys-svc-msmtp/tasks/main.yml index 360ae0fb..bae6aaa2 100644 --- a/roles/sys-svc-msmtp/tasks/main.yml +++ b/roles/sys-svc-msmtp/tasks/main.yml @@ -2,6 +2,5 @@ include_tasks: 01_core.yml when: - run_once_sys_svc_msmtp is not defined or run_once_sys_svc_msmtp is false - # Just execute when mailu_token is defined - users['no-reply'].mailu_token is defined - - not MODE_RESET | bool \ No newline at end of file + - not MODE_RESET | bool \ No newline at end of file