kuby-kube-db 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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::Kubedb::V1alpha1
2
+ class MongoDBReplicaSet < ::KubeDSL::DSLObject
3
+ value_fields :name
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:name] = name
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :mongo_db_replica_set
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,23 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MongoDBShardNode < ::KubeDSL::DSLObject
3
+ value_fields :replicas, :shards, :prefix
4
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
5
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
6
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:replicas] = replicas
11
+ result[:shards] = shards
12
+ result[:prefix] = prefix
13
+ result[:podTemplate] = pod_template.serialize
14
+ result[:storage] = storage.serialize
15
+ result[:configSource] = config_source.serialize
16
+ end
17
+ end
18
+
19
+ def kind_sym
20
+ :mongo_db_shard_node
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MongoDBShardingTopology < ::KubeDSL::DSLObject
3
+ object_field(:shard) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MongoDBShardNode.new }
4
+ object_field(:mongos) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MongoDBMongosNode.new }
5
+ object_field(:config_server) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MongoDBConfigNode.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:shard] = shard.serialize
10
+ result[:mongos] = mongos.serialize
11
+ result[:configServer] = config_server.serialize
12
+ end
13
+ end
14
+
15
+ def kind_sym
16
+ :mongo_db_sharding_topology
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,46 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MongoDBSpec < ::KubeDSL::DSLObject
3
+ value_fields :halted, :replicas, :storage_type, :termination_policy, :paused, :version, :cluster_auth_mode, :ssl_mode
4
+ object_field(:tls) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::TLSConfig.new }
5
+ object_field(:shard_topology) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MongoDBShardingTopology.new }
6
+ object_field(:service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
7
+ object_field(:monitor) { Kuby::KubeDB::DSL::Api::V1::AgentSpec.new }
8
+ object_field(:replica_set) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MongoDBReplicaSet.new }
9
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
10
+ object_field(:database_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
11
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
12
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
13
+ object_field(:init) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::InitSpec.new }
14
+ object_field(:key_file) { KubeDSL::DSL::V1::SecretVolumeSource.new }
15
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
16
+
17
+ def serialize
18
+ {}.tap do |result|
19
+ result[:halted] = halted
20
+ result[:replicas] = replicas
21
+ result[:storageType] = storage_type
22
+ result[:terminationPolicy] = termination_policy
23
+ result[:paused] = paused
24
+ result[:version] = version
25
+ result[:clusterAuthMode] = cluster_auth_mode
26
+ result[:sslMode] = ssl_mode
27
+ result[:tls] = tls.serialize
28
+ result[:shardTopology] = shard_topology.serialize
29
+ result[:serviceTemplate] = service_template.serialize
30
+ result[:monitor] = monitor.serialize
31
+ result[:replicaSet] = replica_set.serialize
32
+ result[:storage] = storage.serialize
33
+ result[:databaseSecret] = database_secret.serialize
34
+ result[:configSource] = config_source.serialize
35
+ result[:podTemplate] = pod_template.serialize
36
+ result[:init] = init.serialize
37
+ result[:keyFile] = key_file.serialize
38
+ result[:updateStrategy] = update_strategy.serialize
39
+ end
40
+ end
41
+
42
+ def kind_sym
43
+ :mongo_db_spec
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MongoDBStatus < ::KubeDSL::DSLObject
3
+ value_fields :observed_generation, :phase, :reason
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:observedGeneration] = observed_generation
8
+ result[:phase] = phase
9
+ result[:reason] = reason
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :mongo_db_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQL < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MySQLStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MySQLSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "MySQL"
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
+ :my_sql
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQLClusterTopology < ::KubeDSL::DSLObject
3
+ value_fields :mode
4
+ object_field(:group) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MySQLGroupSpec.new }
5
+
6
+ def serialize
7
+ {}.tap do |result|
8
+ result[:mode] = mode
9
+ result[:group] = group.serialize
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :my_sql_cluster_topology
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQLGroupSpec < ::KubeDSL::DSLObject
3
+ value_fields :base_server_id, :mode, :name
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:baseServerID] = base_server_id
8
+ result[:mode] = mode
9
+ result[:name] = name
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :my_sql_group_spec
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQLList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MySQL.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "MySQLList"
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
+ :my_sql_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,40 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQLSpec < ::KubeDSL::DSLObject
3
+ value_fields :halted, :replicas, :storage_type, :termination_policy, :paused, :version
4
+ object_field(:tls) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::TLSConfig.new }
5
+ object_field(:service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
6
+ object_field(:monitor) { Kuby::KubeDB::DSL::Api::V1::AgentSpec.new }
7
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
8
+ object_field(:database_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
9
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
10
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
11
+ object_field(:init) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::InitSpec.new }
12
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
13
+ object_field(:topology) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::MySQLClusterTopology.new }
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:halted] = halted
18
+ result[:replicas] = replicas
19
+ result[:storageType] = storage_type
20
+ result[:terminationPolicy] = termination_policy
21
+ result[:paused] = paused
22
+ result[:version] = version
23
+ result[:tls] = tls.serialize
24
+ result[:serviceTemplate] = service_template.serialize
25
+ result[:monitor] = monitor.serialize
26
+ result[:storage] = storage.serialize
27
+ result[:databaseSecret] = database_secret.serialize
28
+ result[:configSource] = config_source.serialize
29
+ result[:podTemplate] = pod_template.serialize
30
+ result[:init] = init.serialize
31
+ result[:updateStrategy] = update_strategy.serialize
32
+ result[:topology] = topology.serialize
33
+ end
34
+ end
35
+
36
+ def kind_sym
37
+ :my_sql_spec
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class MySQLStatus < ::KubeDSL::DSLObject
3
+ value_fields :observed_generation, :phase, :reason
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:observedGeneration] = observed_generation
8
+ result[:phase] = phase
9
+ result[:reason] = reason
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :my_sql_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PerconaXtraDB < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PerconaXtraDBStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PerconaXtraDBSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "PerconaXtraDB"
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
+ :percona_xtra_db
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PerconaXtraDBList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PerconaXtraDB.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "PerconaXtraDBList"
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
+ :percona_xtra_db_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,38 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PerconaXtraDBSpec < ::KubeDSL::DSLObject
3
+ value_fields :paused, :replicas, :termination_policy, :halted, :storage_type, :version
4
+ object_field(:tls) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::TLSConfig.new }
5
+ object_field(:service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
6
+ object_field(:monitor) { Kuby::KubeDB::DSL::Api::V1::AgentSpec.new }
7
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
8
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
9
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
10
+ object_field(:database_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
11
+ object_field(:init) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::InitSpec.new }
12
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
13
+
14
+ def serialize
15
+ {}.tap do |result|
16
+ result[:paused] = paused
17
+ result[:replicas] = replicas
18
+ result[:terminationPolicy] = termination_policy
19
+ result[:halted] = halted
20
+ result[:storageType] = storage_type
21
+ result[:version] = version
22
+ result[:tls] = tls.serialize
23
+ result[:serviceTemplate] = service_template.serialize
24
+ result[:monitor] = monitor.serialize
25
+ result[:podTemplate] = pod_template.serialize
26
+ result[:storage] = storage.serialize
27
+ result[:configSource] = config_source.serialize
28
+ result[:databaseSecret] = database_secret.serialize
29
+ result[:init] = init.serialize
30
+ result[:updateStrategy] = update_strategy.serialize
31
+ end
32
+ end
33
+
34
+ def kind_sym
35
+ :percona_xtra_db_spec
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PerconaXtraDBStatus < ::KubeDSL::DSLObject
3
+ value_fields :observed_generation, :phase, :reason
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:observedGeneration] = observed_generation
8
+ result[:phase] = phase
9
+ result[:reason] = reason
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :percona_xtra_db_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PgBouncer < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PgBouncerStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PgBouncerSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "PgBouncer"
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
+ :pg_bouncer
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PgBouncerList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PgBouncer.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "PgBouncerList"
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
+ :pg_bouncer_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,31 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PgBouncerSpec < ::KubeDSL::DSLObject
3
+ value_fields :replicas, :paused, :version
4
+ array_field(:database) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::Databases.new }
5
+ object_field(:tls) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::TLSConfig.new }
6
+ object_field(:service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
7
+ object_field(:monitor) { Kuby::KubeDB::DSL::Api::V1::AgentSpec.new }
8
+ object_field(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
9
+ object_field(:connection_pool) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ConnectionPoolConfig.new }
10
+ object_field(:user_list_secret_ref) { KubeDSL::DSL::V1::LocalObjectReference.new }
11
+
12
+ def serialize
13
+ {}.tap do |result|
14
+ result[:replicas] = replicas
15
+ result[:paused] = paused
16
+ result[:version] = version
17
+ result[:databases] = databases.map(&:serialize)
18
+ result[:tls] = tls.serialize
19
+ result[:serviceTemplate] = service_template.serialize
20
+ result[:monitor] = monitor.serialize
21
+ result[:podTemplate] = pod_template.serialize
22
+ result[:connectionPool] = connection_pool.serialize
23
+ result[:userListSecretRef] = user_list_secret_ref.serialize
24
+ end
25
+ end
26
+
27
+ def kind_sym
28
+ :pg_bouncer_spec
29
+ end
30
+ end
31
+ end