Class: Chef::Provider::HttpRequest
- Inherits:
-
Chef::Provider
- Object
- Chef::Provider
- Chef::Provider::HttpRequest
- Defined in:
- lib/chef/provider/http_request.rb
Instance Attribute Summary collapse
-
#rest ⇒ Object
Returns the value of attribute rest.
Attributes inherited from Chef::Provider
#action, #current_resource, #new_resource, #run_context
Instance Method Summary collapse
-
#action_delete ⇒ Object
Send a DELETE request to @new_resource.url.
-
#action_get ⇒ Object
Send a GET request to @new_resource.url, with ?message=@new_resource.message.
-
#action_head ⇒ Object
Send a HEAD request to @new_resource.url, with ?message=@new_resource.message.
-
#action_post ⇒ Object
Send a POST request to @new_resource.url, with the message as the payload.
-
#action_put ⇒ Object
Send a PUT request to @new_resource.url, with the message as the payload.
- #load_current_resource ⇒ Object
- #whyrun_supported? ⇒ Boolean
Methods inherited from Chef::Provider
#action_nothing, build_from_file, #cleanup_after_converge, #converge, #cookbook_name, #define_resource_requirements, #events, #initialize, #node, #process_resource_requirements, #requirements, #resource_collection, #run_action, #whyrun_mode?
Methods included from Mixin::ConvertToClassName
#convert_to_class_name, #convert_to_snake_case, #filename_to_qualified_string, #snake_case_basename
Methods included from Mixin::EnforceOwnershipAndPermissions
#access_controls, #enforce_ownership_and_permissions
Methods included from Mixin::RecipeDefinitionDSLCore
Methods included from Mixin::Language
#data_bag, #data_bag_item, #platform?, #platform_family?, #search, #value_for_platform, #value_for_platform_family
Constructor Details
This class inherits a constructor from Chef::Provider
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Chef::Mixin::RecipeDefinitionDSLCore
Instance Attribute Details
#rest ⇒ Object
Returns the value of attribute rest.
25 26 27 |
# File 'lib/chef/provider/http_request.rb', line 25 def rest @rest end |
Instance Method Details
#action_delete ⇒ Object
Send a DELETE request to @new_resource.url
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/chef/provider/http_request.rb', line 108 def action_delete converge_by("#{@new_resource} DELETE to #{@new_resource.url}") do body = @rest.run_request( :DELETE, @rest.create_url("#{@new_resource.url}"), @new_resource.headers, false, 10, false ) @new_resource.updated_by_last_action(true) Chef::Log.info("#{@new_resource} DELETE to #{@new_resource.url} successful") Chef::Log.debug("#{@new_resource} DELETE request response: #{body}") end end |
#action_get ⇒ Object
Send a GET request to @new_resource.url, with ?message=@new_resource.message
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/chef/provider/http_request.rb', line 56 def action_get converge_by("#{@new_resource} GET to #{@new_resource.url}") do = (@new_resource.) body = @rest.run_request( :GET, @rest.create_url("#{@new_resource.url}?message=#{}"), @new_resource.headers, false, 10, false ) Chef::Log.info("#{@new_resource} GET to #{@new_resource.url} successful") Chef::Log.debug("#{@new_resource} GET request response: #{body}") end end |
#action_head ⇒ Object
Send a HEAD request to @new_resource.url, with ?message=@new_resource.message
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/chef/provider/http_request.rb', line 36 def action_head = (@new_resource.) # returns true from Chef::REST if returns 2XX (Net::HTTPSuccess) modified = @rest.run_request( :HEAD, @rest.create_url("#{@new_resource.url}?message=#{}"), @new_resource.headers, false, 10, false ) Chef::Log.info("#{@new_resource} HEAD to #{@new_resource.url} successful") Chef::Log.debug("#{@new_resource} HEAD request response: #{modified}") # :head is usually used to trigger notifications, which converge_by now does if modified converge_by("#{@new_resource} HEAD to #{@new_resource.url} returned modified, trigger notifications") {} end end |
#action_post ⇒ Object
Send a POST request to @new_resource.url, with the message as the payload
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/chef/provider/http_request.rb', line 91 def action_post converge_by("#{@new_resource} POST to #{@new_resource.url}") do = (@new_resource.) body = @rest.run_request( :POST, @rest.create_url("#{@new_resource.url}"), @new_resource.headers, , 10, false ) Chef::Log.info("#{@new_resource} POST to #{@new_resource.url} message: #{.inspect} successful") Chef::Log.debug("#{@new_resource} POST request response: #{body}") end end |
#action_put ⇒ Object
Send a PUT request to @new_resource.url, with the message as the payload
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/chef/provider/http_request.rb', line 74 def action_put converge_by("#{@new_resource} PUT to #{@new_resource.url}") do = (@new_resource.) body = @rest.run_request( :PUT, @rest.create_url("#{@new_resource.url}"), @new_resource.headers, , 10, false ) Chef::Log.info("#{@new_resource} PUT to #{@new_resource.url} successful") Chef::Log.debug("#{@new_resource} PUT request response: #{body}") end end |
#load_current_resource ⇒ Object
31 32 33 |
# File 'lib/chef/provider/http_request.rb', line 31 def load_current_resource @rest = Chef::REST.new(@new_resource.url, nil, nil) end |
#whyrun_supported? ⇒ Boolean
27 28 29 |
# File 'lib/chef/provider/http_request.rb', line 27 def whyrun_supported? true end |