Sha256: 8b5e400e480747a80ddff9a37ca68f6e4261fc4757e8d085b76d2239b35a1c29
Contents?: true
Size: 1.2 KB
Versions: 35
Compression:
Stored size: 1.2 KB
Contents
require 'net/http' require 'rubygems' require 'json' namespace :rollbar do desc 'Send the deployment notification to Rollbar.' task :deploy do on roles fetch(:rollbar_role) do uri = URI.parse 'https://api.rollbar.com/api/1/deploy/' params = { :local_username => fetch(:rollbar_user), :access_token => fetch(:rollbar_token), :environment => fetch(:rollbar_env), :revision => fetch(:current_revision) } debug "Building Rollbar POST to #{uri} with #{params.inspect}" request = Net::HTTP::Post.new(uri.request_uri) request.body = JSON.dump(params) Net::HTTP.start(uri.host, uri.port, :use_ssl => true) do |http| http.request(request) end info 'Rollbar notification complete.' end end end namespace :deploy do after 'deploy:finished', 'rollbar:deploy' end namespace :load do task :defaults do set :rollbar_user, Proc.new { ENV['USER'] || ENV['USERNAME'] } set :rollbar_env, Proc.new { fetch :rails_env, 'production' } set :rollbar_token, Proc.new { abort "Please specify the Rollbar access token, set :rollbar_token, 'your token'" } set :rollbar_role, Proc.new { :app } end end
Version data entries
35 entries across 35 versions & 1 rubygems