fuel-plugin-lma-collector/deployment_scripts/puppet/modules/heka/manifests/decoder/multidecoder.pp

44 lines
1.3 KiB
Puppet

# Copyright 2015 Mirantis, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
define heka::decoder::multidecoder (
$config_dir,
$subs = [],
$log_sub_errors = true,
$cascade_strategy = 'all',
$ensure = present,
) {
include heka::params
validate_array($subs)
validate_string($cascade_strategy)
validate_bool($log_sub_errors)
if size($subs) < 1 {
fail('subs parameter must be greater than 0')
}
if $cascade_strategy != 'all' and $cascade_strategy != 'first-wins' {
fail('cascade_strategy parameter must be either \'all\' or \'first-wins\'')
}
file { "${config_dir}/multidecoder-${title}.toml":
ensure => $ensure,
content => template('heka/decoder/multidecoder.toml.erb'),
mode => '0600',
owner => $heka::params::user,
group => $heka::params::user,
}
}