vx-builder 0.5.61 → 0.5.62

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/lib/vx/builder/script_builder_v2/clone.rb +1 -2
  3. data/lib/vx/builder/task.rb +3 -3
  4. data/lib/vx/builder/version.rb +1 -1
  5. data/lib/vx/builder.rb +0 -5
  6. data/spec/fixtures/script_builder_v2/simple.sh +1 -1
  7. data/spec/fixtures/script_builder_v2/simple.yml +85 -30
  8. data/spec/fixtures/test_key1 +27 -0
  9. data/spec/fixtures/test_key2 +27 -0
  10. data/spec/lib/builder/task_spec.rb +1 -1
  11. data/spec/support/create.rb +3 -1
  12. metadata +6 -38
  13. data/lib/vx/builder/script_builder/base.rb +0 -77
  14. data/lib/vx/builder/script_builder/cache.rb +0 -95
  15. data/lib/vx/builder/script_builder/clojure.rb +0 -34
  16. data/lib/vx/builder/script_builder/defaults.rb +0 -34
  17. data/lib/vx/builder/script_builder/deploy.rb +0 -34
  18. data/lib/vx/builder/script_builder/env.rb +0 -50
  19. data/lib/vx/builder/script_builder/go.rb +0 -60
  20. data/lib/vx/builder/script_builder/java.rb +0 -31
  21. data/lib/vx/builder/script_builder/nodejs.rb +0 -64
  22. data/lib/vx/builder/script_builder/parallel.rb +0 -19
  23. data/lib/vx/builder/script_builder/prepare.rb +0 -94
  24. data/lib/vx/builder/script_builder/python.rb +0 -82
  25. data/lib/vx/builder/script_builder/ruby.rb +0 -92
  26. data/lib/vx/builder/script_builder/rust.rb +0 -48
  27. data/lib/vx/builder/script_builder/scala.rb +0 -50
  28. data/lib/vx/builder/script_builder/services.rb +0 -26
  29. data/lib/vx/builder/script_builder/timeouts.rb +0 -21
  30. data/lib/vx/builder/script_builder.rb +0 -145
  31. data/spec/lib/builder/script_builder/cache_spec.rb +0 -12
  32. data/spec/lib/builder/script_builder/clojure_spec.rb +0 -34
  33. data/spec/lib/builder/script_builder/env_spec.rb +0 -22
  34. data/spec/lib/builder/script_builder/java_spec.rb +0 -23
  35. data/spec/lib/builder/script_builder/prepare_spec.rb +0 -46
  36. data/spec/lib/builder/script_builder/python_spec.rb +0 -32
  37. data/spec/lib/builder/script_builder/ruby_spec.rb +0 -39
  38. data/spec/lib/builder/script_builder/scala_spec.rb +0 -33
  39. data/spec/lib/builder/script_builder_spec.rb +0 -60
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 76650145ebc75debb2b2ac541e2ee3997a72e844
4
- data.tar.gz: 31eddffa0f442106ddcca5c6b7b50403e5b02dcb
3
+ metadata.gz: 276cdf41dcc654abb5ca5a3cafe61137e23a7695
4
+ data.tar.gz: c46def4d917dfc8f405df3037c7883912316e069
5
5
  SHA512:
6
- metadata.gz: 6022f3b6f5746d4e0afb6786d25f4f273a02b4a5bb66d8f601a922994000bed474d7881c56c71518341245a96f42d0fd0151af2cbb944c406767a67024a6a474
7
- data.tar.gz: ada9d2c483b2722c013bd65b5c42c1e02b558ccb86a944804d4b4290d4ba6e93f7323977d78ac084ebcf376ee42b4ae31659863d5d6735ead8f72c3c38d592ad
6
+ metadata.gz: 62617292288176935b4f53a490659bda82439d97163f0a72eef966616dfe3444d87b7f1fcaccbdeb37c8210ad1f01ac4199ef6fc4965ade1d227c2b0b7738068
7
+ data.tar.gz: d7e34b6f1e83b6ae2d6a8ed435510c5ab55b7a01ba00a7bf6556e9b52c82e942a1c76bd08a591e4fd050fcb8566afd98d3dadf470dff9345123debf726dbc870
@@ -9,9 +9,8 @@ module Vx
9
9
  def call(env)
10
10
 
11
11
  env.stage("clone").tap do |e|
12
- e.add_var "ssh_key", env.task.deploy_key
12
+ e.add_task "ssh_agent", "key" => env.task.ssh_keys
13
13
 
14
- e.add_task "ssh_agent", "key" => "$ssh_key"
15
14
  clone = {}
16
15
  clone["repo"] = env.task.src
17
16
  clone["dest"] = "~/#{env.task.name}"
@@ -2,7 +2,7 @@ module Vx
2
2
  module Builder
3
3
  class Task
4
4
 
5
- attr_reader :name, :src, :sha, :deploy_key, :branch, :pull_request_id,
5
+ attr_reader :name, :src, :sha, :ssh_keys, :branch, :pull_request_id,
6
6
  :cache_url_prefix, :job_id, :build_id, :build_number, :job_number,
7
7
  :project_host, :project_token
8
8
 
@@ -12,7 +12,7 @@ module Vx
12
12
  @sha = options[:sha]
13
13
  @job_id = options[:job_id]
14
14
  @build_id = options[:build_id]
15
- @deploy_key = options[:deploy_key]
15
+ @ssh_keys = options[:ssh_keys]
16
16
  @branch = options[:branch]
17
17
  @pull_request_id = options[:pull_request_id]
18
18
  @cache_url_prefix = options[:cache_url_prefix]
@@ -27,7 +27,7 @@ module Vx
27
27
  private
28
28
 
29
29
  def validate!
