task_with_airbrake 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,5 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
5
+ .rvmrc
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in task_with_airbrake.gemspec
4
+ gemspec
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,3 @@
1
+ module TaskWithAirbrake
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,29 @@
1
+ require "task_with_airbrake/version"
2
+
3
+ module TaskWithAirbrake
4
+ def self.execute_task(*args, &block)
5
+ new_block = proc {
6
+ begin
7
+ self.echo "[CRON START] #{args.inspect} (#{Time.now})"
8
+
9
+ yield if block_given?
10
+
11
+ self.echo "[CRON END] #{args.inspect} (#{Time.now})"
12
+ rescue Exception => e
13
+ self.echo "[CRON ERROR] #{e} (#{Time.now})"
14
+ e.backtrace.each { |l| self.echo l }
15
+ Airbrake.notify(e)
16
+ raise e
17
+ ensure
18
+ Rails.logger.flush
19
+ end
20
+ }
21
+ task(*args, &new_block)
22
+ end
23
+
24
+ def self.echo(str)
25
+ puts(Rails.logger.info(str))
26
+ Rails.logger.flush
27
+ end
28
+
29
+ end
@@ -0,0 +1,27 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "task_with_airbrake/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "task_with_airbrake"
7
+ s.version = TaskWithAirbrake::VERSION
8
+ s.authors = ["Teruo Adachi"]
9
+ s.email = ["interu@sonicgarden.jp"]
10
+ s.homepage = ""
11
+ s.summary = %q{Task with Airbrake}
12
+ s.description = %q{Error handling in rake task}
13
+
14
+ s.rubyforge_project = "task_with_airbrake"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ s.add_development_dependency "rake", [">= 0"]
23
+ s.add_development_dependency "airbrake", [">= 0"]
24
+ s.add_dependency "airbrake", [">= 0"]
25
+ # s.add_development_dependency "rspec"
26
+ # s.add_runtime_dependency "rest-client"
27
+ end
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: task_with_airbrake
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 0
8
+ - 1
9
+ version: 0.0.1
10
+ platform: ruby
11
+ authors:
12
+ - Teruo Adachi
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2012-03-29 00:00:00 +09:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: rake
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ type: :development
31
+ version_requirements: *id001
32
+ - !ruby/object:Gem::Dependency
33
+ name: airbrake
34
+ prerelease: false
35
+ requirement: &id002 !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ segments:
40
+ - 0
41
+ version: "0"
42
+ type: :development
43
+ version_requirements: *id002
44
+ - !ruby/object:Gem::Dependency
45
+ name: airbrake
46
+ prerelease: false
47
+ requirement: &id003 !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ segments:
52
+ - 0
53
+ version: "0"
54
+ type: :runtime
55
+ version_requirements: *id003
56
+ description: Error handling in rake task
57
+ email:
58
+ - interu@sonicgarden.jp
59
+ executables: []
60
+
61
+ extensions: []
62
+
63
+ extra_rdoc_files: []
64
+
65
+ files:
66
+ - .gitignore
67
+ - Gemfile
68
+ - Rakefile
69
+ - lib/task_with_airbrake.rb
70
+ - lib/task_with_airbrake/version.rb
71
+ - task_with_airbrake.gemspec
72
+ has_rdoc: true
73
+ homepage: ""
74
+ licenses: []
75
+
76
+ post_install_message:
77
+ rdoc_options: []
78
+
79
+ require_paths:
80
+ - lib
81
+ required_ruby_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ segments:
86
+ - 0
87
+ version: "0"
88
+ required_rubygems_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ segments:
93
+ - 0
94
+ version: "0"
95
+ requirements: []
96
+
97
+ rubyforge_project: task_with_airbrake
98
+ rubygems_version: 1.3.6
99
+ signing_key:
100
+ specification_version: 3
101
+ summary: Task with Airbrake
102
+ test_files: []
103
+