Я использую Amazon opsworks и изо всех сил пытаюсь заставить его работать через один скрипт, я создал сценарий с именем clamav.rb
. Содержание сценария:Как установить ClamAV с помощью Ruby-скрипта с настройкой в том же скрипте?
yum_package 'clamav' do
action :install
end
yum_package 'clamav-update' do
action :install
end
file_names = ['/etc/freshclam.conf']
file_names.each do |file_name|
text = File.read(file_name)
replace = text.gsub("Example", "#Example")
# To merely print the contents of the file, use:
puts replace
# To write changes to the file, use:
File.open(file_name, "w") {|file| file.puts replace }
end
execute "Run Freshclam" do
command "/usr/bin/freshclam"
end
Когда я исполняю выше сценарий он застрял с ошибкой:
[2016-08-01T13:02:36+00:00] ERROR: Running exception handlers
[2016-08-01T13:02:36+00:00] ERROR: Exception handlers complete
[2016-08-01T13:02:36+00:00] FATAL: Stacktrace dumped to /var/lib/aws/opsworks/cache.stage2/chef-stacktrace.out
[2016-08-01T13:02:36+00:00] ERROR: No such file or directory - /etc/freshclam.conf
[2016-08-01T13:02:36+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
, но когда я разделить сценарий на две части, что работают очень хорошо, как создание отдельного сценария для пакетов yum и отдельно для изменения конфигурации.
Я новичок в этом, вы можете PLS предоставить шаги в кратком – Navneet
Нет, проверить ридй для линии поваренной книги и объясняет, как использовать свои ресурсы. – coderanger