kuby-kube-db 0.1.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 (170) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +19 -0
  3. data/LICENSE +21 -0
  4. data/Rakefile +74 -0
  5. data/kuby-kube-db.gemspec +19 -0
  6. data/lib/kuby/kube-db.rb +13 -0
  7. data/lib/kuby/kube-db/dsl.rb +7 -0
  8. data/lib/kuby/kube-db/dsl/api.rb +3 -0
  9. data/lib/kuby/kube-db/dsl/api/v1.rb +20 -0
  10. data/lib/kuby/kube-db/dsl/api/v1/agent_spec.rb +24 -0
  11. data/lib/kuby/kube-db/dsl/api/v1/azure_spec.rb +17 -0
  12. data/lib/kuby/kube-db/dsl/api/v1/b2_spec.rb +17 -0
  13. data/lib/kuby/kube-db/dsl/api/v1/backend.rb +29 -0
  14. data/lib/kuby/kube-db/dsl/api/v1/gcs_spec.rb +17 -0
  15. data/lib/kuby/kube-db/dsl/api/v1/local_spec.rb +72 -0
  16. data/lib/kuby/kube-db/dsl/api/v1/object_meta.rb +34 -0
  17. data/lib/kuby/kube-db/dsl/api/v1/pod_spec.rb +41 -0
  18. data/lib/kuby/kube-db/dsl/api/v1/pod_template_spec.rb +19 -0
  19. data/lib/kuby/kube-db/dsl/api/v1/prometheus_exporter_spec.rb +22 -0
  20. data/lib/kuby/kube-db/dsl/api/v1/prometheus_spec.rb +23 -0
  21. data/lib/kuby/kube-db/dsl/api/v1/rest_server_spec.rb +15 -0
  22. data/lib/kuby/kube-db/dsl/api/v1/s3_spec.rb +18 -0
  23. data/lib/kuby/kube-db/dsl/api/v1/service_monitor_spec.rb +18 -0
  24. data/lib/kuby/kube-db/dsl/api/v1/service_port.rb +17 -0
  25. data/lib/kuby/kube-db/dsl/api/v1/service_spec.rb +25 -0
  26. data/lib/kuby/kube-db/dsl/api/v1/service_template_spec.rb +17 -0
  27. data/lib/kuby/kube-db/dsl/api/v1/swift_spec.rb +16 -0
  28. data/lib/kuby/kube-db/dsl/appcatalog.rb +3 -0
  29. data/lib/kuby/kube-db/dsl/appcatalog/v1alpha1.rb +3 -0
  30. data/lib/kuby/kube-db/dsl/appcatalog/v1alpha1/app_reference.rb +17 -0
  31. data/lib/kuby/kube-db/dsl/catalog.rb +3 -0
  32. data/lib/kuby/kube-db/dsl/catalog/v1alpha1.rb +65 -0
  33. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version.rb +20 -0
  34. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_database.rb +15 -0
  35. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_exporter.rb +15 -0
  36. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_init_container.rb +16 -0
  37. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_list.rb +20 -0
  38. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_pod_security_policy.rb +15 -0
  39. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_spec.rb +27 -0
  40. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_tools.rb +15 -0
  41. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version.rb +20 -0
  42. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_database.rb +15 -0
  43. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_exporter.rb +15 -0
  44. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_list.rb +20 -0
  45. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_spec.rb +22 -0
  46. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_tools.rb +15 -0
  47. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version.rb +20 -0
  48. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_database.rb +15 -0
  49. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_exporter.rb +15 -0
  50. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_list.rb +20 -0
  51. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_pod_security_policy.rb +15 -0
  52. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_spec.rb +22 -0
  53. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version.rb +20 -0
  54. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_database.rb +15 -0
  55. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_exporter.rb +15 -0
  56. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_init_container.rb +15 -0
  57. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_list.rb +20 -0
  58. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_pod_security_policy.rb +15 -0
  59. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_spec.rb +26 -0
  60. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_tools.rb +15 -0
  61. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version.rb +20 -0
  62. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_database.rb +15 -0
  63. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_exporter.rb +15 -0
  64. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_init_container.rb +15 -0
  65. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_list.rb +20 -0
  66. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_pod_security_policy.rb +15 -0
  67. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_replication_mode_detector.rb +15 -0
  68. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_spec.rb +28 -0
  69. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_tools.rb +15 -0
  70. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version.rb +20 -0
  71. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_database.rb +15 -0
  72. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_exporter.rb +15 -0
  73. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_init_container.rb +15 -0
  74. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_list.rb +20 -0
  75. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_pod_security_policy.rb +15 -0
  76. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_spec.rb +24 -0
  77. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version.rb +20 -0
  78. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_database.rb +15 -0
  79. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_exporter.rb +15 -0
  80. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_list.rb +20 -0
  81. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_pod_security_policy.rb +15 -0
  82. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_spec.rb +24 -0
  83. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_tools.rb +15 -0
  84. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version.rb +20 -0
  85. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_exporter.rb +15 -0
  86. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_list.rb +20 -0
  87. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_pod_security_policy.rb +15 -0
  88. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_proxysql.rb +15 -0
  89. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_spec.rb +22 -0
  90. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version.rb +20 -0
  91. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version_database.rb +15 -0
  92. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version_exporter.rb +15 -0
  93. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version_list.rb +20 -0
  94. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version_pod_security_policy.rb +15 -0
  95. data/lib/kuby/kube-db/dsl/catalog/v1alpha1/redis_version_spec.rb +22 -0
  96. data/lib/kuby/kube-db/dsl/kubedb.rb +3 -0
  97. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1.rb +69 -0
  98. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/certificate_spec.rb +20 -0
  99. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/connection_pool_config.rb +28 -0
  100. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/databases.rb +20 -0
  101. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch.rb +22 -0
  102. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_cluster_topology.rb +19 -0
  103. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_list.rb +20 -0
  104. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_node.rb +21 -0
  105. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_spec.rb +44 -0
  106. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_status.rb +17 -0
  107. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/etcd.rb +22 -0
  108. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/etcd_list.rb +20 -0
  109. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/etcd_spec.rb +36 -0
  110. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/etcd_status.rb +17 -0
  111. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/init_spec.rb +19 -0
  112. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/leader_election_config.rb +17 -0
  113. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/maria_db.rb +22 -0
  114. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_list.rb +20 -0
  115. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_spec.rb +36 -0
  116. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_status.rb +17 -0
  117. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/member_secret.rb +16 -0
  118. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/memcached.rb +22 -0
  119. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/memcached_list.rb +20 -0
  120. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/memcached_spec.rb +29 -0
  121. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/memcached_status.rb +17 -0
  122. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db.rb +22 -0
  123. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_config_node.rb +22 -0
  124. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_list.rb +20 -0
  125. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_mongos_node.rb +22 -0
  126. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_replica_set.rb +15 -0
  127. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_shard_node.rb +23 -0
  128. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_sharding_topology.rb +19 -0
  129. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_spec.rb +46 -0
  130. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_status.rb +17 -0
  131. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql.rb +22 -0
  132. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_cluster_topology.rb +17 -0
  133. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_group_spec.rb +17 -0
  134. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_list.rb +20 -0
  135. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_spec.rb +40 -0
  136. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_status.rb +17 -0
  137. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db.rb +22 -0
  138. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_list.rb +20 -0
  139. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_spec.rb +38 -0
  140. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_status.rb +17 -0
  141. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer.rb +22 -0
  142. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_list.rb +20 -0
  143. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_spec.rb +31 -0
  144. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_status.rb +17 -0
  145. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres.rb +22 -0
  146. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres_archiver_spec.rb +15 -0
  147. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres_list.rb +20 -0
  148. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres_spec.rb +46 -0
  149. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres_status.rb +17 -0
  150. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/postgres_wal_source_spec.rb +32 -0
  151. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql.rb +22 -0
  152. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_backend_spec.rb +17 -0
  153. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_list.rb +20 -0
  154. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_spec.rb +34 -0
  155. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_status.rb +17 -0
  156. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/recovery_target.rb +18 -0
  157. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/redis.rb +22 -0
  158. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/redis_cluster_spec.rb +16 -0
  159. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/redis_list.rb +20 -0
  160. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/redis_spec.rb +35 -0
  161. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/redis_status.rb +17 -0
  162. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/script_source_spec.rb +71 -0
  163. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/tls_config.rb +17 -0
  164. data/lib/kuby/kube-db/dsl/kubedb/v1alpha1/tls_policy.rb +17 -0
  165. data/lib/kuby/kube-db/dsl/v1.rb +3 -0
  166. data/lib/kuby/kube-db/dsl/v1/volume_source.rb +69 -0
  167. data/lib/kuby/kube-db/entrypoint.rb +269 -0
  168. data/lib/kuby/kube-db/plugin.rb +182 -0
  169. data/lib/kuby/kube-db/version.rb +6 -0
  170. metadata +224 -0
