vx-builder 0.0.10 → 0.0.11

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: d410f86eaa7114f27290753d18125560c337c88c
4
- data.tar.gz: 4a84c40ccd12b84a3177bae7119b36d42b39c7d4
3
+ metadata.gz: be5cdd3fce6728724ea5b5dfeafc8ad84a296a8c
4
+ data.tar.gz: d656d3934abcae13a35bc817e075314a242901dc
5
5
  SHA512:
6
- metadata.gz: f110a7511cf4da5aa23a84b6584639f2b955ba1497d3b835f78fd8b33a9d144a009a7364db019447c70c8fb08eb0a077641635e18a050ed8f48030ad19866901
7
- data.tar.gz: d15b4e3a847752c76c9ffbcc5dce61790f9e76626075a2f64d1eff4f9d28c0b1d51580d03fc492ee27b540cd4745cd57bf416ee491e57db533b3ac7e0c22def8
6
+ metadata.gz: 873d68e4ea251f4d05bef3f0b7ba0ca96ea2cef984dd62dc651f8a01ed1a28775bfd2035a2aff0bf696eca4662519285dd7f15e175a097555a8eb2c94601e7e5
7
+ data.tar.gz: bfe817065afd19d996a7c5d6dd1120ef823b1b0f6367035ee7c18c24f6a2c56c99740debc865a63a764b8ff25f2f1c3447a073aed684e113de594e3aec57dcf4
@@ -13,7 +13,7 @@ module Vx
13
13
  env.before_install.tap do |i|
14
14
  i << 'eval "$(rbenv init -)" || true'
15
15
  i << "rbenv shell #{make_rbenv_version_command env}"
16
- i << 'export BUNDLE_GEMFILE=${PWD}/Gemfile'
16
+ i << "export BUNDLE_GEMFILE=${PWD}/#{gemfile(env)}"
17
17
  i << 'export GEM_HOME=$HOME/cached/rubygems'
18
18
  end
19
19
 
@@ -38,6 +38,15 @@ module Vx
38
38
  env.source.rvm.first
39
39
  end
40
40
 
41
+ def gemfile(env)
42
+ if env.source.gemfile
43
+ env.source.gemfile.first
44
+ else
45
+ env.source.gemfile = ["Gemfile"]
46
+ gemfile(env)
47
+ end
48
+ end
49
+
41
50
  def make_rbenv_version_command(env)
42
51
  select_rbenv_version(env)
43
52
  end
@@ -3,7 +3,7 @@ module Vx
3
3
  class Source
4
4
 
5
5
  LANGS = %w{ rvm scala java go }.freeze
6
- KEYS = %w{ services before_script script before_install }.freeze
6
+ KEYS = %w{ gemfile services before_script script before_install }.freeze
7
7
  AS_ARRAY = (KEYS + LANGS).freeze
8
8
 
9
9
  end
@@ -3,7 +3,7 @@ module Vx
3
3
  class Source
4
4
  class Matrix
5
5
 
6
- KEYS = (Source::LANGS + %w{ matrix_env:env }).freeze
6
+ KEYS = (Source::LANGS + %w{ gemfile matrix_env:env }).freeze
7
7
  NOT_MATRIX_KEYS = %w{ script before_script services before_install }
8
8
 
9
9
  attr_reader :source
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Builder
3
- VERSION = "0.0.10"
3
+ VERSION = "0.0.11"
4
4
  end
5
5
  end
@@ -1,5 +1,7 @@
1
1
  rvm:
2
2
  - 2.0.0
3
+ gemfile:
4
+ - 'Gemfile'
3
5
  before_script:
4
6
  - "echo before_script"
5
7
  before_install:
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vx::Builder::Script::Ruby do
4
+ let(:app) { ->(_) { 0 } }
5
+ let(:script) { described_class.new app }
6
+ let(:env) { create :env }
7
+ let(:run) { script.call env }
8
+ subject { run }
9
+
10
+ it { should eq 0 }
11
+
12
+ context "run it" do
13
+ let(:command) { create :command_from_env, env: env }
14
+ before { run }
15
+
16
+ it "should be success" do
17
+ puts env
18
+ puts command
19
+
20
+ system( command )
21
+ expect($?.to_i).to eq 0
22
+ end
23
+ end
24
+
25
+ end
@@ -7,6 +7,7 @@ describe Vx::Builder::Source do
7
7
 
8
8
  its(:attributes) { should be }
