concourse-objects 1.32.1 → 2.2.0

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 (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"