module Berkshelf::Notifiers::Datadog
Constants
- VERSION
Public Instance Methods
uploaded(cookbook, conn)
click to toggle source
Output a Cookbook upload message using {Berkshelf.ui} Send Datadog
an event using {Dogapi}
@param [Berkshelf::CachedCookbook] cookbook @param [Ridley::Connection] conn
Calls superclass method
# File lib/berkshelf/notifiers/datadog.rb, line 13 def uploaded(cookbook, conn) upload_message = "Uploaded #{cookbook.cookbook_name} (#{cookbook.version}) to: '#{conn.server_url}'" # Invoke the original method declaration super # Only attempt to talk to Datadog if we have an env var set api_key = ENV['DATADOG_API_KEY'] if api_key Berkshelf.ui.info "Sending a Datadog event for #{cookbook.cookbook_name} (#{cookbook.version})" dog = Dogapi::Client.new(api_key) dog.emit_event( Dogapi::Event.new( upload_message, msg_title: "Berkshelf uploaded #{cookbook.cookbook_name} v#{cookbook.version}", tags: [ 'berkshelf', "cookbook:#{cookbook.cookbook_name}", ] ) ) else Berkshelf.ui.info 'No Datadog API key provided, skipping' end end