negroku 1.0.0 → 1.1.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: accb88c6c482562486a58084a3332c11802901b0
4
- data.tar.gz: c0ef5bd982d5ccc6368a36c99dae246a0bb316f0
3
+ metadata.gz: 70fad1ba6b8f3e5c56fe4f49b17b50d9a24ea1e6
4
+ data.tar.gz: 9fc4ac570ac41df75efc285a236907c7d5614630
5
5
  SHA512:
6
- metadata.gz: 0ab47d7730072926eac54b66983d7e67b44168ed350df88365b3fb664479f8438f4bd6bbb660559425c7d374dbe90412b683c970b7814423891f3cef5c13a2f2
7
- data.tar.gz: d3b25a20f14c65c4cd393cf6c98b9ba53196bed154c07c75f358a028bab42e780bbf0d21bd064ca86f23608011b0b61727563b39eca7c2d76f8988a118e65c40
6
+ metadata.gz: 90027311309f1a5c4467b08f4bfc0c4aec730cdac900938e159aee779d9a5b81d203bc56835adf44920ae565ba54cc530acd45f52959472176c8a4ac2ba18e47
7
+ data.tar.gz: 73f3bb2df20a4ec1c90d28335128b4ebf4edc5f46ba8ced0ad61555c4f9439ff6bf7b9a246d4b4df926869e8a54d122109b5910885ccc21369efc2f34a8013ec
data/lib/negroku/cli.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'thor'
2
2
  require 'rainbow'
3
3
  require 'highline/import'
4
+ require 'negroku'
4
5
 
5
6
  trap('INT') { exit }
6
7
 
@@ -157,10 +158,11 @@ end
157
158
 
158
159
  class RemoteEnv < Thor
159
160
  namespace "env"
161
+ class_option :stage, :type => :string, :default => "staging", :aliases => "-s", :desc => "Set the capistrano stage to be used", :banner => "STAGE"
160
162
 
161
163
  desc "show", "Show the current remote variables"
162
164
  def show
163
- `cap rbenv:vars:show`
165
+ %x(cap #{options[:stage]} rbenv:vars:show)
164
166
  end
165
167
 
166
168
  desc "add", "Adds env variables to the remote server"
@@ -192,12 +194,24 @@ class RemoteEnv < Thor
192
194
  end
193
195
  end
194
196
 
195
- `cap rbenv:vars:add -s key=#{key} -s value=#{value}`
197
+ %x(cap #{options[:stage]} rbenv:vars:add -s key=#{key} -s value=#{value})
196
198
  end
197
199
  end
198
200
 
199
201
  module Negroku
200
202
  class CLI < Thor
203
+ class_option :version, :type => :boolean, :aliases => "-v"
204
+
205
+ def initialize(*)
206
+ super
207
+
208
+ # Show the version
209
+ if options[:version]
210
+ puts Negroku::VERSION
211
+ exit 0
212
+ end
213
+ end
214
+
201
215
  register(App, 'app', 'app [COMMAND]', 'Application')
202
216
  register(Target, 'target', 'target [COMMAND]', 'Target servers')
203
217
  register(Konfig, 'config', 'config [COMMAND]', 'Configuration')
@@ -39,9 +39,15 @@ namespace :nginx do
39
39
  after "deploy:setup", "nginx:setup"
40
40
  desc "Setup nginx configuration for this application."
41
41
  task :setup, roles: :web do
42
- template "nginx.erb", "/tmp/nginx.conf"
42
+ config_file = "config/deploy/nginx.conf.erb"
43
+ if File.exists?(config_file)
44
+ config = ERB.new(File.read(config_file)).result(binding)
45
+ put config, "/tmp/nginx.conf"
46
+ else
47
+ template "nginx.erb", "/tmp/nginx.conf"
48
+ end
43
49
  run "#{sudo} mv /tmp/nginx.conf /etc/nginx/sites-available/#{fetch(:application)}"
44
- run "#{sudo} ln -s /etc/nginx/sites-available/#{fetch(:application)} /etc/nginx/sites-enabled/#{fetch(:application)}"
50
+ run "#{sudo} ln -nfs /etc/nginx/sites-available/#{fetch(:application)} /etc/nginx/sites-enabled/#{fetch(:application)}"
45
51
  run "mkdir -p /home/#{fetch(:user)}/log"
46
52
  reload
47
53
  end
@@ -4,9 +4,7 @@ namespace :rbenv do
4
4
  namespace :vars do
5
5
  desc "Show current rbenv vars"
6
6
  task :show, :roles => :app do
7
- run "sh -c 'cd #{shared_path} && cat .rbenv-vars'" do |channel, stream, data|
8
- puts data
9
- end
7
+ run "sh -c 'cd #{shared_path} && cat .rbenv-vars'"
10
8
  end
11
9
 
12
10
  desc "Add rbenv vars"
@@ -1,3 +1,3 @@
1
1
  module Negroku
2
- VERSION = "1.0.0"
2
+ VERSION = "1.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: negroku
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Ignacio Donoso
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-18 00:00:00.000000000 Z
11
+ date: 2013-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
@@ -130,3 +130,4 @@ signing_key:
130
130
  specification_version: 4
131
131
  summary: '["Capistrano Wrapper"]'
132
132
  test_files: []
133
+ has_rdoc: