rvmpow 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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 331149c5c7feb8cc7ee2bf36ee98e655c3354b84
4
+ data.tar.gz: 908b3a8f393c4cd2d3d5f651d29f7e28496363d5
5
+ SHA512:
6
+ metadata.gz: 77a4d571d1f037167b587e439744fb9414c1b3e06801868eb8b8e5521a892b64dc03cc4377f6e16fe572726cae7917235ba349ed0d612c374a92c922ed4718a5
7
+ data.tar.gz: debcf93d4cd3d6144990dfc2b10eab8312734f8e0f379d9e207225a316bfa5b13172e19d3c1175ce4069772c46fe47f056db0881c100abb16680b5bf4ccc202f
@@ -0,0 +1,17 @@
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
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
@@ -0,0 +1 @@
1
+ gems
@@ -0,0 +1 @@
1
+ ruby-2.1.1
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in rvmpow.gemspec
4
+ gemspec
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Olibob
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.
@@ -0,0 +1,100 @@
1
+ # Rvmpow
2
+
3
+ [![Gem Version](https://badge.fury.io/rb/rvmpow.svg)](http://badge.fury.io/rb/rvmpow)
4
+
5
+ `rvmpow` is usefull only if you:
6
+
7
+ - use MacOS X
8
+ - use [rvm](http://rvm.io)
9
+ - use [pow](http://pow.cx)
10
+ - are a [rails](http://rubyonrails.org/) developper or develop [Rack](https://rack.github.io/) apps
11
+
12
+ [Pow](http://pow.cx) needs to know what ruby and gemset is being used. rvm users can provide this information [manually](http://rvm.io/integration/pow) or install `rvmpow` and it'll handle it for you, including adding the new configuration file to .gitignore and linking the new app for immediate browsing.
13
+
14
+ ```
15
+ ~/Documents/Dev/Rails ∆2.1.1 ›rails
16
+ 13:34 $ rvm-prompt
17
+ ruby-2.1.1@rails
18
+ ~/Documents/Dev/Rails ∆2.1.1 ›rails
19
+ 13:34 $ rails new newApp
20
+ ...
21
+ 13:35 $ cd newApp/
22
+ ~/Documents/Dev/Rails/newApp ∆2.1.1 ›rails
23
+ 13:35 $ rvmpow init
24
+ Done Create .powenv file
25
+ Done Create pow link
26
+ Done Touch restart file
27
+ Done Add .powenv to .gitignore
28
+ Done Add ruby and gemset info to Gemfile
29
+ ~/Documents/Dev/Rails/newApp ∆2.1.1 ›rails
30
+ 13:35 $ rvmpow clear
31
+ Done Remove rvmpow entries from .gitignore
32
+ Done Remove rvmpow entries from Gemfile
33
+ Done Delete .powenv file
34
+ Done Delete restart file
35
+ Done Delete pow link
36
+ ~/Documents/Dev/Rails/newApp ∆2.1.1 ›rails
37
+ ```
38
+
39
+ If needed, you can pick individual action via `rvmpow add` or `rvmpow remove`.
40
+
41
+ **Words of caution**
42
+
43
+ I only tested on newly created and updated rails apps. Feedback is more than welcome.
44
+
45
+ If you are already specifying the ruby version and gemset via .rvmrc or .ruby-version/.ruby-gemset or in your Gemfile, be aware that rvmpow uses Gemfile (which is a good thing if you're going to deploy to [heroku](https://www.heroku.com/) for instance). `rvmpow` will not change the gemfile if ruby and gemset information is present. I advise to remove it prior to running `rvmpow`. If you use one of the other metioned methods, move or delete the files prior to running `rvmpow`.
46
+
47
+ ## Installation
48
+
49
+ Add this line to your application's Gemfile:
50
+
51
+ ```
52
+ gem 'toto'
53
+ ```
54
+
55
+ And then execute:
56
+
57
+ ```
58
+ $ bundle
59
+ ```
60
+
61
+ Or install it yourself as:
62
+
63
+ ```
64
+ $ gem install toto
65
+ ```
66
+
67
+ ## Usage
68
+
69
+ Make sure you are in the root directory of your Rack app before running `rvmpow`
70
+
71
+ ```
72
+ $ rvmpow init
73
+ ```
74
+
75
+ To open the app in your default browser directly after initialization, run:
76
+
77
+
78
+ ```
79
+ $ rvmpow init --show
80
+ ```
81
+
82
+ To open the app after initialization, run:
83
+
84
+ ```
85
+ $ rvmpow open
86
+ ```
87
+
88
+ rvmpow comes with extensive help built in, just run:
89
+
90
+ ```
91
+ $ rvmpow
92
+ ```
93
+
94
+ ## Contributing
95
+
96
+ 1. Fork it ( http://github.com/<my-github-username>/rvmpow/fork )
97
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
98
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
99
+ 4. Push to the branch (`git push origin my-new-feature`)
100
+ 5. Create new Pull Request
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,226 @@
1
+ #!/usr/bin/env ruby
2
+ # encoding: utf-8
3
+
4
+ # TODO: include private part from CLI in all Thor classes.
5
+ # Create constants for repetitive strings.
6
+
7
+ require 'thor'
8
+ require 'rvmpow'
9
+ require 'rvmpow/shared_private_methods'
10
+
11
+ class Add < Thor
12
+ include Shared
13
+
14
+ def initialize(*args)
15
+ super
16
+ @pow = RvmPow::Pow.new
17
+ end
18
+
19
+ desc "powenv", RvmPow::ADD_POWENV
20
+ def powenv
21
+ exec_cmd { @pow.createPowenvFile }
22
+ end
23
+
24
+ desc "powlink", RvmPow::ADD_LINK
25
+ def powlink
26
+ exec_cmd { @pow.createPowLink }
27
+ end
28
+
29
+ desc "restart", RvmPow::TOUCH_RESTART
30
+ def restart
31
+ exec_cmd { @pow.touchRestartFile }
32
+ end
33
+
34
+ desc "gitignore", RvmPow::ADD_GITIGNORE
35
+ def gitignore
36
+ exec_cmd { @pow.gitignorePowenv }
37
+ end
38
+
39
+ desc "addRvmInfoToGemfile", RvmPow::ADD_GEMFILE
40
+ def gemfile
41
+ exec_cmd { @pow.addRvmInfoToGemfile }
42
+ end
43
+ end
44
+
45
+
46
+ class Remove < Thor
47
+ include Shared
48
+
49
+ def initialize(*args)
50
+ super
51
+ @pow = RvmPow::Pow.new
52
+ end
53
+
54
+ desc "powenv", RvmPow::REMOVE_POWENV
55
+ def powenv
56
+ exec_cmd { @pow.deletePowenvFile }
57
+ end
58
+
59
+ desc "restart", RvmPow::REMOVE_RESTART
60
+ def restart
61
+ exec_cmd { @pow.deleteRestartFile }
62
+ end
63
+
64
+ desc "powlink", RvmPow::REMOVE_LINK
65
+ def powlink
66
+ exec_cmd { @pow.deletePowLink }
67
+ end
68
+
69
+ desc "gitignore", RvmPow::REMOVE_GITIGNORE
70
+ def gitignore
71
+ exec_cmd { @pow.restoreGitignore }
72
+ end
73
+
74
+ desc "gemfile", RvmPow::REMOVE_GEMFILE
75
+ def gemfile
76
+ exec_cmd {@pow.restoreGemfile }
77
+ end
78
+ end
79
+
80
+
81
+ class CLI < Thor
82
+ include Shared
83
+
84
+ def initialize(*args)
85
+ super
86
+ @pow = RvmPow::Pow.new
87
+ end
88
+
89
+
90
+ desc "init", "enable pow"
91
+ long_desc <<-LONGDESC
92
+ `rvmpow init` will:
93
+
94
+ - create a '.powenv' file in the current directory.
95
+ \x5- add .powenv to the .gitignore file.
96
+ \x5- add app link in ~/.pow
97
+ \x5- add ruby and gemset info to Gemfile.
98
+ \x5- touch restart.txt in ./tmp/
99
+
100
+
101
+ LONGDESC
102
+ option :show, type: :boolean, desc: "open in default browser"
103
+ def init
104
+ exec_cmd {nil}
105
+
106
+ shitHappens = false
107
+
108
+ # fail safe to avoid multiple initializations
109
+ if File.exists?('.powenv')
110
+ say "Initialization aborted.\nLooks like you already ran it on this project."
111
+ exit 0
112
+ end
113
+
114
+ if @pow.createPowenvFile
115
+ say_status "Done", RvmPow::ADD_POWENV, :green
116
+ else
117
+ say_status "Failed", RvmPow::ADD_POWENV, :red
118
+ shitHappens = true
119
+ end
120
+
121
+ if @pow.createPowLink
122
+ say_status "Done", RvmPow::ADD_LINK, :green
123
+ else
124
+ say_status "Failed", RvmPow::ADD_LINK, :red
125
+ shitHappens = true
126
+ end
127
+
128
+ if @pow.touchRestartFile
129
+ say_status "Done", RvmPow::TOUCH_RESTART, :green
130
+ else
131
+ say_status "Failed", RvmPow::TOUCH_RESTART, :red
132
+ shitHappens = true
133
+ end
134
+
135
+ if @pow.gitignorePowenv
136
+ say_status "Done", RvmPow::ADD_GITIGNORE, :green
137
+ else
138
+ say_status "Failed", RvmPow::ADD_GITIGNORE, :red
139
+ shitHappens = true
140
+ end
141
+
142
+ if @pow.addRvmInfoToGemfile
143
+ say_status "Done", RvmPow::ADD_GEMFILE, :green
144
+ else
145
+ say_status "Failed", RvmPow::ADD_GEMFILE, :red
146
+ shitHappens = true
147
+ end
148
+
149
+ if options[:show]
150
+ if shitHappens
151
+ say_status "Failed", "Open app in default browser canceled due to previous error(s)", :red
152
+ say "Initialization failed.", :red
153
+ else
154
+ say_status "Done", "Open app in default browser", :green
155
+ open
156
+ end
157
+ end
158
+ end
159
+
160
+
161
+ desc "open", "open the current Rack app in the default browser"
162
+ def open
163
+ %x(open http://#{RvmPow::APP_NAME}.dev)
164
+ end
165
+
166
+
167
+ desc "clear", "disable pow"
168
+ long_desc <<-LONGDESC
169
+ `rvmpow clear` will remove only the files necessary for pow.
170
+
171
+ It's essentially reverting to the state before you ran `rvmpow init`
172
+
173
+
174
+ LONGDESC
175
+ def clear
176
+ exec_cmd {nil}
177
+ shitHappens = false
178
+
179
+ if @pow.restoreGitignore
180
+ say_status "Done", RvmPow::REMOVE_GITIGNORE, :green
181
+ else
182
+ say_status "Failed", RvmPow::REMOVE_GITIGNORE, :red
183
+ shitHappens = true
184
+ end
185
+
186
+ if @pow.restoreGemfile
187
+ say_status "Done", RvmPow::REMOVE_GEMFILE, :green
188
+ else
189
+ say_status "Failed", RvmPow::REMOVE_GEMFILE, :red
190
+ shitHappens = true
191
+ end
192
+
193
+ if @pow.deletePowenvFile
194
+ say_status "Done", RvmPow::REMOVE_POWENV, :green
195
+ else
196
+ say_status "Failed", RvmPow::REMOVE_POWENV, :red
197
+ shitHappens = true
198
+ end
199
+
200
+ if @pow.deleteRestartFile
201
+ say_status "Done", RvmPow::REMOVE_RESTART, :green
202
+ else
203
+ say_status "Failed", RvmPow::REMOVE_RESTART, :red
204
+ shitHappens = true
205
+ end
206
+
207
+ if @pow.deletePowLink
208
+ say_status "Done", RvmPow::REMOVE_LINK, :green
209
+ else
210
+ say_status "Failed", RvmPow::REMOVE_LINK, :red
211
+ shitHappens = true
212
+ end
213
+
214
+ if shitHappens
215
+ say "Reverting all changes failed.", :red
216
+ end
217
+ end
218
+
219
+ desc "add SUBCOMMAND", "add specific options"
220
+ subcommand "add", Add
221
+
222
+ desc "remove SUBCOMMAND", "remove specific options"
223
+ subcommand "remove", Remove
224
+ end
225
+
226
+ CLI.start(ARGV)
@@ -0,0 +1,133 @@
1
+ require "rvmpow/version"
2
+ require "rvmpow/constants"
3
+ require 'tempfile'
4
+ require 'fileutils'
5
+
6
+ module RvmPow
7
+
8
+ class Pow
9
+ # create .poenv in current dirrectory
10
+ def createPowenvFile
11
+ action = -> do
12
+ File.open(RvmPow::POW_ENV_FILE, "w+") { |file| file.puts RvmPow::POWENV }
13
+ end
14
+ fileAction action
15
+ end
16
+
17
+ # link current app to ~/.pow directory
18
+ def createPowLink
19
+ action = -> { File.symlink(RvmPow::RAKE_APP_DIRECTORY, RvmPow::POW_LINK) }
20
+ fileAction action
21
+ end
22
+
23
+ # create tmp/restart.txt file
24
+ def touchRestartFile
25
+ action = -> { FileUtils.touch(RvmPow::RESTART_FILE) }
26
+ fileAction action
27
+ end
28
+
29
+ # add .powenv to .gitignore
30
+ def gitignorePowenv
31
+ action = -> do
32
+ File.open(RvmPow::GITIGNORE_FILE, 'a') { |file| file.puts RvmPow::GITIGNORE_ENTRY }
33
+ end
34
+ fileAction action
35
+ end
36
+
37
+ # add rvm ruby and gemset to Gemfile
38
+ def addRvmInfoToGemfile
39
+ action = -> do
40
+ rvm = rvmInfo
41
+ File.open(RvmPow::GEMFILE, 'a+') do |file|
42
+ s = file.read
43
+ if (s.match(/ruby\s'\d(\.\d)+'/) || s.match(/ruby-gemset=/))
44
+ puts "\truby or gemset information already present in Gemfile"
45
+ else
46
+ file.puts "\n# rvmpow\nruby '#{rvm[:ruby]}'\n#ruby-gemset=#{rvm[:gemset]}"
47
+ end
48
+ end
49
+ end
50
+ fileAction action
51
+ end
52
+
53
+ # removes rvmpow entries from .gitignore
54
+ def restoreGitignore
55
+ action = -> { removeFromFile(RvmPow::GITIGNORE_FILE, RvmPow::GITIGNORE_MATCHER) }
56
+ fileAction action
57
+ end
58
+
59
+ # removes rvmpow entries from Gemfile
60
+ def restoreGemfile
61
+ action = -> do
62
+ File.open(RvmPow::GEMFILE, 'r') do |file|
63
+ s = file.read
64
+ if !(s.match(/^#\srvmpow$/))
65
+ puts "\tNo rvmpow entry found, continuing ..."
66
+ else
67
+ removeFromFile(RvmPow::GEMFILE, RvmPow::GEMFILE_MATCHER)
68
+ end
69
+ end
70
+ end
71
+ fileAction action
72
+ end
73
+
74
+ # removes .powenv
75
+ def deletePowenvFile
76
+ action = -> { FileUtils.rm_f RvmPow::POW_ENV_FILE }
77
+ fileAction action
78
+ end
79
+
80
+ # removes restart.txt file from ./tmp/
81
+ def deleteRestartFile
82
+ action = -> { FileUtils.rm_f RvmPow::RESTART_FILE }
83
+ fileAction action
84
+ end
85
+
86
+ # deletes the link is ~/.pow
87
+ def deletePowLink
88
+ action = -> { FileUtils.rm_f RvmPow::POW_LINK }
89
+ fileAction action
90
+ end
91
+
92
+ private
93
+
94
+ # file action wrapper
95
+ def fileAction(action)
96
+ action.call
97
+ true
98
+ rescue Exception => err
99
+ puts err.message
100
+ false
101
+ end
102
+
103
+ # removes text from file based on regex
104
+ def removeFromFile(file, regex)
105
+ # create tempfile
106
+ tmp = Tempfile.new "foo"
107
+
108
+ # Read file
109
+ confFile = File.read(file)
110
+ confFile.gsub!(regex, '').chomp!
111
+
112
+ tmp.write confFile
113
+ tmp.close
114
+
115
+ FileUtils.mv(tmp.path, file)
116
+ true
117
+ rescue Exception => e
118
+ puts e.message
119
+ false
120
+ end
121
+
122
+ # returns a hash with the ruby and gemset information
123
+ # @return [Hash]
124
+ def rvmInfo
125
+ rvm = {}
126
+ rvmArray = `rvm-prompt`.chomp.split('@')
127
+ rvm[:ruby] = rvmArray[0].split('-')[1]
128
+ rvm[:gemset] = rvmArray[1]
129
+ rvm
130
+ end
131
+ end
132
+
133
+ end
@@ -0,0 +1,49 @@
1
+ module RvmPow
2
+ POW_PATH = File.expand_path("~/.pow")
3
+ RAKE_APP_DIRECTORY = File.expand_path('.')
4
+ POW_ENV_FILE = "#{RAKE_APP_DIRECTORY}/.powenv"
5
+ RESTART_FILE = "#{RAKE_APP_DIRECTORY}/tmp/restart.txt"
6
+ APP_NAME = RAKE_APP_DIRECTORY.split('/').last
7
+ POW_LINK = "#{POW_PATH}/#{APP_NAME}"
8
+ GITIGNORE_FILE = "#{RAKE_APP_DIRECTORY}/.gitignore"
9
+ GITIGNORE_ENTRY = "\n# rvmpow\n.powenv"
10
+ GEMFILE = "#{RAKE_APP_DIRECTORY}/Gemfile"
11
+ RVM_BINARY = "#{File.expand_path('~/')}/.rvm/bin/rvm"
12
+ CONFIG_RU = "#{RvmPow::RAKE_APP_DIRECTORY}/config.ru"
13
+ GEMFILE_MATCHER = /.#\srvmpow.ruby\s'\d(\.\d)+'.#ruby-gemset=\S+/m
14
+ GITIGNORE_MATCHER = /.#\srvmpow.\.powenv/m
15
+ ADD_POWENV = "Add .powenv file"
16
+ REMOVE_POWENV = "Remove .powenv file"
17
+ ADD_LINK = "Add app link in ~/.pow"
18
+ REMOVE_LINK = "Remove app link from ~/.pow"
19
+ TOUCH_RESTART = "Touch restart.txt file in ./tmp/"
20
+ REMOVE_RESTART = "Remove restart.txt file from ./tmp/"
21
+ ADD_GITIGNORE = "Add '.powenv' to ./.gitignore"
22
+ REMOVE_GITIGNORE = "Remove .powenv from ./.gitignore"
23
+ ADD_GEMFILE = "Add rvm ruby and gemset information to ./Gemfile"
24
+ REMOVE_GEMFILE = "Remove rvm and gemset information from ./Gemfile"
25
+
26
+ POWENV = <<-EOF
27
+ # detect `$rvm_path`
28
+ if [ -z "${rvm_path:-}" ] && [ -x "${HOME:-}/.rvm/bin/rvm" ]
29
+ then rvm_path="${HOME:-}/.rvm"
30
+ fi
31
+ if [ -z "${rvm_path:-}" ] && [ -x "/usr/local/rvm/bin/rvm" ]
32
+ then rvm_path="/usr/local/rvm"
33
+ fi
34
+
35
+ # load environment of current project ruby
36
+ if
37
+ [ -n "${rvm_path:-}" ] &&
38
+ [ -x "${rvm_path:-}/bin/rvm" ] &&
39
+ rvm_project_environment=`"${rvm_path:-}/bin/rvm" . do rvm env --path 2>/dev/null` &&
40
+ [ -n "${rvm_project_environment:-}" ] &&
41
+ [ -s "${rvm_project_environment:-}" ]
42
+ then
43
+ echo "RVM loading: ${rvm_project_environment:-}"
44
+ \. "${rvm_project_environment:-}"
45
+ else
46
+ echo "RVM project not found at: $PWD"
47
+ fi
48
+ EOF
49
+ end
@@ -0,0 +1,32 @@
1
+ # constants loaded in rvmpow.rb
2
+
3
+ module Shared
4
+ private
5
+ # @return [Boolean]
6
+ # true if config.ru exists
7
+ def rakeApp?
8
+ File.exists?(RvmPow::CONFIG_RU)
9
+ end
10
+
11
+ # return [Boolean]
12
+ # true if the rvm binary exists
13
+ def rvm?
14
+ File.exists?(RvmPow::RVM_BINARY)
15
+ end
16
+
17
+ # return [Boolean]
18
+ # true if Rack app and rvm binary exists
19
+ def rakeAppAndRvm
20
+ (rakeApp? && rvm?)
21
+ end
22
+
23
+ # Executes given proc if Rack app and rvm binary exists
24
+ def exec_cmd
25
+ if ! rakeAppAndRvm
26
+ error "The current directory does not seem to be the root of a rake app or rvm is not installed. Nothing to do!"
27
+ exit 0
28
+ else
29
+ yield
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,3 @@
1
+ module RvmPow
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,27 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'rvmpow/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "rvmpow"
8
+ spec.version = RvmPow::VERSION
9
+ spec.authors = ["Olivier Robert"]
10
+ spec.email = ["robby57@gmail.com"]
11
+ spec.summary = ["Sets up pow (http://pow.cx/) for your rake app"]
12
+ spec.description = ["Pow (http://pow.cx) needs to know what ruby and gemset is being used. rvm users can provide this information manually (http://rvm.io/integration/pow) or install `rvmpow` and it'll handle it for you, including adding the new configuration file to .gitignore and linking the new app for immediate browsing.
13
+ "]
14
+ spec.homepage = "https://github.com/olibob/rvmpow"
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files -z`.split("\x0")
18
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_dependency "thor", "~> 0.19.1"
23
+
24
+ spec.add_development_dependency "bundler", "~> 1.5"
25
+ spec.add_development_dependency "rake"
26
+ spec.add_development_dependency "rspec", "~> 2.14.1"
27
+ end
@@ -0,0 +1,6 @@
1
+ require "spec_helper"
2
+ require 'rvmpow'
3
+
4
+ describe RvmPow::Pow do
5
+ it { should respond_to(:init)}
6
+ end
@@ -0,0 +1,17 @@
1
+ # This file was generated by the `rspec --init` command. Conventionally, all
2
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
3
+ # Require this file using `require "spec_helper"` to ensure that it is only
4
+ # loaded once.
5
+ #
6
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
7
+ RSpec.configure do |config|
8
+ config.treat_symbols_as_metadata_keys_with_true_values = true
9
+ config.run_all_when_everything_filtered = true
10
+ config.filter_run :focus
11
+
12
+ # Run specs in random order to surface order dependencies. If you find an
13
+ # order dependency and want to debug it, you can fix the order by providing
14
+ # the seed, which is printed after each run.
15
+ # --seed 1234
16
+ config.order = 'random'
17
+ end
metadata ADDED
@@ -0,0 +1,122 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rvmpow
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Olivier Robert
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: thor
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.19.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.19.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.5'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.5'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 2.14.1
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 2.14.1
69
+ description: '["Pow (http://pow.cx) needs to know what ruby and gemset is being used.
70
+ rvm users can provide this information manually (http://rvm.io/integration/pow)
71
+ or install `rvmpow` and it''ll handle it for you, including adding the new configuration
72
+ file to .gitignore and linking the new app for immediate browsing.\n"]'
73
+ email:
74
+ - robby57@gmail.com
75
+ executables:
76
+ - rvmpow
77
+ extensions: []
78
+ extra_rdoc_files: []
79
+ files:
80
+ - ".gitignore"
81
+ - ".rspec"
82
+ - ".ruby-gemset"
83
+ - ".ruby-version"
84
+ - Gemfile
85
+ - LICENSE.txt
86
+ - README.md
87
+ - Rakefile
88
+ - bin/rvmpow
89
+ - lib/rvmpow.rb
90
+ - lib/rvmpow/constants.rb
91
+ - lib/rvmpow/shared_private_methods.rb
92
+ - lib/rvmpow/version.rb
93
+ - rvmpow.gemspec
94
+ - spec/lib/rvmpow_spec.rb
95
+ - spec/spec_helper.rb
96
+ homepage: https://github.com/olibob/rvmpow
97
+ licenses:
98
+ - MIT
99
+ metadata: {}
100
+ post_install_message:
101
+ rdoc_options: []
102
+ require_paths:
103
+ - lib
104
+ required_ruby_version: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
109
+ required_rubygems_version: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: '0'
114
+ requirements: []
115
+ rubyforge_project:
116
+ rubygems_version: 2.2.2
117
+ signing_key:
118
+ specification_version: 4
119
+ summary: '["Sets up pow (http://pow.cx/) for your rake app"]'
120
+ test_files:
121
+ - spec/lib/rvmpow_spec.rb
122
+ - spec/spec_helper.rb