vx-router 0.2.0.pre33 → 0.2.0.pre34

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c9e463fdffc6c9a508a0f2b1d0dd4c341847c4fb
4
- data.tar.gz: d8e6e5eeeeab1609d78044000de21fd2eba0e659
3
+ metadata.gz: d1316b98281834134b4d7cca17414bba760be166
4
+ data.tar.gz: 0fbc8cf188d4ba900f7d0146ef27492febcda32c
5
5
  SHA512:
6
- metadata.gz: 59ba74e907d16c705b551f78cea0540e919fe7145578680454e5124c293e0e6898899b3b125f8e5de7a520e5b3b60c8114e0c2c0c3bcb9d29e61d453cbc6d49f
7
- data.tar.gz: d73cdfa94c44f3745ab4206dec1dded2b03025aab30c5f0cace6f70788561379ed3d4e0315f882818be2fc70421d91c8659961570b8c7d8f2779e7fed7b74653
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
- select_rbenv_version_by_aliases(env) ||
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
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  class Router
3
- VERSION = "0.2.0.pre33"
3
+ VERSION = "0.2.0.pre34"
4
4
  end
5
5
  end
@@ -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.pre33
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-16 00:00:00.000000000 Z
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.pre33
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.pre33
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.pre33
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.pre33
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.pre33
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.pre33
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.1.11
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