Sha256: a16aa58032193583a3e9bab69983502e00e57cc8a3f5538fd17c750c8dcee3c0

Contents?: true

Size: 1.29 KB

Versions: 52

Compression:

Stored size: 1.29 KB

Contents

module Appsignal
  class Capistrano
    def self.tasks(config)
      config.load do
        after 'deploy', 'appsignal:deploy'
        after 'deploy:migrations', 'appsignal:deploy'

        namespace :appsignal do
          task :deploy do
            env = fetch(:rails_env, fetch(:rack_env, 'production'))
            user = ENV['USER'] || ENV['USERNAME']
            revision = fetch(:appsignal_revision, fetch(:current_revision))

            appsignal_config = Appsignal::Config.new(
              ENV['PWD'],
              env,
              fetch(:appsignal_config, {}),
              Logger.new(StringIO.new)
            )

            if appsignal_config && appsignal_config.active?
              marker_data = {
                :revision => revision,
                :user => user
              }

              marker = Marker.new(marker_data, appsignal_config)
              if config.dry_run
                puts 'Dry run: AppSignal deploy marker not actually sent.'
              else
                marker.transmit
              end
            else
              puts 'Not notifying of deploy, config is not active'
            end
          end
        end
      end
    end
  end
end

if ::Capistrano::Configuration.instance
  Appsignal::Capistrano.tasks(::Capistrano::Configuration.instance)
end

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
appsignal-1.4.0.alpha.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.4.0.alpha.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.0 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.0.beta.3 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.0.beta.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.3.0.beta.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.5 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.4 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.4.beta.4 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.4.beta.3 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.4.beta.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.4.beta.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.3 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.3.beta.3 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.3.beta.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.3.beta.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.2 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb
appsignal-1.2.1 lib/appsignal/integrations/capistrano/capistrano_2_tasks.rb