concourse-objects 1.32.1 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/lib/concourse-objects.rb +2 -1
  5. data/lib/concourse-objects/resources.rb +53 -0
  6. data/lib/concourse-objects/resources/alertmanager.rb +58 -0
  7. data/lib/concourse-objects/resources/android-sdk.rb +27 -0
  8. data/lib/concourse-objects/resources/ansible-playbook.rb +68 -0
  9. data/lib/concourse-objects/resources/artifactory-deb.rb +54 -0
  10. data/lib/concourse-objects/resources/artifactory.rb +33 -0
  11. data/lib/concourse-objects/resources/bender.rb +61 -0
  12. data/lib/concourse-objects/resources/bosh-io-release.rb +1 -0
  13. data/lib/concourse-objects/resources/bosh-io-stemcell.rb +1 -0
  14. data/lib/concourse-objects/resources/bosh-release.rb +64 -0
  15. data/lib/concourse-objects/resources/calendar.rb +36 -0
  16. data/lib/concourse-objects/resources/cf-event.rb +38 -0
  17. data/lib/concourse-objects/resources/cf-flyway.rb +45 -0
  18. data/lib/concourse-objects/resources/cf-zero-downtime.rb +64 -0
  19. data/lib/concourse-objects/resources/cf.rb +1 -0
  20. data/lib/concourse-objects/resources/chartmuseum.rb +56 -0
  21. data/lib/concourse-objects/resources/concourse-pipeline.rb +1 -0
  22. data/lib/concourse-objects/resources/deploygate.rb +38 -0
  23. data/lib/concourse-objects/resources/devpi.rb +44 -0
  24. data/lib/concourse-objects/resources/docker-compose.rb +131 -0
  25. data/lib/concourse-objects/resources/docker-image.rb +1 -0
  26. data/lib/concourse-objects/resources/email.rb +1 -0
  27. data/lib/concourse-objects/resources/fly.rb +46 -0
  28. data/lib/concourse-objects/resources/gcs.rb +61 -0
  29. data/lib/concourse-objects/resources/gerrit.rb +49 -0
  30. data/lib/concourse-objects/resources/git.rb +1 -0
  31. data/lib/concourse-objects/resources/github-list-repos.rb +1 -0
  32. data/lib/concourse-objects/resources/github-pr.rb +1 -0
  33. data/lib/concourse-objects/resources/github-release.rb +1 -0
  34. data/lib/concourse-objects/resources/github-status.rb +48 -0
  35. data/lib/concourse-objects/resources/github-webhook.rb +1 -0
  36. data/lib/concourse-objects/resources/grafana.rb +1 -0
  37. data/lib/concourse-objects/resources/hangouts.rb +35 -0
  38. data/lib/concourse-objects/resources/helm-chart.rb +1 -0
  39. data/lib/concourse-objects/resources/helm.rb +1 -0
  40. data/lib/concourse-objects/resources/hg.rb +1 -0
  41. data/lib/concourse-objects/resources/hipchat-notification.rb +1 -0
  42. data/lib/concourse-objects/resources/hockey.rb +32 -0
  43. data/lib/concourse-objects/resources/irc-notification.rb +1 -0
  44. data/lib/concourse-objects/resources/keyval.rb +1 -0
  45. data/lib/concourse-objects/resources/kubernetes-resource.rb +41 -0
  46. data/lib/concourse-objects/resources/kubernetes.rb +55 -0
  47. data/lib/concourse-objects/resources/marathon.rb +45 -0
  48. data/lib/concourse-objects/resources/maven.rb +43 -0
  49. data/lib/concourse-objects/resources/metadata.rb +1 -0
  50. data/lib/concourse-objects/resources/mock.rb +1 -0
  51. data/lib/concourse-objects/resources/newrelic-deploy.rb +31 -0
  52. data/lib/concourse-objects/resources/pool.rb +1 -0
  53. data/lib/concourse-objects/resources/registry-image.rb +1 -0
  54. data/lib/concourse-objects/resources/repo.rb +31 -0
  55. data/lib/concourse-objects/resources/rocketchat-notification.rb +43 -0
  56. data/lib/concourse-objects/resources/romver.rb +81 -0
  57. data/lib/concourse-objects/resources/rss.rb +1 -0
  58. data/lib/concourse-objects/resources/rubygems.rb +1 -0
  59. data/lib/concourse-objects/resources/s3.rb +1 -0
  60. data/lib/concourse-objects/resources/semver.rb +1 -0
  61. data/lib/concourse-objects/resources/serverspec.rb +30 -0
  62. data/lib/concourse-objects/resources/slack-notification.rb +1 -0
  63. data/lib/concourse-objects/resources/sonarqube.rb +70 -0
  64. data/lib/concourse-objects/resources/swift.rb +43 -0
  65. data/lib/concourse-objects/resources/telegram.rb +41 -0
  66. data/lib/concourse-objects/resources/time.rb +1 -0
  67. metadata +35 -2
  68. metadata.gz.sig +2 -3
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class Kubernetes < Resource
8
+ RESOURCE_NAME = "kubernetes"
9
+ RESOURCE_LICENSE = "MIT"
10
+ GITHUB_OWNER = "zlabjp"
11
+ GITHUB_REPOSITORY = "zlabjp/kubernetes-resource"
12
+ GITHUB_VERSION = "v1.8.1"
13
+
14
+ class Source < Object
15
+ DEFAULT_INSECURE_SKIP_TLS_VERIFY = false
16
+ DEFAULT_USE_AWS_IAM_AUTHENTICATOR = false
17
+
18
+ optional :kubeconfig, write: AsString
19
+ optional :context, write: AsString
20
+ optional :server, write: AsString
21
+ optional :token, write: AsString
22
+ optional :namespace, write: AsString
23
+ optional :certificate_authority, write: AsString
24
+ optional :certificate_authority_file, write: AsString
25
+ optional :insecure_skip_tls_verify, write: AsBoolean, default: proc { DEFAULT_INSECURE_SKIP_TLS_VERIFY }
26
+ optional :use_aws_iam_authenticator, write: AsBoolean, default: proc { DEFAULT_USE_AWS_IAM_AUTHENTICATOR }
27
+ optional :aws_eks_cluster_name, write: AsString
28
+ optional :aws_eks_assume_role, write: AsString
29
+ optional :aws_access_key_id, write: AsString
30
+ optional :aws_secret_access_key, write: AsString
31
+ optional :aws_session_tolen, write: AsString
32
+ end
33
+
34
+ class OutParams < Object
35
+ DEFAULT_WAIT_UNTIL_READY = 30
36
+ DEFAULT_WAIT_READY_INTERVAL = 3
37
+
38
+ required :kubectl, write: AsString
39
+
40
+ optional :wait_until_ready, write: AsInteger, default: proc { DEFAULT_WAIT_READY }
41
+ optional :wait_until_ready_interval, write: AsInteger, default: proc { DEFAULT_WAIT_READY_INTERVAL }
42
+ optional :wait_until_ready_selector, write: AsString
43
+ optional :kubeconfig_file, write: AsString
44
+ optional :namespace, write: AsString
45
+ optional :context, write: AsString
46
+ end
47
+
48
+ optional :source, write: Source
49
+
50
+ def initialize(options = {})
51
+ super(options.merge(type: "kubernetes"))
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class Marathon < Resource
8
+ RESOURCE_NAME = "marathon"
9
+ RESOURCE_LICENSE = "MIT"
10
+ GITHUB_OWNER = "ckaznocha"
11
+ GITHUB_REPOSITORY = "ckaznocha/marathon-resource"
12
+ GITHUB_VERSION = "0.4.0"
13
+
14
+ class Source < Object
15
+ class BasicAuth < Object
16
+ required :user_name, write: AsString
17
+ required :password, write: AsString
18
+ end
19
+
20
+ required :app_id, write: AsString
21
+ required :uri, write: AsString
22
+
23
+ optional :basic_auth, write: BasicAuth
24
+ optional :api_token, write: AsString
25
+ end
26
+
27
+ class OutParams < Object
28
+ DEFAULT_RESTART_IF_NO_UPDATE = false
29
+
30
+ required :app_json, write: AsString
31
+ required :time_out, write: AsInteger
32
+
33
+ optional :restart_if_no_update, write: AsBoolean, default: proc { DEFAULT_RESTART_IF_NO_UPDATE }
34
+ optional :replacements, write: AsHashOf.(:to_s, :to_s), default: EmptyHash
35
+ optional :replacement_files, write: AsString
36
+ end
37
+
38
+ optional :source, write: Source
39
+
40
+ def initialize(options = {})
41
+ super(options.merge(type: "marathon"))
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class Maven < Resource
8
+ RESOURCE_NAME = "maven"
9
+ RESOURCE_LICENSE = "Apache-2.0"
10
+ GITHUB_OWNER = "nulldriver"
11
+ GITHUB_REPOSITORY = "nulldriver/maven-resource"
12
+ GITHUB_VERSION = "v1.3.6"
13
+
14
+ class Source < Object
15
+ DEFAULT_DISABLE_REDEPLOY = false
16
+ DEFAULT_SKIP_CERT_CHECK = false
17
+
18
+ required :url, write: AsString
19
+ required :artifact, write: AsString
20
+
21
+ optional :snapshot_url, write: AsString
22
+ optional :username, write: AsString
23
+ optional :password, write: AsString
24
+ optional :repository_cert, write: AsString
25
+ optional :disable_redeploy, write: AsBoolean, default: proc { DEFAULT_DISABLE_REDEPLOY }
26
+ optional :skip_cert_check, write: AsBoolean, default: proc { DEFAULT_SKIP_CERT_CHECK }
27
+ end
28
+
29
+ class OutParams < Object
30
+ required :file, write: AsString
31
+ required :version_file, write: AsString
32
+
33
+ optional :pom_file, write: AsString
34
+ end
35
+
36
+ optional :source, write: Source
37
+
38
+ def initialize(options = {})
39
+ super(options.merge(type: "maven"))
40
+ end
41
+ end
42
+ end
43
+ end
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class Metadata < Resource
8
8
  RESOURCE_NAME = "metadata"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "SWCE"
