Интересно, может ли кто-нибудь помочь мне с моей проблемой в файле настроек? Мне нужно получить вывод, как показано ниже, но у меня возникают проблемы с использованием inifile. Я поставил ниже мой код и результаты тестирования. Мой сервис не запускается из-за '[]'. Ваши комментарии и идеи высоко ценятся. Спасибо!
Ожидаемый результат
cat /etc/service.conf
info something something...
without section header
setting1=value1
Тестирование
testscript1.pp
ini_setting {'setx':
ensure => present,
path => '/etc/service.conf',
key_val_separator => '=',
setting => 'setting1',
value => 'value1',
}
вывод testscript1.pp
cat /etc/service.conf
info something something...
[setx]
setting1=value1
testscript2.pp
$defaults = {
ensure => present,
path => '/etc/service.conf',
key_val_separator => '=',
}
$settings = {
' ' => {
'setting1' => 'value1',
}
}
create_ini_settings($settings,$defaults)
вывод testscript2 .pp
cat /etc/service.conf
info something something...
[ ]
setting1=value1
Поскольку я действительно хотел удалить символ []
, поскольку он вызывает ошибку при перезапуске службы, я использовал section_prefix => '#',
. Первый запуск кукольного агента проходит гладко и работает. Теперь проблема в том, что если агент puppet работает с частотой (например, каждый час), он автоматически добавляет данные в файл conf из-за отсутствия заголовка раздела. Я решил использовать ini_subsetting
, но я получаю ошибки с ним.
testscript3.pp
ini_subsetting {'subset':
ensure => present,
section => '',
key_val_separator => '=',
path => '/etc/service.conf',
setting => 'setting1',
subsetting => '',
value => 'value1',
}
вывод testscript3.pp
Error: Failed to apply catalog: Parameter path failed on Ini_subsetting[subset]: File paths must be fully qualified, not '/etc/service.conf'.
Любые предложения или советы высоко ценятся.
Спасибо.