def send_deployment_notification_to_newrelic
environment = fetch(:newrelic_rails_env, fetch(:rack_env, fetch(:rails_env, fetch(:stage, "production"))))
require 'new_relic/cli/command.rb'
begin
rev = fetch(:newrelic_revision)
description = fetch(:newrelic_desc)
changelog = fetch(:newrelic_changelog)
appname = fetch(:newrelic_appname)
user = fetch(:newrelic_user)
license_key = fetch(:newrelic_license_key)
unless scm == :none
changelog ||= lookup_changelog
rev ||= fetch(:current_revision)
end
new_revision = rev
deploy_options = {
:environment => environment,
:revision => new_revision,
:changelog => changelog,
:description => description,
:appname => appname,
:user => user,
:license_key => license_key
}
debug "Uploading deployment to New Relic"
deployment = NewRelic::Cli::Deployments.new deploy_options
deployment.run
info "Uploaded deployment information to New Relic"
rescue NewRelic::Cli::Command::CommandFailure => e
info e.message
rescue => e
info "Error creating New Relic deployment (#{e})\n#{e.backtrace.join("\n")}"
end
end