10
11
  GITHUB_REPOSITORY = "SWCE/metadata-resource"
11
12
  GITHUB_VERSION = "v0.0.3"
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class Mock < Resource
8
8
  RESOURCE_NAME = "mock"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "concourse"
10
11
  GITHUB_REPOSITORY = "concourse/mock-resource"
11
12
  GITHUB_VERSION = "v0.6.1"
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class NewRelicDeploy < Resource
8
+ RESOURCE_NAME = "newrelic-deploy"
9
+ RESOURCE_LICENSE = "Apache-2.0"
10
+ GITHUB_OWNER = "homedepot"
11
+ GITHUB_REPOSITORY = "homedepot/newrelic-deploy-resource"
12
+ GITHUB_VERSION = "v1.0"
13
+
14
+ class Source < Object
15
+ required :api_key, write: AsString
16
+ required :app_id, write: AsString
17
+ end
18
+
19
+ class OutParams < Object
20
+ required :json_file, write: AsString
21
+ optional :user, write: AsString
22
+ end
23
+
24
+ optional :source, write: Source
25
+
26
+ def initialize(options = {})
27
+ super(options.merge(type: "newrelic-deploy"))
28
+ end
29
+ end
30
+ end
31
+ end
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class Pool < Resource
8
8
  RESOURCE_NAME = "pool"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "concourse"
