0

AWS OpsWorks カスタムレシピに問題があります。ノードをchef 11に移動した後、属性はレシピに「表示」されません。例: ファイルのレシピ/some-service.rb でエントリを取得しました

remote_file local_file do
    source node['servicename']['https_download']
    owner node['servicename']['app_user']
    group node['servicename']['app_group']
    mode 0664
end

ファイル attributes/some-service.rb で:

default['servicename']['https_download'] = 'https://corect.address.of.file'
default['servicename']['app_user'] = 'someuser'
default['servicename']['app_group'] = 'somegroup'

アプリをデプロイしようとすると、次のエラーが表示されます。

エラー: OpsWorks カスタム実行リストのコンパイル中に例外をキャッチしました: Chef::Exceptions::InvalidRemoteFileURI - nil は remote_file の有効なsourceパラメーターではありません。source絶対 URI または URI の配列である必要があります。- /opt/aws/opsworks/releases/20131015111601_209/vendor/gems/chef-11.4.4/bin/../lib/chef/resource/remote_file.rb:67:in `validate_source'

属性から値の代わりに nil を取得するようです。何が間違っているのでしょうか?

4

1 に答える 1

0

私は同じ問題を抱えています。また、Opsworks は、私が使用しているクックブックからのリソースを認識していません。nil []について不平を言っているレシピの属性を手動で設定しましたが、リソースが見つからないという問題を解決するためだけに、その属性を乗り越えました...

私はまだ掘り下げており、答えが見つかったら投稿します...

編集:

ここで起こったと私が信じているのは、私の問題の前に、chef-solo が実行に使用する .json ファイルに属性データをロードできないという問題があったということです。最初の問題を修正しても、これらの属性の .json ファイルにはまだデータが存在しませんでした。問題を修正してその時点を過ぎると、問題は解消されました。

于 2013-12-03T20:20:01.007 に答える