Files
gitea-pages/engineering-guide/puppet/components/systemd.rst

1.6 KiB

systemd

This module provides defined types to create systemd units. It automatically takes care of reloading systemd when necessary, automatically generates correct names for .mount units, etc.

The parameters of defined types are usually similar to the systemd option names that they represent. Camel case (as used by systemd) is transformed to the lowercase-with-underscore style usually used with Puppet, e.g. OnCalendar in systemd becomes on_calendar.

Parameters

default_target

The systemd default target, i.e. usually one of multi-user.target or graphical.target.

Defined Types

All units support the following parameters for the [Unit] or [Install] sections:

  • description
  • wanted_by

systemd::timer

Creates a timer unit.

Parameters:

  • on_calendar
  • unit

systemd::mount

Creates a mount unit. The name of the unit file has to be (an encoded form of) the mountpoint, which is automatically generated. See systemd.mount(5) for details.

Parameters:

  • what
  • where
  • options

systemd.service

  • type (default: simple)
  • exec_start

Examples

Defining a timer unit

Timer units integrate nicely with the remaining services. They can be managed through systemctl(1) and their log messages can easily be accessed through journalctl -u xxxxx.timer.

A timer unit needs a corresponding service unit which executes the actual command.