kuby-crdb 0.3.0 → 0.4.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 (30) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Gemfile +1 -1
  4. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec.rb +24 -9
  5. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_preferred_during_scheduling_ignored_during_execu_33a342c6.rb +30 -0
  6. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_preferred_during_scheduling_ignored_during_execu_89c72c0d.rb +3 -0
  7. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_preferred_during_scheduling_ignored_during_execu_91ff080f.rb +33 -0
  8. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_required_during_scheduling_ignored_during_execut_00e5772b.rb +30 -0
  9. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_required_during_scheduling_ignored_during_execut_16f00b1a.rb +33 -0
  10. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_affinity_required_during_scheduling_ignored_during_execution.rb +3 -0
  11. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_during__0a98606d.rb +33 -0
  12. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_during__2dca1e8d.rb +30 -0
  13. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_during__ffa31ee1.rb +3 -0
  14. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_required_during_scheduling_ignored_during_e_4680b3f9.rb +33 -0
  15. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_required_during_scheduling_ignored_during_e_dc94bf24.rb +30 -0
  16. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_affinity_pod_anti_affinity_required_during_scheduling_ignored_during_execution.rb +3 -0
  17. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_ingress.rb +30 -0
  18. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_ingress_sql.rb +36 -0
  19. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_ingress_sql_tls.rb +30 -0
  20. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_ingress_ui.rb +36 -0
  21. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_ingress_ui_tls.rb +30 -0
  22. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_topology_spread_constraints.rb +36 -0
  23. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_topology_spread_constraints_label_selector.rb +30 -0
  24. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_spec_topology_spread_constraints_label_selector_match_expressions.rb +33 -0
  25. data/lib/kuby/crdb/dsl/crdb/v1alpha1/crdb_cluster_status.rb +9 -6
  26. data/lib/kuby/crdb/dsl/crdb/v1alpha1.rb +17 -1
  27. data/lib/kuby/crdb/plugin.rb +4 -2
  28. data/lib/kuby/crdb/version.rb +2 -2
  29. data/rbi/kuby-crdb.rbi +330 -0
  30. metadata +19 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f7c98570e59244624209dde72b58501d4398a2bee90ff5808f484fedf4b04ada
4
- data.tar.gz: 2b0a01b31f61e4a4c937d7ec6fb2d96b9f8ee38269ab53f89446f6a92e98ba25
3
+ metadata.gz: 4a635b66aa759d5f606ba9e9e025f04a93857901f867769300659e54e084b653
4
+ data.tar.gz: 6cf1db072b06868ed1cb70cf26e791bc8a3d2dec699840cd2a0474759f8ad360
5
5
  SHA512:
6
- metadata.gz: 49bb4c71f198e0cd6ba0de43a66de2ff12858094004aebbaa5e5e72ba9e50b960e96c05cd3d27c17f893478aa8a76bc3189c5fed4d0615f7cd841da1ed6b1ae6
7
- data.tar.gz: 3de82ae3ef761b98c939a7246a8c3e3184174c90c901bcf3771c21867e4010453adaf3601ad21edc9e9df5ef3c110e92363426fd6eaee82f6f69c39781e3cad9
6
+ metadata.gz: 438c456d8144d7b1dfc6ca428aa9529ce014f780c17b8f7d58c88fefefc4b2985bdc88b3f11a60c3edbccb06ba5aa99d3029810c7420ffaf00204d4e6d0fa197
7
+ data.tar.gz: 6f6674639b75935d37b8bc1330df1fe1c2dcdfbb484f71e7fac78f809983c551f1061c2f037c62ef5017198a5499bf31dd9e21d434a97390a6d64df9a134c8f4
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## 0.4.0
2
+ * Upgrade operator to v2.17.0.
3
+ * Guard against `nil`s when waiting for resources to spin up.
4
+
1
5
  ## 0.3.0
2
6
  * Upgrade operator to v2.10.0.
3
7
 
data/Gemfile CHANGED
@@ -16,7 +16,7 @@ group :development, :test do
16
16
  gem 'sorbet'
17
17
  gem 'sorbet-runtime'
18
18
  gem 'tapioca', '~> 0.7'
19
- gem 'parlour', github: 'camertron/parlour', branch: 'initialize_void'
19
+ gem 'parlour', '~> 9.0'
20
20
  end
