1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
# This define allows you to insert, update or delete scripts that are used
# within Elasticsearch.
#
# @param ensure
# Controls the state of the script file resource to manage.
# Values are simply passed through to the `file` resource.
#
# @param recurse
# Will be passed through to the script file resource.
#
# @param source
# Puppet source of the script
#
# @author Richard Pijnenburg <richard.pijnenburg@elasticsearch.com>
# @author Tyler Langlois <tyler.langlois@elastic.co>
#
define elasticsearch::script (
String $source,
String $ensure = 'present',
Optional[Variant[Boolean, Enum['remote']]] $recurse = undef,
) {
if ! defined(Class['elasticsearch']) {
fail('You must include the elasticsearch base class before using defined resources')
}
$filename_array = split($source, '/')
$basefilename = $filename_array[-1]
file { "${elasticsearch::homedir}/scripts/${basefilename}":
ensure => $ensure,
source => $source,
owner => $elasticsearch::elasticsearch_user,
group => $elasticsearch::elasticsearch_group,
recurse => $recurse,
mode => '0644',
}
}
|