Ansible role to manage systemd services
1f7091a11c
This functionality is pretty neat and used widely if you need to pass specific argument to the unit service, but rest of the parameters can be left intact. Change-Id: I6eb80ac0f9f0257402697a255518bb2c66d0dfd5 |
||
---|---|---|
defaults | ||
doc | ||
examples | ||
handlers | ||
html-docs | ||
meta | ||
releasenotes | ||
tasks | ||
templates | ||
tests | ||
zuul.d | ||
.gitignore | ||
.gitreview | ||
ansible-role-requirements.yaml | ||
bindep.txt | ||
CONTRIBUTING.rst | ||
LICENSE | ||
manual-test.rc | ||
README.md | ||
run_tests.sh | ||
setup.cfg | ||
setup.py | ||
tox.ini | ||
Vagrantfile |
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