Я пытаюсь добавить строку в существующий файл /etc/fuse.conf. Я пробовал это

добавил папку две папки в каталог модулей

sudo mkdir /etc/puppet/modules/test
sudo mkdir /etc/puppet/modules/test/manifests

Затем создал файл test.pp и добавил следующие строки

sudo vim /etc/puppet/modules/test/manifests/test.pp

file { '/etc/fuse.conf':
  ensure => present,
}->
file_line { 'Append a line to /etc/fuse.conf':
  path => '/etc/fuse.conf',
  line => 'Want to add this line as a test',
}

После этого я запустил эту команду

puppet apply /etc/puppet/modules/test/manifests/test.pp

Затем я открыл этот файл /etc/fuse.conf и в этом файле не было никаких изменений. Строка не была добавлена в файл. Я не понимаю, чего мне здесь не хватает. Как я могу это сделать? Я учу кукол. Так что это только для целей обучения.

1 ответ1

1

Я не уверен, какую версию кукол вы используете, так как вы не упомянули об этом. Класс "file_name" принадлежит библиотеке puppetlabs-stdlib, поэтому вам нужно убедиться, что этот модуль установлен -

puppet module install puppetlabs-stdlib

Кроме того, поскольку вы используете путь к модулю, вам нужно вызвать ваш файл init.pp (не test.pp). Поскольку вы новичок в написании модулей, я предлагаю вам использовать команду создания модуля puppet -

puppet module generate module-name --skip-interview

это создаст все, что вам нужно для нового модуля. не забудьте убедиться, что имя класса совпадает с именем модуля. Чтобы запустить и протестировать этот модуль, используйте -

puppet apply  -e "include <module-name>"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .