mina-newrelic 0.0.1.rc

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2bf43546caa43a0efcc9419b7b2fad57faeb04ba
4
+ data.tar.gz: d0bbc6e64e6fbd6c61f06b20b5862c67d6f9bba1
5
+ SHA512:
6
+ metadata.gz: 9a50e6da637040e147b8ba2decae6a6a5f763736c87e61407e68544356ef8288bb8138e34982587a9d1db5e558a266ef2f5db1fcbf6a27906faeeace2bacee16
7
+ data.tar.gz: 46051caa48a653e5789c49ba793fe5e9737cd9c3855fdffc4328ebc248bf4c698a6645c1ac8295eb601f05284c3556611355a0fa81be695593e8fcedf171d3c0
data/.gitignore ADDED
@@ -0,0 +1,18 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
18
+ .idea
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Navin Peiris
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,58 @@
1
+ # Mina::Newrelic
2
+
3
+ Provides New Relic integration for Mina.
4
+
5
+ _NOTE_: This is a trimmed down version of the newrelic capistrano recipe
6
+ [here](https://github.com/newrelic/rpm/blob/master/lib/new_relic/recipes.rb)
7
+
8
+ ## Installation
9
+
10
+ Add this line to your application's Gemfile:
11
+
12
+ gem 'mina-newrelic'
13
+
14
+ And then execute:
15
+
16
+ $ bundle
17
+
18
+ Or install it yourself as:
19
+
20
+ $ gem install mina-newrelic
21
+
22
+ ## Usage
23
+
24
+ Add this to your `config/deploy.rb` file:
25
+
26
+ require 'mina/rbenv/addons'
27
+
28
+ Then either invoke the task as part of the deployment process:
29
+
30
+ ```ruby
31
+ to :launch do
32
+ invoke 'unicorn:restart'
33
+
34
+ invoke 'newrelic:notice_deployment'
35
+ end
36
+ ```
37
+
38
+ Or, run the task explicitly:
39
+
40
+ $ mina newrelic:notice_deployment
41
+
42
+ ### Configurable options:
43
+
44
+ * `newrelic_rails_env`
45
+ * `newrelic_revision`
46
+ * `newrelic_desc`
47
+ * `newrelic_changelog`
48
+ * `newrelic_appname`
49
+ * `newrelic_user`
50
+ * `newrelic_license_key`
51
+
52
+ ## Contributing
53
+
54
+ 1. Fork it
55
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
56
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
57
+ 4. Push to the branch (`git push origin my-new-feature`)
58
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require 'bundler/gem_tasks'
@@ -0,0 +1,2 @@
1
+ require 'mina/newrelic/version'
2
+ require 'mina/newrelic/notice_deployment'
@@ -0,0 +1,41 @@
1
+ require 'new_relic/cli/command'
2
+
3
+ namespace :newrelic do
4
+
5
+ desc 'Record a deployment in New Relic (newrelic.com)'
6
+ task :notice_deployment do
7
+ rails_env = fetch(:newrelic_rails_env, fetch(:rails_env, 'production'))
8
+
9
+ begin
10
+ # allow overrides to be defined for revision, description, changelog, appname, and user
11
+ rev = fetch(:newrelic_revision) if exists?(:newrelic_revision)
12
+ description = fetch(:newrelic_desc) if exists?(:newrelic_desc)
13
+ changelog = fetch(:newrelic_changelog) if exists?(:newrelic_changelog)
14
+ appname = fetch(:newrelic_appname) if exists?(:newrelic_appname)
15
+ user = fetch(:newrelic_user) if exists?(:newrelic_user)
16
+ license_key = fetch(:newrelic_license_key) if exists?(:newrelic_license_key)
17
+
18
+ new_revision = rev
19
+ deploy_options = {
20
+ :environment => rails_env,
21
+ :revision => new_revision,
22
+ :changelog => changelog,
23
+ :description => description,
24
+ :appname => appname,
25
+ :user => user,
26
+ :license_key => license_key
27
+ }
28
+
29
+ print_status 'Uploading deployment information to New Relic'
30
+ deployment = NewRelic::Cli::Deployments.new deploy_options
31
+ deployment.run
32
+ print_stdout 'Uploaded deployment information to New Relic'
33
+
34
+ rescue NewRelic::Cli::Command::CommandFailure => e
35
+ print_error e.message
36
+ rescue => e
37
+ print_error "Error creating New Relic deployment (#{e})\n#{e.backtrace.join("\n")}"
38
+ end
39
+ end
40
+
41
+ end
@@ -0,0 +1,5 @@
1
+ module Mina
2
+ module Newrelic
3
+ VERSION = '0.0.1.rc'
4
+ end
5
+ end
@@ -0,0 +1,26 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'mina/newrelic/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'mina-newrelic'
8
+ spec.version = Mina::Newrelic::VERSION
9
+ spec.authors = ['Navin Peiris']
10
+ spec.email = %w(navin.peiris@gmail.com)
11
+ spec.description = %q{Provides New Relic integration for mina}
12
+ spec.summary = %q{Provides New Relic integration for mina}
13
+ spec.homepage = 'https://github.com/navinpeiris/mina-newrelic'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = %w(lib)
20
+
21
+ spec.add_dependency 'newrelic_rpm', '>= 3.6.0'
22
+ spec.add_dependency 'mina', '>= 0.3.0'
23
+
24
+ spec.add_development_dependency 'bundler', '~> 1.3'
25
+ spec.add_development_dependency 'rake'
26
+ end
metadata ADDED
@@ -0,0 +1,109 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mina-newrelic
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1.rc
5
+ platform: ruby
6
+ authors:
7
+ - Navin Peiris
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-12-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: newrelic_rpm
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.6.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: 3.6.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: mina
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: 0.3.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: 0.3.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '1.3'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ description: Provides New Relic integration for mina
70
+ email:
71
+ - navin.peiris@gmail.com
72
+ executables: []
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - .gitignore
77
+ - Gemfile
78
+ - LICENSE.txt
79
+ - README.md
80
+ - Rakefile
81
+ - lib/mina/newrelic.rb
82
+ - lib/mina/newrelic/notice_deployment.rb
83
+ - lib/mina/newrelic/version.rb
84
+ - mina-newrelic.gemspec
85
+ homepage: https://github.com/navinpeiris/mina-newrelic
86
+ licenses:
87
+ - MIT
88
+ metadata: {}
89
+ post_install_message:
90
+ rdoc_options: []
91
+ require_paths:
92
+ - lib
93
+ required_ruby_version: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ required_rubygems_version: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - '>'
101
+ - !ruby/object:Gem::Version
102
+ version: 1.3.1
103
+ requirements: []
104
+ rubyforge_project:
105
+ rubygems_version: 2.0.14
106
+ signing_key:
107
+ specification_version: 4
108
+ summary: Provides New Relic integration for mina
109
+ test_files: []