negroku 2.0.3 → 2.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 +4 -4
- data/lib/negroku/cli/commands/env.rb +1 -1
- data/lib/negroku/cli/env.rb +5 -5
- data/lib/negroku/cli/stage.rb +3 -3
- data/lib/negroku/deploy.rb +1 -0
- data/lib/negroku/helpers/env.rb +2 -2
- data/lib/negroku/locales/en.yml +3 -3
- data/lib/negroku/tasks/env.rake +8 -0
- data/lib/negroku/tasks/eye.rake +11 -1
- data/lib/negroku/tasks/rbenv.rake +5 -11
- data/lib/negroku/tasks/unicorn.rake +0 -6
- data/lib/negroku/version.rb +1 -1
- data/spec/lib/cli/stage_spec.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d2c4e0a3ac3d5965ba4fe44d8d0e037f4d0d15be
|
|
4
|
+
data.tar.gz: 2d1265284143fe3f7a91b36b04be377a1ba2e89c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4b6f4de35703e0a13af39d15596e74c5a764ef65114ae4a678dbdf504de49297db8ecc1f9f7710daacce7e4a60240bb8a04ede61fd7f78494bcf08943edc3fd7
|
|
7
|
+
data.tar.gz: 86503258bc8023da9d0732e19053007fa2d33a899c2b9a13e0d27769c3eac54c9651e2eb9334b12a29bb24f2590075d3a5fa423304fa014205b8f8d3a3b0b74e
|
|
@@ -3,7 +3,7 @@ module Negroku::CLI
|
|
|
3
3
|
desc 'Manage your apps env variables'
|
|
4
4
|
command :env do |app|
|
|
5
5
|
|
|
6
|
-
app.desc '
|
|
6
|
+
app.desc 'Sets multiple variables from rbenv-vars to a server'
|
|
7
7
|
app.command :bulk do |bulk|
|
|
8
8
|
bulk.action do |global_options,options,args|
|
|
9
9
|
Negroku::Env.bulk
|
data/lib/negroku/cli/env.rb
CHANGED
|
@@ -7,19 +7,19 @@ module Negroku::Env
|
|
|
7
7
|
if stage = selected_stage || select_stage
|
|
8
8
|
variables = select_variables
|
|
9
9
|
if variables.empty?
|
|
10
|
-
puts I18n.t(:
|
|
10
|
+
puts I18n.t(:no_variables_setted, scope: :negroku)
|
|
11
11
|
else
|
|
12
|
-
|
|
12
|
+
set_vars_to_stage(stage, variables)
|
|
13
13
|
end
|
|
14
14
|
end
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
-
#
|
|
18
|
-
def
|
|
17
|
+
# Sets the variables to the selected stage using cap rbenv set
|
|
18
|
+
def set_vars_to_stage(stage, variables)
|
|
19
19
|
# convert to array using VAR=value
|
|
20
20
|
vars_array = variables.map{|k,v| "#{k}=#{v}" }
|
|
21
21
|
Capistrano::Application.invoke(stage)
|
|
22
|
-
Capistrano::Application.invoke("rbenv:vars:
|
|
22
|
+
Capistrano::Application.invoke("rbenv:vars:set", *vars_array)
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
# build a list of variables from ENV_FILE and yeilds it
|
data/lib/negroku/cli/stage.rb
CHANGED
|
@@ -10,11 +10,11 @@ module Negroku::Stage
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
add_stage_file config
|
|
13
|
-
Negroku::Env.bulk(config[:stage_name]) if
|
|
13
|
+
Negroku::Env.bulk(config[:stage_name]) if ask_set_vars
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
-
def
|
|
17
|
-
question = I18n.t :
|
|
16
|
+
def ask_set_vars
|
|
17
|
+
question = I18n.t :ask_set_vars, scope: :negroku
|
|
18
18
|
Ask.confirm question, default: false
|
|
19
19
|
end
|
|
20
20
|
|
data/lib/negroku/deploy.rb
CHANGED
data/lib/negroku/helpers/env.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
# helper to build the
|
|
2
|
-
def
|
|
1
|
+
# helper to build the set VAR cmd
|
|
2
|
+
def build_set_var_cmd(vars_file, key, value)
|
|
3
3
|
puts "#{vars_file} #{key} #{value}"
|
|
4
4
|
cmd = "if awk < #{vars_file} -F= '{print $1}' | grep --quiet -w #{key}; then "
|
|
5
5
|
cmd += "sed -i 's/^#{key}=.*/#{key}=#{value.gsub("\/", "\\/")}/g' #{vars_file};"
|
data/lib/negroku/locales/en.yml
CHANGED
|
@@ -7,8 +7,8 @@ en:
|
|
|
7
7
|
choose_repo_url: 'Choose the repository url'
|
|
8
8
|
type_repo_url: 'Type the url and username e.g. git@github.com:username/app-name.git'
|
|
9
9
|
choose_stages: 'Select the stages you are going to use'
|
|
10
|
-
select_stages_question: 'Select stages you want to
|
|
11
|
-
|
|
10
|
+
select_stages_question: 'Select stages you want to set variables to'
|
|
11
|
+
no_variables_setted: 'No variables setted'
|
|
12
12
|
ask_variables_message: "Give the variables values, if empty, it will be ignored"
|
|
13
13
|
rbenv_vars_not_found: ".rbenv-vars does not exists"
|
|
14
14
|
no_stages_found: "There are no stages available"
|
|
@@ -16,4 +16,4 @@ en:
|
|
|
16
16
|
select_branch: "Select the branch to use"
|
|
17
17
|
ask_domains: "Type the domains to use"
|
|
18
18
|
ask_server_url: "Type the server url to deploy to"
|
|
19
|
-
|
|
19
|
+
ask_set_vars: "Do you want to set rbenv-vars to the server now?"
|
data/lib/negroku/tasks/eye.rake
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
require 'negroku/helpers/templates'
|
|
2
|
-
|
|
3
2
|
## eye.rb
|
|
4
3
|
#
|
|
5
4
|
# Adds eye variables and tasks
|
|
@@ -21,6 +20,11 @@ namespace :load do
|
|
|
21
20
|
end
|
|
22
21
|
end
|
|
23
22
|
|
|
23
|
+
namespace :env do
|
|
24
|
+
desc 'Env variables changed'
|
|
25
|
+
task :changed do
|
|
26
|
+
end
|
|
27
|
+
end
|
|
24
28
|
|
|
25
29
|
namespace :eye do
|
|
26
30
|
|
|
@@ -79,6 +83,12 @@ namespace :negroku do
|
|
|
79
83
|
before "deploy:published", "negroku:eye:setup"
|
|
80
84
|
after "negroku:eye:setup", "eye:load"
|
|
81
85
|
|
|
86
|
+
after 'env:changed', 'hard-restart' do
|
|
87
|
+
invoke 'eye:stop'
|
|
88
|
+
invoke 'eye:load'
|
|
89
|
+
invoke 'eye:start'
|
|
90
|
+
end
|
|
91
|
+
|
|
82
92
|
define_logs(:eye, {
|
|
83
93
|
app: 'eye.log'
|
|
84
94
|
})
|
|
@@ -17,12 +17,6 @@ namespace :load do
|
|
|
17
17
|
end
|
|
18
18
|
end
|
|
19
19
|
|
|
20
|
-
namespace :env do
|
|
21
|
-
desc 'Env variables changed'
|
|
22
|
-
task :changed do
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
20
|
namespace :rbenv do
|
|
27
21
|
namespace :vars do
|
|
28
22
|
desc "Show current environmental variables"
|
|
@@ -34,8 +28,8 @@ namespace :rbenv do
|
|
|
34
28
|
end
|
|
35
29
|
end
|
|
36
30
|
|
|
37
|
-
desc "
|
|
38
|
-
task :
|
|
31
|
+
desc "Sets environmental variables in the form VAR=value"
|
|
32
|
+
task :set, [:variable] => 'deploy:check:directories' do |t, args|
|
|
39
33
|
|
|
40
34
|
vars = [args.variable] + args.extras
|
|
41
35
|
|
|
@@ -43,7 +37,7 @@ namespace :rbenv do
|
|
|
43
37
|
within shared_path do
|
|
44
38
|
vars.compact.each do |var|
|
|
45
39
|
key, value = var.split('=')
|
|
46
|
-
cmd =
|
|
40
|
+
cmd = build_set_var_cmd("#{shared_path}/.rbenv-vars", key, value)
|
|
47
41
|
execute cmd
|
|
48
42
|
end
|
|
49
43
|
end
|
|
@@ -55,8 +49,8 @@ namespace :rbenv do
|
|
|
55
49
|
|
|
56
50
|
end
|
|
57
51
|
|
|
58
|
-
desc "
|
|
59
|
-
task :
|
|
52
|
+
desc "Unset environmental variable"
|
|
53
|
+
task :unset, [:key] do |t, args|
|
|
60
54
|
on release_roles :app do
|
|
61
55
|
within shared_path do
|
|
62
56
|
execute :sed, "-i", "/^#{args[:key]}=/d", ".rbenv-vars"
|
|
@@ -83,12 +83,6 @@ namespace :negroku do
|
|
|
83
83
|
invoke 'unicorn:restart'
|
|
84
84
|
end
|
|
85
85
|
|
|
86
|
-
after 'env:changed', 'hard-restart' do
|
|
87
|
-
invoke 'unicorn:stop'
|
|
88
|
-
sleep 5
|
|
89
|
-
invoke 'unicorn:start'
|
|
90
|
-
end
|
|
91
|
-
|
|
92
86
|
# Ensure the folders needed exist
|
|
93
87
|
after 'deploy:check', 'deploy:check:directories' do
|
|
94
88
|
on release_roles fetch(:unicorn_roles) do
|
data/lib/negroku/version.rb
CHANGED
data/spec/lib/cli/stage_spec.rb
CHANGED
|
@@ -18,7 +18,7 @@ describe "stage cli" do
|
|
|
18
18
|
allow(Negroku::Stage).to receive(:ask_server_url).and_return("server_url")
|
|
19
19
|
allow(Negroku::Stage).to receive(:add_stage_file)
|
|
20
20
|
|
|
21
|
-
expect(Negroku::Stage).to receive(:
|
|
21
|
+
expect(Negroku::Stage).to receive(:ask_set_vars).and_return(true)
|
|
22
22
|
expect(Negroku::Env).to receive(:bulk).with("deleteme")
|
|
23
23
|
|
|
24
24
|
expect{Negroku::Stage.add}.not_to raise_error
|
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: 2.0
|
|
4
|
+
version: 2.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: 2015-03-
|
|
11
|
+
date: 2015-03-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rdoc
|
|
@@ -317,6 +317,7 @@ files:
|
|
|
317
317
|
- lib/negroku/tasks/bower.rake
|
|
318
318
|
- lib/negroku/tasks/bundler.rake
|
|
319
319
|
- lib/negroku/tasks/delayed_job.rake
|
|
320
|
+
- lib/negroku/tasks/env.rake
|
|
320
321
|
- lib/negroku/tasks/eye.rake
|
|
321
322
|
- lib/negroku/tasks/eye/delayed_job.rake
|
|
322
323
|
- lib/negroku/tasks/eye/unicorn.rake
|