21
21
 
22
22
  group :test do
@@ -6,10 +6,13 @@ module Kuby
6
6
  module CRDB
7
7
  module V1alpha1
8
8
  class CrdbClusterSpec < ::KubeDSL::DSLObject
9
+ object_field(:ingress) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngress.new }
9
10
  object_field(:image) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecImage.new }
11
+ array_field(:topology_spread_constraint) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecTopologySpreadConstraints.new }
10
12
  value_field :additional_args
11
13
  value_field :min_available
12
14
  value_field :max_sql_memory
15
+ value_field :automount_service_account_token
13
16
  value_field :cache
14
17
  value_field :tls_enabled
15
18
  key_value_field(:node_selector, format: :string)
@@ -18,21 +21,26 @@ module Kuby
18
21
  array_field(:toleration) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecTolerations.new }
19
22
  value_field :nodes
20
23
  value_field :cockroach_db_version
21
- object_field(:resources) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecResources.new }
24
+ value_field :node_tls_secret
22
25
  key_value_field(:additional_annotations, format: :string)
23
26
  value_field :client_tls_secret
27
+ value_field :termination_grace_period_secs
24
28
  key_value_field(:additional_labels, format: :string)
25
29
  value_field :sql_port
26
30
  value_field :max_unavailable
27
- value_field :node_tls_secret
31
+ value_field :grpc_port
32
+ object_field(:resources) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecResources.new }
28
33
  array_field(:pod_env_variable) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecPodEnvVariables.new }
29
34
  object_field(:data_store) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecDataStore.new }
30
- value_field :grpc_port
35
+ value_field :log_config_map
31
36
 
37
+ validates :ingress, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngress }
32
38
  validates :image, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecImage }
39
+ validates :topology_spread_constraints, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecTopologySpreadConstraints }, presence: false
33
40
  validates :additional_args, field: { format: :string }, presence: false
34
41
  validates :min_available, field: { format: :integer }, presence: true
35
42
  validates :max_sql_memory, field: { format: :string }, presence: false
43
+ validates :automount_service_account_token, field: { format: :boolean }, presence: true
36
44
  validates :cache, field: { format: :string }, presence: false
37
45
  validates :tls_enabled, field: { format: :boolean }, presence: true
38
46
  validates :node_selector, kv: { value_format: :string }, presence: true
@@ -41,23 +49,28 @@ module Kuby
41
49
  validates :tolerations, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecTolerations }, presence: false
42
50
  validates :nodes, field: { format: :integer }, presence: true
43
51
  validates :cockroach_db_version, field: { format: :string }, presence: false
44
- validates :resources, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecResources }
52
+ validates :node_tls_secret, field: { format: :string }, presence: false
45
53
  validates :additional_annotations, kv: { value_format: :string }, presence: true
46
54
  validates :client_tls_secret, field: { format: :string }, presence: false
55
+ validates :termination_grace_period_secs, field: { format: :integer }, presence: true
47
56
  validates :additional_labels, kv: { value_format: :string }, presence: true
48
57
  validates :sql_port, field: { format: :integer }, presence: true
49
58
  validates :max_unavailable, field: { format: :integer }, presence: true
50
- validates :node_tls_secret, field: { format: :string }, presence: false
59
+ validates :grpc_port, field: { format: :integer }, presence: true
60
+ validates :resources, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecResources }
51
61
  validates :pod_env_variables, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecPodEnvVariables }, presence: false
52
62
  validates :data_store, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecDataStore }
53
- validates :grpc_port, field: { format: :integer }, presence: true
63
+ validates :log_config_map, field: { format: :string }, presence: false
54
64
 
55
65
  def serialize
56
66
  {}.tap do |result|
67
+ result[:ingress] = ingress.serialize
57
68
  result[:image] = image.serialize
69
+ result[:topologySpreadConstraints] = topology_spread_constraints.map(&:serialize)
58
70
  result[:additionalArgs] = additional_args
59
71
  result[:minAvailable] = min_available
60
72
  result[:maxSQLMemory] = max_sql_memory
73
+ result[:automountServiceAccountToken] = automount_service_account_token
61
74
  result[:cache] = cache
62
75
  result[:tlsEnabled] = tls_enabled
