vx-builder 0.5.28 → 0.5.29

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: 11832d7131390d597b194d3f7ee01bbf75a2bcc6
4
- data.tar.gz: 7642aba2d4141a2c55bbbed0b92f46131b0e4107
3
+ metadata.gz: 9591c46cfa06bdbecf6fc6d27e859f5c2d4f39f7
4
+ data.tar.gz: 64bc6ef51248ca86196855017b670e68b546f0f1
5
5
  SHA512:
6
- metadata.gz: 3df39562d939d1edbbf753f6f54f8cbff19545d6b7a8026728fca960bdf1f9d2e1fd8e5228f85f8589f57e6e51f828c5f49c066d1c4d4759e21cd544c1bc5df1
7
- data.tar.gz: a07ce8211f3341dae98a87d5a9129faa411f8aa0b72726c202d48ef2a9eaa8eda83095b8ecfe53ec1e03584ae8e710238e4cad50c9b69f24a58cc73268e97343
6
+ metadata.gz: 090ae02c55745c7551eb71fb253d6ba99d1d3ca04f5171c763ad84396a6f5879644a1e59007173acd5c818df65dbaf2bdab55fbb2797361284bf5b5a84d0bdce
7
+ data.tar.gz: 2cb5a93d6125177a7960e79fe0802c1b9c7293298de93ab76bfb711c1e53d5ea97e3445be3fb1a587c619fbbbcfaac8a897e609b0bd1838df49b525ff4d6ce95
@@ -15,6 +15,7 @@ module Vx
15
15
  go
16
16
  node_js
17
17
  rust
18
+ python
18
19
 
19
20
  language
20
21
  script
@@ -27,6 +28,7 @@ module Vx
27
28
  go
28
29
  node_js
29
30
  rust
31
+ python
30
32
 
31
33
  language
32
34
  gemfile
@@ -10,6 +10,7 @@ module Vx
10
10
  go
11
11
  node_js
12
12
  rust
13
+ python
13
14
 
14
15
  image
15
16
  env_matrix:env
@@ -26,6 +26,7 @@ module Vx
26
26
  i << "mkdir -p #{NPM_PACKAGES}"
27
27
  i << "mkdir -p #{BOWER_COMPONENTS}"
28
28
  i << trace_sh_command("npm config set prefix=#{NPM_PACKAGES}")
29
+ i << trace_sh_command("npm config set spin false")
29
30
  i << "test -f .bowerrc || (" + trace_sh_command("export bower_directory=#{BOWER_COMPONENTS}") + ")"
30
31
  i << "export PATH=$PATH:#{NPM_PACKAGES}/bin"
31
32
  end
@@ -0,0 +1,61 @@
1
+ module Vx
2
+ module Builder
3
+ class ScriptBuilder
4
+
5
+ class Python < Base
6
+
7
+ DEFAULT_PYTHON = '2.7'
8
+
9
+ def call(env)
10
+ if enabled?(env)
11
+
12
+ vxvm_install(env, 'python', python_version(env))
13
+
14
+ do_cache_key(env) do |i|
15
+ ruby_v = python_version(env) || DEFAULT_PYTHON
16
+ i << "python-#{ruby_v}"
17
+ end
18
+
19
+ do_announce(env) do |i|
20
+ i << trace_sh_command("python --version")
21
+ i << trace_sh_command("pip --version")
22
+ end
23
+
24
+ do_install(env) do |i|
25
+ i << "if [ -f Requirements.txt ] ; then \n #{trace_sh_command "sudo pip install -r Requirements.txt"}\nfi"
26
+ i << "if [ -f requirements.txt ] ; then \n #{trace_sh_command "sudo pip install -r requirements.txt"}\nfi"
27
+ i << "if [ -f setup.py ] ; then \n #{trace_sh_command "sudo python setup.py install"}\nfi"
28
+ end
29
+
30
+ do_script(env) do |i|
31
+ script =<<EOF
32
+ if [[ -f manage.py ]] ; then
33
+ #{trace_sh_command 'python manage.py test'}
34
+ elif [[ -f setup.py ]] ; then
35
+ #{trace_sh_command 'python setup.py test'}
36
+ else
37
+ #{trace_sh_command 'nosetest'}
38
+ fi
39
+ EOF
40
+ i << script
41
+ end
42
+ end
43
+
44
+ app.call(env)
45
+ end
46
+
47
+ private
48
+
49
+ def enabled?(env)
50
+ env.source.python.first || env.source.language == 'python'
51
+ end
52
+
53
+ def python_version(env)
54
+ v = env.source.rvm.first
55
+ v || DEFAULT_PYTHON
56
+ end
57
+
58
+ end
59
+ end
60
+ end
61
+ end
@@ -13,6 +13,7 @@ module Vx
13
13
  autoload :Scala, File.expand_path("../script_builder/scala", __FILE__)
