vx-builder 0.5.23 → 0.5.24

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: 4e902b950be41115c638d66df3805b4b9abaa2e4
4
- data.tar.gz: 51a81d9af433b183ba2c42e26cf4b45d9b2fca4d
3
+ metadata.gz: 41037f16755fb7f792f1783944dc76df3e30e0f0
4
+ data.tar.gz: da99cdcb3be4b6a7d839945e3738a323084a71e7
5
5
  SHA512:
6
- metadata.gz: bb5a0dbb8e83deec01b041a49dd38881cdac4288ab7dad2e4f246330644c300e6423429b8f6ed5a8b913a09c02b151421e08022e70fc6fe5d242c31919a05653
7
- data.tar.gz: 7a1454fe196c0338513dd74b5d05b3c2ae0216d79843474f72a007fd7e9b24eb4ab9b0bba5fc0dc4bdc49273cc6cbe3cc16ab16dc66577ee436e12cb0c1f943a
6
+ metadata.gz: 8e8a883bab5472fe93cc28275c1960ab4a372cd1fad75ce63ccff83ed6e426dedd32d6885dd41cd72d8bf311851e29d8fa2a1a232719a60ae9ad553757245508
7
+ data.tar.gz: 36a63f1cd6beeab368d8bbde924295469410b3a1cbc406330ec447baee27d218019802e46e1ff3df2ae1e4155df892a3d86b2f9ab06720ea2a6ebab09389fb83
data/bin/vx_builder ADDED
@@ -0,0 +1,119 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ # TODO: remove after image updated
6
+ default_bundle="/opt/vexor/packages/ruby-1.9.3-p547/bin/bundle"
7
+
8
+ ruby_version () {
9
+ local ver
10
+ local st
11
+ ver="$($default_bundle platform --ruby)"
12
+ st=$?
13
+
14
+ if [[ $ver =~ "^ruby [0-9]" ]] ; then
15
+ echo $ver | sed -e 's/ruby //'
16
+ else
17
+ echo '2.0.0'
18
+ fi
19
+
20
+ return $st
21
+ }
22
+
23
+ ruby_install () {
24
+ local re
25
+ local ver
26
+
27
+ if [[ "x$1" == "x" ]] ;
28
+ then
29
+ ver=$(ruby_version)
30
+ else
31
+ ver=$1
32
+ fi
33
+
34
+ echo "$ sudo env PATH=\$PATH vxvm install ruby $ver"
35
+ re=$(sudo env PATH=$PATH vxvm install ruby $ver)
36
+ echo $re > .ruby-activate
37
+ source $re
38
+ }
39
+
40
+ ruby_rails_gen_database_spec_for_pg () {
41
+ bundle show pg > /dev/null && (
42
+ echo 'create config/database.yml for postgresql'
43
+ cat > config/database.yml <<EOL
44
+ test:
45
+ adapter: postgresql
46
+ encoding: unicode
47
+ database: rails_test
48
+ username: postgres
49
+ host: localhost
50
+ EOL
51
+ )
52
+ }
53
+
54
+ ruby_rails_gen_database_spec_for_mysql () {
55
+ bundle show mysql2 > /dev/null && (
56
+ echo 'create config/database.yml for mysql'
57
+ cat > config/database.yml <<EOL
58
+ test:
59
+ adapter: mysql2
60
+ encoding: utf8
61
+ database: rails_test
62
+ username: root
63
+ host: localhost
64
+ EOL
65
+ )
66
+ }
67
+
68
+ ruby_rails_gen_database_spec_for_sqlite () {
69
+ bundle show sqlite3 > /dev/null && (
70
+ echo 'create config/database.yml for sqlite3'
71
+ cat > config/database.yml <<EOL
72
+ test:
73
+ adapter: sqlite3
74
+ database: db/test.sqlite3
75
+ EOL
76
+ )
77
+ }
78
+
79
+ ruby_rails_db_create () {
80
+ echo $ bundle exec rake db:create
81
+ bundle exec rake db:create
82
+
83
+ test -f db/schema.rb && (
84
+ echo $ bundle exec rake db:schema:load
85
+ bundle exec rake db:schema:load
86
+ )
87
+
88
+ test -d db/migrate && (
89
+ echo $ bundle exec rake db:migrate
90
+ bundle exec rake db:migrate
91
+ )
92
+ }
93
+
94
+ ruby_rails_setup () {
95
+ local re
96
+ re=$(bundle show rails > /dev/null && echo "Yes" || echo "No")
97
+ if [[ "x$re" == 'xYes' ]] ; then
98
+ (
99
+ ruby_rails_gen_database_spec_for_pg ||
100
+ ruby_rails_gen_database_spec_for_mysql ||
101
+ ruby_rails_gen_database_spec_for_sqlite
102
+ ) &&
103
+ ruby_rails_db_create
104
+ fi
105
+ }
106
+
107
+ case "$1" in
108
+ "ruby:install")
109
+ ruby_install $2
110
+ ;;
111
+ "ruby:rails:install")
112
+ ruby_rails_setup
113
+ ;;
114
+ *)
115
+ echo "Unknown command $@"
116
+ exit 1
117
+ ;;
118
+ esac
119
+
@@ -22,14 +22,6 @@ module Vx
22
22
  i << trace_sh_command("npm --version")