@@ -0,0 +1,19 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class PodTemplateSpec < ::KubeDSL::DSLObject
3
+ object_field(:controller) { Kuby::KubeDB::DSL::Api::V1::ObjectMeta.new }
4
+ object_field(:spec) { Kuby::KubeDB::DSL::Api::V1::PodSpec.new }
5
+ object_field(:metadata) { Kuby::KubeDB::DSL::Api::V1::ObjectMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:controller] = controller.serialize
10
+ result[:spec] = spec.serialize
11
+ result[:metadata] = metadata.serialize
12
+ end
13
+ end
14
+
15
+ def kind_sym
16
+ :pod_template_spec
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class PrometheusExporterSpec < ::KubeDSL::DSLObject
3
+ value_fields :args, :port
4
+ array_field(:env) { KubeDSL::DSL::V1::EnvVar.new }
5
+ object_field(:security_context) { KubeDSL::DSL::V1::SecurityContext.new }
6
+ object_field(:resources) { KubeDSL::DSL::V1::ResourceRequirements.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:args] = args
11
+ result[:port] = port
12
+ result[:env] = envs.map(&:serialize)
13
+ result[:securityContext] = security_context.serialize
14
+ result[:resources] = resources.serialize
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :prometheus_exporter_spec
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,23 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class PrometheusSpec < ::KubeDSL::DSLObject
3
+ value_fields :namespace, :interval, :port
4
+ object_field(:exporter) { Kuby::KubeDB::DSL::Api::V1::PrometheusExporterSpec.new }
5
+ object_field(:service_monitor) { Kuby::KubeDB::DSL::Api::V1::ServiceMonitorSpec.new }
6
+ object_field(:labels) { ::KubeDSL::KeyValueFields.new(format: :string) }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:namespace] = namespace
11
+ result[:interval] = interval
12
+ result[:port] = port
13
+ result[:exporter] = exporter.serialize
14
+ result[:serviceMonitor] = service_monitor.serialize
15
+ result[:labels] = labels.serialize
16
+ end
17
+ end
18
+
19
+ def kind_sym
20
+ :prometheus_spec
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class RestServerSpec < ::KubeDSL::DSLObject
3
+ value_fields :url
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:url] = url
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :rest_server_spec
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class S3Spec < ::KubeDSL::DSLObject
3
+ value_fields :prefix, :endpoint, :bucket, :region
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:prefix] = prefix
8
+ result[:endpoint] = endpoint
9
+ result[:bucket] = bucket
10
+ result[:region] = region
11
+ end
12
+ end
13
+
14
+ def kind_sym
15
+ :s3_spec
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class ServiceMonitorSpec < ::KubeDSL::DSLObject
3
+ value_fields :namespace, :interval
4
+ object_field(:labels) { ::KubeDSL::KeyValueFields.new(format: :string) }
5
+
6
+ def serialize
7
+ {}.tap do |result|
8
+ result[:namespace] = namespace
9
+ result[:interval] = interval
10
+ result[:labels] = labels.serialize
11
+ end
12
+ end
13
+
14
+ def kind_sym
15
+ :service_monitor_spec
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class ServicePort < ::KubeDSL::DSLObject
3
+ value_fields :port, :name, :node_port
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:port] = port
8
+ result[:name] = name
9
+ result[:nodePort] = node_port
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :service_port
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,25 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class ServiceSpec < ::KubeDSL::DSLObject
3
+ value_fields :load_balancer_ip, :external_i_ps, :external_traffic_policy, :type, :cluster_ip, :load_balancer_source_ranges, :health_check_node_port
4
+ array_field(:port) { Kuby::KubeDB::DSL::Api::V1::ServicePort.new }
5
+ object_field(:session_affinity_config) { KubeDSL::DSL::V1::SessionAffinityConfig.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:loadBalancerIP] = load_balancer_ip
10
+ result[:externalIPs] = external_i_ps
11
+ result[:externalTrafficPolicy] = external_traffic_policy
12
+ result[:type] = type
13
+ result[:clusterIP] = cluster_ip
14
+ result[:loadBalancerSourceRanges] = load_balancer_source_ranges
15
+ result[:healthCheckNodePort] = health_check_node_port
16
+ result[:ports] = ports.map(&:serialize)
17
+ result[:sessionAffinityConfig] = session_affinity_config.serialize
18
+ end
19
+ end
20
+
21
+ def kind_sym
22
+ :service_spec
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class ServiceTemplateSpec < ::KubeDSL::DSLObject
3
+ object_field(:spec) { Kuby::KubeDB::DSL::Api::V1::ServiceSpec.new }
4
+ object_field(:metadata) { Kuby::KubeDB::DSL::Api::V1::ObjectMeta.new }
5
+
6
+ def serialize
7
+ {}.tap do |result|
8
+ result[:spec] = spec.serialize
9
+ result[:metadata] = metadata.serialize
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :service_template_spec
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,16 @@
1
+ module Kuby::KubeDB::DSL::Api::V1
2
+ class SwiftSpec < ::KubeDSL::DSLObject
3
+ value_fields :prefix, :container
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:prefix] = prefix
8
+ result[:container] = container
9
+ end
10
+ end
11
+
12
+ def kind_sym
13
+ :swift_spec
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ module Kuby::KubeDB::DSL::Appcatalog
2
+ autoload :V1alpha1, 'kuby/kube-db/dsl/appcatalog/v1alpha1'
3
+ end
@@ -0,0 +1,3 @@
1
+ module Kuby::KubeDB::DSL::Appcatalog::V1alpha1
2
+ autoload :AppReference, 'kuby/kube-db/dsl/appcatalog/v1alpha1/app_reference'
3
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Appcatalog::V1alpha1
2
+ class AppReference < ::KubeDSL::DSLObject
3
+ value_fields :namespace, :name, :parameters
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:namespace] = namespace
8
+ result[:name] = name
9
+ result[:parameters] = parameters
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :app_reference
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,3 @@
1
+ module Kuby::KubeDB::DSL::Catalog
2
+ autoload :V1alpha1, 'kuby/kube-db/dsl/catalog/v1alpha1'
3
+ end
@@ -0,0 +1,65 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ autoload :ElasticsearchVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_database'
3
+ autoload :ElasticsearchVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_list'
4
+ autoload :MongoDBVersionInitContainer, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_init_container'
5
+ autoload :MySQLVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_exporter'
6
+ autoload :MongoDBVersionTools, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_tools'
7
+ autoload :ProxySQLVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version'
8
+ autoload :ElasticsearchVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_exporter'
9
+ autoload :MemcachedVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_database'
10
+ autoload :MemcachedVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version'
11
+ autoload :ProxySQLVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_exporter'
12
+ autoload :MongoDBVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_exporter'
13
+ autoload :EtcdVersionTools, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_tools'
14
+ autoload :PostgresVersionTools, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_tools'
15
+ autoload :MySQLVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_database'
16
+ autoload :RedisVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version_database'
17
+ autoload :PostgresVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_exporter'
18
+ autoload :MemcachedVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_pod_security_policy'
19
+ autoload :MongoDBVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_pod_security_policy'
20
+ autoload :ElasticsearchVersionInitContainer, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_init_container'
21
+ autoload :ProxySQLVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_spec'
22
+ autoload :RedisVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version_list'
23
+ autoload :ElasticsearchVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_spec'
24
+ autoload :ProxySQLVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_pod_security_policy'
25
+ autoload :ProxySQLVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_list'
26
+ autoload :PostgresVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version'
27
+ autoload :EtcdVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_spec'
28
+ autoload :MySQLVersionInitContainer, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_init_container'
29
+ autoload :ElasticsearchVersionTools, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_tools'
30
+ autoload :PerconaXtraDBVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_spec'
31
+ autoload :MemcachedVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_list'
32
+ autoload :MySQLVersionReplicationModeDetector, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_replication_mode_detector'
33
+ autoload :EtcdVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_list'
34
+ autoload :ElasticsearchVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version'
35
+ autoload :PostgresVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_spec'
36
+ autoload :EtcdVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version'
37
+ autoload :ProxySQLVersionProxysql, 'kuby/kube-db/dsl/catalog/v1alpha1/proxy_sql_version_proxysql'
38
+ autoload :MySQLVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_pod_security_policy'
39
+ autoload :MySQLVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version'
40
+ autoload :MongoDBVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_spec'
41
+ autoload :PostgresVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_database'
42
+ autoload :ElasticsearchVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/elasticsearch_version_pod_security_policy'
43
+ autoload :PerconaXtraDBVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_exporter'
44
+ autoload :PostgresVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_list'
45
+ autoload :MySQLVersionTools, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_tools'
46
+ autoload :RedisVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version_pod_security_policy'
47
+ autoload :PostgresVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/postgres_version_pod_security_policy'
48
+ autoload :PerconaXtraDBVersionInitContainer, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_init_container'
49
+ autoload :RedisVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version_spec'
50
+ autoload :MongoDBVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_list'
51
+ autoload :PerconaXtraDBVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version'
52
+ autoload :PerconaXtraDBVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_list'
53
+ autoload :RedisVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version_exporter'
54
+ autoload :MySQLVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_spec'
55
+ autoload :PerconaXtraDBVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_database'
56
+ autoload :MongoDBVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version_database'
57
+ autoload :MySQLVersionList, 'kuby/kube-db/dsl/catalog/v1alpha1/my_sql_version_list'
58
+ autoload :MongoDBVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/mongo_db_version'
59
+ autoload :EtcdVersionDatabase, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_database'
60
+ autoload :RedisVersion, 'kuby/kube-db/dsl/catalog/v1alpha1/redis_version'
61
+ autoload :MemcachedVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_exporter'
62
+ autoload :MemcachedVersionSpec, 'kuby/kube-db/dsl/catalog/v1alpha1/memcached_version_spec'
63
+ autoload :PerconaXtraDBVersionPodSecurityPolicy, 'kuby/kube-db/dsl/catalog/v1alpha1/percona_xtra_db_version_pod_security_policy'
64
+ autoload :EtcdVersionExporter, 'kuby/kube-db/dsl/catalog/v1alpha1/etcd_version_exporter'
65
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersion < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:spec) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionSpec.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "ElasticsearchVersion"
10
+ result[:apiVersion] = api_version
11
+ result[:spec] = spec.serialize
12
+ result[:metadata] = metadata.serialize
13
+ end
14
+ end
15
+
16
+ def kind_sym
17
+ :elasticsearch_version
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionDatabase < ::KubeDSL::DSLObject
3
+ value_fields :image
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:image] = image
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :elasticsearch_version_database
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionExporter < ::KubeDSL::DSLObject
3
+ value_fields :image
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:image] = image
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :elasticsearch_version_exporter
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,16 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionInitContainer < ::KubeDSL::DSLObject
3
+ value_fields :image, :yq_image
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:image] = image
8
+ result[:yqImage] = yq_image
9
+ end
10
+ end
11
+
12
+ def kind_sym
13
+ :elasticsearch_version_init_container
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersion.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "ElasticsearchVersionList"
10
+ result[:apiVersion] = api_version
11
+ result[:items] = items.map(&:serialize)
12
+ result[:metadata] = metadata.serialize
13
+ end
14
+ end
15
+
16
+ def kind_sym
17
+ :elasticsearch_version_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionPodSecurityPolicy < ::KubeDSL::DSLObject
3
+ value_fields :database_policy_name
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:databasePolicyName] = database_policy_name
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :elasticsearch_version_pod_security_policy
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,27 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ElasticsearchVersionSpec < ::KubeDSL::DSLObject
3
+ value_fields :deprecated, :version, :auth_plugin
4
+ object_field(:exporter) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionExporter.new }
5
+ object_field(:pod_security_policies) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionPodSecurityPolicy.new }
6
+ object_field(:init_container) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionInitContainer.new }
7
+ object_field(:db) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionDatabase.new }
8
+ object_field(:tools) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ElasticsearchVersionTools.new }
9
+
10
+ def serialize
11
+ {}.tap do |result|
12
+ result[:deprecated] = deprecated
13
+ result[:version] = version
14
+ result[:authPlugin] = auth_plugin
15
+ result[:exporter] = exporter.serialize
16
+ result[:podSecurityPolicies] = pod_security_policies.serialize
17
+ result[:initContainer] = init_container.serialize
18
+ result[:db] = db.serialize
19
+ result[:tools] = tools.serialize
20
+ end
21
+ end
22
+
23
+ def kind_sym
24
+ :elasticsearch_version_spec
25
+ end
26
+ end
27
+ end