14
14
  autoload :Clojure, File.expand_path("../script_builder/clojure", __FILE__)
15
15
  autoload :Rust, File.expand_path("../script_builder/rust", __FILE__)
16
+ autoload :Python, File.expand_path("../script_builder/python", __FILE__)
16
17
  autoload :Prepare, File.expand_path("../script_builder/prepare", __FILE__)
17
18
  autoload :Databases, File.expand_path("../script_builder/databases", __FILE__)
18
19
  autoload :Cache, File.expand_path("../script_builder/cache", __FILE__)
@@ -39,6 +40,7 @@ module Vx
39
40
  use Builder::ScriptBuilder::Go
40
41
  use Builder::ScriptBuilder::Nodejs
41
42
  use Builder::ScriptBuilder::Rust
43
+ use Builder::ScriptBuilder::Python
42
44
 
43
45
  use Builder::ScriptBuilder::Deploy
44
46
  use Builder::ScriptBuilder::Defaults
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Builder
3
- VERSION = "0.5.28"
3
+ VERSION = "0.5.29"
4
4
  end
5
5
  end
@@ -22,7 +22,7 @@ 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
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
26
  chmod 0750 $(pwd)/bin/vx_builder
27
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
28
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -26,7 +26,7 @@ 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
29
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
30
30
  chmod 0750 $(pwd)/bin/vx_builder
31
31
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
32
32
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -46,12 +46,6 @@ cd ${VX_ROOT}/code/vexor/vx-test-repo
46
46
  echo "download latest version of vxvm"
47
47
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
48
48
  chmod +x $VX_ROOT/bin/vxvm
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
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
51
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
52
- unset CASHER_DIR
53
-
54
- # before install
55
49
  echo \$\ export\ RAILS_ENV\=test
56
50
  export RAILS_ENV=test
57
51
  echo \$\ export\ RACK_ENV\=test
@@ -60,6 +54,12 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
60
54
  export BUNDLE_GEMFILE=${PWD}/Gemfile
61
55
  echo \$\ export\ GEM_HOME\=\~/.rubygems
62
56
  export GEM_HOME=~/.rubygems
57
+ 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
58
+ 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
59
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
60
+ unset CASHER_DIR
61
+
62
+ # before install
63
63
  echo \$\ vx_builder\ ruby:install\
64
64
  vx_builder ruby:install
65
65
  source $(cat .ruby-activate)
@@ -75,7 +75,7 @@ bundle --version
75
75
  # install
76
76
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
77
77
  bundle install --clean --retry=3 --jobs=4
78
- echo \$\ vx_builder\ ruby:rails:install
79
- vx_builder ruby:rails:install
80
78
 
81
- # before script
79
+ # before script
80
+ echo \$\ vx_builder\ ruby:rails:install
81
+ vx_builder ruby:rails:install
@@ -22,7 +22,7 @@ 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
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
26
  chmod 0750 $(pwd)/bin/vx_builder
27
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
28
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -42,12 +42,6 @@ cd ${VX_ROOT}/code/vexor/vx-test-repo
42
42
  echo "download latest version of vxvm"
43
43
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
44
44
  chmod +x $VX_ROOT/bin/vxvm
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
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
47
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
48
- unset CASHER_DIR
49
-
50
- # before install
51
45
  echo \$\ export\ RAILS_ENV\=test
52
46
  export RAILS_ENV=test
53
47
  echo \$\ export\ RACK_ENV\=test
@@ -56,6 +50,12 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
56
50
  export BUNDLE_GEMFILE=${PWD}/Gemfile
57
51
  echo \$\ export\ GEM_HOME\=\~/.rubygems
58
52
  export GEM_HOME=~/.rubygems
53
+ 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
54
+ 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
55
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
56
+ unset CASHER_DIR
57
+
58
+ # before install
59
59
  echo \$\ vx_builder\ ruby:install\
60
60
  vx_builder ruby:install
61
61
  source $(cat .ruby-activate)
@@ -71,7 +71,7 @@ bundle --version
71
71
  # install
72
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
73
73
  bundle install --clean --retry=3 --jobs=4
74
- echo \$\ vx_builder\ ruby:rails:install
75
- vx_builder ruby:rails:install
76
74
 
77
- # before script
75
+ # before script
76
+ echo \$\ vx_builder\ ruby:rails:install
77
+ vx_builder ruby:rails:install
@@ -22,7 +22,7 @@ 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
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
26
  chmod 0750 $(pwd)/bin/vx_builder
27
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
28
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -42,12 +42,6 @@ cd ${VX_ROOT}/code/vexor/vx-test-repo
42
42
  echo "download latest version of vxvm"
43
43
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
44
44
  chmod +x $VX_ROOT/bin/vxvm
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
46
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-1.9.3-gemfile.tgz http://example.com/master/rvm-1.9.3-gemfile.tgz || true
47
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
48
- unset CASHER_DIR
49
-
50
- # before install
51
45
  echo \$\ export\ RAILS_ENV\=test
52
46
  export RAILS_ENV=test
53
47
  echo \$\ export\ RACK_ENV\=test
@@ -56,6 +50,12 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
56
50
  export BUNDLE_GEMFILE=${PWD}/Gemfile
57
51
  echo \$\ export\ GEM_HOME\=\~/.rubygems
58
52
  export GEM_HOME=~/.rubygems
53
+ 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
54
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-1.9.3-gemfile.tgz http://example.com/master/rvm-1.9.3-gemfile.tgz || true
55
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
56
+ unset CASHER_DIR
57
+
58
+ # before install
59
59
  echo \$\ vx_builder\ ruby:install\ 1.9.3
60
60
  vx_builder ruby:install 1.9.3
61
61
  source $(cat .ruby-activate)
@@ -71,8 +71,6 @@ bundle --version
71
71
  # install
72
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
73
73
  bundle install --clean --retry=3 --jobs=4
74
- echo \$\ vx_builder\ ruby:rails:install
75
- vx_builder ruby:rails:install
76
74
 
77
75
  # before script
78
76
  echo \$\ echo\ before\ script
@@ -22,7 +22,7 @@ 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
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
26
  chmod 0750 $(pwd)/bin/vx_builder
27
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
28
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -42,12 +42,6 @@ cd ${VX_ROOT}/code/vexor/vx-test-repo
42
42
  echo "download latest version of vxvm"
43
43
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
44
44
  chmod +x $VX_ROOT/bin/vxvm
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
46
- 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
47
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
48
- unset CASHER_DIR
49
-
50
- # before install
51
45
  echo \$\ export\ RAILS_ENV\=test
52
46
  export RAILS_ENV=test
53
47
  echo \$\ export\ RACK_ENV\=test
@@ -56,6 +50,12 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
56
50
  export BUNDLE_GEMFILE=${PWD}/Gemfile
57
51
  echo \$\ export\ GEM_HOME\=\~/.rubygems
58
52
  export GEM_HOME=~/.rubygems
53
+ 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
54
+ 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
55
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
56
+ unset CASHER_DIR
57
+
58
+ # before install
59
59
  echo \$\ vx_builder\ ruby:install\ 2.0.0
60
60
  vx_builder ruby:install 2.0.0
61
61
  source $(cat .ruby-activate)
@@ -71,8 +71,6 @@ bundle --version
71
71
  # install
72
72
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
73
73
  bundle install --clean --retry=3 --jobs=4
