#!/usr/bin/python3 import pathlib from typing import List, Union try: from ansible_module.module_utils.generic import SYSTEMD_SERVICE_CONFIG, Types, modspec from ansible_module.module_utils.module import SystemdReloadMixin, SystemdUnitModule, installable except ImportError: from ansible_collections.sebastian.base.plugins.module_utils.generic import SYSTEMD_SERVICE_CONFIG, Types, modspec from ansible_collections.sebastian.base.plugins.module_utils.module import SystemdReloadMixin, SystemdUnitModule, installable @installable class Module(SystemdUnitModule, SystemdReloadMixin): # type: ignore """Creates units""" name = "unit" module_spec = modspec( argument_spec=dict( name=Types.str(required=True, help="Name of the unit"), ) ) def prepare(self): self.unitfile = (SYSTEMD_SERVICE_CONFIG / self.get("name")).with_suffix(".") self.__unit = None def body(self): section = "[]\n" return section def unit(self) -> str: if self.__unit is None: self.__unit = "\n".join( ( self.header(), self.body(), self.install(), ) ) return self.__unit DOCUMENTATION = """""" if __name__ == "__main__": Module()()