How can I transform
['value1', 'value2', 'value3']
into
['something value1 somethingelse', 'something value2 somethingelse', 'something value3 somethingelse']
in puppet ?
#
define etc_services (
$port,
$comment,
$aliases = [],
$ensure = 'present'
)
{
validate_re($name, '^\w+_#_(tcp|udp)$')
validate_re($ensure, '^(absent|present)$')
validate_re($port, '^\d+$')
validate_array($aliases)
validate_string($comment)
$primary_keys = split($name, '_#_')
$service_name = $primary_keys[0]
$protocol = $primary_keys[1]
$augeas_alias_operations = prefix($aliases, 'set $node/alias[last()+1] ')
$augeas_pre_alias_operations = [
"defnode node service-name[.='${service_name}'][protocol = '${protocol}'] ${service_name}",
"set \$node/port ${port}",
"set \$node/protocol ${protocol}",
'remove $node/alias',
'remove $node/#comment'
]
$augeas_post_alias_operations = [
"set \$node/#comment '${comment}'"
]
augeas { "${service_name}_${protocol}":
context => '/files/etc/services',
changes => flatten([
$augeas_pre_alias_operations,
$augeas_alias_operations,
$augeas_post_alias_operations
])
}
}