ansible-development-environ.../roles/service/tasks/main.yml

54 lines
1.3 KiB
YAML

---
# tasks file for service
- name: import assert.yml
ansible.builtin.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