vx-router 0.2.0.pre33 → 0.2.0.pre34
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/vx/router/script_builder.rb +2 -1
- data/lib/vx/router/script_builder/ruby.rb +1 -10
- data/lib/vx/router/script_builder/services.rb +22 -0
- data/lib/vx/router/version.rb +1 -1
- data/spec/lib/script_builder/services_spec.rb +22 -0
- metadata +12 -10
- data/lib/vx/router/script_builder/databases.rb +0 -28
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1316b98281834134b4d7cca17414bba760be166
|
4
|
+
data.tar.gz: 0fbc8cf188d4ba900f7d0146ef27492febcda32c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6438331191c7842f3e76d3c284fe4b9ba58c1e1fe5ecad3699dae691c9872f1fbbbf1ff5a39e3f4171124abf6bdebf821756da25e31a3680e950ccd30a5f6799
|
7
|
+
data.tar.gz: f5dfaea461cb9d8ea6f51b35c13b47601cdf3debbdbfa299fa753125bb1b6ac69239120680db8c84f18709aa64083d43059a431f9ebee485036b0dd6c2cccc85
|
@@ -11,14 +11,15 @@ module Vx
|
|
11
11
|
autoload :Prepare, File.expand_path("../script_builder/prepare", __FILE__)
|
12
12
|
autoload :Databases, File.expand_path("../script_builder/databases", __FILE__)
|
13
13
|
autoload :WebdavCache, File.expand_path("../script_builder/webdav_cache", __FILE__)
|
14
|
+
autoload :Services, File.expand_path("../script_builder/services", __FILE__)
|
14
15
|
|
15
16
|
include Common::Helper::Middlewares
|
16
17
|
|
17
18
|
middlewares do
|
18
19
|
use ScriptBuilder::WebdavCache
|
20
|
+
use ScriptBuilder::Services
|
19
21
|
use ScriptBuilder::Env
|
20
22
|
use ScriptBuilder::Prepare
|
21
|
-
use ScriptBuilder::Databases
|
22
23
|
use ScriptBuilder::Ruby
|
23
24
|
use ScriptBuilder::Script
|
24
25
|
end
|
@@ -4,10 +4,6 @@ module Vx
|
|
4
4
|
|
5
5
|
Ruby = Struct.new(:app) do
|
6
6
|
|
7
|
-
ALIASES = {
|
8
|
-
'1.8.7' => "system"
|
9
|
-
}
|
10
|
-
|
11
7
|
include Helper::TraceShCommand
|
12
8
|
|
13
9
|
def call(env)
|
@@ -43,12 +39,7 @@ module Vx
|
|
43
39
|
end
|
44
40
|
|
45
41
|
def make_rbenv_version_command(env)
|
46
|
-
|
47
|
-
select_rbenv_version(env)
|
48
|
-
end
|
49
|
-
|
50
|
-
def select_rbenv_version_by_aliases(env)
|
51
|
-
ALIASES[rvm(env)]
|
42
|
+
select_rbenv_version(env)
|
52
43
|
end
|
53
44
|
|
54
45
|
def select_rbenv_version(env)
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Vx
|
2
|
+
class Router
|
3
|
+
class ScriptBuilder
|
4
|
+
|
5
|
+
Services = Struct.new(:app) do
|
6
|
+
|
7
|
+
include Helper::TraceShCommand
|
8
|
+
|
9
|
+
def call(env)
|
10
|
+
env.configuration.services.each do |srv|
|
11
|
+
env.init << trace_sh_command("sudo service #{srv} start")
|
12
|
+
end
|
13
|
+
unless env.configuration.services.empty?
|
14
|
+
env.init << trace_sh_command("sleep 3")
|
15
|
+
end
|
16
|
+
app.call(env)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/vx/router/version.rb
CHANGED
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Vx::Router::ScriptBuilder::Services do
|
4
|
+
let(:app) { ->(_) { 0 } }
|
5
|
+
let(:config) { create :configuration, attributes: { services: "service" } }
|
6
|
+
let(:env) { OpenStruct.new configuration: config, init: [] }
|
7
|
+
let(:mid) { described_class.new app }
|
8
|
+
|
9
|
+
subject { mid.call env }
|
10
|
+
|
11
|
+
it { should eq 0 }
|
12
|
+
|
13
|
+
it "should start services in init section" do
|
14
|
+
subject
|
15
|
+
expected = [
|
16
|
+
"echo \\$\\ sudo\\ service\\ service\\ start\nsudo service service start",
|
17
|
+
"echo \\$\\ sleep\\ 3\nsleep 3"
|
18
|
+
]
|
19
|
+
expect(env.init).to eq expected
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vx-router
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.0.
|
4
|
+
version: 0.2.0.pre34
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitry Galinsky
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: vx-common
|
@@ -16,42 +16,42 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.2.0.
|
19
|
+
version: 0.2.0.pre34
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.2.0.
|
26
|
+
version: 0.2.0.pre34
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: vx-message
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.2.0.
|
33
|
+
version: 0.2.0.pre34
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.2.0.
|
40
|
+
version: 0.2.0.pre34
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: vx-build_configuration
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.2.0.
|
47
|
+
version: 0.2.0.pre34
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.2.0.
|
54
|
+
version: 0.2.0.pre34
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: vx-common-amqp
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -168,17 +168,18 @@ files:
|
|
168
168
|
- lib/vx/router/helper/trace_sh_command.rb
|
169
169
|
- lib/vx/router/initializers/amqp.rb
|
170
170
|
- lib/vx/router/script_builder.rb
|
171
|
-
- lib/vx/router/script_builder/databases.rb
|
172
171
|
- lib/vx/router/script_builder/env.rb
|
173
172
|
- lib/vx/router/script_builder/prepare.rb
|
174
173
|
- lib/vx/router/script_builder/ruby.rb
|
175
174
|
- lib/vx/router/script_builder/script.rb
|
175
|
+
- lib/vx/router/script_builder/services.rb
|
176
176
|
- lib/vx/router/script_builder/webdav_cache.rb
|
177
177
|
- lib/vx/router/version.rb
|
178
178
|
- spec/lib/build_spec.rb
|
179
179
|
- spec/lib/configuration_spec.rb
|
180
180
|
- spec/lib/router_spec.rb
|
181
181
|
- spec/lib/script_builder/prepare_spec.rb
|
182
|
+
- spec/lib/script_builder/services_spec.rb
|
182
183
|
- spec/lib/script_builder/webdav_cache_spec.rb
|
183
184
|
- spec/lib/script_builder_spec.rb
|
184
185
|
- spec/spec_helper.rb
|
@@ -207,7 +208,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
208
|
version: 1.3.1
|
208
209
|
requirements: []
|
209
210
|
rubyforge_project:
|
210
|
-
rubygems_version: 2.
|
211
|
+
rubygems_version: 2.0.14
|
211
212
|
signing_key:
|
212
213
|
specification_version: 4
|
213
214
|
summary: ci router
|
@@ -216,6 +217,7 @@ test_files:
|
|
216
217
|
- spec/lib/configuration_spec.rb
|
217
218
|
- spec/lib/router_spec.rb
|
218
219
|
- spec/lib/script_builder/prepare_spec.rb
|
220
|
+
- spec/lib/script_builder/services_spec.rb
|
219
221
|
- spec/lib/script_builder/webdav_cache_spec.rb
|
220
222
|
- spec/lib/script_builder_spec.rb
|
221
223
|
- spec/spec_helper.rb
|
@@ -1,28 +0,0 @@
|
|
1
|
-
module Vx
|
2
|
-
class Router
|
3
|
-
class ScriptBuilder
|
4
|
-
|
5
|
-
Databases = Struct.new(:app) do
|
6
|
-
|
7
|
-
def call(env)
|
8
|
-
psql = []
|
9
|
-
psql << %{sudo -u postgres psql -q -h localhost -c "create role ci with login superuser password 'ci'" || true}
|
10
|
-
psql << %{sudo -u postgres psql -q -h localhost -c "create database ci" || true}
|
11
|
-
|
12
|
-
mysql = []
|
13
|
-
|
14
|
-
mysql << %{echo "CREATE USER 'ci'@'localhost';" | mysql -u root }
|
15
|
-
mysql << %{echo "GRANT ALL PRIVILEGES ON *.* TO 'ci'@'localhost';" | mysql -u root }
|
16
|
-
|
17
|
-
env.init.tap do |i|
|
18
|
-
psql.each {|c| i << c }
|
19
|
-
mysql.each {|c| i << c }
|
20
|
-
end
|
21
|
-
|
22
|
-
app.call(env)
|
23
|
-
end
|
24
|
-
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|