74
- echo \$\ vx_builder\ ruby:rails:install
75
- vx_builder ruby:rails:install
76
74
 
77
75
  # before script
78
76
  echo \$\ echo\ before\ script
@@ -22,7 +22,7 @@ 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
25
+ (echo IyEvYmluL2Jhc2gKCnNldCAtZQoKIyBUT0RPOiByZW1vdmUgYWZ0ZXIgaW1hZ2UgdXBkYXRlZApkZWZhdWx0X2J1bmRsZT0iL29wdC92ZXhvci9wYWNrYWdlcy9ydWJ5LTEuOS4zLXA1NDcvYmluL2J1bmRsZSIKCnJ1YnlfdmVyc2lvbiAoKSB7CiAgbG9jYWwgdmVyCiAgbG9jYWwgc3QKICB2ZXI9IiQoJGRlZmF1bHRfYnVuZGxlIHBsYXRmb3JtIC0tcnVieSkiCiAgc3Q9JD8KCiAgaWYgW1sgJHZlciA9fiAiXnJ1YnkgWzAtOV0iIF1dIDsgdGhlbgogICAgZWNobyAkdmVyIHwgc2VkIC1lICdzL3J1YnkgLy8nCiAgZWxzZQogICAgZWNobyAnMi4wLjAnCiAgZmkKCiAgcmV0dXJuICRzdAp9CgpydWJ5X2luc3RhbGwgKCkgewogIGxvY2FsIHJlCiAgbG9jYWwgdmVyCgogIGlmIFtbICJ4JDEiID09ICJ4IiBdXSA7CiAgdGhlbgogICAgdmVyPSQocnVieV92ZXJzaW9uKQogIGVsc2UKICAgIHZlcj0kMQogIGZpCgogIGVjaG8gIiQgc3VkbyBlbnYgUEFUSD1cJFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlciIKICByZT0kKHN1ZG8gZW52IFBBVEg9JFBBVEggdnh2bSBpbnN0YWxsIHJ1YnkgJHZlcikKICBlY2hvICRyZSA+IC5ydWJ5LWFjdGl2YXRlCiAgc291cmNlICRyZQp9CgpydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkICgpIHsKICBidW5kbGUgc2hvdyBtb25nb2lkID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvbW9uZ29pZC55bWwnCiAgICBjYXQgPiBjb25maWcvbW9uZ29pZC55bWwgPDxFT0wKdGVzdDoKICBzZXNzaW9uczoKICAgIGRlZmF1bHQ6CiAgICAgIGRhdGFiYXNlOiBtb25nb2lkCiAgICAgIGhvc3RzOgogICAgICAgIC0gbG9jYWxob3N0OjI3MDE3CkVPTAogICAgbG4gLXMgJChwd2QpL2NvbmZpZy9tb25nb2lkLnltbCAkKHB3ZCkvbW9uZ29pZC55bWwKICAgIGVjaG8gIiQgc3VkbyBzZXJ2aWNlIG1vbmdvZGIgc3RhcnQiCiAgICBzdWRvIHNlcnZpY2UgbW9uZ29kYiBzdGFydAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfcGcgKCkgewogIGJ1bmRsZSBzaG93IHBnID4gL2Rldi9udWxsICYmICgKICAgIGVjaG8gJ2NyZWF0ZSBjb25maWcvZGF0YWJhc2UueW1sIGZvciBwb3N0Z3Jlc3FsJwogICAgY2F0ID4gY29uZmlnL2RhdGFiYXNlLnltbCA8PEVPTAp0ZXN0OgogIGFkYXB0ZXI6IHBvc3RncmVzcWwKICBlbmNvZGluZzogdW5pY29kZQogIGRhdGFiYXNlOiByYWlsc190ZXN0CiAgdXNlcm5hbWU6IHBvc3RncmVzCiAgaG9zdDogbG9jYWxob3N0CkVPTAogICkKfQoKcnVieV9yYWlsc19nZW5fZGF0YWJhc2Vfc3BlY19mb3JfbXlzcWwgKCkgewogIGJ1bmRsZSBzaG93IG15c3FsMiA+IC9kZXYvbnVsbCAmJiAoCiAgICBlY2hvICdjcmVhdGUgY29uZmlnL2RhdGFiYXNlLnltbCBmb3IgbXlzcWwnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgIGFkYXB0ZXI6IG15c3FsMgogICBlbmNvZGluZzogdXRmOAogICBkYXRhYmFzZTogcmFpbHNfdGVzdAogICB1c2VybmFtZTogcm9vdAogICBob3N0OiBsb2NhbGhvc3QKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUgKCkgewogIGJ1bmRsZSBzaG93IHNxbGl0ZTMgPiAvZGV2L251bGwgJiYgKAogICAgZWNobyAnY3JlYXRlIGNvbmZpZy9kYXRhYmFzZS55bWwgZm9yIHNxbGl0ZTMnCiAgICBjYXQgPiBjb25maWcvZGF0YWJhc2UueW1sIDw8RU9MCnRlc3Q6CiAgYWRhcHRlcjogc3FsaXRlMwogIGRhdGFiYXNlOiBkYi90ZXN0LnNxbGl0ZTMKRU9MCiAgKQp9CgpydWJ5X3JhaWxzX2RiX2NyZWF0ZSAoKSB7CiAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6Y3JlYXRlCiAgYnVuZGxlIGV4ZWMgcmFrZSBkYjpjcmVhdGUKCiAgdGVzdCAtZiBkYi9zY2hlbWEucmIgJiYgKAogICAgZWNobyAkIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICAgIGJ1bmRsZSBleGVjIHJha2UgZGI6c2NoZW1hOmxvYWQKICApCgogIHRlc3QgLWQgZGIvbWlncmF0ZSAmJiAoCiAgICBlY2hvICQgYnVuZGxlIGV4ZWMgcmFrZSBkYjptaWdyYXRlCiAgICBidW5kbGUgZXhlYyByYWtlIGRiOm1pZ3JhdGUKICApCn0KCnJ1YnlfcmFpbHNfc2V0dXAgKCkgewogIGxvY2FsIHJlCiAgcmU9JChidW5kbGUgc2hvdyByYWlscyA+IC9kZXYvbnVsbCAmJiBlY2hvICJZZXMiIHx8IGVjaG8gIk5vIikKICBpZiBbWyAieCRyZSIgPT0gJ3hZZXMnIF1dIDsgdGhlbgogICAgKAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9wZyB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9teXNxbCB8fAogICAgICBydWJ5X3JhaWxzX2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9zcWxpdGUKICAgICkgJiYKICAgIHJ1YnlfcmFpbHNfZGJfY3JlYXRlCiAgZmkKfQoKY2FzZSAiJDEiIGluCiAgInJ1Ynk6aW5zdGFsbCIpCiAgICBydWJ5X2luc3RhbGwgJDIKICAgIDs7CiAgInJ1Ynk6cmFpbHM6aW5zdGFsbCIpCiAgICBydWJ5X2dlbl9kYXRhYmFzZV9zcGVjX2Zvcl9tb25nb2lkIHx8IHRydWUKICAgIHJ1YnlfcmFpbHNfc2V0dXAKICAgIDs7CiAgKikKICAgIGVjaG8gIlVua25vd24gY29tbWFuZCAkQCIKICAgIGV4aXQgMQogICAgOzsKZXNhYwoK | base64 --decode) > $(pwd)/bin/vx_builder
26
26
  chmod 0750 $(pwd)/bin/vx_builder
