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 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