63
76
  result[:nodeSelector] = node_selector.serialize
@@ -66,16 +79,18 @@ module Kuby
66
79
  result[:tolerations] = tolerations.map(&:serialize)
67
80
  result[:nodes] = nodes
68
81
  result[:cockroachDBVersion] = cockroach_db_version
69
- result[:resources] = resources.serialize
82
+ result[:nodeTLSSecret] = node_tls_secret
70
83
  result[:additionalAnnotations] = additional_annotations.serialize
71
84
  result[:clientTLSSecret] = client_tls_secret
85
+ result[:terminationGracePeriodSecs] = termination_grace_period_secs
72
86
  result[:additionalLabels] = additional_labels.serialize
73
87
  result[:sqlPort] = sql_port
74
88
  result[:maxUnavailable] = max_unavailable
75
- result[:nodeTLSSecret] = node_tls_secret
89
+ result[:grpcPort] = grpc_port
90
+ result[:resources] = resources.serialize
76
91
  result[:podEnvVariables] = pod_env_variables.map(&:serialize)
77
92
  result[:dataStore] = data_store.serialize
78
- result[:grpcPort] = grpc_port
93
+ result[:logConfigMap] = log_config_map
79
94
  end
80
95
  end
81
96
 
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector < ::KubeDSL::DSLObject
9
+ key_value_field(:match_labels, format: :string)
10
+ array_field(:match_expression) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions.new }
11
+
12
+ validates :match_labels, kv: { value_format: :string }, presence: true
13
+ validates :match_expressions, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:matchLabels] = match_labels.serialize
18
+ result[:matchExpressions] = match_expressions.map(&:serialize)
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_affinity_pod_affinity_preferred_during_scheduling_ignored_during_execution_pod_affinity_term_namespace_selector
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -6,16 +6,19 @@ module Kuby
6
6
  module CRDB
7
7
  module V1alpha1
8
8
  class CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm < ::KubeDSL::DSLObject
9
+ object_field(:namespace_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector.new }
9
10
  object_field(:label_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector.new }
10
11
  value_field :namespaces
11
12
  value_field :topology_key
12
13
 
14
+ validates :namespace_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector }
13
15
  validates :label_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector }
14
16
  validates :namespaces, field: { format: :string }, presence: false
15
17
  validates :topology_key, field: { format: :string }, presence: true
16
18
 
17
19
  def serialize
18
20
  {}.tap do |result|
21
+ result[:namespaceSelector] = namespace_selector.serialize
19
22
  result[:labelSelector] = label_selector.serialize
20
23
  result[:namespaces] = namespaces
21
24
  result[:topologyKey] = topology_key
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions < ::KubeDSL::DSLObject
9
+ value_field :operator
10
+ value_field :values
11
+ value_field :key
12
+
13
+ validates :operator, field: { format: :string }, presence: true
14
+ validates :values, field: { format: :string }, presence: false
15
+ validates :key, field: { format: :string }, presence: true
16
+
17
+ def serialize
18
+ {}.tap do |result|
19
+ result[:operator] = operator
20
+ result[:values] = values
21
+ result[:key] = key
22
+ end
23
+ end
24
+
25
+ def kind_sym
26
+ :crdb_cluster_spec_affinity_pod_affinity_preferred_during_scheduling_ignored_during_execution_pod_affinity_term_namespace_selector_match_expressions
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector < ::KubeDSL::DSLObject
9
+ key_value_field(:match_labels, format: :string)
10
+ array_field(:match_expression) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions.new }
11
+
12
+ validates :match_labels, kv: { value_format: :string }, presence: true
13
+ validates :match_expressions, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:matchLabels] = match_labels.serialize
18
+ result[:matchExpressions] = match_expressions.map(&:serialize)
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_affinity_pod_affinity_required_during_scheduling_ignored_during_execution_namespace_selector
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions < ::KubeDSL::DSLObject
9
+ value_field :operator
10
+ value_field :values
11
+ value_field :key
12
+
13
+ validates :operator, field: { format: :string }, presence: true
14
+ validates :values, field: { format: :string }, presence: false
15
+ validates :key, field: { format: :string }, presence: true
16
+
17
+ def serialize
18
+ {}.tap do |result|
19
+ result[:operator] = operator
20
+ result[:values] = values
21
+ result[:key] = key
22
+ end
23
+ end
24
+
25
+ def kind_sym
26
+ :crdb_cluster_spec_affinity_pod_affinity_required_during_scheduling_ignored_during_execution_namespace_selector_match_expressions
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -6,16 +6,19 @@ module Kuby
6
6
  module CRDB