27
27
  (echo LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBcE1rYW0rbWh3Q2RDUWRxdHU3VTlwNVZSRm1rcmJpOUhhQTN2YWdwaE12eXJ5V3F4CkM5c1krYW44akNOUlVwZWx5ako4ZjZiNi9WNWg0V2NubHdwT3ZWR0duczRIT2JuWWo4OUdLb0JGK1FwVDI4bXAKQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwpQQTFsR2xZWGtHYWQyS1JBZmc3bVRjdVFycUxKNHFpMlhkZ0FIY3RJU045d1VkYkUxeDVIRlB5enVrd0t1QkFFCmg3bTZWVnJKenNrS05yQnN1T1ZTWnVRNnJ2OVRpcVdYVnBBWGdyV3ZLenRsZjNTTkF0dG1BQmI1ZDJ1UE9hMisKcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwpPYjhJY1lmbXZtYzV3STVQVENqeGJZc1ZJNGYvR3VDRUVPZnZXKzVLMzI0NTY4cUpVK2lsRFZ0TDFuQ0JQQ05IClFlUWFuem0yVW5VbndLLzNRL0daWjlLNlBwZ00yd1djL28yOS9qT0tKZEFSQ1BCTkFJekxOU2hxUWxmR3BialcKV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQpZREtJNU5yMWlpU3EzSk1mRVp2bWMvNVFlZFU5VTdESWVOV3dqaThwR3pGa0Y4eGh1NkV5OWhwR1IyVTdnRXFSCitkeVNud2k4K3Fhc3BvZjhyZ3VHZVNVWlZtb1RHbWZZVUVuejFacEpWYVFpQUJrYVZYd0FEYWhodmU4dGQxVHIKN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwp5aWdpcVY2amlWb3JDMUNsY1hQV3BXc0hvc2QrcDZEUmFhME1pcUQyV0pQU1huZENvbUdSc09yQ2VPN0RyTFdsClVDUkhsMU9sY1JIY3V4U3FWREgrQ0NxVytOQzRKeFVLYzIyT3pJK2thS1RydWozczlYa2VmSU1DZ1lFQXhFTjYKQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUApVK2tiWFNqdm5DeUlUQ2pUZXZESXNLeEh0TzB3T0xFd0I1TENCenBKVEVzandHWmNUUDBBT3Y2ZHF3SndMUHBtCnlzaVRyTEZCSDVTZFZzVE10OFVKRnhaMzNzRFdIWnZTbzBwMjFJc0NnWUI2ODhyTWs3Mmp2cEU4UkpMcERSWTIKbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOApNNXBWL3FlTW1kcWY0UmJEN280NXBzRGlEcXJ1TStaQnhzOFJHRzh1RStxeE5hd05oNTlxS25xOEVDRVhjaWpOClNLR0VFTE1halNTdkg5ZFp3QlFaWXdLQmdRQ2NCaGlJOWJzRjJVWm04WU10RW0zSVhFLzhIbi92R1gxcmU4V1kKclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92Uwp5WFMrVWpQYkZ4RUE3MThKUlVoZG5mU3g4bXBERjMySVVCUTJBV1FJT3hrcDFhSDVwZ1luK0pDcTRScFd4MzJZCm1xWUZLUUtCZ1FDYkVzdllsZmVXSkRpK0NCSCt6aGZrZldJWTlTaXl1SEVVUWE0aE5iYVMvRGtETWdxTjU4Q3UKOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQpqeUY1UjFOSEkvTFhzREJOYWlSMDVzclhkaVNadW1MMGF3WDdyaUM0RHpJazZaWllSZGJuYlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= | base64 --decode) > ${VX_ROOT}/data/vexor/vx-test-repo/key
