クックブック用の LWRP を作成していazuretrafficmanager
ます。手順は次のとおりです。
作成されたリソース:
traffic_manager.rb
actions :create default_action :create attribute :resource_group_name attribute :profile_name attribute :subscription attribute :traffic_manager attribute :azure_token
作成されたプロバイダー:
traffic_manager.rb
def whyrun_supported? true end action :create do converge_by("Creating.") do traffic_manager_processor = TrafficManagers.new(@new_resource.resource_group_name, @new_resource.profile_name, @new_resource.subscription, @new_resource.traffic_manager, @new_resource.azure_token) traffic_manager_processor.create_update_profile end # Move on next line, copy/paste error or root cause ? @new_resource.updated_by_last_action(true) end
そして、私は自分のレシピでこれを呼び出しています
azuretrafficmanager_traffic_manager 'createtrafficmanager' do resource_group_name resource_group_name profile_name profile_name subscription subscription traffic_manager traffic_manager azure_token azure_token action :create end
lwrp を呼び出す上記の方法は機能しませんが、2 番目の方法を試すと、次のようになります。
azuretrafficmanager_traffic_manager 'createtrafficmanager' do resource_group_name resource_group_name profile_name profile_name subscription subscription traffic_manager traffic_manager azure_token azure_token action :nothing end.run_action(:create)
このlwrpの呼び出し方(run_action)に従うことで、問題なく動作しています。
問題は、lwrps を呼び出す最初の構文が機能しないのはなぜですか?