Ansible role to manage systemd services
Go to file
Heba Naser c38b49df3d Switch to using project-templates
In order to have more centralized configuration, switch the role
to use the project-template instead.

Change-Id: I5e5b39f026341422cfd18d338103b33df8fa11eb
2018-06-20 17:43:43 -04:00
defaults Add timer services 2018-05-02 11:19:50 -05:00
doc Add base role tests 2018-03-19 23:01:15 -05:00
examples Add tests to the service role 2018-03-21 17:47:22 -05:00
handlers Add timer services 2018-05-02 11:19:50 -05:00
html-docs Add tests to the service role 2018-03-21 17:47:22 -05:00
meta Add Bionic testing 2018-05-14 20:46:31 +02:00
releasenotes Add base role tests 2018-03-19 23:01:15 -05:00
tasks Add timer services 2018-05-02 11:19:50 -05:00
templates Add timer services 2018-05-02 11:19:50 -05:00
tests Add timer services 2018-05-02 11:19:50 -05:00
zuul.d Switch to using project-templates 2018-06-20 17:43:43 -04:00
.gitignore Updated from OpenStack Ansible Tests 2018-03-28 09:23:39 +00:00
.gitreview Fix gitreview repo name 2018-03-19 14:48:14 -05:00
ansible-role-requirements.yaml updated things so this role is usable 2018-03-08 17:54:13 -06:00
bindep.txt Add base role tests 2018-03-19 23:01:15 -05:00
CONTRIBUTING.rst renamed /systemd_init/systemd_service/g 2018-03-12 16:45:53 -05:00
LICENSE Initial Commit 2017-05-19 10:24:55 -05:00
manual-test.rc Initial Commit 2017-05-19 10:24:55 -05:00
README.md Add timer services 2018-05-02 11:19:50 -05:00
run_tests.sh Updated from OpenStack Ansible Tests 2018-04-30 05:18:39 +00:00
setup.cfg Add base role tests 2018-03-19 23:01:15 -05:00
setup.py Initial Commit 2017-05-19 10:24:55 -05:00
test-requirements.txt Initial Commit 2017-05-19 10:24:55 -05:00
tox.ini Update run_tests.sh and remove tests-repo-clone.sh 2018-03-27 23:12:28 +01:00
Vagrantfile Updated from OpenStack Ansible Tests 2018-06-06 00:47:01 +00:00

Ansible systemd_service

This Ansible role that installs and configures systemd unit files and all of its corresponding services. This role requires the openstack-ansible-plugins repository to be available on your local system. The Ansible galaxy resolver will not retrieve this role for you. To get this role in place clone the plugins repository before installing this role.

# git clone https://github.com/openstack/openstack-ansible-plugins /etc/ansible/roles/plugins

You can also use the ansible-galaxy command on the ansible-role-requirements.yml file.

# ansible-galaxy install -r ansible-role-requirements.yml

Example playbook
- name: Create a systemd unit file for ServiceX
  hosts: localhost
  become: true
  roles:
    - role: "systemd_service"
      systemd_services:
        # Normal Service
        - service_name: ServiceX
          execstarts:
            - /path/ServiceX --flag1

        # Timer Service (AKA CRON)
        - service_name: TimerServiceX
          execstarts:
            - /path/TimerServiceX --flag1
          timer:
            state: "started"
            options:
              OnBootSec: 30min
              OnUnitActiveSec: 1h
              Persistent: true
      tags:
        - servicex-init