actions = { 'systemd-reload': { 'command': 'systemctl daemon-reload', 'cascade_skip': False, 'triggered': True, 'needed_by': { 'svc_systemd:', }, }, 'systemd-hostname': { 'command': 'hostnamectl set-hostname {}'.format(node.metadata['hostname']), 'unless': '[ "$(hostnamectl --static)" = "{}" ]'.format(node.metadata['hostname']), # Provided by 'hostname' bundle 'needs': { 'file:/etc/hosts', }, }, 'systemd-timezone': { 'command': 'timedatectl set-timezone UTC', 'unless': 'timedatectl status | grep -Fi \'time zone\' | grep -i \'utc\'', }, 'systemd-enable-ntp': { 'command': 'timedatectl set-ntp true', 'unless': 'timedatectl status | grep -Fi \'ntp service\' | grep -i \'active\'', }, }