54 lines
1.2 KiB
YAML
54 lines
1.2 KiB
YAML
---
|
|
# tasks file for service
|
|
|
|
- name: include assert.yml
|
|
import_tasks: assert.yml
|
|
run_once: yes
|
|
delegate_to: localhost
|
|
|
|
- name: install required packages
|
|
ansible.builtin.package:
|
|
name: "{{ service_required_packages }}"
|
|
state: present
|
|
notify:
|
|
- gather facts
|
|
|
|
- name: configure systemd service
|
|
ansible.builtin.template:
|
|
src: "systemd.j2"
|
|
dest: "/etc/systemd/system/{{ item.name }}.service"
|
|
mode: "0644"
|
|
when:
|
|
- ansible_service_mgr == "systemd"
|
|
notify:
|
|
- systemctl daemon-reload
|
|
loop: "{{ service_list }}"
|
|
loop_control:
|
|
label: "{{ item.name }}"
|
|
|
|
- name: configure sysvinit service
|
|
ansible.builtin.template:
|
|
src: "sysvinit.j2"
|
|
dest: "/etc/init.d/{{ item.name }}"
|
|
mode: "0755"
|
|
when:
|
|
- ansible_service_mgr in [ "sysvinit", "upstart", "openrc" ]
|
|
loop: "{{ service_list }}"
|
|
loop_control:
|
|
label: "{{ item.name }}"
|
|
|
|
- name: manage service
|
|
ansible.builtin.service:
|
|
name: "{{ item.name }}"
|
|
state: "{{ item.state | default(omit) }}"
|
|
enabled: "{{ item.enabled | default(omit) }}"
|
|
loop: "{{ service_list }}"
|
|
loop_control:
|
|
label: "{{ item.name }}"
|
|
when:
|
|
- item.state is defined or
|
|
item.enabled is defined
|
|
|
|
- name: flush handlers
|
|
ansible.builtin.meta: flush_handlers
|