28
28
  chmod 0600 ${VX_ROOT}/data/vexor/vx-test-repo/key
@@ -42,13 +42,6 @@ cd ${VX_ROOT}/code/vexor/vx-test-repo
42
42
  echo "download latest version of vxvm"
43
43
  curl --tcp-nodelay --retry 3 --fail --silent --show-error -o $VX_ROOT/bin/vxvm https://raw.githubusercontent.com/vexor/vx-packages/master/vxvm
44
44
  chmod +x $VX_ROOT/bin/vxvm
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
46
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-1.9.3-gemfile.tgz http://example.com/master/rvm-1.9.3-gemfile.tgz || true
47
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
48
- test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
49
- unset CASHER_DIR
50
-
51
- # before install
52
45
  echo \$\ export\ RAILS_ENV\=test
53
46
  export RAILS_ENV=test
54
47
  echo \$\ export\ RACK_ENV\=test
@@ -57,6 +50,13 @@ echo \$\ export\ BUNDLE_GEMFILE\=\$\{PWD\}/Gemfile
57
50
  export BUNDLE_GEMFILE=${PWD}/Gemfile
58
51
  echo \$\ export\ GEM_HOME\=\~/.rubygems
59
52
  export GEM_HOME=~/.rubygems
53
+ 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
54
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher fetch http://example.com/test/pull-request/rvm-1.9.3-gemfile.tgz http://example.com/master/rvm-1.9.3-gemfile.tgz || true
55
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
56
+ test -f $HOME/.casher/bin/casher && casher-ruby $HOME/.casher/bin/casher add ~/.rubygems || true
57
+ unset CASHER_DIR
58
+
59
+ # before install
60
60
  echo \$\ vx_builder\ ruby:install\ 1.9.3
