シェフの開発:)の新機能では、属性からの変数値がrubyブロックで表示されないようです。ruby_blockのノード属性とレシピ変数にアクセスする方法
installer = node['jdk']['installer']
ruby_block "tar-folder-name" do
block do
command = 'tar -tvf /tmp/#{installer}.tar.gz | head -1 | awk \'{print $NF}\''
command_out = shell_out(command)
node.default['tar_folder'] = command_out.stdout
end
action :run
end
私は、変数値ハードコーディングするときには動作します:
command = 'tar -tvf /tmp/jdk-7u85-linux-x64.tar.gz | head -1 | awk \'{print $NF}\''
私はruby_blockにノード属性を使用することができますどのように? また、rubyブロック外のrubyブロックの変数値を使用するにはどうすればよいですか?情報として、node.tar_folderを使用しようとすると、rubyブロックで抽出された値がありません。
ありがとうございます。
属性/ default.rbファイルに設定されている属性はデフォルトです['jdk'] ['installer'] = 'jdk-7u85-linux-x64' – hamdani