Я использую chef для запуска команды bash, которая регистрирует проверку работоспособности скрипта в консуле, и я получаю приведенную ниже ошибку с моим примером кода. Я попытался просмотреть документы, но мне это не помогло. Предложения о том, что может быть не так?
Я хочу ... 1003 *
Сообщение об ошибке
================================================================================
Error executing action `run` on resource 'bash[register_init_checks]'
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of "bash" "/tmp/chef-script20181110-4847-1tg4kmv" ----
STDOUT:
STDERR: /tmp/chef-script20181110-4847-1tg4kmv: line 1: [/work-disk/consul/data/mem-check.sh],: No such file or directory
---- End output of "bash" "/tmp/chef-script20181110-4847-1tg4kmv" ----
Ran "bash" "/tmp/chef-script20181110-4847-1tg4kmv" returned 1
Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/consul/recipes/default.rb
190: bash 'register_init_checks' do
191: code <<-EOH
192: curl --request PUT --data #{mem_check} http://127.0.0.1:8500/v1/agent/check/register
193: EOH
194: action :run
195: end
Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/consul/recipes/default.rb:190:in `from_file'
bash("register_init_checks") do
action [:run]
default_guard_interpreter :default
command nil
backup 5
interpreter "bash"
declared_type :bash
cookbook_name "consul"
recipe_name "default"
user nil
code " curl --request PUT --data {\"check\"=>{\"id\"=>\"mem-check\", \"name\"=>\"Memory utilization\", \"args\"=>[\"/work-disk/consul/data/mem-check.sh\"], \"interval\"=>\"10s\", \"timeout\"=>\"1s\"}} http://127.0.0.1:8500/v1/agent/check/register\n"
domain nil
end
System Info:
------------
chef_version=14.7.17
platform=ubuntu
platform_version=16.04
ruby=ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]
program_name=/usr/bin/chef-client
Код шеф-повара, который я пытаюсь использовать
cookbook_file consul_data + '/mem-check.sh' do
source 'mem-check.sh'
owner consul_user
group consul_user
mode '0755'
action :create
end
mem_check = {
"check" => {
"id" => "mem-check",
"name" => "Memory utilization",
"args" => [consul_data + "/mem-check.sh"],
"interval" => "10s",
"timeout" => "1s"
}
}
bash 'register_init_checks' do
code <<-EOH
curl --request PUT --data #{mem_check} http://127.0.0.1:8500/v1/agent/check/register
EOH
action :run
end