30
- (name && src && sha && deploy_key && branch && job_id && build_id &&
30
+ (name && src && sha && ssh_keys && branch && job_id && build_id &&
31
31
  build_number && job_number && project_host) or
32
32
  raise(MissingKeys)
33
33
  end
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Builder
3
- VERSION = "0.5.61"
3
+ VERSION = "0.5.62"
4
4
  end
5
5
  end
data/lib/vx/builder.rb CHANGED
@@ -8,7 +8,6 @@ module Vx
8
8
  autoload :BuildConfiguration, File.expand_path("../builder/build_configuration", __FILE__)
9
9
  autoload :MatrixBuilder, File.expand_path("../builder/matrix_builder", __FILE__)
10
10
  autoload :DeployBuilder, File.expand_path("../builder/deploy_builder", __FILE__)
11
- autoload :ScriptBuilder, File.expand_path("../builder/script_builder", __FILE__)
12
11
  autoload :ScriptBuilderV2, File.expand_path("../builder/script_builder_v2", __FILE__)
13
12
 
14
13
  module Helper
@@ -42,10 +41,6 @@ module Vx
42
41
  DeployBuilder.new(matrix_builder, options)
43
42
  end
44
43
 
45
- def script(task, build_configuration)
46
- ScriptBuilder.new task, build_configuration
47
- end
48
-
49
44
  def script_v2(task, build_configuration)
50
45
  ScriptBuilderV2.new task, build_configuration
51
46
  end
@@ -21,7 +21,7 @@ git clone -q --depth=1 --branch=master https://github.com/vexor/vx-citool.git ~/
21
21
 
22
22
 
23
23
 
24
- echo LS0tCi0gbmFtZTogY2xvbmUKICB2YXJzOgogICAgc3NoX2tleTogfAogICAgICAtLS0tLUJFR0lOIFJTQSBQUklWQVRFIEtFWS0tLS0tCiAgICAgIE1JSUVwQUlCQUFLQ0FRRUFwTWthbSttaHdDZENRZHF0dTdVOXA1VlJGbWtyYmk5SGFBM3ZhZ3BoTXZ5cnlXcXgKICAgICAgQzlzWSthbjhqQ05SVXBlbHlqSjhmNmI2L1Y1aDRXY25sd3BPdlZHR25zNEhPYm5Zajg5R0tvQkYrUXBUMjhtcAogICAgICBDTWkwa3pITlNXTVJaZy9kOXgzQWYyY0RJZ0poZ0dLZEtMaE9iK1NKMmlSektBNnl3bXlOVHJVQjR0SmhwZ0ovCiAgICAgIFBBMWxHbFlYa0dhZDJLUkFmZzdtVGN1UXJxTEo0cWkyWGRnQUhjdElTTjl3VWRiRTF4NUhGUHl6dWt3S3VCQUUKICAgICAgaDdtNlZWckp6c2tLTnJCc3VPVlNadVE2cnY5VGlxV1hWcEFYZ3JXdkt6dGxmM1NOQXR0bUFCYjVkMnVQT2EyKwogICAgICByZUNXRXpIYldPRmdNUURRc1hzUzNycUMzZnp3NFZNS1JRd1hJUUlEQVFBQkFvSUJBRGdaT3BUUGtjQmYzUitjCiAgICAgIE9iOEljWWZtdm1jNXdJNVBUQ2p4YllzVkk0Zi9HdUNFRU9mdlcrNUszMjQ1NjhxSlUraWxEVnRMMW5DQlBDTkgKICAgICAgUWVRYW56bTJVblVud0svM1EvR1paOUs2UHBnTTJ3V2MvbzI5L2pPS0pkQVJDUEJOQUl6TE5TaHFRbGZHcGJqVwogICAgICBXWmh1UGsyN2FPNjVyL1o0SW9Vci9XTkpIZTVBa3Y1Rk1mc2VBWit6bEFIQTMyUXFOZ2dPZWl0NjVHaW8yY0l1CiAgICAgIFlES0k1TnIxaWlTcTNKTWZFWnZtYy81UWVkVTlVN0RJZU5Xd2ppOHBHekZrRjh4aHU2RXk5aHBHUjJVN2dFcVIKICAgICAgK2R5U253aTgrcWFzcG9mOHJndUdlU1VaVm1vVEdtZllVRW56MVpwSlZhUWlBQmthVlh3QURhaGh2ZTh0ZDFUcgogICAgICA3aDFiK1EwQ2dZRUExdkRwN09rbFd5dkZpZVBZdTRybG5talZLTnY2a2JVVUx0T2l4OXlLV2JBcFk2bGpwWWhTCiAgICAgIHlpZ2lxVjZqaVZvckMxQ2xjWFBXcFdzSG9zZCtwNkRSYWEwTWlxRDJXSlBTWG5kQ29tR1JzT3JDZU83RHJMV2wKICAgICAgVUNSSGwxT2xjUkhjdXhTcVZESCtDQ3FXK05DNEp4VUtjMjJPekkra2FLVHJ1ajNzOVhrZWZJTUNnWUVBeEVONgogICAgICBCN3hBTlk5Y2ViMVhvZXYzWjdBV0loTFBROEdQWjNLU1NtejFaZHAxMU1Ob3V4UkpCekRTNGs2NFF2Mm40NEpQCiAgICAgIFUra2JYU2p2bkN5SVRDalRldkRJc0t4SHRPMHdPTEV3QjVMQ0J6cEpURXNqd0daY1RQMEFPdjZkcXdKd0xQcG0KICAgICAgeXNpVHJMRkJINVNkVnNUTXQ4VUpGeFozM3NEV0hadlNvMHAyMUlzQ2dZQjY4OHJNazcyanZwRThSSkxwRFJZMgogICAgICBuSDg2NVVNYmNIc0FJbDRlZCtESVYwWUYxWkxEMFF5U3lZeXlXQW15ZTFyZUdSN2FuRW52ekI3TkZkTTByb0M4CiAgICAgIE01cFYvcWVNbWRxZjRSYkQ3bzQ1cHNEaURxcnVNK1pCeHM4UkdHOHVFK3F4TmF3Tmg1OXFLbnE4RUNFWGNpak4KICAgICAgU0tHRUVMTWFqU1N2SDlkWndCUVpZd0tCZ1FDY0JoaUk5YnNGMlVabThZTXRFbTNJWEUvOEhuL3ZHWDFyZThXWQogICAgICByUzRaSHFiMTBiTDhwbyszeTdTYWZJSTNuM2RNZ2xlV0dZYkxkTE9uc0M5YWZFcERQaEFOZzZndHlUSEFuL3ZTCiAgICAgIHlYUytValBiRnhFQTcxOEpSVWhkbmZTeDhtcERGMzJJVUJRMkFXUUlPeGtwMWFINXBnWW4rSkNxNFJwV3gzMlkKICAgICAgbXFZRktRS0JnUUNiRXN2WWxmZVdKRGkrQ0JIK3poZmtmV0lZOVNpeXVIRVVRYTRoTmJhUy9Ea0RNZ3FONThDdQogICAgICA4Z1hHU2Z0RWlUY0xhdDBhMFA2dmVhY2dQS3VoQUhlMUs3aDg0K1IwckUvY3YxUVRCcFczOFJRZ2FiTHMrZXh5CiAgICAgIGp5RjVSMU5ISS9MWHNEQk5haVIwNXNyWGRpU1p1bUwwYXdYN3JpQzREeklrNlpaWVJkYm5iUT09CiAgICAgIC0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCiAgdGFza3M6CiAgLSBzc2hfYWdlbnQ6CiAgICAgIGtleTogIiRzc2hfa2V5IgogIC0gZ2l0X2Nsb25lOgogICAgICByZXBvOiBnaXRAZ2l0aHViLmNvbTp2ZXhvci92eC10ZXN0LXJlcG8uZ2l0CiAgICAgIGRlc3Q6ICJ+L3ZleG9yL3Z4LXRlc3QtcmVwbyIKICAgICAgYnJhbmNoOiB0ZXN0L3B1bGwtcmVxdWVzdAogICAgICBzaGE6IDhmNTNjMDc3MDcyNjc0OTcyZTIxYzgyYTI4NmFjYzA3ZmFkYTkxZjUKLSBuYW1lOiBpbml0CiAgY2hkaXI6ICJ+L3ZleG9yL3Z4LXRlc3QtcmVwbyIKICBlbnZpcm9ubWVudDoKICAgIENJOiAnMScKICAgIENJX0pPQl9JRDogMQogICAgQ0lfSk9CX05VTUJFUjogMTAwCiAgICBDSV9CVUlMRF9JRDogMTIKICAgIENJX0JVSUxEX05VTUJFUjogMTAxCiAgICBDSV9QUk9KRUNUX05BTUU6IHZleG9yL3Z4LXRlc3QtcmVwbwogICAgQ0lfQlVJTERfU0hBOiA4ZjUzYzA3NzA3MjY3NDk3MmUyMWM4MmEyODZhY2MwN2ZhZGE5MWY1CiAgICBDSV9CUkFOQ0g6IHRlc3QvcHVsbC1yZXF1ZXN0CiAgICBESVNQTEFZOiAiOjk5IgogICAgQ0lfUEFSQUxMRUxfSk9CUzogMwogICAgQ0lfUEFSQUxMRUxfSk9CX05VTUJFUjogMAogICAgZ2xvYmFsOiAnJwogICAgbWF0cml4OiAnJwogICAgUkFJTFNfRU5WOiB0ZXN0CiAgICBSQUNLX0VOVjogdGVzdAogICAgR0VNX0hPTUU6ICJ+Ly5ydWJ5Z2VtcyIKICAgIFRSQVZJU19QWVRIT05fVkVSU0lPTjogcHlfdmVyc2lvbgogIHRhc2tzOgogIC0gc2VydmljZXM6CiAgICAtIHJhYmJpdG1xLXNlcnZlcgogIC0gY2FjaGVfZmV0Y2g6CiAgICAgIHVybDoKICAgICAgLSBodHRwOi8vbG9jYWxob3N0OjMwMDEvdGVzdC9wdWxsLXJlcXVlc3Qvc2NhbGEtMi4xMC4zLXJ2bS0yLjAuMC1nZW1maWxlLW5vZGVqcy0wLjEwLXJ1c3QtMC4xMS4wLXB5dGhvbi0yLjcudGd6CiAgICAgIC0gaHR0cDovL2xvY2FsaG9zdDozMDAxL21hc3Rlci9zY2FsYS0yLjEwLjMtcnZtLTIuMC4wLWdlbWZpbGUtbm9kZWpzLTAuMTAtcnVzdC0wLjExLjAtcHl0aG9uLTIuNy50Z3oKICAtIGNhY2hlX2FkZDoKICAgICAgZGlyOgogICAgICAtICJ+Ly5jYWNoZSIKICAgICAgLSAifi8uc2J0IgogICAgICAtICJ+Ly5pdnkyIgogICAgICAtICJ+Ly5ydWJ5Z2VtcyIKICAgICAgLSBub2RlX21vZHVsZXMKICAgICAgLSBib3dlcl9jb21wb25lbnRzCiAgICAgIC0gIn4vLnBpcC1kb3dubG9hZHMiCi0gbmFtZTogYmVmb3JlX2luc3RhbGwKICB0YXNrczoKICAtIHNoZWxsOiBlY2hvIGJlZm9yZV9pbnN0YWxsCi0gbmFtZTogaW5zdGFsbAogIGVudmlyb25tZW50OgogICAgUEFUSDogIiR7UEFUSH06JHtQV0R9L25vZGVfbW9kdWxlcy9iaW4iCiAgdGFza3M6CiAgLSBzY2FsYToKICAgICAgYWN0aW9uOiBpbnN0YWxsCiAgICAgIHNjYWxhOiAyLjEwLjMKICAtIHJ1Ynk6CiAgICAgIGFjdGlvbjogaW5zdGFsbAogICAgICBydWJ5OiAyLjAuMAogIC0gcnVieTogYW5ub3VuY2UKICAtIHZ4dm06IG5vZGVqcyAwLjEwCiAgLSBzaGVsbDogbnBtIGNvbmZpZyBzZXQgc3BpbiBmYWxzZQogIC0gc2hlbGw6IG5vZGUgLS12ZXJzaW9uCiAgLSBzaGVsbDogbnBtIC0tdmVyc2lvbgogIC0gdnh2bTogcnVzdCAwLjExLjAKICAtIHNoZWxsOiBydXN0YyAtLXZlcnNpb24KICAtIHB5dGhvbjoKICAgICAgYWN0aW9uOiBpbnN0YWxsCiAgICAgIHB5dGhvbjogJzIuNycKICAtIHB5dGhvbjogdmlydHVhbGVudgogIC0gcHl0aG9uOiBhbm5vdW5jZQogIC0gc2hlbGw6IGVjaG8gaW5zdGFsbAotIG5hbWU6IGRhdGFiYXNlCiAgdGFza3M6CiAgLSBydWJ5OiByYWlsczpkYXRhYmFzZQotIG5hbWU6IGJlZm9yZV9zY3JpcHQKICB0YXNrczoKICAtIHNoZWxsOiBlY2hvIGJlZm9yZV9zY3JpcHQKLSBuYW1lOiBzY3JpcHQKICB0YXNrczoKICAtIHNoZWxsOiBSQUlMU19FTlY9dGVzdCBscyAtMSAmJiBlY2hvIERPTkUhCi0gbmFtZTogYWZ0ZXJfc3VjY2VzcwogIHRhc2tzOgogIC0gc2hlbGw6IGVjaG8gYWZ0ZXIgc3VjY2VzcwotIG5hbWU6IHRlYXJkb3duCiAgdGFza3M6CiAgLSBjYWNoZV9wdXNoOgogICAgICB1cmw6IGh0dHA6Ly9sb2NhbGhvc3Q6MzAwMS90ZXN0L3B1bGwtcmVxdWVzdC9zY2FsYS0yLjEwLjMtcnZtLTIuMC4wLWdlbWZpbGUtbm9kZWpzLTAuMTAtcnVzdC0wLjExLjAtcHl0aG9uLTIuNy50Z3oK \
24
+ echo LS0tCi0gbmFtZTogY2xvbmUKICB0YXNrczoKICAtIHNzaF9hZ2VudDoKICAgICAgZGVwbG95X2tleToKICAgICAgLSB8CiAgICAgICAgLS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQogICAgICAgIE1JSUVwQUlCQUFLQ0FRRUFwTWthbSttaHdDZENRZHF0dTdVOXA1VlJGbWtyYmk5SGFBM3ZhZ3BoTXZ5cnlXcXgKICAgICAgICBDOXNZK2FuOGpDTlJVcGVseWpKOGY2YjYvVjVoNFdjbmx3cE92VkdHbnM0SE9ibllqODlHS29CRitRcFQyOG1wCiAgICAgICAgQ01pMGt6SE5TV01SWmcvZDl4M0FmMmNESWdKaGdHS2RLTGhPYitTSjJpUnpLQTZ5d215TlRyVUI0dEpocGdKLwogICAgICAgIFBBMWxHbFlYa0dhZDJLUkFmZzdtVGN1UXJxTEo0cWkyWGRnQUhjdElTTjl3VWRiRTF4NUhGUHl6dWt3S3VCQUUKICAgICAgICBoN202VlZySnpza0tOckJzdU9WU1p1UTZydjlUaXFXWFZwQVhncld2S3p0bGYzU05BdHRtQUJiNWQydVBPYTIrCiAgICAgICAgcmVDV0V6SGJXT0ZnTVFEUXNYc1MzcnFDM2Z6dzRWTUtSUXdYSVFJREFRQUJBb0lCQURnWk9wVFBrY0JmM1IrYwogICAgICAgIE9iOEljWWZtdm1jNXdJNVBUQ2p4YllzVkk0Zi9HdUNFRU9mdlcrNUszMjQ1NjhxSlUraWxEVnRMMW5DQlBDTkgKICAgICAgICBRZVFhbnptMlVuVW53Sy8zUS9HWlo5SzZQcGdNMndXYy9vMjkvak9LSmRBUkNQQk5BSXpMTlNocVFsZkdwYmpXCiAgICAgICAgV1podVBrMjdhTzY1ci9aNElvVXIvV05KSGU1QWt2NUZNZnNlQVoremxBSEEzMlFxTmdnT2VpdDY1R2lvMmNJdQogICAgICAgIFlES0k1TnIxaWlTcTNKTWZFWnZtYy81UWVkVTlVN0RJZU5Xd2ppOHBHekZrRjh4aHU2RXk5aHBHUjJVN2dFcVIKICAgICAgICArZHlTbndpOCtxYXNwb2Y4cmd1R2VTVVpWbW9UR21mWVVFbnoxWnBKVmFRaUFCa2FWWHdBRGFoaHZlOHRkMVRyCiAgICAgICAgN2gxYitRMENnWUVBMXZEcDdPa2xXeXZGaWVQWXU0cmxubWpWS052NmtiVVVMdE9peDl5S1diQXBZNmxqcFloUwogICAgICAgIHlpZ2lxVjZqaVZvckMxQ2xjWFBXcFdzSG9zZCtwNkRSYWEwTWlxRDJXSlBTWG5kQ29tR1JzT3JDZU83RHJMV2wKICAgICAgICBVQ1JIbDFPbGNSSGN1eFNxVkRIK0NDcVcrTkM0SnhVS2MyMk96SStrYUtUcnVqM3M5WGtlZklNQ2dZRUF4RU42CiAgICAgICAgQjd4QU5ZOWNlYjFYb2V2M1o3QVdJaExQUThHUFozS1NTbXoxWmRwMTFNTm91eFJKQnpEUzRrNjRRdjJuNDRKUAogICAgICAgIFUra2JYU2p2bkN5SVRDalRldkRJc0t4SHRPMHdPTEV3QjVMQ0J6cEpURXNqd0daY1RQMEFPdjZkcXdKd0xQcG0KICAgICAgICB5c2lUckxGQkg1U2RWc1RNdDhVSkZ4WjMzc0RXSFp2U28wcDIxSXNDZ1lCNjg4ck1rNzJqdnBFOFJKTHBEUlkyCiAgICAgICAgbkg4NjVVTWJjSHNBSWw0ZWQrRElWMFlGMVpMRDBReVN5WXl5V0FteWUxcmVHUjdhbkVudnpCN05GZE0wcm9DOAogICAgICAgIE01cFYvcWVNbWRxZjRSYkQ3bzQ1cHNEaURxcnVNK1pCeHM4UkdHOHVFK3F4TmF3Tmg1OXFLbnE4RUNFWGNpak4KICAgICAgICBTS0dFRUxNYWpTU3ZIOWRad0JRWll3S0JnUUNjQmhpSTlic0YyVVptOFlNdEVtM0lYRS84SG4vdkdYMXJlOFdZCiAgICAgICAgclM0WkhxYjEwYkw4cG8rM3k3U2FmSUkzbjNkTWdsZVdHWWJMZExPbnNDOWFmRXBEUGhBTmc2Z3R5VEhBbi92UwogICAgICAgIHlYUytValBiRnhFQTcxOEpSVWhkbmZTeDhtcERGMzJJVUJRMkFXUUlPeGtwMWFINXBnWW4rSkNxNFJwV3gzMlkKICAgICAgICBtcVlGS1FLQmdRQ2JFc3ZZbGZlV0pEaStDQkgremhma2ZXSVk5U2l5dUhFVVFhNGhOYmFTL0RrRE1ncU41OEN1CiAgICAgICAgOGdYR1NmdEVpVGNMYXQwYTBQNnZlYWNnUEt1aEFIZTFLN2g4NCtSMHJFL2N2MVFUQnBXMzhSUWdhYkxzK2V4eQogICAgICAgIGp5RjVSMU5ISS9MWHNEQk5haVIwNXNyWGRpU1p1bUwwYXdYN3JpQzREeklrNlpaWVJkYm5iUT09CiAgICAgICAgLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0KICAgICAgLSB8CiAgICAgICAgLS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQogICAgICAgIE1JSUVvUUlCQUFLQ0FRRUFwK3NJV2svWDYyQWE3RnVlWk9KelhqUkxSeXBLQW1VQyt3TEx2MlJzSlRxRnRMT3IKICAgICAgICBwRlVmT2NEdVhZQ1BXY2d4Y2JSRHp0OUxmVGJPZDUxUUluOUJ6S3l0bmxFQ1dXZVFzMC9ieTI1SzdiTFZKWWg4CiAgICAgICAgVk5tRm9oemlQY2w4R0wrZzBQUHdmeVphYUxlU1hpSXFZSjMvQ3d5OUNXN3hvZzhYb1dtVzgxbndpWGFpSWNwRQogICAgICAgIFVrdHE0OFZSYkdsellpV2FNeTJTdDQ4dVJhREtGYXREa3JjaFN0a0FrdFNmMGJvZmlONVhGUmlOZlE1cHQwRWUKICAgICAgICA1czNUWEdoTVl6UFNPMW1sODhieEJEQ2t2SjhWY2lBVExOU1o4S1RZdmJKR3JnUGJ2R3ljbFcxdjlTQkJjTVhyCiAgICAgICAgV2haUEw3NWgyNHpVS3d0bWdLMGZ2ejEzL2J2WGR4UGxPWW8vbHdJREFRQUJBb0lCQVFDRGdtaWRTcEVCYjloRwogICAgICAgIEtvOEgxZTZpNWZQYS9YelBHVXRYU1Y1SFBDQVNuQjNoWXlIWFp5ODRiU2lDSkZDZzhWQUFERDFiQkxpN2pUUHcKICAgICAgICByRXo1WjQ4aC9FOVJnWUtFZ0w3c0lHdzBpK0cwL2UwL0l3QzA5MU5ZbnFSMTNab0tTL0pvRTlUVDBEYlljb1Q0CiAgICAgICAgb210c0ZmR01OdUxLUTVDTTZxTUlNSWtmZDk0UjJZbmFiblo4bzZPVjZ0ZXZyM20zUFpXWEQ5QjlGOGRJZk5ZTAogICAgICAgIHljWUovZVFRK0o5OHU4VXFVVU9PdWdqbjROU0Mva3RkTzJmQVBiU0gzK1hLOFc3NUNudWgyWS9kYmpUcmFJanAKICAgICAgICBNZTVudlFhOGNQSE5Tb25DQ2VxQm9kbkRMcElKSjNBSWJRbWVxVXJVTVd4VTdieXBUdm9ENEhvTlBGaWloMkM3CiAgICAgICAgK3hjaVlERlJBb0dCQU5Nb2JRK2FNT1BMVTBFSy9Kd3lDVGpMVUxRZ3gwZWlvSyt2WGJCQmxycElIQWFXVy9CagogICAgICAgIG9RTUJUUENJa0JVcmwyZ244NU5jbWdCdDRGYUZldklFc1FvUXhsZ25NdndqNzNsdlExZkxKQ2tKam14bHJNMHYKICAgICAgICBnR2JLdGlVaGFhbzNUSnNqd3V2bERtUjJxUW5yV2VUOTVRbzZKYjROOGpVOWpDaVFlTVhXQTFzL0FvR0JBTXVUCiAgICAgICAgNFJXUG1UVVdES00ydGRabXU5N24rNktyQjRCVVE5NEwxQTdJSlkzbnFDdTdKYTA2NXlhbmpQa3d6cEw3bzRPUAogICAgICAgIFIzU01kRjYzbGRLYi9udk0ycEpXdUNYMERGMkhrUEJidWtPek90U1Qvc3V0R29nNFE2NnB6S0o0cUJRckdTMGMKICAgICAgICBzNEU4bXpnVUpDaTlGSllzQW0yTzhSYjZ0SFNaQTJ2ek9IVHZLejJwQW9HQVlhVVdHZHJ4dE1VM2NLS0dBaXpaCiAgICAgICAgT3R3Nks3SGt0V21zNk5FdGYrNDBwMXZsS2Q2cUVWWGhCU1M2MFpnMUdMVVp4TjZFc3FabHlNRUd0cnZ2Q0svRwogICAgICAgIHRxTGZOYkNhMFNKRkFXREVRWHI4ODhVcGlWTFRQK2N4ZDFkU040VmwrWUtzK0NqbllIS0IzMDlJQ0FBL2g3Y3AKICAgICAgICBEVHVxYkdMQ21JQW5xakoweHZlYWdiMENnWUFFaDJ1d2dSdFZkUUllOTI2Z01IVHBocHV3aU1HSDkxZnpMcXd2CiAgICAgICAgRUFEVjRWdDZiWlZ1L3lwNVQ2enhOa2JDT2xydTZGY2NucXRRR0NGN0tBRkhXODFaQ0JqY3Iwcy9JVzcyQ2ZSZwogICAgICAgIDRUSGozTThFVlB1TUlFUlJOSEhiQTNncHlyT3FyMExIRTBRWXdVbjBwaEE1THcxMnhvRlNrNDFFTXN0Q3NZeUYKICAgICAgICAvWFFtMFFKL1NRNmhKdk5RMGtyNFpyOExoZjV4TVViWFFlaWt2UFdTUFJkRGQ1NEhBRFY1VFVURzdKTWY1QXhJCiAgICAgICAgazB5WUgzSk9jRXZ6dGlKZGIzY1k2cWRWV1pUUXNrM0NCMnd5U0lTcEdCeFpBamlCeU5nS3lsMXIvVUwxbHluUAogICAgICAgIDdOR3JzYUxWYmR5ZnlaRkQzWjFheFJ1STNGZkdtYjJleEJkbUV1Y3lobXh3OEc3OHhnPT0KICAgICAgICAtLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQogICAgICAtIHwKICAgICAgICAtLS0tLUJFR0lOIFJTQSBQUklWQVRFIEtFWS0tLS0tCiAgICAgICAgTUlJRXBBSUJBQUtDQVFFQTc2SStFNnUrSmRUdTgrWDRaMkQrMzhXUy9Dbjg0S2k2Y0pjVFZ1aSt0YWJrYXVmMwogICAgICAgIC9YS2JYQ3hKaGRQbTdud0RyaG8xRy9YYjl2N3hCNnNKMWFIcVdtVm1QejFrVmYrRW55eEVLdVJxRE1oTnBwTUIKICAgICAgICBOQnB5Y01VRDBtaE9UQ1Y3ejNVVUVLTzZxa3R6M3F2YTJleEJCcEhpR2hveGVKV1hxNE9rcUdqNUtKM1VHZXdXCiAgICAgICAgSnFkcStxcjJic3AyVnFZazRRTFZVS1QwSjBlTUgyQ1U0QUVORDBZcE9weHJEN0FPai9Kc2lnTHZmLytuK012KwogICAgICAgIDFpb3ViUnpzdE5URWZ4VytYcjlISEpVbFBmdlVGYVROQ3JNUFlTRis0Y0tpVE5tSWdnWmtIYmJScWlDbnVQbFUKICAgICAgICBmeENxa3B5Z1dyanlyaUdlbUxPQ2ZEVDBTeEZzUVRxcjdoSUdVd0lEQVFBQkFvSUJBSFE3VWJqZzJMNG81aTVQCiAgICAgICAgSVltak5uejdyQ3U3Z2ZqR1hvZzEveDlzalBRM0d4dnZvQTNEQlRCVUd1VmF2dXgySXFMVCsyYXdmaHp6MDUxUQogICAgICAgIGpOaWVUTG5EN1RCSGF0OTdyS3c0SUdoZG1rTFE5VGtTbk1iVS9TVk5xbWpvUnZJUVRGbDRCRjk5eXhER3dGRUYKICAgICAgICBNb1g1WGlEOXFablhrcDlXajlhVlo4eDMva0tBT3hOWjBrMHNmMGZLUE9wYkxrL3lsWExEazNHeXBQbUpGbENLCiAgICAgICAgMWdsc1Vod2pMeWxGMGl2SklBUmwyUmhRd1hvZXhZYUQ4bHJFc1JVTEVNeUhvTFpYL21LYnJoc3ZVeVg0YzlFMQogICAgICAgIHd0YzVaRDh0emRTNkVzVGpLajVXb05xekhFWkxUbU1WWUZSTno4MEllRUhMMjFWMjNuTnhzcEdQK2RyUzltdG4KICAgICAgICBuYVBqdnNFQ2dZRUEranB6NnhLcVdVd1NOTnFRQ1FBdGxRdisxTjFpQUVlbVIwbEs2L1RZcVB0aHBxcFdFTEsxCiAgICAgICAgQ0VEeUdrMzZ0THJ0d0Nuc3o3c0RGWWtyMDJMelY2c05YYXhsWEJQWmpkODVCS3MxeUpmVzFkeHU1RnNTNlVaOAogICAgICAgIGJKcFNGbzRzMS9KYm9mRk1WV3VVMjF2UDVJSEpjYnB1YWQ5VlBOQjFUbm1DVm50VlZkWlpIS2tDZ1lFQTlTazcKICAgICAgICBIRXphMnRIOHJTN2lVV3B2b0tMNjNobTVRRUFITVg2K3FiQ0s1ejg5ejYzR1BxV1FKR0kzdDE0QW5ONWpQMG9UCiAgICAgICAgaGhlMnJISXg3Zjc5OU1rQ2tzeS81bWVPdXo3WE9CaVJFUWxEUjVkTTdoRThzVldQbUN3ZVd5VGhjWEdjdDlZawogICAgICAgIE9SUTFFV1BFZWd5akhkcFVrRW5Ib0VMUEhXZUp1a1NUSnNadnpKc0NnWUVBN1ZXanZNTG5iK3NIR2JwMEF4VjQKICAgICAgICBKblpLTGZ3TWg5ZHRqdytsVUVmYmQrdDJvMjNNVStvc2FyZXU2ZVFzZGw4V1FiMkNMMFZobDN1VFpkdmtrckphCiAgICAgICAgNnc0bzFUeStqQ0c5SXdDQTh0R1JveWFBeDNiYWFRZkIzQUJDKzhHK0p0Um90U0Q1RmN3RVZFcXcxRHVGcGFqKwogICAgICAgIE1NenpPOHM4ZUVJbnJYOHRZVXo5R0lFQ2dZQWowMStnOWhZeFRlaFh3bmN1SUppcFo4ZXpOeDBjSjM4bG0zanYKICAgICAgICBRUzQ3TnNHb25LTlF1azhERWh0RVA0ZGxaUllweElCdjR2MDkyLzR4NGtab1JBdU5Pa0I4d2Z0WW40bEIyRTB5CiAgICAgICAgcVNEYzBGNWNsOFkvdjlvWkNiRng3a1RIbUN1bnJiSmphUEdNVmdEN09PZUpVRU4xUm1MV3A0eXVwbGU1RVpaVAogICAgICAgIFgwSXRLd0tCZ1FEYmFncy8wR2FKYXNmRzRnTlRwMHZwUnpYZUdoQ05zVlBtNzJWTm9kdjVmQVpHVTZWZ2ZqcHkKICAgICAgICAwUWxzSGw3YzE0OGZrdmpqM1R4cmlxUldtRW9zSTl2alZwdFRZamNjdEJEaGhrK2dENHVmb2txaGh0Y2tiZlJrCiAgICAgICAgRVFleWRleWJLTFc0OU1ld200Mm1qSk1tK0NBSXBPK1RWRllSKy9VWnhCWk4zV2hLZVBPWGlBPT0KICAgICAgICAtLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQogIC0gZ2l0X2Nsb25lOgogICAgICByZXBvOiBnaXRAZ2l0aHViLmNvbTp2ZXhvci92eC10ZXN0LXJlcG8uZ2l0CiAgICAgIGRlc3Q6ICJ+L3ZleG9yL3Z4LXRlc3QtcmVwbyIKICAgICAgYnJhbmNoOiB0ZXN0L3B1bGwtcmVxdWVzdAogICAgICBzaGE6IDhmNTNjMDc3MDcyNjc0OTcyZTIxYzgyYTI4NmFjYzA3ZmFkYTkxZjUKLSBuYW1lOiBpbml0CiAgY2hkaXI6ICJ+L3ZleG9yL3Z4LXRlc3QtcmVwbyIKICBlbnZpcm9ubWVudDoKICAgIENJOiAnMScKICAgIENJX0pPQl9JRDogMQogICAgQ0lfSk9CX05VTUJFUjogMTAwCiAgICBDSV9CVUlMRF9JRDogMTIKICAgIENJX0JVSUxEX05VTUJFUjogMTAxCiAgICBDSV9QUk9KRUNUX05BTUU6IHZleG9yL3Z4LXRlc3QtcmVwbwogICAgQ0lfQlVJTERfU0hBOiA4ZjUzYzA3NzA3MjY3NDk3MmUyMWM4MmEyODZhY2MwN2ZhZGE5MWY1CiAgICBDSV9CUkFOQ0g6IHRlc3QvcHVsbC1yZXF1ZXN0CiAgICBESVNQTEFZOiAiOjk5IgogICAgQ0lfUEFSQUxMRUxfSk9CUzogMwogICAgQ0lfUEFSQUxMRUxfSk9CX05VTUJFUjogMAogICAgZ2xvYmFsOiAnJwogICAgbWF0cml4OiAnJwogICAgUkFJTFNfRU5WOiB0ZXN0CiAgICBSQUNLX0VOVjogdGVzdAogICAgR0VNX0hPTUU6ICJ+Ly5ydWJ5Z2VtcyIKICAgIFRSQVZJU19QWVRIT05fVkVSU0lPTjogcHlfdmVyc2lvbgogIHRhc2tzOgogIC0gc2VydmljZXM6CiAgICAtIHJhYmJpdG1xLXNlcnZlcgogIC0gY2FjaGVfZmV0Y2g6CiAgICAgIHVybDoKICAgICAgLSBodHRwOi8vbG9jYWxob3N0OjMwMDEvdGVzdC9wdWxsLXJlcXVlc3Qvc2NhbGEtMi4xMC4zLXJ2bS0yLjAuMC1nZW1maWxlLW5vZGVqcy0wLjEwLXJ1c3QtMC4xMS4wLXB5dGhvbi0yLjcudGd6CiAgICAgIC0gaHR0cDovL2xvY2FsaG9zdDozMDAxL21hc3Rlci9zY2FsYS0yLjEwLjMtcnZtLTIuMC4wLWdlbWZpbGUtbm9kZWpzLTAuMTAtcnVzdC0wLjExLjAtcHl0aG9uLTIuNy50Z3oKICAtIGNhY2hlX2FkZDoKICAgICAgZGlyOgogICAgICAtICJ+Ly5jYWNoZSIKICAgICAgLSAifi8uc2J0IgogICAgICAtICJ+Ly5pdnkyIgogICAgICAtICJ+Ly5ydWJ5Z2VtcyIKICAgICAgLSBub2RlX21vZHVsZXMKICAgICAgLSBib3dlcl9jb21wb25lbnRzCiAgICAgIC0gIn4vLnBpcC1kb3dubG9hZHMiCi0gbmFtZTogYmVmb3JlX2luc3RhbGwKICB0YXNrczoKICAtIHNoZWxsOiBlY2hvIGJlZm9yZV9pbnN0YWxsCi0gbmFtZTogaW5zdGFsbAogIGVudmlyb25tZW50OgogICAgUEFUSDogIiR7UEFUSH06JHtQV0R9L25vZGVfbW9kdWxlcy9iaW4iCiAgdGFza3M6CiAgLSBzY2FsYToKICAgICAgYWN0aW9uOiBpbnN0YWxsCiAgICAgIHNjYWxhOiAyLjEwLjMKICAtIHJ1Ynk6CiAgICAgIGFjdGlvbjogaW5zdGFsbAogICAgICBydWJ5OiAyLjAuMAogIC0gcnVieTogYW5ub3VuY2UKICAtIHZ4dm06IG5vZGVqcyAwLjEwCiAgLSBzaGVsbDogbnBtIGNvbmZpZyBzZXQgc3BpbiBmYWxzZQogIC0gc2hlbGw6IG5vZGUgLS12ZXJzaW9uCiAgLSBzaGVsbDogbnBtIC0tdmVyc2lvbgogIC0gdnh2bTogcnVzdCAwLjExLjAKICAtIHNoZWxsOiBydXN0YyAtLXZlcnNpb24KICAtIHB5dGhvbjoKICAgICAgYWN0aW9uOiBpbnN0YWxsCiAgICAgIHB5dGhvbjogJzIuNycKICAtIHB5dGhvbjogdmlydHVhbGVudgogIC0gcHl0aG9uOiBhbm5vdW5jZQogIC0gc2hlbGw6IGVjaG8gaW5zdGFsbAotIG5hbWU6IGRhdGFiYXNlCiAgdGFza3M6CiAgLSBydWJ5OiByYWlsczpkYXRhYmFzZQotIG5hbWU6IGJlZm9yZV9zY3JpcHQKICB0YXNrczoKICAtIHNoZWxsOiBlY2hvIGJlZm9yZV9zY3JpcHQKLSBuYW1lOiBzY3JpcHQKICB0YXNrczoKICAtIHNoZWxsOiBSQUlMU19FTlY9dGVzdCBscyAtMSAmJiBlY2hvIERPTkUhCi0gbmFtZTogYWZ0ZXJfc3VjY2VzcwogIHRhc2tzOgogIC0gc2hlbGw6IGVjaG8gYWZ0ZXIgc3VjY2VzcwotIG5hbWU6IHRlYXJkb3duCiAgdGFza3M6CiAgLSBjYWNoZV9wdXNoOgogICAgICB1cmw6IGh0dHA6Ly9sb2NhbGhvc3Q6MzAwMS90ZXN0L3B1bGwtcmVxdWVzdC9zY2FsYS0yLjEwLjMtcnZtLTIuMC4wLWdlbWZpbGUtbm9kZWpzLTAuMTAtcnVzdC0wLjExLjAtcHl0aG9uLTIuNy50Z3oK \
25
25
  | base64 --decode | ~/citool/bin/vx-citool -
26
26
 
27
27
  exit $?
@@ -1,37 +1,92 @@
1
1
  ---
2
2
  - name: clone
3
- vars:
4
- ssh_key: |
5
- -----BEGIN RSA PRIVATE KEY-----
6
- MIIEpAIBAAKCAQEApMkam+mhwCdCQdqtu7U9p5VRFmkrbi9HaA3vagphMvyryWqx
7
- C9sY+an8jCNRUpelyjJ8f6b6/V5h4WcnlwpOvVGGns4HObnYj89GKoBF+QpT28mp
8
- CMi0kzHNSWMRZg/d9x3Af2cDIgJhgGKdKLhOb+SJ2iRzKA6ywmyNTrUB4tJhpgJ/
9
- PA1lGlYXkGad2KRAfg7mTcuQrqLJ4qi2XdgAHctISN9wUdbE1x5HFPyzukwKuBAE
10
- h7m6VVrJzskKNrBsuOVSZuQ6rv9TiqWXVpAXgrWvKztlf3SNAttmABb5d2uPOa2+
11
- reCWEzHbWOFgMQDQsXsS3rqC3fzw4VMKRQwXIQIDAQABAoIBADgZOpTPkcBf3R+c
12
- Ob8IcYfmvmc5wI5PTCjxbYsVI4f/GuCEEOfvW+5K324568qJU+ilDVtL1nCBPCNH
13
- QeQanzm2UnUnwK/3Q/GZZ9K6PpgM2wWc/o29/jOKJdARCPBNAIzLNShqQlfGpbjW
14
- WZhuPk27aO65r/Z4IoUr/WNJHe5Akv5FMfseAZ+zlAHA32QqNggOeit65Gio2cIu
15
- YDKI5Nr1iiSq3JMfEZvmc/5QedU9U7DIeNWwji8pGzFkF8xhu6Ey9hpGR2U7gEqR
16
- +dySnwi8+qaspof8rguGeSUZVmoTGmfYUEnz1ZpJVaQiABkaVXwADahhve8td1Tr
17
- 7h1b+Q0CgYEA1vDp7OklWyvFiePYu4rlnmjVKNv6kbUULtOix9yKWbApY6ljpYhS
18
- yigiqV6jiVorC1ClcXPWpWsHosd+p6DRaa0MiqD2WJPSXndComGRsOrCeO7DrLWl
19
- UCRHl1OlcRHcuxSqVDH+CCqW+NC4JxUKc22OzI+kaKTruj3s9XkefIMCgYEAxEN6
20
- B7xANY9ceb1Xoev3Z7AWIhLPQ8GPZ3KSSmz1Zdp11MNouxRJBzDS4k64Qv2n44JP
21
- U+kbXSjvnCyITCjTevDIsKxHtO0wOLEwB5LCBzpJTEsjwGZcTP0AOv6dqwJwLPpm
22
- ysiTrLFBH5SdVsTMt8UJFxZ33sDWHZvSo0p21IsCgYB688rMk72jvpE8RJLpDRY2
23
- nH865UMbcHsAIl4ed+DIV0YF1ZLD0QySyYyyWAmye1reGR7anEnvzB7NFdM0roC8
24
- M5pV/qeMmdqf4RbD7o45psDiDqruM+ZBxs8RGG8uE+qxNawNh59qKnq8ECEXcijN
25
- SKGEELMajSSvH9dZwBQZYwKBgQCcBhiI9bsF2UZm8YMtEm3IXE/8Hn/vGX1re8WY
26
- rS4ZHqb10bL8po+3y7SafII3n3dMgleWGYbLdLOnsC9afEpDPhANg6gtyTHAn/vS
27
- yXS+UjPbFxEA718JRUhdnfSx8mpDF32IUBQ2AWQIOxkp1aH5pgYn+JCq4RpWx32Y
28
- mqYFKQKBgQCbEsvYlfeWJDi+CBH+zhfkfWIY9SiyuHEUQa4hNbaS/DkDMgqN58Cu
29
- 8gXGSftEiTcLat0a0P6veacgPKuhAHe1K7h84+R0rE/cv1QTBpW38RQgabLs+exy
30
- jyF5R1NHI/LXsDBNaiR05srXdiSZumL0awX7riC4DzIk6ZZYRdbnbQ==
31
- -----END RSA PRIVATE KEY-----
32
3
  tasks:
33
4
  - ssh_agent:
34
- key: "$ssh_key"
5
+ deploy_key:
6
+ - |
7
+ -----BEGIN RSA PRIVATE KEY-----
8
+ MIIEpAIBAAKCAQEApMkam+mhwCdCQdqtu7U9p5VRFmkrbi9HaA3vagphMvyryWqx
9
+ C9sY+an8jCNRUpelyjJ8f6b6/V5h4WcnlwpOvVGGns4HObnYj89GKoBF+QpT28mp
10
+ CMi0kzHNSWMRZg/d9x3Af2cDIgJhgGKdKLhOb+SJ2iRzKA6ywmyNTrUB4tJhpgJ/
11
+ PA1lGlYXkGad2KRAfg7mTcuQrqLJ4qi2XdgAHctISN9wUdbE1x5HFPyzukwKuBAE
12
+ h7m6VVrJzskKNrBsuOVSZuQ6rv9TiqWXVpAXgrWvKztlf3SNAttmABb5d2uPOa2+
13
+ reCWEzHbWOFgMQDQsXsS3rqC3fzw4VMKRQwXIQIDAQABAoIBADgZOpTPkcBf3R+c
14
+ Ob8IcYfmvmc5wI5PTCjxbYsVI4f/GuCEEOfvW+5K324568qJU+ilDVtL1nCBPCNH
15
+ QeQanzm2UnUnwK/3Q/GZZ9K6PpgM2wWc/o29/jOKJdARCPBNAIzLNShqQlfGpbjW
16
+ WZhuPk27aO65r/Z4IoUr/WNJHe5Akv5FMfseAZ+zlAHA32QqNggOeit65Gio2cIu
17
+ YDKI5Nr1iiSq3JMfEZvmc/5QedU9U7DIeNWwji8pGzFkF8xhu6Ey9hpGR2U7gEqR
18
+ +dySnwi8+qaspof8rguGeSUZVmoTGmfYUEnz1ZpJVaQiABkaVXwADahhve8td1Tr
19
+ 7h1b+Q0CgYEA1vDp7OklWyvFiePYu4rlnmjVKNv6kbUULtOix9yKWbApY6ljpYhS
20
+ yigiqV6jiVorC1ClcXPWpWsHosd+p6DRaa0MiqD2WJPSXndComGRsOrCeO7DrLWl
21
+ UCRHl1OlcRHcuxSqVDH+CCqW+NC4JxUKc22OzI+kaKTruj3s9XkefIMCgYEAxEN6
22
+ B7xANY9ceb1Xoev3Z7AWIhLPQ8GPZ3KSSmz1Zdp11MNouxRJBzDS4k64Qv2n44JP
23
+ U+kbXSjvnCyITCjTevDIsKxHtO0wOLEwB5LCBzpJTEsjwGZcTP0AOv6dqwJwLPpm
24
+ ysiTrLFBH5SdVsTMt8UJFxZ33sDWHZvSo0p21IsCgYB688rMk72jvpE8RJLpDRY2
25
+ nH865UMbcHsAIl4ed+DIV0YF1ZLD0QySyYyyWAmye1reGR7anEnvzB7NFdM0roC8
26
+ M5pV/qeMmdqf4RbD7o45psDiDqruM+ZBxs8RGG8uE+qxNawNh59qKnq8ECEXcijN
27
+ SKGEELMajSSvH9dZwBQZYwKBgQCcBhiI9bsF2UZm8YMtEm3IXE/8Hn/vGX1re8WY
28
+ rS4ZHqb10bL8po+3y7SafII3n3dMgleWGYbLdLOnsC9afEpDPhANg6gtyTHAn/vS
29
+ yXS+UjPbFxEA718JRUhdnfSx8mpDF32IUBQ2AWQIOxkp1aH5pgYn+JCq4RpWx32Y
30
+ mqYFKQKBgQCbEsvYlfeWJDi+CBH+zhfkfWIY9SiyuHEUQa4hNbaS/DkDMgqN58Cu
31
+ 8gXGSftEiTcLat0a0P6veacgPKuhAHe1K7h84+R0rE/cv1QTBpW38RQgabLs+exy
32
+ jyF5R1NHI/LXsDBNaiR05srXdiSZumL0awX7riC4DzIk6ZZYRdbnbQ==
33
+ -----END RSA PRIVATE KEY-----
34
+ - |
35
+ -----BEGIN RSA PRIVATE KEY-----
36
+ MIIEoQIBAAKCAQEAp+sIWk/X62Aa7FueZOJzXjRLRypKAmUC+wLLv2RsJTqFtLOr
37
+ pFUfOcDuXYCPWcgxcbRDzt9LfTbOd51QIn9BzKytnlECWWeQs0/by25K7bLVJYh8
38
+ VNmFohziPcl8GL+g0PPwfyZaaLeSXiIqYJ3/Cwy9CW7xog8XoWmW81nwiXaiIcpE
39
+ Uktq48VRbGlzYiWaMy2St48uRaDKFatDkrchStkAktSf0bofiN5XFRiNfQ5pt0Ee
40
+ 5s3TXGhMYzPSO1ml88bxBDCkvJ8VciATLNSZ8KTYvbJGrgPbvGyclW1v9SBBcMXr
41
+ WhZPL75h24zUKwtmgK0fvz13/bvXdxPlOYo/lwIDAQABAoIBAQCDgmidSpEBb9hG
42
+ Ko8H1e6i5fPa/XzPGUtXSV5HPCASnB3hYyHXZy84bSiCJFCg8VAADD1bBLi7jTPw
43
+ rEz5Z48h/E9RgYKEgL7sIGw0i+G0/e0/IwC091NYnqR13ZoKS/JoE9TT0DbYcoT4
44
+ omtsFfGMNuLKQ5CM6qMIMIkfd94R2YnabnZ8o6OV6tevr3m3PZWXD9B9F8dIfNYL
45
+ ycYJ/eQQ+J98u8UqUUOOugjn4NSC/ktdO2fAPbSH3+XK8W75Cnuh2Y/dbjTraIjp
46
+ Me5nvQa8cPHNSonCCeqBodnDLpIJJ3AIbQmeqUrUMWxU7bypTvoD4HoNPFiih2C7
47
+ +xciYDFRAoGBANMobQ+aMOPLU0EK/JwyCTjLULQgx0eioK+vXbBBlrpIHAaWW/Bj
48
+ oQMBTPCIkBUrl2gn85NcmgBt4FaFevIEsQoQxlgnMvwj73lvQ1fLJCkJjmxlrM0v
49
+ gGbKtiUhaao3TJsjwuvlDmR2qQnrWeT95Qo6Jb4N8jU9jCiQeMXWA1s/AoGBAMuT
50
+ 4RWPmTUWDKM2tdZmu97n+6KrB4BUQ94L1A7IJY3nqCu7Ja065yanjPkwzpL7o4OP
51
+ R3SMdF63ldKb/nvM2pJWuCX0DF2HkPBbukOzOtST/sutGog4Q66pzKJ4qBQrGS0c
52
+ s4E8mzgUJCi9FJYsAm2O8Rb6tHSZA2vzOHTvKz2pAoGAYaUWGdrxtMU3cKKGAizZ
53
+ Otw6K7HktWms6NEtf+40p1vlKd6qEVXhBSS60Zg1GLUZxN6EsqZlyMEGtrvvCK/G
54
+ tqLfNbCa0SJFAWDEQXr888UpiVLTP+cxd1dSN4Vl+YKs+CjnYHKB309ICAA/h7cp
55
+ DTuqbGLCmIAnqjJ0xveagb0CgYAEh2uwgRtVdQIe926gMHTphpuwiMGH91fzLqwv
56
+ EADV4Vt6bZVu/yp5T6zxNkbCOlru6FccnqtQGCF7KAFHW81ZCBjcr0s/IW72CfRg
57
+ 4THj3M8EVPuMIERRNHHbA3gpyrOqr0LHE0QYwUn0phA5Lw12xoFSk41EMstCsYyF
58
+ /XQm0QJ/SQ6hJvNQ0kr4Zr8Lhf5xMUbXQeikvPWSPRdDd54HADV5TUTG7JMf5AxI
59
+ k0yYH3JOcEvztiJdb3cY6qdVWZTQsk3CB2wySISpGBxZAjiByNgKyl1r/UL1lynP
60
+ 7NGrsaLVbdyfyZFD3Z1axRuI3FfGmb2exBdmEucyhmxw8G78xg==
61
+ -----END RSA PRIVATE KEY-----
62
+ - |
63
+ -----BEGIN RSA PRIVATE KEY-----
64
+ MIIEpAIBAAKCAQEA76I+E6u+JdTu8+X4Z2D+38WS/Cn84Ki6cJcTVui+tabkauf3
65
+ /XKbXCxJhdPm7nwDrho1G/Xb9v7xB6sJ1aHqWmVmPz1kVf+EnyxEKuRqDMhNppMB
66
+ NBpycMUD0mhOTCV7z3UUEKO6qktz3qva2exBBpHiGhoxeJWXq4OkqGj5KJ3UGewW
67
+ Jqdq+qr2bsp2VqYk4QLVUKT0J0eMH2CU4AEND0YpOpxrD7AOj/JsigLvf/+n+Mv+
68
+ 1ioubRzstNTEfxW+Xr9HHJUlPfvUFaTNCrMPYSF+4cKiTNmIggZkHbbRqiCnuPlU
69
+ fxCqkpygWrjyriGemLOCfDT0SxFsQTqr7hIGUwIDAQABAoIBAHQ7Ubjg2L4o5i5P
70
+ IYmjNnz7rCu7gfjGXog1/x9sjPQ3GxvvoA3DBTBUGuVavux2IqLT+2awfhzz051Q
71
+ jNieTLnD7TBHat97rKw4IGhdmkLQ9TkSnMbU/SVNqmjoRvIQTFl4BF99yxDGwFEF
72
+ MoX5XiD9qZnXkp9Wj9aVZ8x3/kKAOxNZ0k0sf0fKPOpbLk/ylXLDk3GypPmJFlCK
73
+ 1glsUhwjLylF0ivJIARl2RhQwXoexYaD8lrEsRULEMyHoLZX/mKbrhsvUyX4c9E1
74
+ wtc5ZD8tzdS6EsTjKj5WoNqzHEZLTmMVYFRNz80IeEHL21V23nNxspGP+drS9mtn
75
+ naPjvsECgYEA+jpz6xKqWUwSNNqQCQAtlQv+1N1iAEemR0lK6/TYqPthpqpWELK1
76
+ CEDyGk36tLrtwCnsz7sDFYkr02LzV6sNXaxlXBPZjd85BKs1yJfW1dxu5FsS6UZ8
77
+ bJpSFo4s1/JbofFMVWuU21vP5IHJcbpuad9VPNB1TnmCVntVVdZZHKkCgYEA9Sk7
78
+ HEza2tH8rS7iUWpvoKL63hm5QEAHMX6+qbCK5z89z63GPqWQJGI3t14AnN5jP0oT
79
+ hhe2rHIx7f799MkCksy/5meOuz7XOBiREQlDR5dM7hE8sVWPmCweWyThcXGct9Yk
80
+ ORQ1EWPEegyjHdpUkEnHoELPHWeJukSTJsZvzJsCgYEA7VWjvMLnb+sHGbp0AxV4
81
+ JnZKLfwMh9dtjw+lUEfbd+t2o23MU+osareu6eQsdl8WQb2CL0Vhl3uTZdvkkrJa
82
+ 6w4o1Ty+jCG9IwCA8tGRoyaAx3baaQfB3ABC+8G+JtRotSD5FcwEVEqw1DuFpaj+
83
+ MMzzO8s8eEInrX8tYUz9GIECgYAj01+g9hYxTehXwncuIJipZ8ezNx0cJ38lm3jv
84
+ QS47NsGonKNQuk8DEhtEP4dlZRYpxIBv4v092/4x4kZoRAuNOkB8wftYn4lB2E0y
85
+ qSDc0F5cl8Y/v9oZCbFx7kTHmCunrbJjaPGMVgD7OOeJUEN1RmLWp4yuple5EZZT
86
+ X0ItKwKBgQDbags/0GaJasfG4gNTp0vpRzXeGhCNsVPm72VNodv5fAZGU6Vgfjpy
87
+ 0QlsHl7c148fkvjj3TxriqRWmEosI9vjVptTYjcctBDhhk+gD4ufokqhhtckbfRk
88
+ EQeydeybKLW49Mewm42mjJMm+CAIpO+TVFYR+/UZxBZN3WhKePOXiA==
89
+ -----END RSA PRIVATE KEY-----
35
90
  - git_clone:
36
91
  repo: git@github.com:vexor/vx-test-repo.git
37
92
  dest: "~/vexor/vx-test-repo"
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEoQIBAAKCAQEAp+sIWk/X62Aa7FueZOJzXjRLRypKAmUC+wLLv2RsJTqFtLOr
3
+ pFUfOcDuXYCPWcgxcbRDzt9LfTbOd51QIn9BzKytnlECWWeQs0/by25K7bLVJYh8
4
+ VNmFohziPcl8GL+g0PPwfyZaaLeSXiIqYJ3/Cwy9CW7xog8XoWmW81nwiXaiIcpE
5
+ Uktq48VRbGlzYiWaMy2St48uRaDKFatDkrchStkAktSf0bofiN5XFRiNfQ5pt0Ee
6
+ 5s3TXGhMYzPSO1ml88bxBDCkvJ8VciATLNSZ8KTYvbJGrgPbvGyclW1v9SBBcMXr
7
+ WhZPL75h24zUKwtmgK0fvz13/bvXdxPlOYo/lwIDAQABAoIBAQCDgmidSpEBb9hG
8
+ Ko8H1e6i5fPa/XzPGUtXSV5HPCASnB3hYyHXZy84bSiCJFCg8VAADD1bBLi7jTPw
9
+ rEz5Z48h/E9RgYKEgL7sIGw0i+G0/e0/IwC091NYnqR13ZoKS/JoE9TT0DbYcoT4
10
+ omtsFfGMNuLKQ5CM6qMIMIkfd94R2YnabnZ8o6OV6tevr3m3PZWXD9B9F8dIfNYL
11
+ ycYJ/eQQ+J98u8UqUUOOugjn4NSC/ktdO2fAPbSH3+XK8W75Cnuh2Y/dbjTraIjp
12
+ Me5nvQa8cPHNSonCCeqBodnDLpIJJ3AIbQmeqUrUMWxU7bypTvoD4HoNPFiih2C7
13
+ +xciYDFRAoGBANMobQ+aMOPLU0EK/JwyCTjLULQgx0eioK+vXbBBlrpIHAaWW/Bj
14
+ oQMBTPCIkBUrl2gn85NcmgBt4FaFevIEsQoQxlgnMvwj73lvQ1fLJCkJjmxlrM0v
15
+ gGbKtiUhaao3TJsjwuvlDmR2qQnrWeT95Qo6Jb4N8jU9jCiQeMXWA1s/AoGBAMuT
16
+ 4RWPmTUWDKM2tdZmu97n+6KrB4BUQ94L1A7IJY3nqCu7Ja065yanjPkwzpL7o4OP
17
+ R3SMdF63ldKb/nvM2pJWuCX0DF2HkPBbukOzOtST/sutGog4Q66pzKJ4qBQrGS0c
18
+ s4E8mzgUJCi9FJYsAm2O8Rb6tHSZA2vzOHTvKz2pAoGAYaUWGdrxtMU3cKKGAizZ
19
+ Otw6K7HktWms6NEtf+40p1vlKd6qEVXhBSS60Zg1GLUZxN6EsqZlyMEGtrvvCK/G
20
+ tqLfNbCa0SJFAWDEQXr888UpiVLTP+cxd1dSN4Vl+YKs+CjnYHKB309ICAA/h7cp
21
+ DTuqbGLCmIAnqjJ0xveagb0CgYAEh2uwgRtVdQIe926gMHTphpuwiMGH91fzLqwv
22
+ EADV4Vt6bZVu/yp5T6zxNkbCOlru6FccnqtQGCF7KAFHW81ZCBjcr0s/IW72CfRg
23
+ 4THj3M8EVPuMIERRNHHbA3gpyrOqr0LHE0QYwUn0phA5Lw12xoFSk41EMstCsYyF
24
+ /XQm0QJ/SQ6hJvNQ0kr4Zr8Lhf5xMUbXQeikvPWSPRdDd54HADV5TUTG7JMf5AxI
25
+ k0yYH3JOcEvztiJdb3cY6qdVWZTQsk3CB2wySISpGBxZAjiByNgKyl1r/UL1lynP
26
+ 7NGrsaLVbdyfyZFD3Z1axRuI3FfGmb2exBdmEucyhmxw8G78xg==
27
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEpAIBAAKCAQEA76I+E6u+JdTu8+X4Z2D+38WS/Cn84Ki6cJcTVui+tabkauf3
3
+ /XKbXCxJhdPm7nwDrho1G/Xb9v7xB6sJ1aHqWmVmPz1kVf+EnyxEKuRqDMhNppMB
4
+ NBpycMUD0mhOTCV7z3UUEKO6qktz3qva2exBBpHiGhoxeJWXq4OkqGj5KJ3UGewW
5
+ Jqdq+qr2bsp2VqYk4QLVUKT0J0eMH2CU4AEND0YpOpxrD7AOj/JsigLvf/+n+Mv+
6
+ 1ioubRzstNTEfxW+Xr9HHJUlPfvUFaTNCrMPYSF+4cKiTNmIggZkHbbRqiCnuPlU
7
+ fxCqkpygWrjyriGemLOCfDT0SxFsQTqr7hIGUwIDAQABAoIBAHQ7Ubjg2L4o5i5P
8
+ IYmjNnz7rCu7gfjGXog1/x9sjPQ3GxvvoA3DBTBUGuVavux2IqLT+2awfhzz051Q
9
+ jNieTLnD7TBHat97rKw4IGhdmkLQ9TkSnMbU/SVNqmjoRvIQTFl4BF99yxDGwFEF
10
+ MoX5XiD9qZnXkp9Wj9aVZ8x3/kKAOxNZ0k0sf0fKPOpbLk/ylXLDk3GypPmJFlCK
11
+ 1glsUhwjLylF0ivJIARl2RhQwXoexYaD8lrEsRULEMyHoLZX/mKbrhsvUyX4c9E1
12
+ wtc5ZD8tzdS6EsTjKj5WoNqzHEZLTmMVYFRNz80IeEHL21V23nNxspGP+drS9mtn
13
+ naPjvsECgYEA+jpz6xKqWUwSNNqQCQAtlQv+1N1iAEemR0lK6/TYqPthpqpWELK1
14
+ CEDyGk36tLrtwCnsz7sDFYkr02LzV6sNXaxlXBPZjd85BKs1yJfW1dxu5FsS6UZ8
15
+ bJpSFo4s1/JbofFMVWuU21vP5IHJcbpuad9VPNB1TnmCVntVVdZZHKkCgYEA9Sk7
16
+ HEza2tH8rS7iUWpvoKL63hm5QEAHMX6+qbCK5z89z63GPqWQJGI3t14AnN5jP0oT
17
+ hhe2rHIx7f799MkCksy/5meOuz7XOBiREQlDR5dM7hE8sVWPmCweWyThcXGct9Yk
18
+ ORQ1EWPEegyjHdpUkEnHoELPHWeJukSTJsZvzJsCgYEA7VWjvMLnb+sHGbp0AxV4
19
+ JnZKLfwMh9dtjw+lUEfbd+t2o23MU+osareu6eQsdl8WQb2CL0Vhl3uTZdvkkrJa
20
+ 6w4o1Ty+jCG9IwCA8tGRoyaAx3baaQfB3ABC+8G+JtRotSD5FcwEVEqw1DuFpaj+
21
+ MMzzO8s8eEInrX8tYUz9GIECgYAj01+g9hYxTehXwncuIJipZ8ezNx0cJ38lm3jv
22
+ QS47NsGonKNQuk8DEhtEP4dlZRYpxIBv4v092/4x4kZoRAuNOkB8wftYn4lB2E0y
23
+ qSDc0F5cl8Y/v9oZCbFx7kTHmCunrbJjaPGMVgD7OOeJUEN1RmLWp4yuple5EZZT
24
+ X0ItKwKBgQDbags/0GaJasfG4gNTp0vpRzXeGhCNsVPm72VNodv5fAZGU6Vgfjpy
25
+ 0QlsHl7c148fkvjj3TxriqRWmEosI9vjVptTYjcctBDhhk+gD4ufokqhhtckbfRk
26
+ EQeydeybKLW49Mewm42mjJMm+CAIpO+TVFYR+/UZxBZN3WhKePOXiA==
27
+ -----END RSA PRIVATE KEY-----
@@ -8,7 +8,7 @@ describe Vx::Builder::Task do
8
8
  context "just created" do
9
9
  its(:name) { should eq 'vexor/vx-test-repo' }
10
10
  its(:sha) { should eq '8f53c077072674972e21c82a286acc07fada91f5' }
11
- its(:deploy_key) { should be }
11
+ its(:ssh_keys) { should be }
12
12
  its(:cache_url_prefix){ should eq 'http://localhost:3001' }
13
13
  its(:job_id) { should eq 1 }
14
14
  its(:build_id) { should eq 12 }
@@ -10,7 +10,9 @@ def create(name, options = {})
10
10
  name: 'vexor/vx-test-repo',
11
11
  src: "git@github.com:vexor/vx-test-repo.git",
12
12
  sha: options[:sha] || "8f53c077072674972e21c82a286acc07fada91f5",
13
- deploy_key: fixture("vx_test_repo_insecure_key"),
13
+ ssh_keys: [fixture("vx_test_repo_insecure_key"),
14
+ fixture("test_key1"),
15
+ fixture("test_key2")],
14
16
  branch: options[:branch] || "test/pull-request",
15
17
  cache_url_prefix: "http://localhost:3001",
16
18
  pull_request_id: options[:pull_request_id],
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.61
4
+ version: 0.5.62
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-12-09 00:00:00.000000000 Z
11
+ date: 2015-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: vx-common
@@ -145,24 +145,6 @@ files:
145
145
  - lib/vx/builder/helper/trace_sh_command.rb
146
146
  - lib/vx/builder/helper/vxvm_install.rb
147
147
  - lib/vx/builder/matrix_builder.rb
148
- - lib/vx/builder/script_builder.rb
149
- - lib/vx/builder/script_builder/base.rb
150
- - lib/vx/builder/script_builder/cache.rb
151
- - lib/vx/builder/script_builder/clojure.rb
152
- - lib/vx/builder/script_builder/defaults.rb
153
- - lib/vx/builder/script_builder/deploy.rb
154
- - lib/vx/builder/script_builder/env.rb
155
- - lib/vx/builder/script_builder/go.rb
156
- - lib/vx/builder/script_builder/java.rb
157
- - lib/vx/builder/script_builder/nodejs.rb
158
- - lib/vx/builder/script_builder/parallel.rb
159
- - lib/vx/builder/script_builder/prepare.rb
160
- - lib/vx/builder/script_builder/python.rb
161
- - lib/vx/builder/script_builder/ruby.rb
162
- - lib/vx/builder/script_builder/rust.rb
163
- - lib/vx/builder/script_builder/scala.rb
164
- - lib/vx/builder/script_builder/services.rb
165
- - lib/vx/builder/script_builder/timeouts.rb
166
148
  - lib/vx/builder/script_builder_v2.rb
167
149
  - lib/vx/builder/script_builder_v2/base.rb
168
150
  - lib/vx/builder/script_builder_v2/cache.rb
@@ -210,6 +192,8 @@ files:
210
192
  - spec/fixtures/script_builder_v2/simple.sh
211
193
  - spec/fixtures/script_builder_v2/simple.yml
212
194
  - spec/fixtures/simple.yml
195
+ - spec/fixtures/test_key1
196
+ - spec/fixtures/test_key2
213
197
  - spec/fixtures/travis.yml
214
198
  - spec/fixtures/travis_bug_1.yml
215
199
  - spec/fixtures/travis_bug_2.yml
@@ -232,15 +216,6 @@ files:
232
216
  - spec/lib/builder/configuration_spec.rb
233
217
  - spec/lib/builder/deploy_builder_spec.rb
234
218
  - spec/lib/builder/matrix_builder_spec.rb
235
- - spec/lib/builder/script_builder/cache_spec.rb
236
- - spec/lib/builder/script_builder/clojure_spec.rb
237
- - spec/lib/builder/script_builder/env_spec.rb
238
- - spec/lib/builder/script_builder/java_spec.rb
239
- - spec/lib/builder/script_builder/prepare_spec.rb
240
- - spec/lib/builder/script_builder/python_spec.rb
241
- - spec/lib/builder/script_builder/ruby_spec.rb
242
- - spec/lib/builder/script_builder/scala_spec.rb
243
- - spec/lib/builder/script_builder_spec.rb
244
219
  - spec/lib/builder/script_builder_v2_spec.rb
245
220
  - spec/lib/builder/task_spec.rb
246
221
  - spec/lib/builder_spec.rb
@@ -301,6 +276,8 @@ test_files:
301
276
  - spec/fixtures/script_builder_v2/simple.sh
302
277
  - spec/fixtures/script_builder_v2/simple.yml
303
278
  - spec/fixtures/simple.yml
279
+ - spec/fixtures/test_key1
280
+ - spec/fixtures/test_key2
304
281
  - spec/fixtures/travis.yml
305
282
  - spec/fixtures/travis_bug_1.yml
306
283
  - spec/fixtures/travis_bug_2.yml
@@ -323,15 +300,6 @@ test_files:
323
300
  - spec/lib/builder/configuration_spec.rb
324
301
  - spec/lib/builder/deploy_builder_spec.rb
325
302
  - spec/lib/builder/matrix_builder_spec.rb
326
- - spec/lib/builder/script_builder/cache_spec.rb
327
- - spec/lib/builder/script_builder/clojure_spec.rb
328
- - spec/lib/builder/script_builder/env_spec.rb
329
- - spec/lib/builder/script_builder/java_spec.rb
330
- - spec/lib/builder/script_builder/prepare_spec.rb
331
- - spec/lib/builder/script_builder/python_spec.rb
332
- - spec/lib/builder/script_builder/ruby_spec.rb
333
- - spec/lib/builder/script_builder/scala_spec.rb
334
- - spec/lib/builder/script_builder_spec.rb
335
303
  - spec/lib/builder/script_builder_v2_spec.rb
336
304
  - spec/lib/builder/task_spec.rb
337
305
  - spec/lib/builder_spec.rb
@@ -1,77 +0,0 @@
1
- module Vx
2
- module Builder
3
- class ScriptBuilder
4
-
5
- Base = Struct.new(:app) do
6
-
7
- include Helper::TraceShCommand
8
- include Common::Helper::UploadShCommand
9
- include Helper::VxvmInstall
10
-
11
- def do_cache_key(env)
12
- yield env.cache_key
13
- end
14
-
15
- def do_script(env)
16
- if env.source.script.empty? && !env.source.deploy_modules?
17
- yield env.script
18
- end
19
- end
20
-
21
- def do_cached_directories(env)
22
- if env.source.cached_directories != false
23
- yield env.cached_directories
24
- end
25
- end
26
-
27
- def do_init(env)
28
- yield env.init
29
- end
30
-
31
- def do_announce(env)
32
- yield env.announce
33
- end
34
-
35
- def do_before_install(env)
36
- yield env.before_install
37
- end
38
-
39
- def do_install(env)
40
- if env.source.install.empty?
41
- yield env.install
42
- end
43
- end
44
-
45
- def do_before_script(env)
46
- if env.source.before_script.empty? && !deploy?(env)
47
- yield env.before_script
48
- end
49
- end
50
-
51
- def do_deploy_script(env)
52
- if deploy?(env)
53
- yield env.script
54
- end
55
- end
56
-
57
- def do_before_deploy(env)
58
- if deploy?(env)
59
- yield env.before_script
60
- end
61
- end
62
-
63
- def do_after_deploy(env)
64
- if deploy?(env)
65
- yield env.after_success
66
- end
67
- end
68
-
69
- def deploy?(env)
70
- env.source.deploy_modules?
71
- end
72
-
73
- end
74
-
75
- end
76
- end
77
- end
@@ -1,95 +0,0 @@
1
- module Vx
2
- module Builder
3
- class ScriptBuilder
4
-
5
- class Cache < Base
6
-
7
- include Helper::Config
8
-
9
- CASHER_URL = "https://raw.githubusercontent.com/dima-exe/casher/master/bin/casher"
10
- CASHER_BIN = "$HOME/.casher/bin/casher"
11
-
12
- def call(env)
13
- rs = app.call env
14
-
15
- if env.task.cache_url_prefix && enabled?(env)
16
-
17
- assign_url_to_env(env)
18
- prepare(env)
19
- fetch(env)
20
- add(env)
21
- push(env)
22
- end
23
-
24
- rs
25
- end
26
-
27
- private
28
-
29
- def enabled?(env)
30
- env.source.cache.enabled? && !env.cached_directories.empty?
31
- end
32
-
33
- def casher_cmd
34
- "test -f #{CASHER_BIN} && #{config.casher_ruby} #{CASHER_BIN}"
35
- end
36
-
37
- def assign_url_to_env(env)
38
- urls = []
39
- branch = env.task.branch
40
- if branch != 'master'
41
- urls << url_for(env, branch)
42
- end
43
- urls << url_for(env, 'master')
44
-
45
- env.cache_fetch_url = urls
46
- env.cache_push_url = url_for(env, branch)
47
- env
48
- end
49
-
50
- def url_for(env, branch)
51
- name = branch
52
-
53
- key =
54
- if env.cache_key.empty?
55
- "cache"
56
- else
57
- env.cache_key.join("-").downcase.gsub(/[^a-z0-9_\-.]/, '-')
58
- end
59
-
60
- "#{env.task.cache_url_prefix}/#{name}/#{key}.tgz"
61
- end
62
-
63
- def prepare(env)
64
- cmd = %{
65
- export CASHER_DIR=$HOME/.casher &&
66
- ( mkdir -p $CASHER_DIR/bin &&
67
- /usr/bin/curl #{CASHER_URL} --tcp-nodelay --retry 3 --fail --silent --show-error -o #{CASHER_BIN} &&
68
- chmod +x #{CASHER_BIN} ) ||
69
- true
70
- }.gsub(/\n/, ' ').gsub(/ +/, ' ')
71
- env.init << cmd
72
- end
73
-
74
- def fetch(env)
75
- urls = env.cache_fetch_url.join(" ")
76
- env.init << "#{casher_cmd} fetch #{urls} || true"
77
- end
78
-
79
- def add(env)
80
- env.cached_directories.each do |d|
81
- env.init << "#{casher_cmd} add #{d} || true"
82
- end
83
- env.init << "unset CASHER_DIR"
84
- end
85
-
86
- def push(env)
87
- if env.cache_push_url && !deploy?(env)
88
- env.after_script << "#{casher_cmd} push #{env.cache_push_url}"
89
- end
90
- end
91
-
92
- end
93
- end
94
- end
95
- end
@@ -1,34 +0,0 @@
1
- module Vx
2
- module Builder
3
- class ScriptBuilder
4
-
5
- class Clojure < Base
6
-
7
- def call(env)
8
- if enabled?(env)
9
- do_announce(env) do |i|
10
- i << trace_sh_command("lein version")
11
- end
12
-
13
- do_install(env) do |i|
14
- i << trace_sh_command("lein deps")
15
- end
16
-
17
- do_script(env) do |i|
18
- i << trace_sh_command("lein test")
19
- end
20
- end
21
-
22
- app.call(env)
23
- end
24
-
25
- private
26
-
27
- def enabled?(env)
28
- env.source.language == 'clojure'
29
- end
30
-
31
- end
32
- end
33
- end
34
- end
@@ -1,34 +0,0 @@
1
- module Vx
2
- module Builder
3
- class ScriptBuilder
4
-
5
- class Defaults < Base
6
-
7
- def call(env)
8
- env.source.before_install.each do |c|
9
- env.before_install << trace_sh_command(c)
10
- end
11
-
12
- env.source.install.each do |c|
13
- env.install << trace_sh_command(c)
14
- end
15
-
16
- env.source.before_script.each do |c|
17
- env.before_script << trace_sh_command(c)
18
- end
19
-
20
- env.source.script.each do |c|
21
- env.script << trace_sh_command(c)
22
- end
23
-
24
- env.source.after_success.each do |c|
25
- env.after_success << trace_sh_command(c)
26
- end
27
-
28
- app.call env
29
- end
30
-
31
- end
32
- end
33
- end
34
- end