9
9
  its(:rvm) { should eq %w{ 2.0.0 } }
10
+ its(:gemfile) { should eq %w{ Gemfile } }
10
11
  its(:before_script) { should eq ["echo before_script"] }
11
12
  its(:script) { should eq ["RAILS_ENV=test ls -1 && echo DONE!"] }
12
13
 
@@ -28,6 +29,7 @@ describe Vx::Builder::Source do
28
29
  context "build new instance" do
29
30
  let(:expected) { {
30
31
  "rvm" => ["2.0.0"],
32
+ "gemfile" => ["Gemfile"],
31
33
  "before_script" => ["echo before_script"],
32
34
  "before_install" => ["echo before_install"],
33
35
  "script" => ["RAILS_ENV=test ls -1 && echo DONE!"],
@@ -50,6 +52,7 @@ describe Vx::Builder::Source do
50
52
  context "from_attributes" do
51
53
  let(:attrs) {{
52
54
  rvm: "2.0.0",
55
+ gemfile: "Gemfile",
53
56
  before_script: "echo before_script",
54
57
  before_install: "echo before_install",
55
58
  script: "RAILS_ENV=test ls -1 && echo DONE!"
@@ -67,27 +70,27 @@ describe Vx::Builder::Source do
67
70
 
68
71
  context "to_matrix_s" do
69
72
  subject { config.to_matrix_s }
70
- it { should eq 'rvm:2.0.0' }
73
+ it { should eq 'gemfile:Gemfile, rvm:2.0.0' }
71
74
 
72
75
  context "when many items" do
73
76
  before do
74
77
  mock(config).rvm { %w{ 1.9.3 2.0.0 } }
75
78
  mock(config).scala { %w{ 2.10.1 } }
76
79
  end
77
- it { should eq "rvm:1.9.3, scala:2.10.1" }
80
+ it { should eq "gemfile:Gemfile, rvm:1.9.3, scala:2.10.1" }
78
81
  end
79
82
  end
80
83
 
81
84
  context "matrix_keys" do
82
85
  subject { config.matrix_keys }
83
- it { should eq("rvm" => "2.0.0") }
86
+ it { should eq("rvm" => "2.0.0", "gemfile" => "Gemfile") }
84
87
 
85
88
  context "when many items" do
86
89
  before do
87
90
  mock(config).rvm { %w{ 1.9.3 2.0.0 } }
88
91
  mock(config).scala { %w{ 2.10.1 } }
89
92
  end
90
- it { should eq({"rvm"=>"1.9.3", "scala"=>"2.10.1"}) }
93
+ it { should eq({"rvm"=>"1.9.3", "scala"=>"2.10.1", "gemfile" => "Gemfile"}) }
91
94
  end
92
95
  end
93
96
 
@@ -20,9 +20,16 @@ def create(name, options = {})
20
20
 
21
21
  when :env
22
22
  OpenStruct.new(
23
- init: [],
24
- source: create(:source),
25
- task: create(:task)
23
+ init: [],
24
+ before_install: [],
25
+ install: [],
26
+ announce: [],
27
+ before_script: [],
28
+ script: [],
29
+ after_script: [],
30
+ source: create(:source),
31
+ task: create(:task),
32
+ cache_key: []
26
33
  )
27
34
 
28
35
  when :command_from_env
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vx-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Galinsky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-27 00:00:00.000000000 Z
11
+ date: 2014-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: vx-common
@@ -146,6 +146,7 @@ files:
146
146
  - spec/lib/builder/configuration_spec.rb
147
147
  - spec/lib/builder/script/env_spec.rb
148
148
  - spec/lib/builder/script/prepare_spec.rb
149
+ - spec/lib/builder/script/ruby_spec.rb
149
150
  - spec/lib/builder/script_spec.rb
150
151
  - spec/lib/builder/source_matrix_spec.rb
151
152
  - spec/lib/builder/source_spec.rb
@@ -186,6 +187,7 @@ test_files:
186
187
  - spec/lib/builder/configuration_spec.rb
187
188
  - spec/lib/builder/script/env_spec.rb
188
189
  - spec/lib/builder/script/prepare_spec.rb
190
+ - spec/lib/builder/script/ruby_spec.rb
189
191
  - spec/lib/builder/script_spec.rb
190
192
  - spec/lib/builder/source_matrix_spec.rb
191
193
  - spec/lib/builder/source_spec.rb