Сценарий оболочки шеф-повара не запускается

Я использую Chef на Scalarium для загрузки агента и выполнения на нем различных команд. Я пытаюсь написать сценарий оболочки в рецепте, чтобы выполнить это.

file "/etc/profile.d/blah.sh" do
  content <<-EOH
sudo -sH
<Retrieve file and run some commands>
  EOH
end

Когда я запускаю рецепт в Scalarium, ошибок не возникает, но и команды не выполняются. В самих командах ошибок нет, так как я запускал их на своем компьютере.

Рецепт обязательно прочитан, так как в логах Chef есть Processing file[/etc/profile.d/blah.sh] on blah.localdomain.

Я никогда раньше не использовал Chef, нужно ли мне делать что-то еще, чтобы заставить его выполнить сценарий оболочки?


person caroline    schedule 08.09.2011    source источник


Ответы (1)


Возможно, вы хотите что-то вроде:

file "/etc/profile.d/blah.sh" do
  mode 0500
  content <<-EOH
sudo -sH
<Retrieve file and run some commands>
  EOH
end

execute "/etc/profile.d/blah.sh"

Или вы можете поместить поиск файла и выполнение команд непосредственно в свой рецепт шеф-повара:

remote_file "/path/to/where/the/file/should/be/saved" do
  source "https://example.com/path/to/where/the/file/comes/from"
end

execute "first command"
execute "second command"
person yfeldblum    schedule 08.09.2011
comment
Спасибо за оперативную помощь. Как это будет работать для загрузки из репозитория для установки в качестве демона? Т.е. исходная команда была echo 'deb http://rep.blah.com etc' > /etc/apt/sources.list.d/blah.list. Извините, нужно было упомянуть об этом в исходном вопросе. - person caroline; 08.09.2011
comment
На самом деле, простое использование execute работает и для этого. Спасибо за помощь! - person caroline; 08.09.2011