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,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ProxySQLVersionPodSecurityPolicy < ::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
+ :proxy_sql_version_pod_security_policy
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ProxySQLVersionProxysql < ::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
+ :proxy_sql_version_proxysql
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class ProxySQLVersionSpec < ::KubeDSL::DSLObject
3
+ value_fields :deprecated, :version
4
+ object_field(:exporter) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ProxySQLVersionExporter.new }
5
+ object_field(:proxysql) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ProxySQLVersionProxysql.new }
6
+ object_field(:pod_security_policies) { Kuby::KubeDB::DSL::Catalog::V1alpha1::ProxySQLVersionPodSecurityPolicy.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:deprecated] = deprecated
11
+ result[:version] = version
12
+ result[:exporter] = exporter.serialize
13
+ result[:proxysql] = proxysql.serialize
14
+ result[:podSecurityPolicies] = pod_security_policies.serialize
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :proxy_sql_version_spec
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersion < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:spec) { Kuby::KubeDB::DSL::Catalog::V1alpha1::RedisVersionSpec.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "RedisVersion"
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
+ :redis_version
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersionDatabase < ::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
+ :redis_version_database
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersionExporter < ::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
+ :redis_version_exporter
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersionList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Catalog::V1alpha1::RedisVersion.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "RedisVersionList"
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
+ :redis_version_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersionPodSecurityPolicy < ::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
+ :redis_version_pod_security_policy
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Catalog::V1alpha1
2
+ class RedisVersionSpec < ::KubeDSL::DSLObject
3
+ value_fields :deprecated, :version
4
+ object_field(:exporter) { Kuby::KubeDB::DSL::Catalog::V1alpha1::RedisVersionExporter.new }
5
+ object_field(:db) { Kuby::KubeDB::DSL::Catalog::V1alpha1::RedisVersionDatabase.new }
6
+ object_field(:pod_security_policies) { Kuby::KubeDB::DSL::Catalog::V1alpha1::RedisVersionPodSecurityPolicy.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:deprecated] = deprecated
11
+ result[:version] = version
12
+ result[:exporter] = exporter.serialize
13
+ result[:db] = db.serialize
14
+ result[:podSecurityPolicies] = pod_security_policies.serialize
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :redis_version_spec
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,3 @@
1
+ module Kuby::KubeDB::DSL::Kubedb
2
+ autoload :V1alpha1, 'kuby/kube-db/dsl/kubedb/v1alpha1'
3
+ end
@@ -0,0 +1,69 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ autoload :EtcdStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/etcd_status'
3
+ autoload :Etcd, 'kuby/kube-db/dsl/kubedb/v1alpha1/etcd'
4
+ autoload :MySQLList, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_list'
5
+ autoload :MariaDBStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_status'
6
+ autoload :ConnectionPoolConfig, 'kuby/kube-db/dsl/kubedb/v1alpha1/connection_pool_config'
7
+ autoload :MariaDBSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_spec'
8
+ autoload :Postgres, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres'
9
+ autoload :MongoDBConfigNode, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_config_node'
10
+ autoload :InitSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/init_spec'
11
+ autoload :MongoDB, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db'
12
+ autoload :ElasticsearchStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_status'
13
+ autoload :PerconaXtraDBList, 'kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_list'
14
+ autoload :MemcachedStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/memcached_status'
15
+ autoload :MySQLGroupSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_group_spec'
16
+ autoload :PostgresSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres_spec'
17
+ autoload :PgBouncerList, 'kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_list'
18
+ autoload :RedisClusterSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/redis_cluster_spec'
19
+ autoload :MongoDBSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_spec'
20
+ autoload :ProxySQLList, 'kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_list'
21
+ autoload :PerconaXtraDBSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_spec'
22
+ autoload :MemcachedList, 'kuby/kube-db/dsl/kubedb/v1alpha1/memcached_list'
23
+ autoload :MongoDBList, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_list'
24
+ autoload :TLSPolicy, 'kuby/kube-db/dsl/kubedb/v1alpha1/tls_policy'
25
+ autoload :MySQLSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_spec'
26
+ autoload :ProxySQLStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_status'
27
+ autoload :MongoDBShardingTopology, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_sharding_topology'
28
+ autoload :ProxySQL, 'kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql'
29
+ autoload :PerconaXtraDB, 'kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db'
30
+ autoload :MemberSecret, 'kuby/kube-db/dsl/kubedb/v1alpha1/member_secret'
31
+ autoload :EtcdList, 'kuby/kube-db/dsl/kubedb/v1alpha1/etcd_list'
32
+ autoload :MongoDBShardNode, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_shard_node'
33
+ autoload :MongoDBMongosNode, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_mongos_node'
34
+ autoload :PostgresStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres_status'
35
+ autoload :MemcachedSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/memcached_spec'
36
+ autoload :MariaDB, 'kuby/kube-db/dsl/kubedb/v1alpha1/maria_db'
37
+ autoload :ElasticsearchList, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_list'
38
+ autoload :Redis, 'kuby/kube-db/dsl/kubedb/v1alpha1/redis'
39
+ autoload :Memcached, 'kuby/kube-db/dsl/kubedb/v1alpha1/memcached'
40
+ autoload :LeaderElectionConfig, 'kuby/kube-db/dsl/kubedb/v1alpha1/leader_election_config'
41
+ autoload :RecoveryTarget, 'kuby/kube-db/dsl/kubedb/v1alpha1/recovery_target'
42
+ autoload :ElasticsearchNode, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_node'
43
+ autoload :TLSConfig, 'kuby/kube-db/dsl/kubedb/v1alpha1/tls_config'
44
+ autoload :RedisStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/redis_status'
45
+ autoload :ProxySQLSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_spec'
46
+ autoload :MongoDBReplicaSet, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_replica_set'
47
+ autoload :RedisSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/redis_spec'
48
+ autoload :MySQLClusterTopology, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_cluster_topology'
49
+ autoload :ElasticsearchSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_spec'
50
+ autoload :MySQLStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql_status'
51
+ autoload :MySQL, 'kuby/kube-db/dsl/kubedb/v1alpha1/my_sql'
52
+ autoload :PgBouncerSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_spec'
53
+ autoload :PostgresArchiverSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres_archiver_spec'
54
+ autoload :Databases, 'kuby/kube-db/dsl/kubedb/v1alpha1/databases'
55
+ autoload :ScriptSourceSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/script_source_spec'
56
+ autoload :PgBouncer, 'kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer'
57
+ autoload :EtcdSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/etcd_spec'
58
+ autoload :PgBouncerStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/pg_bouncer_status'
59
+ autoload :Elasticsearch, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch'
60
+ autoload :CertificateSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/certificate_spec'
61
+ autoload :MongoDBStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/mongo_db_status'
62
+ autoload :ElasticsearchClusterTopology, 'kuby/kube-db/dsl/kubedb/v1alpha1/elasticsearch_cluster_topology'
63
+ autoload :PerconaXtraDBStatus, 'kuby/kube-db/dsl/kubedb/v1alpha1/percona_xtra_db_status'
64
+ autoload :PostgresList, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres_list'
65
+ autoload :MariaDBList, 'kuby/kube-db/dsl/kubedb/v1alpha1/maria_db_list'
66
+ autoload :PostgresWALSourceSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/postgres_wal_source_spec'
67
+ autoload :ProxySQLBackendSpec, 'kuby/kube-db/dsl/kubedb/v1alpha1/proxy_sql_backend_spec'
68
+ autoload :RedisList, 'kuby/kube-db/dsl/kubedb/v1alpha1/redis_list'
69
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class CertificateSpec < ::KubeDSL::DSLObject
3
+ value_fields :uri_sa_ns, :dns_names, :renew_before, :ip_addresses, :duration, :organization
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:uriSANs] = uri_sa_ns
8
+ result[:dnsNames] = dns_names
9
+ result[:renewBefore] = renew_before
10
+ result[:ipAddresses] = ip_addresses
11
+ result[:duration] = duration
12
+ result[:organization] = organization
13
+ end
14
+ end
15
+
16
+ def kind_sym
17
+ :certificate_spec
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,28 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ConnectionPoolConfig < ::KubeDSL::DSLObject
3
+ value_fields :default_pool_size, :auth_type, :auth_user, :max_db_connections, :stats_period_seconds, :max_user_connections, :reserve_pool_size, :pool_mode, :port, :ignore_startup_parameters, :reserve_pool_timeout_seconds, :max_client_connections, :min_pool_size, :admin_users
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:defaultPoolSize] = default_pool_size
8
+ result[:authType] = auth_type
9
+ result[:authUser] = auth_user
10
+ result[:maxDBConnections] = max_db_connections
11
+ result[:statsPeriodSeconds] = stats_period_seconds
12
+ result[:maxUserConnections] = max_user_connections
13
+ result[:reservePoolSize] = reserve_pool_size
14
+ result[:poolMode] = pool_mode
15
+ result[:port] = port
16
+ result[:ignoreStartupParameters] = ignore_startup_parameters
17
+ result[:reservePoolTimeoutSeconds] = reserve_pool_timeout_seconds
18
+ result[:maxClientConnections] = max_client_connections
19
+ result[:minPoolSize] = min_pool_size
20
+ result[:adminUsers] = admin_users
21
+ end
22
+ end
23
+
24
+ def kind_sym
25
+ :connection_pool_config
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class Databases < ::KubeDSL::DSLObject
3
+ value_fields :alias, :database_name
4
+ object_field(:database_secret_ref) { KubeDSL::DSL::V1::LocalObjectReference.new }
5
+ object_field(:database_ref) { Kuby::KubeDB::DSL::Appcatalog::V1alpha1::AppReference.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:alias] = alias
10
+ result[:databaseName] = database_name
11
+ result[:databaseSecretRef] = database_secret_ref.serialize
12
+ result[:databaseRef] = database_ref.serialize
13
+ end
14
+ end
15
+
16
+ def kind_sym
17
+ :databases
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class Elasticsearch < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "Elasticsearch"
11
+ result[:apiVersion] = api_version
12
+ result[:status] = status.serialize
13
+ result[:spec] = spec.serialize
14
+ result[:metadata] = metadata.serialize
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :elasticsearch
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,19 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ElasticsearchClusterTopology < ::KubeDSL::DSLObject
3
+ object_field(:master) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchNode.new }
4
+ object_field(:client) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchNode.new }
5
+ object_field(:data) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchNode.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:master] = master.serialize
10
+ result[:client] = client.serialize
11
+ result[:data] = data.serialize
12
+ end
13
+ end
14
+
15
+ def kind_sym
16
+ :elasticsearch_cluster_topology
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ElasticsearchList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::Elasticsearch.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "ElasticsearchList"
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_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,21 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ElasticsearchNode < ::KubeDSL::DSLObject
3
+ value_fields :prefix, :max_unavailable, :replicas
4
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
5
+ object_field(:resources) { KubeDSL::DSL::V1::ResourceRequirements.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:prefix] = prefix
10
+ result[:maxUnavailable] = max_unavailable
11
+ result[:replicas] = replicas
12
+ result[:storage] = storage.serialize
13
+ result[:resources] = resources.serialize
14
+ end
15
+ end
16
+
17
+ def kind_sym
18
+ :elasticsearch_node
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,44 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ElasticsearchSpec < ::KubeDSL::DSLObject
3
+ value_fields :paused, :replicas, :storage_type, :termination_policy, :max_unavailable, :enable_ssl, :version, :halted, :auth_plugin, :disable_security
4
+ object_field(:service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
5
+ object_field(:monitor) { Kuby::KubeDB::DSL::Api::V1::AgentSpec.new }
6
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
7
+ object_field(:database_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
8
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
9
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
10
+ object_field(:init) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::InitSpec.new }
11
+ object_field(:certificate_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
12
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
13
+ object_field(:topology) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ElasticsearchClusterTopology.new }
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:paused] = paused
18
+ result[:replicas] = replicas
19
+ result[:storageType] = storage_type
20
+ result[:terminationPolicy] = termination_policy
21
+ result[:maxUnavailable] = max_unavailable
22
+ result[:enableSSL] = enable_ssl
23
+ result[:version] = version
24
+ result[:halted] = halted
25
+ result[:authPlugin] = auth_plugin
26
+ result[:disableSecurity] = disable_security
27
+ result[:serviceTemplate] = service_template.serialize
28
+ result[:monitor] = monitor.serialize
29
+ result[:storage] = storage.serialize
30
+ result[:databaseSecret] = database_secret.serialize
31
+ result[:configSource] = config_source.serialize
32
+ result[:podTemplate] = pod_template.serialize
33
+ result[:init] = init.serialize
34
+ result[:certificateSecret] = certificate_secret.serialize
35
+ result[:updateStrategy] = update_strategy.serialize
36
+ result[:topology] = topology.serialize
37
+ end
38
+ end
39
+
40
+ def kind_sym
41
+ :elasticsearch_spec
42
+ end
43
+ end
44
+ end