61
61
  vx_builder ruby:install 1.9.3
62
62
  source $(cat .ruby-activate)
@@ -72,7 +72,7 @@ bundle --version
72
72
  # install
73
73
  echo \$\ bundle\ install\ --clean\ --retry\=3\ --jobs\=4
74
74
  bundle install --clean --retry=3 --jobs=4
75
- echo \$\ vx_builder\ ruby:rails:install
76
- vx_builder ruby:rails:install
77
75
 
78
- # before script
76
+ # before script
77
+ echo \$\ vx_builder\ ruby:rails:install
78
+ vx_builder ruby:rails:install
@@ -0,0 +1,4 @@
1
+ language: python
2
+ python:
3
+ - 2.7
4
+ script: /bin/true
@@ -24,6 +24,8 @@ node_js: "0.10"
24
24
 
25
25
  rust: "0.11.0"
26
26
 
27
+ python: "2.7"
28
+
27
29
  matrix:
28
30
  exclude:
29
31
  - rvm: 2.1
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+ require 'yaml'
3
+ require 'tmpdir'
4
+ require 'fileutils'
5
+
6
+ describe "(integration) python" do
7
+ let(:path) { Dir.tmpdir + "/vx-builder-test" }
8
+
9
+ before do
10
+ FileUtils.rm_rf(path)
11
+ FileUtils.mkdir_p(path)
12
+ end
13
+ after do
14
+ system "sudo rm -rf #{path}"
15
+ end
16
+
17
+ def build(file, options = {})
18
+ config = Vx::Builder::BuildConfiguration.from_yaml(file)
19
+ matrix = Vx::Builder.matrix config
20
+ options[:task] ||= create(:task)
21
+ script = Vx::Builder.script(options[:task], matrix.build.first)
22
+ OpenStruct.new script: script, matrix: matrix
23
+ end
24
+
25
+ it "should succesfuly run lang/python", real: true do
26
+ file = {"language" => "python"}.to_yaml
27
+ task = create(
28
+ :task,
29
+ sha: "HEAD",
30
+ branch: "lang/python"
31
+ )
32
+
33
+ b = build(file, task: task)
34
+ Dir.chdir(path) do
35
+ File.open("script.sh", "w") do |io|
36
+ io.write "set -e\n"
37
+ io.write b.script.to_before_script
38
+ io.write b.script.to_script
39
+ end
40
+ system("env", "-", "USER=$USER", "HOME=#{path}", "bash", "script.sh" )
41
+ expect($?.to_i).to eq 0
42
+ end
43
+ end
44
+ end
@@ -40,6 +40,7 @@ describe Vx::Builder::BuildConfiguration do
40
40
  "image" => ["one", "two"],
41
41
  "jdk" => ['openjdk7'],
42
42
  "language" => ["ruby"],
43
+ "python" => ["2.7"],
43
44
  "rust" => ['0.11.0'],
44
45
  "go" => ['1.2.2'],
45
46
  "node_js" => ['0.10'],