23
23
  end
24
24
 
25
- do_install(env) do |i|
26
- i << trace_sh_command("npm install")
27
- end
28
-
29
- do_script(env) do |i|
30
- i << trace_sh_command("npm test")
31
- end
32
-
33
25
  do_before_install(env) do |i|
34
26
  i << "mkdir -p #{NPM_PACKAGES}"
35
27
  i << "mkdir -p #{BOWER_COMPONENTS}"
@@ -38,6 +30,14 @@ module Vx
38
30
  i << "export PATH=$PATH:#{NPM_PACKAGES}/bin"
39
31
  end
40
32
 
33
+ do_install(env) do |i|
34
+ i << trace_sh_command("npm install")
35
+ end
36
+
37
+ do_script(env) do |i|
38
+ i << trace_sh_command("npm test")
39
+ end
40
+
41
41
  do_cached_directories(env) do |i|
42
42
  i << NPM_PACKAGES
43
43
  i << BOWER_COMPONENTS
@@ -30,9 +30,10 @@ module Vx
30
30
  i << "mkdir -p #{data_path}"
31
31
  i << "mkdir -p #{repo_path}"
32
32
 
33
- %w{ vx_parallel_rspec vx_parallel_spinach }.each do |bin|
33
+ %w{ vx_parallel_rspec vx_parallel_spinach vx_builder }.each do |bin|
34
34
  src = File.expand_path("../../../../../bin/#{bin}", __FILE__)
35
- dst = "$(pwd)/bin/#{bin.sub("vx_", "")}"
35
+ bin.sub!("vx_", '') unless bin == 'vx_builder'
36
+ dst = "$(pwd)/bin/#{bin}"
36
37
  i << upload_sh_command(dst, File.read(src))
37
38
  i << "chmod 0750 #{dst}"
38
39
  end
@@ -13,10 +13,10 @@ module Vx
13
13
 
14
14
  def call(env)
15
15
  if enabled?(env)
16
- vxvm_install(env, 'ruby', ruby_version(env))
17
16
 
18
17
  do_cache_key(env) do |i|
19
- i << "rvm-#{ruby_version env}"
18
+ ruby_v = ruby_version(env) || 'default'
19
+ i << "rvm-#{ruby_v}"
20
20
  i << gemfile(env)
21
21
  end
22
22
 
@@ -25,6 +25,8 @@ module Vx
25
25
  i << trace_sh_command("export RACK_ENV=test")
26
26
  i << trace_sh_command("export BUNDLE_GEMFILE=${PWD}/#{gemfile(env)}")
27
27
  i << trace_sh_command('export GEM_HOME=~/.rubygems')
28
+ i << trace_sh_command("vx_builder ruby:install #{ruby_version env}")
29
+ i << "source $(cat .ruby-activate)"
28
30
  end
29
31
 
30
32
  do_announce(env) do |i|
@@ -36,6 +38,7 @@ module Vx
36
38
  do_install(env) do |i|
37
39
  bundler_args = env.source.bundler_args.first || DEFAULT_BUNDLE_INSTALL_ARGS
38
40
  i << trace_sh_command("bundle install #{bundler_args}")
41
+ i << trace_sh_command("vx_builder ruby:rails:install")
39
42
  end
40
43
 
41
44
  do_script(env) do |i|
@@ -48,24 +51,6 @@ module Vx
48
51
  end
49
52
  end
50
53
 
