Kevin Carter 79e6cdb138 Add docs and tests to the environment capabilities
Systemd service units may require additional environment settings to
be effective. This patch adds two new variables to the systemd_service
role which will allow operators to add environment variables to a
given service as needed. These options be be supplied globally or
from within a service definition.

Documentation on how these options are used has been added to the
defaults file.

A test has been added to ensure we're exercising the new capability.

Change-Id: If4ea993b7173ac3218f051a1d4f0fba9aeb838ea
Signed-off-by: Kevin Carter <kevin@cloudnull.com>
2019-01-11 13:26:30 -06:00
2018-07-02 08:38:48 +01:00
2018-03-21 17:47:22 -05:00
2018-03-21 17:47:22 -05:00
2018-05-14 20:46:31 +02:00
2018-08-10 16:44:22 +00:00
2018-12-27 17:52:57 -06:00
2018-03-19 14:48:14 -05:00
2018-03-19 23:01:15 -05:00
2017-05-19 10:24:55 -05:00
2017-05-19 10:24:55 -05:00
2018-06-29 14:58:07 +08:00
2017-05-19 10:24:55 -05:00
2018-11-05 06:42:26 +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

Release notes for the project can be found at: https://docs.openstack.org/releasenotes/ansible-role-systemd_service

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
Description
Ansible role to manage systemd services
Readme 2.3 MiB
Languages
Python 60%
Jinja 40%