10
11
  GITHUB_REPOSITORY = "concourse/pool-resource"
11
12
  GITHUB_VERSION = "v1.0.3"
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class RegistryImage < Resource
8
8
  RESOURCE_NAME = "registry-image"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "concourse"
10
11
  GITHUB_REPOSITORY = "concourse/registry-image-resource"
11
12
  GITHUB_VERSION = "v0.6.1"
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class Repo < Resource
8
+ RESOURCE_NAME = "repo"
9
+ RESOURCE_LICENSE = "Apache-2.0"
10
+ GITHUB_OWNER = "google"
11
+ GITHUB_REPOSITORY = "google/concourse-resources"
12
+ GITHUB_VERSION = "0.2.2"
13
+
14
+ class Source < Object
15
+ required :manifest_url, write: AsString
16
+
17
+ optional :manifest_name, write: AsString
18
+ optional :manifest_branch, write: AsString
19
+ optional :groups, write: AsArrayOf.(:to_s), default: EmptyArray
20
+ optional :init_options, write: AsHash, default: EmptyHash
21
+ optional :sync_options, write: AsHash, default: EmptyHash
22
+ end
23
+
24
+ optional :source, write: Source
25
+
26
+ def initialize(options = {})
27
+ super(options.merge(type: "repo"))
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class RocketChatNotification < Resource
8
+ RESOURCE_NAME = "rocketchat-notification"
9
+ RESOURCE_LICENSE = "MIT"
10
+ GITHUB_OWNER = "michaellihs"
11
+ GITHUB_REPOSITORY = "michaellihs/rocketchat-notification-resource"
12
+ GITHUB_VERSION = "1.0.3"
13
+
14
+ class Source < Object
15
+ DEFAULT_ALIAS = "Concourse"
16
+ DEFAULT_DEBUG = false
17
+
18
+ required :url, write: AsString
19
+ required :user, write: AsString
20
+ required :password, write: AsString
21
+
22
+ optional :channel, write: AsString
23
+ optional :alias, write: AsString, default: proc { DEFAULT_ALIAS }
24
+ optional :debug, write: AsBoolean, default: proc { DEFAULT_DEBUG }
25
+ end
26
+
27
+ class OutParams < Object
28
+ DEFAULT_ALIAS = "Concourse"
29
+
30
+ required :channel, write: AsString
31
+ required :message, write: AsString
32
+
33
+ optional :alias, write: AsString, default: proc { DEFAULT_ALIAS }
34
+ end
35
+
36
+ optional :source, write: Source
37
+
38
+ def initialize(options = {})
39
+ super(options.merge(type: "rocketchat-notification"))
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class RomVer < Resource
8
+ RESOURCE_NAME = "romver"
9
+ RESOURCE_LICENSE = "Apache-2.0"
10
+ GITHUB_OWNER = "cappyzawa"
11
+ GITHUB_REPOSITORY = "cappyzawa/romver-resource"
12
+ GITHUB_VERSION = "v0.0.10"
13
+
14
+ class Source < Object
15
+ class Git < Source
16
+ ValueIsPositive = proc { |_, value| value.positive? }
17
+
18
+ required :branch, write: AsString
19
+ required :file, write: AsString
20
+ required :uri, write: AsString
21
+
22
+ optional :commit_message, write: AsString
23
+ optional :git_user, write: AsString
24
+ optional :password, write: AsString
25
+ optional :private_key, write: AsString
26
+ optional :username, write: AsString
27
+ optional :depth, write: AsInteger, guard: ValueIsPositive
28
+
29
+ def initialize(options = {})
30
+ super(options.merge(driver: "git")) do |this, options|
31
+ yield this, options if block_given?
32
+ end
33
+ end
34
+ end
35
+
36
+ ACCEPTABLE_DRIVERS = ["git"]
37
+ DriverIsAcceptable = proc { |_, driver| ACCEPTABLE_DRIVERS.include?(driver) }
38
+
39
+ required :driver, write: AsString, guard: DriverIsAcceptable
40
+
41
+ optional :initial_version, write: AsString
42
+ end
43
+
44
+ class InParams < Object
45
+ optional :bump, write: AsBoolean
46
+ end
47
+
48
+ class OutParams < Object
49
+ optional :bump, write: AsBoolean
50
+ optional :file, write: AsString
51
+
52
+ def initialize(options = {})
53
+ super(options) do |this, options|
54
+ raise KeyError, "#{self.class.inspect} requires one of (bump, file)" unless (this.bump? or this.file?)
55
+
56
+ yield this, options if block_given?
57
+ end
58
+ end
59
+ end
60
+
61
+ optional :source, write: Source
62
+
63
+ def initialize(options = {})
64
+ super(options.merge(type: "romver")) do |this, options|
65
+ if this.source?
66
+ options.fetch(:source).yield_self do |source|
67
+ case this.source.driver
68
+ when "git" then Source::Git.(source)
69
+ else Source.(source)
70
+ end.yield_self do |source|
71
+ this.send(:instance_variable_set, :@source, source)
72
+ end
73
+ end
74
+ end
75
+
76
+ yield this, options if block_given?
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class RSS < Resource
8
8
  RESOURCE_NAME = "rss"