51
- if auto_build?(env)
52
- vxvm_install(env, 'ruby', DEFAULT_RUBY)
53
-
54
- do_init(env) do |i|
55
- src = File.read(File.expand_path("../../../../../bin/vx_ruby_auto_build", __FILE__))
56
- i << upload_sh_command("~/vx_ruby_auto_build", src)
57
- i << "sudo chmod 0755 ~/vx_ruby_auto_build"
58
- end
59
-
60
- do_script(env) do |i|
61
- i << "~/vx_ruby_auto_build"
62
- end
63
-
64
- do_cached_directories(env) do |i|
65
- i << "~/.rubygems"
66
- end
67
- end
68
-
69
54
  app.call(env)
70
55
  end
71
56
 
@@ -80,7 +65,7 @@ module Vx
80
65
  end
81
66
 
82
67
  def ruby_version(env)
83
- v = env.source.rvm.first || DEFAULT_RUBY
68
+ v = env.source.rvm.first
84
69
  ALIASES[v] || v
85
70
  end
86
71
 
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Builder
3
- VERSION = "0.5.23"
3
+ VERSION = "0.5.24"
4
4
  end
5
5
  end
@@ -22,6 +22,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
22
22
  chmod 0750 $(pwd)/bin/parallel_rspec
23
23
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
24
24
  chmod 0750 $(pwd)/bin/parallel_spinach
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
+ chmod 0750 $(pwd)/bin/vx_builder
25
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
26
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
27
29
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -14,4 +14,4 @@ test -d ${VX_ROOT}/code/vexor/vx-test-repo || exit 1
14
14
  cd ${VX_ROOT}/code/vexor/vx-test-repo
15
15
 
16
16
  # after script
17
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher push http://example.com/test/pull-request/rvm-2.0.0-gemfile.tgz
17
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher push http://example.com/test/pull-request/rvm-default-gemfile.tgz
@@ -26,6 +26,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
26
26
  chmod 0750 $(pwd)/bin/parallel_rspec
27
27
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
28
28
  chmod 0750 $(pwd)/bin/parallel_spinach
29
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
30
+ chmod 0750 $(pwd)/bin/vx_builder
29
31
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
30
32
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
31
33
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -45,14 +47,11 @@ echo "download latest version of vxvm"
45
47
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
46
48
  chmod +x $VX_ROOT/bin/vxvm
