ディレクトリを作成し、同じレシピで新しく作成したディレクトリにファイルをコピーする必要がありますもう1つはコピー用です)。しかし、私がそれをやっているときに、ファイルをコピーする必要があるレシピの2番目の部分は、エラーメッセージを出すことに失敗しています:ディレクトリは存在しません。それが最初のステップ に作成されますので、それがディレクトリとしてコンパイル時に失敗していることをその決定的なエラーから がない、あなたは属性として格納されたディレクトリパスを持っているようなものを想定しシェフ:同じレシピでディレクトリを作成した後、そのディレクトリを参照/実行する方法
dir="/ibmlib"
directory '/ibmlib' do
owner 'root'
group 'root'
mode '0777'
action :create
end
li = 'add file'
clrlog1 = Chef::Util::FileEdit.new('/ibmlib')
clrlog1.insert_line_if_no_match(/#{li}/, li)
clrlog1.write_file
コードをお知らせください。 – StephenKing
@StephenKing DIR = "/ ibmlib" ディレクトリ '/ ibmlib' 所有者 'ルート' グループ 'ルート' モード '0777' のアクションを実行します。 エンドを作成 李= clrlog1を 'ファイルを追加' = Chef :: Util :: FileEdit.new( '/ ibmlib') clrlog1.insert_line_if_no_match(/#{li} /、li) clrlog1.write_file – Dave
ディレクトリまたはファイルにしますか? Rubyコードを['ruby_block'](https://docs.chef.io/resource_ruby_block.html)リソース内にラップする必要があります。さもなければ、それは "早すぎる"実行されます。 – StephenKing