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,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PgBouncerStatus < ::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
+ :pg_bouncer_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class Postgres < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PostgresStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PostgresSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "Postgres"
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
+ :postgres
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,15 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PostgresArchiverSpec < ::KubeDSL::DSLObject
3
+ object_field(:storage) { Kuby::KubeDB::DSL::Api::V1::Backend.new }
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:storage] = storage.serialize
8
+ end
9
+ end
10
+
11
+ def kind_sym
12
+ :postgres_archiver_spec
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PostgresList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::Postgres.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "PostgresList"
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
+ :postgres_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,46 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PostgresSpec < ::KubeDSL::DSLObject
3
+ value_fields :halted, :replicas, :storage_type, :termination_policy, :paused, :version, :standby_mode, :streaming_mode
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(:archiver) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::PostgresArchiverSpec.new }
13
+ object_field(:replica_service_template) { Kuby::KubeDB::DSL::Api::V1::ServiceTemplateSpec.new }
14
+ object_field(:leader_election) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::LeaderElectionConfig.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[:standbyMode] = standby_mode
26
+ result[:streamingMode] = streaming_mode
27
+ result[:tls] = tls.serialize
28
+ result[:serviceTemplate] = service_template.serialize
29
+ result[:monitor] = monitor.serialize
30
+ result[:storage] = storage.serialize
31
+ result[:databaseSecret] = database_secret.serialize
32
+ result[:configSource] = config_source.serialize
33
+ result[:podTemplate] = pod_template.serialize
34
+ result[:init] = init.serialize
35
+ result[:archiver] = archiver.serialize
36
+ result[:replicaServiceTemplate] = replica_service_template.serialize
37
+ result[:leaderElection] = leader_election.serialize
38
+ result[:updateStrategy] = update_strategy.serialize
39
+ end
40
+ end
41
+
42
+ def kind_sym
43
+ :postgres_spec
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PostgresStatus < ::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
+ :postgres_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,32 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class PostgresWALSourceSpec < ::KubeDSL::DSLObject
3
+ value_fields :storage_secret_name, :backup_name
4
+ object_field(:s3) { Kuby::KubeDB::DSL::Api::V1::S3Spec.new }
5
+ object_field(:swift) { Kuby::KubeDB::DSL::Api::V1::SwiftSpec.new }
6
+ object_field(:pitr) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::RecoveryTarget.new }
7
+ object_field(:rest) { Kuby::KubeDB::DSL::Api::V1::RestServerSpec.new }
8
+ object_field(:gcs) { Kuby::KubeDB::DSL::Api::V1::GCSSpec.new }
9
+ object_field(:b2) { Kuby::KubeDB::DSL::Api::V1::B2Spec.new }
10
+ object_field(:azure) { Kuby::KubeDB::DSL::Api::V1::AzureSpec.new }
11
+ object_field(:local) { Kuby::KubeDB::DSL::Api::V1::LocalSpec.new }
12
+
13
+ def serialize
14
+ {}.tap do |result|
15
+ result[:storageSecretName] = storage_secret_name
16
+ result[:backupName] = backup_name
17
+ result[:s3] = s3.serialize
18
+ result[:swift] = swift.serialize
19
+ result[:pitr] = pitr.serialize
20
+ result[:rest] = rest.serialize
21
+ result[:gcs] = gcs.serialize
22
+ result[:b2] = b2.serialize
23
+ result[:azure] = azure.serialize
24
+ result[:local] = local.serialize
25
+ end
26
+ end
27
+
28
+ def kind_sym
29
+ :postgres_wal_source_spec
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ProxySQL < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ProxySQLStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ProxySQLSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "ProxySQL"
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
+ :proxy_sql
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ProxySQLBackendSpec < ::KubeDSL::DSLObject
3
+ value_fields :replicas
4
+ object_field(:ref) { KubeDSL::DSL::V1::TypedLocalObjectReference.new }
5
+
6
+ def serialize
7
+ {}.tap do |result|
8
+ result[:replicas] = replicas
9
+ result[:ref] = ref.serialize
10
+ end
11
+ end
12
+
13
+ def kind_sym
14
+ :proxy_sql_backend_spec
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ProxySQLList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ProxySQL.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "ProxySQLList"
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
+ :proxy_sql_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,34 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ProxySQLSpec < ::KubeDSL::DSLObject
3
+ value_fields :replicas, :paused, :version, :mode
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(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
9
+ object_field(:proxysql_secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
10
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
11
+ object_field(:backend) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::ProxySQLBackendSpec.new }
12
+
13
+ def serialize
14
+ {}.tap do |result|
15
+ result[:replicas] = replicas
16
+ result[:paused] = paused
17
+ result[:version] = version
18
+ result[:mode] = mode
19
+ result[:tls] = tls.serialize
20
+ result[:serviceTemplate] = service_template.serialize
21
+ result[:monitor] = monitor.serialize
22
+ result[:podTemplate] = pod_template.serialize
23
+ result[:configSource] = config_source.serialize
24
+ result[:proxysqlSecret] = proxysql_secret.serialize
25
+ result[:updateStrategy] = update_strategy.serialize
26
+ result[:backend] = backend.serialize
27
+ end
28
+ end
29
+
30
+ def kind_sym
31
+ :proxy_sql_spec
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ProxySQLStatus < ::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
+ :proxy_sql_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,18 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class RecoveryTarget < ::KubeDSL::DSLObject
3
+ value_fields :target_inclusive, :target_timeline, :target_time, :target_xid
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:targetInclusive] = target_inclusive
8
+ result[:targetTimeline] = target_timeline
9
+ result[:targetTime] = target_time
10
+ result[:targetXID] = target_xid
11
+ end
12
+ end
13
+
14
+ def kind_sym
15
+ :recovery_target
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,22 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class Redis < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ object_field(:status) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::RedisStatus.new }
5
+ object_field(:spec) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::RedisSpec.new }
6
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
7
+
8
+ def serialize
9
+ {}.tap do |result|
10
+ result[:kind] = "Redis"
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
+ :redis
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,16 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class RedisClusterSpec < ::KubeDSL::DSLObject
3
+ value_fields :master, :replicas
4
+
5
+ def serialize
6
+ {}.tap do |result|
7
+ result[:master] = master
8
+ result[:replicas] = replicas
9
+ end
10
+ end
11
+
12
+ def kind_sym
13
+ :redis_cluster_spec
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,20 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class RedisList < ::KubeDSL::DSLObject
3
+ value_fields :api_version
4
+ array_field(:item) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::Redis.new }
5
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
6
+
7
+ def serialize
8
+ {}.tap do |result|
9
+ result[:kind] = "RedisList"
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_list
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,35 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class RedisSpec < ::KubeDSL::DSLObject
3
+ value_fields :paused, :replicas, :termination_policy, :halted, :version, :storage_type, :mode
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(:pod_template) { Kuby::KubeDB::DSL::Api::V1::PodTemplateSpec.new }
7
+ object_field(:storage) { KubeDSL::DSL::V1::PersistentVolumeClaimSpec.new }
8
+ object_field(:config_source) { Kuby::KubeDB::DSL::V1::VolumeSource.new }
9
+ object_field(:cluster) { Kuby::KubeDB::DSL::Kubedb::V1alpha1::RedisClusterSpec.new }
10
+ object_field(:update_strategy) { KubeDSL::DSL::Apps::V1::StatefulSetUpdateStrategy.new }
11
+
12
+ def serialize
13
+ {}.tap do |result|
14
+ result[:paused] = paused
15
+ result[:replicas] = replicas
16
+ result[:terminationPolicy] = termination_policy
17
+ result[:halted] = halted
18
+ result[:version] = version
19
+ result[:storageType] = storage_type
20
+ result[:mode] = mode
21
+ result[:serviceTemplate] = service_template.serialize
22
+ result[:monitor] = monitor.serialize
23
+ result[:podTemplate] = pod_template.serialize
24
+ result[:storage] = storage.serialize
25
+ result[:configSource] = config_source.serialize
26
+ result[:cluster] = cluster.serialize
27
+ result[:updateStrategy] = update_strategy.serialize
28
+ end
29
+ end
30
+
31
+ def kind_sym
32
+ :redis_spec
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,17 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class RedisStatus < ::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
+ :redis_status
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,71 @@
1
+ module Kuby::KubeDB::DSL::Kubedb::V1alpha1
2
+ class ScriptSourceSpec < ::KubeDSL::DSLObject
3
+ value_fields :script_path
4
+ object_field(:portworx_volume) { KubeDSL::DSL::V1::PortworxVolumeSource.new }
5
+ object_field(:glusterfs) { KubeDSL::DSL::V1::GlusterfsVolumeSource.new }
6
+ object_field(:git_repo) { KubeDSL::DSL::V1::GitRepoVolumeSource.new }
7
+ object_field(:flocker) { KubeDSL::DSL::V1::FlockerVolumeSource.new }
8
+ object_field(:storageos) { KubeDSL::DSL::V1::StorageOSVolumeSource.new }
9
+ object_field(:csi) { KubeDSL::DSL::V1::CSIVolumeSource.new }
10
+ object_field(:iscsi) { KubeDSL::DSL::V1::ISCSIVolumeSource.new }
11
+ object_field(:projected) { KubeDSL::DSL::V1::ProjectedVolumeSource.new }
12
+ object_field(:secret) { KubeDSL::DSL::V1::SecretVolumeSource.new }
13
+ object_field(:scale_io) { KubeDSL::DSL::V1::ScaleIOVolumeSource.new }
14
+ object_field(:photon_persistent_disk) { KubeDSL::DSL::V1::PhotonPersistentDiskVolumeSource.new }
15
+ object_field(:azure_disk) { KubeDSL::DSL::V1::AzureDiskVolumeSource.new }
16
+ object_field(:fc) { KubeDSL::DSL::V1::FCVolumeSource.new }
17
+ object_field(:flex_volume) { KubeDSL::DSL::V1::FlexVolumeSource.new }
18
+ object_field(:empty_dir) { KubeDSL::DSL::V1::EmptyDirVolumeSource.new }
19
+ object_field(:persistent_volume_claim) { KubeDSL::DSL::V1::PersistentVolumeClaimVolumeSource.new }
20
+ object_field(:config_map) { KubeDSL::DSL::V1::ConfigMapVolumeSource.new }
21
+ object_field(:rbd) { KubeDSL::DSL::V1::RBDVolumeSource.new }
22
+ object_field(:azure_file) { KubeDSL::DSL::V1::AzureFileVolumeSource.new }
23
+ object_field(:quobyte) { KubeDSL::DSL::V1::QuobyteVolumeSource.new }
24
+ object_field(:host_path) { KubeDSL::DSL::V1::HostPathVolumeSource.new }
25
+ object_field(:nfs) { KubeDSL::DSL::V1::NFSVolumeSource.new }
26
+ object_field(:vsphere_volume) { KubeDSL::DSL::V1::VsphereVirtualDiskVolumeSource.new }
27
+ object_field(:cinder) { KubeDSL::DSL::V1::CinderVolumeSource.new }
28
+ object_field(:aws_elastic_block_store) { KubeDSL::DSL::V1::AWSElasticBlockStoreVolumeSource.new }
29
+ object_field(:cephfs) { KubeDSL::DSL::V1::CephFSVolumeSource.new }
30
+ object_field(:downward_api) { KubeDSL::DSL::V1::DownwardAPIVolumeSource.new }
31
+ object_field(:gce_persistent_disk) { KubeDSL::DSL::V1::GCEPersistentDiskVolumeSource.new }
32
+
33
+ def serialize
34
+ {}.tap do |result|
35
+ result[:scriptPath] = script_path
36
+ result[:portworxVolume] = portworx_volume.serialize
37
+ result[:glusterfs] = glusterfs.serialize
38
+ result[:gitRepo] = git_repo.serialize
39
+ result[:flocker] = flocker.serialize
40
+ result[:storageos] = storageos.serialize
41
+ result[:csi] = csi.serialize
42
+ result[:iscsi] = iscsi.serialize
43
+ result[:projected] = projected.serialize
44
+ result[:secret] = secret.serialize
45
+ result[:scaleIO] = scale_io.serialize
46
+ result[:photonPersistentDisk] = photon_persistent_disk.serialize
47
+ result[:azureDisk] = azure_disk.serialize
48
+ result[:fc] = fc.serialize
49
+ result[:flexVolume] = flex_volume.serialize
50
+ result[:emptyDir] = empty_dir.serialize
51
+ result[:persistentVolumeClaim] = persistent_volume_claim.serialize
52
+ result[:configMap] = config_map.serialize
53
+ result[:rbd] = rbd.serialize
54
+ result[:azureFile] = azure_file.serialize
55
+ result[:quobyte] = quobyte.serialize
56
+ result[:hostPath] = host_path.serialize
57
+ result[:nfs] = nfs.serialize
58
+ result[:vsphereVolume] = vsphere_volume.serialize
59
+ result[:cinder] = cinder.serialize
60
+ result[:awsElasticBlockStore] = aws_elastic_block_store.serialize
61
+ result[:cephfs] = cephfs.serialize
62
+ result[:downwardAPI] = downward_api.serialize
63
+ result[:gcePersistentDisk] = gce_persistent_disk.serialize
64
+ end
65
+ end
66
+
67
+ def kind_sym
68
+ :script_source_spec
69
+ end
70
+ end
71
+ end