47
49
  export CASHER_DIR=$HOME/.casher && ( mkdir -p $CASHER_DIR/bin && /usr/bin/curl https://raw2.github.com/dima-exe/casher/master/bin/casher --tcp-nodelay --retry 3 --fail --silent --show-error -o $HOME/.casher/bin/casher && chmod +x $HOME/.casher/bin/casher ) || true
48
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-2.0.0-gemfile.tgz http://example.com/master/rvm-2.0.0-gemfile.tgz || true
50
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-default-gemfile.tgz http://example.com/master/rvm-default-gemfile.tgz || true
49
51
  test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
50
52
  unset CASHER_DIR
51
53
 
52
54
  # before install
53
- echo \$\ sudo\ env\ PATH\=\$PATH\ vxvm\ install\ ruby\ 2.0.0
54
- VX_VM_SOURCE="$(sudo env PATH=$PATH vxvm install ruby 2.0.0)"
55
- source "$VX_VM_SOURCE"
56
55
  echo \$\ export\ RAILS_ENV\=test
57
56
  export RAILS_ENV=test
58
57
  echo \$\ export\ RACK_ENV\=test
@@ -61,6 +60,9 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
61
60
  export BUNDLE_GEMFILE=${PWD}/Gemfile
62
61
  echo \$\ export\ GEM_HOME\=\~/.rubygems
63
62
  export GEM_HOME=~/.rubygems
63
+ echo \$\ vx_builder\ ruby:install\
64
+ vx_builder ruby:install
65
+ source $(cat .ruby-activate)
64
66
 
65
67
  # announce
66
68
  echo \$\ ruby\ --version
@@ -73,5 +75,7 @@ bundle --version
73
75
  # install
74
76
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
75
77
  bundle install --clean --retry=3 --jobs=4
78
+ echo \$\ vx_builder\ ruby:rails:install
79
+ vx_builder ruby:rails:install
76
80
 
77
81
  # before script
@@ -14,4 +14,4 @@ test -d ${VX_ROOT}/code/vexor/vx-test-repo || exit 1
14
14
  cd ${VX_ROOT}/code/vexor/vx-test-repo
15
15
 
16
16
  # after script
17
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher push http://example.com/test/pull-request/rvm-2.0.0-gemfile.tgz
17
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher push http://example.com/test/pull-request/rvm-default-gemfile.tgz
@@ -22,6 +22,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
22
22
  chmod 0750 $(pwd)/bin/parallel_rspec
23
23
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
24
24
  chmod 0750 $(pwd)/bin/parallel_spinach
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
+ chmod 0750 $(pwd)/bin/vx_builder
25
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
26
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
27
29
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -41,14 +43,11 @@ echo "download latest version of vxvm"
41
43
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
42
44
  chmod +x $VX_ROOT/bin/vxvm
43
45
  export CASHER_DIR=$HOME/.casher && ( mkdir -p $CASHER_DIR/bin && /usr/bin/curl https://raw2.github.com/dima-exe/casher/master/bin/casher --tcp-nodelay --retry 3 --fail --silent --show-error -o $HOME/.casher/bin/casher && chmod +x $HOME/.casher/bin/casher ) || true
44
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-2.0.0-gemfile.tgz http://example.com/master/rvm-2.0.0-gemfile.tgz || true
46
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-default-gemfile.tgz http://example.com/master/rvm-default-gemfile.tgz || true
45
47
  test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
46
48
  unset CASHER_DIR
47
49
 
48
50
  # before install
49
- echo \$\ sudo\ env\ PATH\=\$PATH\ vxvm\ install\ ruby\ 2.0.0
50
- VX_VM_SOURCE="$(sudo env PATH=$PATH vxvm install ruby 2.0.0)"
51
- source "$VX_VM_SOURCE"
52
51
  echo \$\ export\ RAILS_ENV\=test
53
52
  export RAILS_ENV=test
54
53
  echo \$\ export\ RACK_ENV\=test
@@ -57,6 +56,9 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
57
56
  export BUNDLE_GEMFILE=${PWD}/Gemfile
58
57
  echo \$\ export\ GEM_HOME\=\~/.rubygems
59
58
  export GEM_HOME=~/.rubygems
59
+ echo \$\ vx_builder\ ruby:install\
60
+ vx_builder ruby:install
61
+ source $(cat .ruby-activate)
60
62
 
61
63
  # announce
62
64
  echo \$\ ruby\ --version
@@ -69,5 +71,7 @@ bundle --version
69
71
  # install
70
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
71
73
  bundle install --clean --retry=3 --jobs=4
74
+ echo \$\ vx_builder\ ruby:rails:install
75
+ vx_builder ruby:rails:install
72
76
 
73
77
  # before script
@@ -22,6 +22,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
22
22
  chmod 0750 $(pwd)/bin/parallel_rspec
23
23
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
24
24
  chmod 0750 $(pwd)/bin/parallel_spinach
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
+ chmod 0750 $(pwd)/bin/vx_builder
25
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
26
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
27
29
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -46,9 +48,6 @@ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.
46
48
  unset CASHER_DIR
47
49
 
48
50
  # before install
49
- echo \$\ sudo\ env\ PATH\=\$PATH\ vxvm\ install\ ruby\ 1.9.3
50
- VX_VM_SOURCE="$(sudo env PATH=$PATH vxvm install ruby 1.9.3)"
51
- source "$VX_VM_SOURCE"
52
51
  echo \$\ export\ RAILS_ENV\=test
53
52
  export RAILS_ENV=test
54
53
  echo \$\ export\ RACK_ENV\=test
@@ -57,6 +56,9 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
57
56
  export BUNDLE_GEMFILE=${PWD}/Gemfile
58
57
  echo \$\ export\ GEM_HOME\=\~/.rubygems
59
58
  export GEM_HOME=~/.rubygems
59
+ echo \$\ vx_builder\ ruby:install\ 1.9.3
60
+ vx_builder ruby:install 1.9.3
61
+ source $(cat .ruby-activate)
60
62
 
61
63
  # announce
62
64
  echo \$\ ruby\ --version
@@ -69,6 +71,8 @@ bundle --version
69
71
  # install
70
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
71
73
  bundle install --clean --retry=3 --jobs=4
74
+ echo \$\ vx_builder\ ruby:rails:install
75
+ vx_builder ruby:rails:install
72
76
 
73
77
  # before script
74
78
  echo \$\ echo\ before\ script
@@ -22,6 +22,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
22
22
  chmod 0750 $(pwd)/bin/parallel_rspec
23
23
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
24
24
  chmod 0750 $(pwd)/bin/parallel_spinach
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
+ chmod 0750 $(pwd)/bin/vx_builder
25
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
26
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
27
29
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -46,9 +48,6 @@ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.
46
48
  unset CASHER_DIR
47
49
 
48
50
  # before install
49
- echo \$\ sudo\ env\ PATH\=\$PATH\ vxvm\ install\ ruby\ 2.0.0
50
- VX_VM_SOURCE="$(sudo env PATH=$PATH vxvm install ruby 2.0.0)"
51
- source "$VX_VM_SOURCE"
52
51
  echo \$\ export\ RAILS_ENV\=test
53
52
  export RAILS_ENV=test
54
53
  echo \$\ export\ RACK_ENV\=test
@@ -57,6 +56,9 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
57
56
  export BUNDLE_GEMFILE=${PWD}/Gemfile
58
57
  echo \$\ export\ GEM_HOME\=\~/.rubygems
59
58
  export GEM_HOME=~/.rubygems
59
+ echo \$\ vx_builder\ ruby:install\ 2.0.0
60
+ vx_builder ruby:install 2.0.0
61
+ source $(cat .ruby-activate)
60
62
 
61
63
  # announce
62
64
  echo \$\ ruby\ --version
@@ -69,6 +71,8 @@ bundle --version
69
71
  # install
70
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
71
73
  bundle install --clean --retry=3 --jobs=4
74
+ echo \$\ vx_builder\ ruby:rails:install
75
+ vx_builder ruby:rails:install
72
76
 
73
77
  # before script
74
78
  echo \$\ echo\ before\ script
@@ -22,6 +22,8 @@ mkdir -p ${VX_ROOT}/code/vexor/vx-test-repo
22
22
  chmod 0750 $(pwd)/bin/parallel_rspec
23
23
  (echo IyEvYmluL2Jhc2gKCmk9MApmaWxlcz0oKQoKQkxBQ0s9IlwwMzNbMzBtIgpSRUQ9IlwwMzNbMzFtIgpHUkVFTj0iXDAzM1szMm0iCllFTExPVz0iXDAzM1szM20iCkJMVUU9IlwwMzNbMzRtIgpQSU5LPSJcMDMzWzM1bSIKQ1lBTj0iXDAzM1szNm0iCldISVRFPSJcMDMzWzM3bSIKTk9STUFMPSJcMDMzWzA7MzltIgoKSk9CUz0ke0NJX1BBUkFMTEVMX0pPQlM6LTF9CkpPQl9OVU1CRVI9JHtDSV9QQVJBTExFTF9KT0JfTlVNQkVSOi0wfQoKZm9yIGZpbGUgaW4gJChmaW5kIC4vZmVhdHVyZXMgLW5hbWUgIiouZmVhdHVyZSIgfCBzb3J0KQpkbwogIGlmIFsgJCgoJGkgJSAkSk9CUykpIC1lcSAkSk9CX05VTUJFUiBdCiAgdGhlbgogICAgZmlsZXMrPSIgJGZpbGUiCiAgZmkKICAoKGkrKykpCmRvbmUKCmVjaG8gLWUgIiR7R1JFRU59UGFyYWxsZWwgcnVubmluZyAkKCgke0pPQl9OVU1CRVJ9ICsgMSkpIG9mICR7Sk9CU30gJHtOT1JNQUx9IgplY2hvICJidW5kbGUgZXhlYyBzcGluYWNoICRAICR7ZmlsZXNbQF19IgpleGVjIGJ1bmRsZSBleGVjIHNwaW5hY2ggJEAgJHtmaWxlc1tAXX0K | base64 --decode) > $(pwd)/bin/parallel_spinach
24
24
  chmod 0750 $(pwd)/bin/parallel_spinach
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyAoKSB7CiAgYnVuZGxlIHNob3cgcGcgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHBvc3RncmVzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogcG9zdGdyZXNxbAogIGVuY29kaW5nOiB1bmljb2RlCiAgZGF0YWJhc2U6IHJhaWxzX3Rlc3QKICB1c2VybmFtZTogcG9zdGdyZXMKICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCAoKSB7CiAgYnVuZGxlIHNob3cgbXlzcWwyID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBteXNxbCcKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICAgYWRhcHRlcjogbXlzcWwyCiAgIGVuY29kaW5nOiB1dGY4CiAgIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgIHVzZXJuYW1lOiByb290CiAgIGhvc3Q6IGxvY2FsaG9zdApFT0wKICApCn0KCnJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZSAoKSB7CiAgYnVuZGxlIHNob3cgc3FsaXRlMyA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3Igc3FsaXRlMycKICAgIGNhdCA+IGNvbmZpZy9kYXRhYmFzZS55bWwgPDxFT0wKdGVzdDoKICBhZGFwdGVyOiBzcWxpdGUzCiAgZGF0YWJhc2U6IGRiL3Rlc3Quc3FsaXRlMwpFT0wKICApCn0KCnJ1YnlfcmFpbHNfZGJfY3JlYXRlICgpIHsKICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKICBidW5kbGUgZXhlYyByYWtlIGRiOmNyZWF0ZQoKICB0ZXN0IC1mIGRiL3NjaGVtYS5yYiAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpzY2hlbWE6bG9hZAogICkKCiAgdGVzdCAtZCBkYi9taWdyYXRlICYmICgKICAgIGVjaG8gJCBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6bWlncmF0ZQogICkKfQoKcnVieV9yYWlsc19zZXR1cCAoKSB7CiAgbG9jYWwgcmUKICByZT0kKGJ1bmRsZSBzaG93IHJhaWxzID4gL2Rldi9udWxsICYmIGVjaG8gIlllcyIgfHwgZWNobyAiTm8iKQogIGlmIFtbICJ4JHJlIiA9PSAneFllcycgXV0gOyB0aGVuCiAgICAoCiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3BnIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX215c3FsIHx8CiAgICAgIHJ1YnlfcmFpbHNfZ2VuX2RhdGFiYXNlX3NwZWNfZm9yX3NxbGl0ZQogICAgKSAmJgogICAgcnVieV9yYWlsc19kYl9jcmVhdGUKICBmaQp9CgpjYXNlICIkMSIgaW4KICAicnVieTppbnN0YWxsIikKICAgIHJ1YnlfaW5zdGFsbCAkMgogICAgOzsKICAicnVieTpyYWlsczppbnN0YWxsIikKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
+ chmod 0750 $(pwd)/bin/vx_builder
25
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
26
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
27
29
  export VX_PRIVATE_KEY=${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -47,9 +49,6 @@ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.
47
49
  unset CASHER_DIR
48
50
 
49
51
  # before install
50
- echo \$\ sudo\ env\ PATH\=\$PATH\ vxvm\ install\ ruby\ 1.9.3
51
- VX_VM_SOURCE="$(sudo env PATH=$PATH vxvm install ruby 1.9.3)"
52
- source "$VX_VM_SOURCE"
53
52
  echo \$\ export\ RAILS_ENV\=test
54
53
  export RAILS_ENV=test
55
54
  echo \$\ export\ RACK_ENV\=test
@@ -58,6 +57,9 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
58
57
  export BUNDLE_GEMFILE=${PWD}/Gemfile
59
58
  echo \$\ export\ GEM_HOME\=\~/.rubygems
60
59
  export GEM_HOME=~/.rubygems
60
+ echo \$\ vx_builder\ ruby:install\ 1.9.3
61
+ vx_builder ruby:install 1.9.3
62
+ source $(cat .ruby-activate)
61
63
 
62
64
  # announce
63
65
  echo \$\ ruby\ --version
@@ -70,5 +72,7 @@ bundle --version
70
72
  # install
71
73
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
72
74
  bundle install --clean --retry=3 --jobs=4
75
+ echo \$\ vx_builder\ ruby:rails:install
76
+ vx_builder ruby:rails:install
73
77
 
74
78
  # before script
@@ -13,7 +13,6 @@ describe "(integration) go" do
13
13
  after { FileUtils.rm_rf(path) }
14
14
 
15
15
  def write_script_to_filter(prefix, script)
16
- =begin
17
16
  File.open(fixture_path("integration/go/#{prefix}before_script.sh"), 'w') do |io|
18
17
  io << script.to_before_script
19
18
  end
@@ -23,7 +22,6 @@ describe "(integration) go" do
23
22
  File.open(fixture_path("integration/go/#{prefix}script.sh"), 'w') do |io|
24
23
  io << script.to_script
25
24
  end
26
- =end
27
25
  end
28
26
 
29
27
  def build(file, options = {})
@@ -14,7 +14,6 @@ describe "(integration) ruby" do
14
14
  after { FileUtils.rm_rf(path) }
15
15
 
16
16
  def write_script_to_filter(prefix, script)
17
- =begin
18
17
  File.open(fixture_path("integration/ruby/#{prefix}before_script.sh"), 'w') do |io|
19
18
  io << script.to_before_script
20
19
  end
@@ -24,7 +23,6 @@ describe "(integration) ruby" do
24
23
  File.open(fixture_path("integration/ruby/#{prefix}script.sh"), 'w') do |io|
25
24
  io << script.to_script
26
25
  end
27
- =end
28
26
  end
29
27
 
30
28
  def build(file, options = {})
@@ -115,8 +113,8 @@ describe "(integration) ruby" do
115
113
  end
116
114
  end
117
115
 
118
- it "should succesfuly run lang/ruby with parallel_rspec", real: true do
119
- file = {"language" => "ruby", "parallel" => 3, "script" => "parallel_rspec"}.to_yaml
116
+ it "should succesfuly run lang/ruby with rvm key", real: true do
117
+ file = {"rvm" => "2.1"}.to_yaml
120
118
  task = create(
121
119
  :task,
122
120
  sha: "HEAD",
@@ -135,14 +133,15 @@ describe "(integration) ruby" do
135
133
  end
136
134
  end
137
135
 
138
- it "should succesfuly run lang/ruby with auto build", real: true do
136
+ it "should succesfuly run lang/ruby with parallel_rspec", real: true do
137
+ file = {"language" => "ruby", "parallel" => 3, "script" => "parallel_rspec"}.to_yaml
139
138
  task = create(
140
139
  :task,
141
140
  sha: "HEAD",
142
141
  branch: "lang/ruby"
143
142
  )
144
143
 
145
- b = build(nil, task: task)
144
+ b = build(file, task: task)
146
145
  Dir.chdir(path) do
147
146
  File.open("script.sh", "w") do |io|
148
147
  io.write "set -e\n"
@@ -154,14 +153,15 @@ describe "(integration) ruby" do
154
153
  end
155
154
  end
156
155
 
157
- it "should succesfuly run lang/ruby-rails-pg with auto build", real: true do
156
+ it "should succesfuly run lang/ruby-rails-pg", real: true do
157
+ file = {"language" => "ruby"}.to_yaml
158
158
  task = create(
159
159
  :task,
160
160
  sha: "HEAD",
161
161
  branch: "lang/ruby-rails-pg"
162
162
  )
163
163
 
164
- b = build(nil, task: task)
164
+ b = build(file, task: task)
165
165
  Dir.chdir(path) do
166
166
  File.open("script.sh", "w") do |io|
167
167
  io.write "set -e\n"
@@ -173,14 +173,15 @@ describe "(integration) ruby" do
173
173
  end
174
174
  end
175
175
 
176
- it "should succesfuly run lang/ruby-rails-mysql with auto build", real: true do
176
+ it "should succesfuly run lang/ruby-rails-mysql", real: true do
177
+ file = {"language" => "ruby"}.to_yaml
177
178
  task = create(
178
179
  :task,
179
180
  sha: "HEAD",
180
181
  branch: "lang/ruby-rails-mysql"
181
182
  )
182
183
 
183
- b = build(nil, task: task)
184
+ b = build(file, task: task)
184
185
  Dir.chdir(path) do
185
186
  File.open("script.sh", "w") do |io|
186
187
  io.write "set -e\n"
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.5.23
4
+ version: 0.5.24
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-10-28 00:00:00.000000000 Z
11
+ date: 2014-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: vx-common
@@ -112,6 +112,7 @@ description: ' Write a gem description'
112
112
  email:
113
113
  - dima.exe@gmail.com
114
114
  executables:
115
+ - vx_builder
115
116
  - vx_parallel_rspec
116
117
  - vx_parallel_spinach
117
118
  - vx_ruby_auto_build
@@ -125,6 +126,7 @@ files:
125
126
  - LICENSE.txt
126
127
  - README.md
127
128
  - Rakefile
129
+ - bin/vx_builder
128
130
  - bin/vx_parallel_rspec
129
131
  - bin/vx_parallel_spinach
130
132
  - bin/vx_ruby_auto_build