vx-builder 0.5.23 → 0.5.24

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