0

クックブック用の 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 を呼び出す最初の構文が機能しないのはなぜですか?

4

0 に答える 0