7
7
  module V1alpha1
8
8
  class CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution < ::KubeDSL::DSLObject
9
+ object_field(:namespace_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector.new }
9
10
  object_field(:label_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector.new }
10
11
  value_field :namespaces
11
12
  value_field :topology_key
12
13
 
14
+ validates :namespace_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector }
13
15
  validates :label_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector }
14
16
  validates :namespaces, field: { format: :string }, presence: false
15
17
  validates :topology_key, field: { format: :string }, presence: true
16
18
 
17
19
  def serialize
18
20
  {}.tap do |result|
21
+ result[:namespaceSelector] = namespace_selector.serialize
19
22
  result[:labelSelector] = label_selector.serialize
20
23
  result[:namespaces] = namespaces
21
24
  result[:topologyKey] = topology_key
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions < ::KubeDSL::DSLObject
9
+ value_field :operator
10
+ value_field :values
11
+ value_field :key
12
+
13
+ validates :operator, field: { format: :string }, presence: true
14
+ validates :values, field: { format: :string }, presence: false
15
+ validates :key, field: { format: :string }, presence: true
16
+
17
+ def serialize
18
+ {}.tap do |result|
19
+ result[:operator] = operator
20
+ result[:values] = values
21
+ result[:key] = key
22
+ end
23
+ end
24
+
25
+ def kind_sym
26
+ :crdb_cluster_spec_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_during_execution_pod_affinity_term_namespace_selector_match_expressions
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector < ::KubeDSL::DSLObject
9
+ key_value_field(:match_labels, format: :string)
10
+ array_field(:match_expression) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions.new }
11
+
12
+ validates :match_labels, kv: { value_format: :string }, presence: true
13
+ validates :match_expressions, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:matchLabels] = match_labels.serialize
18
+ result[:matchExpressions] = match_expressions.map(&:serialize)
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_during_execution_pod_affinity_term_namespace_selector
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -6,16 +6,19 @@ module Kuby
6
6
  module CRDB
7
7
  module V1alpha1
8
8
  class CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm < ::KubeDSL::DSLObject
9
+ object_field(:namespace_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector.new }
9
10
  object_field(:label_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector.new }
10
11
  value_field :namespaces
11
12
  value_field :topology_key
12
13
 
14
+ validates :namespace_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector }
13
15
  validates :label_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector }
14
16
  validates :namespaces, field: { format: :string }, presence: false
15
17
  validates :topology_key, field: { format: :string }, presence: true
16
18
 
17
19
  def serialize
18
20
  {}.tap do |result|
21
+ result[:namespaceSelector] = namespace_selector.serialize
19
22
  result[:labelSelector] = label_selector.serialize
20
23
  result[:namespaces] = namespaces
21
24
  result[:topologyKey] = topology_key
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions < ::KubeDSL::DSLObject
9
+ value_field :operator
10
+ value_field :values
11
+ value_field :key
12
+
13
+ validates :operator, field: { format: :string }, presence: true
14
+ validates :values, field: { format: :string }, presence: false
15
+ validates :key, field: { format: :string }, presence: true
16
+
17
+ def serialize
18
+ {}.tap do |result|
19
+ result[:operator] = operator
20
+ result[:values] = values
21
+ result[:key] = key
22
+ end
23
+ end
24
+
25
+ def kind_sym
26
+ :crdb_cluster_spec_affinity_pod_anti_affinity_required_during_scheduling_ignored_during_execution_namespace_selector_match_expressions
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector < ::KubeDSL::DSLObject
9
+ key_value_field(:match_labels, format: :string)
10
+ array_field(:match_expression) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions.new }
11
+
12
+ validates :match_labels, kv: { value_format: :string }, presence: true
13
+ validates :match_expressions, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:matchLabels] = match_labels.serialize
18
+ result[:matchExpressions] = match_expressions.map(&:serialize)
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_affinity_pod_anti_affinity_required_during_scheduling_ignored_during_execution_namespace_selector
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -6,16 +6,19 @@ module Kuby
6
6
  module CRDB