@@ -0,0 +1,32 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vx::Builder::ScriptBuilder::Python do
4
+ let(:app) { ->(env) { env } }
5
+ let(:script) { described_class.new app }
6
+ let(:source) { create :source, name: "python.yml" }
7
+ let(:env) { create :env, source: source }
8
+ let(:run) { script.call env }
9
+ subject { run }
10
+
11
+ it { should eq env }
12
+
13
+ context "run it" do
14
+ subject { env }
15
+
16
+ context "should be success" do
17
+ before { run }
18
+ its(:announce) { should_not be_empty }
19
+ its(:install) { should_not be_empty }
20
+ its(:script) { should be_empty }
21
+ end
22
+
23
+ context "when script is empty" do
24
+ before do
25
+ env.source.script.clear
26
+ run
27
+ end
28
+ its(:script) { should_not be_empty }
29
+ end
30
+ end
31
+
32
+ end
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.28
4
+ version: 0.5.29
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-30 00:00:00.000000000 Z
11
+ date: 2014-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: vx-common
@@ -157,6 +157,7 @@ files:
157
157
  - lib/vx/builder/script_builder/nodejs.rb
158
158
  - lib/vx/builder/script_builder/parallel.rb
159
159
  - lib/vx/builder/script_builder/prepare.rb
160
+ - lib/vx/builder/script_builder/python.rb
160
161
  - lib/vx/builder/script_builder/ruby.rb
161
162
  - lib/vx/builder/script_builder/rust.rb
162
163
  - lib/vx/builder/script_builder/scala.rb
@@ -187,6 +188,7 @@ files:
187
188
  - spec/fixtures/integration/ruby/matrix/d.after_script.sh
188
189
  - spec/fixtures/integration/ruby/matrix/d.before_script.sh
189
190
  - spec/fixtures/integration/ruby/matrix/d.script.sh
191
+ - spec/fixtures/python.yml
190
192
  - spec/fixtures/scala.yml
191
193
  - spec/fixtures/simple.yml
192
194
  - spec/fixtures/travis.yml
@@ -197,6 +199,7 @@ files:
197
199
  - spec/integration/clojure_spec.rb
198
200
  - spec/integration/go_spec.rb
199
201
  - spec/integration/nodejs_spec.rb
202
+ - spec/integration/python_spec.rb
200
203
  - spec/integration/ruby_spec.rb
201
204
  - spec/integration/rust_spec.rb
202
205
  - spec/lib/builder/build_configuration/cache_spec.rb
@@ -215,6 +218,7 @@ files:
215
218
  - spec/lib/builder/script_builder/env_spec.rb
216
219
  - spec/lib/builder/script_builder/java_spec.rb
217
220
  - spec/lib/builder/script_builder/prepare_spec.rb
221
+ - spec/lib/builder/script_builder/python_spec.rb
218
222
  - spec/lib/builder/script_builder/ruby_spec.rb
219
223
  - spec/lib/builder/script_builder/scala_spec.rb
220
224
  - spec/lib/builder/script_builder_spec.rb
@@ -272,6 +276,7 @@ test_files:
272
276
  - spec/fixtures/integration/ruby/matrix/d.after_script.sh
273
277
  - spec/fixtures/integration/ruby/matrix/d.before_script.sh
274
278
  - spec/fixtures/integration/ruby/matrix/d.script.sh
279
+ - spec/fixtures/python.yml
275
280
  - spec/fixtures/scala.yml
276
281
  - spec/fixtures/simple.yml
277
282
  - spec/fixtures/travis.yml
@@ -282,6 +287,7 @@ test_files:
282
287
  - spec/integration/clojure_spec.rb
283
288
  - spec/integration/go_spec.rb
284
289
  - spec/integration/nodejs_spec.rb
290
+ - spec/integration/python_spec.rb
285
291
  - spec/integration/ruby_spec.rb
286
292
  - spec/integration/rust_spec.rb
287
293
  - spec/lib/builder/build_configuration/cache_spec.rb
@@ -300,6 +306,7 @@ test_files:
300
306
  - spec/lib/builder/script_builder/env_spec.rb
301
307
  - spec/lib/builder/script_builder/java_spec.rb
302
308
  - spec/lib/builder/script_builder/prepare_spec.rb
309
+ - spec/lib/builder/script_builder/python_spec.rb
303
310
  - spec/lib/builder/script_builder/ruby_spec.rb
304
311
  - spec/lib/builder/script_builder/scala_spec.rb
305
312
  - spec/lib/builder/script_builder_spec.rb