Sha256: 5cf58175a40b42b9fcb211b669a11d156c03e192b8bea9040cfd3c659f0ee8d4

Contents?: true

Size: 648 Bytes

Versions: 4

Compression:

Stored size: 648 Bytes

Contents

require 'bugsnag'

Rake::TaskManager.record_task_metadata = true

class Rake::Task

  def execute_with_bugsnag(args=nil)
    Bugsnag.configuration.app_type ||= "rake"
    old_task = Bugsnag.configuration.request_data[:bugsnag_running_task]
    Bugsnag.set_request_data :bugsnag_running_task, self

    execute_without_bugsnag(args)

  rescue Exception => ex
    Bugsnag.auto_notify(ex)
    raise
  ensure
    Bugsnag.set_request_data :bugsnag_running_task, old_task
  end

  alias_method :execute_without_bugsnag, :execute
  alias_method :execute, :execute_with_bugsnag
end

Bugsnag.configuration.internal_middleware.use(Bugsnag::Middleware::Rake)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
bugsnag-5.3.3 lib/bugsnag/rake.rb
bugsnag-5.3.2 lib/bugsnag/rake.rb
bugsnag-5.3.1 lib/bugsnag/rake.rb
bugsnag-5.3.0 lib/bugsnag/rake.rb