7
7
  module V1alpha1
8
8
  class CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution < ::KubeDSL::DSLObject
9
+ object_field(:namespace_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector.new }
9
10
  object_field(:label_selector) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector.new }
10
11
  value_field :namespaces
11
12
  value_field :topology_key
12
13
 
14
+ validates :namespace_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector }
13
15
  validates :label_selector, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector }
14
16
  validates :namespaces, field: { format: :string }, presence: false
15
17
  validates :topology_key, field: { format: :string }, presence: true
16
18
 
17
19
  def serialize
18
20
  {}.tap do |result|
21
+ result[:namespaceSelector] = namespace_selector.serialize
19
22
  result[:labelSelector] = label_selector.serialize
20
23
  result[:namespaces] = namespaces
21
24
  result[:topologyKey] = topology_key
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecIngress < ::KubeDSL::DSLObject
9
+ object_field(:ui) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressUi.new }
10
+ object_field(:sql) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressSql.new }
11
+
12
+ validates :ui, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressUi }
13
+ validates :sql, object: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressSql }
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:ui] = ui.serialize
18
+ result[:sql] = sql.serialize
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_ingress
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,36 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecIngressSql < ::KubeDSL::DSLObject
9
+ array_field(:tl) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressSqlTls.new }
10
+ value_field :host
11
+ key_value_field(:annotations, format: :string)
12
+ value_field :ingress_class_name
13
+
14
+ validates :tls, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressSqlTls }, presence: false
15
+ validates :host, field: { format: :string }, presence: true
16
+ validates :annotations, kv: { value_format: :string }, presence: true
17
+ validates :ingress_class_name, field: { format: :string }, presence: false
18
+
19
+ def serialize
20
+ {}.tap do |result|
21
+ result[:tls] = tls.map(&:serialize)
22
+ result[:host] = host
23
+ result[:annotations] = annotations.serialize
24
+ result[:ingressClassName] = ingress_class_name
25
+ end
26
+ end
27
+
28
+ def kind_sym
29
+ :crdb_cluster_spec_ingress_sql
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecIngressSqlTls < ::KubeDSL::DSLObject
9
+ value_field :hosts
10
+ value_field :secret_name
11
+
12
+ validates :hosts, field: { format: :string }, presence: false
13
+ validates :secret_name, field: { format: :string }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:hosts] = hosts
18
+ result[:secretName] = secret_name
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_ingress_sql_tls
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,36 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecIngressUi < ::KubeDSL::DSLObject
9
+ array_field(:tl) { Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressUiTls.new }
10
+ value_field :host
11
+ key_value_field(:annotations, format: :string)
12
+ value_field :ingress_class_name
13
+
14
+ validates :tls, array: { kind_of: Kuby::CRDB::DSL::CRDB::V1alpha1::CrdbClusterSpecIngressUiTls }, presence: false
15
+ validates :host, field: { format: :string }, presence: true
16
+ validates :annotations, kv: { value_format: :string }, presence: true
17
+ validates :ingress_class_name, field: { format: :string }, presence: false
18
+
19
+ def serialize
20
+ {}.tap do |result|
21
+ result[:tls] = tls.map(&:serialize)
22
+ result[:host] = host
23
+ result[:annotations] = annotations.serialize
24
+ result[:ingressClassName] = ingress_class_name
25
+ end
26
+ end
27
+
28
+ def kind_sym
29
+ :crdb_cluster_spec_ingress_ui
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module Kuby
4
+ module CRDB
5
+ module DSL
6
+ module CRDB
7
+ module V1alpha1
8
+ class CrdbClusterSpecIngressUiTls < ::KubeDSL::DSLObject
9
+ value_field :hosts
10
+ value_field :secret_name
11
+
12
+ validates :hosts, field: { format: :string }, presence: false
13
+ validates :secret_name, field: { format: :string }, presence: false
14
+
15
+ def serialize
16
+ {}.tap do |result|
17
+ result[:hosts] = hosts
18
+ result[:secretName] = secret_name
19
+ end
20
+ end
21
+
22
+ def kind_sym
23
+ :crdb_cluster_spec_ingress_ui_tls
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end