vx-builder 0.5.61 → 0.5.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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