9
+ RESOURCE_LICENSE = "MIT"
9
10
  GITHUB_OWNER = "suhlig"
10
11
  GITHUB_REPOSITORY = "suhlig/concourse-rss-resource"
11
12
  GITHUB_VERSION = "v1.0"
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class RubyGems < Resource
8
8
  RESOURCE_NAME = "rubygems"
9
+ RESOURCE_LICENSE = "MIT"
9
10
  GITHUB_OWNER = "troykinsella"
10
11
  GITHUB_REPOSITORY = "troykinsella/concourse-rubygems-resource"
11
12
  GITHUB_VERSION = "1.0.0"
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class S3 < Resource
8
8
  RESOURCE_NAME = "s3"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "concourse"
10
11
  GITHUB_REPOSITORY = "concourse/s3-resource"
11
12
  GITHUB_VERSION = "v1.0.3"
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class SemVer < Resource
8
8
  RESOURCE_NAME = "semver"
9
+ RESOURCE_LICENSE = "Apache-2.0"
9
10
  GITHUB_OWNER = "concourse"
10
11
  GITHUB_REPOSITORY = "concourse/semver-resource"
11
12
  GITHUB_VERSION = "v1.0.2"
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../concourse-objects"
4
+
5
+ module ConcourseObjects
6
+ module Resources
7
+ class ServerSpec < Resource
8
+ RESOURCE_NAME = "serverspec"
9
+ RESOURCE_LICENSE = nil
10
+ GITHUB_OWNER = "opicaud"
11
+ GITHUB_REPOSITORY = "opicaud/serverspec-resource"
12
+ GITHUB_VERSION = "0.0.2"
13
+
14
+ class Source < Object
15
+ optional :ssh_key, write: AsString
16
+ end
17
+
18
+ class InParams < Object
19
+ optional :tests, write: AsString
20
+ optional :inventory, write: AsString
21
+ end
22
+
23
+ optional :source, write: Source
24
+
25
+ def initialize(options = {})
26
+ super(options.merge(type: "mock"))
27
+ end
28
+ end
29
+ end
30
+ end
@@ -6,6 +6,7 @@ module ConcourseObjects
6
6
  module Resources
7
7
  class SlackNotification < Resource
8
8
  RESOURCE_NAME = "slack-notification"
9
+ RESOURCE_LICENSE = "MIT"
9
10
  GITHUB_OWNER = "cloudfoundry-community"
10
11
  GITHUB_REPOSITORY = "cloudfoundry-community/slack-notification-resource"
11
12
  GITHUB_VERSION = "v1.5.0"