kube-dsl 0.7.4 → 0.8.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 (98) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/Gemfile +3 -3
  4. data/Rakefile +16 -8
  5. data/lib/kube-dsl/dsl/apiextensions/v1/json_schema_props.rb +3 -0
  6. data/lib/kube-dsl/dsl/{storage/v1alpha1/volume_error.rb → apiextensions/v1/validation_rule.rb} +7 -7
  7. data/lib/kube-dsl/dsl/apiextensions/v1.rb +1 -0
  8. data/lib/kube-dsl/dsl/apps/v1/stateful_set_persistent_volume_claim_retention_policy.rb +28 -0
  9. data/lib/kube-dsl/dsl/apps/v1/stateful_set_spec.rb +3 -0
  10. data/lib/kube-dsl/dsl/apps/v1.rb +1 -0
  11. data/lib/kube-dsl/dsl/autoscaling/v2/container_resource_metric_source.rb +31 -0
  12. data/lib/kube-dsl/dsl/autoscaling/v2/container_resource_metric_status.rb +31 -0
  13. data/lib/kube-dsl/dsl/{rbac/v1alpha1/subject.rb → autoscaling/v2/cross_version_object_reference.rb} +4 -7
  14. data/lib/kube-dsl/dsl/autoscaling/v2/external_metric_source.rb +28 -0
  15. data/lib/kube-dsl/dsl/autoscaling/v2/external_metric_status.rb +28 -0
  16. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler.rb +33 -0
  17. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler_behavior.rb +28 -0
  18. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler_condition.rb +37 -0
  19. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler_list.rb +30 -0
  20. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler_spec.rb +37 -0
  21. data/lib/kube-dsl/dsl/autoscaling/v2/horizontal_pod_autoscaler_status.rb +40 -0
  22. data/lib/kube-dsl/dsl/autoscaling/v2/hpa_scaling_policy.rb +31 -0
  23. data/lib/kube-dsl/dsl/autoscaling/v2/hpa_scaling_rules.rb +31 -0
  24. data/lib/kube-dsl/dsl/autoscaling/v2/metric_identifier.rb +28 -0
  25. data/lib/kube-dsl/dsl/autoscaling/v2/metric_spec.rb +40 -0
  26. data/lib/kube-dsl/dsl/autoscaling/v2/metric_status.rb +40 -0
  27. data/lib/kube-dsl/dsl/autoscaling/v2/metric_target.rb +34 -0
  28. data/lib/kube-dsl/dsl/autoscaling/v2/metric_value_status.rb +31 -0
  29. data/lib/kube-dsl/dsl/autoscaling/v2/object_metric_source.rb +31 -0
  30. data/lib/kube-dsl/dsl/autoscaling/v2/object_metric_status.rb +31 -0
  31. data/lib/kube-dsl/dsl/autoscaling/v2/pods_metric_source.rb +28 -0
  32. data/lib/kube-dsl/dsl/autoscaling/v2/pods_metric_status.rb +28 -0
  33. data/lib/kube-dsl/dsl/autoscaling/v2/resource_metric_source.rb +28 -0
  34. data/lib/kube-dsl/dsl/autoscaling/v2/resource_metric_status.rb +28 -0
  35. data/lib/kube-dsl/dsl/autoscaling/v2.rb +26 -0
  36. data/lib/kube-dsl/dsl/autoscaling.rb +1 -0
  37. data/lib/kube-dsl/dsl/batch/v1/job_status.rb +3 -0
  38. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/flow_distinguisher_method.rb +25 -0
  39. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/flow_schema.rb +33 -0
  40. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_condition.rb +37 -0
  41. data/lib/kube-dsl/dsl/{rbac/v1alpha1/cluster_role_list.rb → flowcontrol/v1beta2/flow_schema_list.rb} +8 -8
  42. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_spec.rb +34 -0
  43. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_status.rb +25 -0
  44. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/group_subject.rb +25 -0
  45. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/limit_response.rb +28 -0
  46. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/limited_priority_level_configuration.rb +28 -0
  47. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/non_resource_policy_rule.rb +28 -0
  48. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/policy_rules_with_subjects.rb +31 -0
  49. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration.rb +33 -0
  50. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_condition.rb +37 -0
  51. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_list.rb +30 -0
  52. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_reference.rb +25 -0
  53. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_spec.rb +28 -0
  54. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_status.rb +25 -0
  55. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/queuing_configuration.rb +31 -0
  56. data/lib/kube-dsl/dsl/{rbac/v1alpha1/policy_rule.rb → flowcontrol/v1beta2/resource_policy_rule.rb} +10 -10
  57. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/service_account_subject.rb +28 -0
  58. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/subject.rb +34 -0
  59. data/lib/kube-dsl/dsl/flowcontrol/v1beta2/user_subject.rb +25 -0
  60. data/lib/kube-dsl/dsl/flowcontrol/v1beta2.rb +24 -0
  61. data/lib/kube-dsl/dsl/flowcontrol.rb +1 -0
  62. data/lib/kube-dsl/dsl/rbac.rb +0 -1
  63. data/lib/kube-dsl/dsl/scheduling.rb +0 -1
  64. data/lib/kube-dsl/dsl/storage/v1alpha1.rb +0 -6
  65. data/lib/kube-dsl/dsl/v1/grpc_action.rb +26 -0
  66. data/lib/kube-dsl/dsl/v1/lifecycle.rb +4 -4
  67. data/lib/kube-dsl/dsl/v1/{handler.rb → lifecycle_handler.rb} +2 -2
  68. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_status.rb +6 -0
  69. data/lib/kube-dsl/dsl/v1/pod_os.rb +23 -0
  70. data/lib/kube-dsl/dsl/v1/pod_spec.rb +3 -0
  71. data/lib/kube-dsl/dsl/v1/probe.rb +3 -0
  72. data/lib/kube-dsl/dsl/v1.rb +3 -1
  73. data/lib/kube-dsl/entrypoint.rb +121 -9
  74. data/lib/kube-dsl/key_value_fields.rb +1 -1
  75. data/lib/kube-dsl/resource.rb +1 -1
  76. data/lib/kube-dsl/validations.rb +2 -2
  77. data/lib/kube-dsl/version.rb +1 -1
  78. data/lib/kube-dsl.rb +1 -1
  79. data/rbi/kube-dsl.rbi +2345 -1523
  80. metadata +59 -29
  81. data/lib/kube-dsl/dsl/rbac/v1alpha1/aggregation_rule.rb +0 -25
  82. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role.rb +0 -33
  83. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role_binding.rb +0 -33
  84. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role_binding_list.rb +0 -30
  85. data/lib/kube-dsl/dsl/rbac/v1alpha1/role.rb +0 -30
  86. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_binding.rb +0 -33
  87. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_binding_list.rb +0 -30
  88. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_list.rb +0 -30
  89. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_ref.rb +0 -31
  90. data/lib/kube-dsl/dsl/rbac/v1alpha1.rb +0 -14
  91. data/lib/kube-dsl/dsl/scheduling/v1alpha1/priority_class.rb +0 -39
  92. data/lib/kube-dsl/dsl/scheduling/v1alpha1/priority_class_list.rb +0 -30
  93. data/lib/kube-dsl/dsl/scheduling/v1alpha1.rb +0 -4
  94. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment.rb +0 -33
  95. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_list.rb +0 -30
  96. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_source.rb +0 -28
  97. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_spec.rb +0 -31
  98. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_status.rb +0 -34
@@ -0,0 +1,28 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class NonResourcePolicyRule < ::KubeDSL::DSLObject
8
+ value_field :non_resource_ur_ls
9
+ value_field :verbs
10
+
11
+ validates :non_resource_ur_ls, field: { format: :string }, presence: false
12
+ validates :verbs, field: { format: :string }, presence: false
13
+
14
+ def serialize
15
+ {}.tap do |result|
16
+ result[:nonResourceURLs] = non_resource_ur_ls
17
+ result[:verbs] = verbs
18
+ end
19
+ end
20
+
21
+ def kind_sym
22
+ :non_resource_policy_rule
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,31 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PolicyRulesWithSubjects < ::KubeDSL::DSLObject
8
+ array_field(:non_resource_rule) { KubeDSL::DSL::Flowcontrol::V1beta2::NonResourcePolicyRule.new }
9
+ array_field(:resource_rule) { KubeDSL::DSL::Flowcontrol::V1beta2::ResourcePolicyRule.new }
10
+ array_field(:subject) { KubeDSL::DSL::Flowcontrol::V1beta2::Subject.new }
11
+
12
+ validates :non_resource_rules, array: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::NonResourcePolicyRule }, presence: false
13
+ validates :resource_rules, array: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::ResourcePolicyRule }, presence: false
14
+ validates :subjects, array: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::Subject }, presence: false
15
+
16
+ def serialize
17
+ {}.tap do |result|
18
+ result[:nonResourceRules] = non_resource_rules.map(&:serialize)
19
+ result[:resourceRules] = resource_rules.map(&:serialize)
20
+ result[:subjects] = subjects.map(&:serialize)
21
+ end
22
+ end
23
+
24
+ def kind_sym
25
+ :policy_rules_with_subjects
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfiguration < ::KubeDSL::DSLObject
8
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ObjectMeta.new }
9
+ object_field(:spec) { KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationSpec.new }
10
+ object_field(:status) { KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationStatus.new }
11
+
12
+ validates :metadata, object: { kind_of: KubeDSL::DSL::Meta::V1::ObjectMeta }
13
+ validates :spec, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationSpec }
14
+ validates :status, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationStatus }
15
+
16
+ def serialize
17
+ {}.tap do |result|
18
+ result[:apiVersion] = "flowcontrol.apiserver.k8s.io/v1beta2"
19
+ result[:kind] = "PriorityLevelConfiguration"
20
+ result[:metadata] = metadata.serialize
21
+ result[:spec] = spec.serialize
22
+ result[:status] = status.serialize
23
+ end
24
+ end
25
+
26
+ def kind_sym
27
+ :priority_level_configuration
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,37 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfigurationCondition < ::KubeDSL::DSLObject
8
+ value_field :last_transition_time
9
+ value_field :message
10
+ value_field :reason
11
+ value_field :status
12
+ value_field :type
13
+
14
+ validates :last_transition_time, field: { format: :string }, presence: false
15
+ validates :message, field: { format: :string }, presence: false
16
+ validates :reason, field: { format: :string }, presence: false
17
+ validates :status, field: { format: :string }, presence: false
18
+ validates :type, field: { format: :string }, presence: false
19
+
20
+ def serialize
21
+ {}.tap do |result|
22
+ result[:lastTransitionTime] = last_transition_time
23
+ result[:message] = message
24
+ result[:reason] = reason
25
+ result[:status] = status
26
+ result[:type] = type
27
+ end
28
+ end
29
+
30
+ def kind_sym
31
+ :priority_level_configuration_condition
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,30 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfigurationList < ::KubeDSL::DSLObject
8
+ array_field(:item) { KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfiguration.new }
9
+ object_field(:metadata) { KubeDSL::DSL::Meta::V1::ListMeta.new }
10
+
11
+ validates :items, array: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfiguration }, presence: false
12
+ validates :metadata, object: { kind_of: KubeDSL::DSL::Meta::V1::ListMeta }
13
+
14
+ def serialize
15
+ {}.tap do |result|
16
+ result[:apiVersion] = "flowcontrol.apiserver.k8s.io/v1beta2"
17
+ result[:items] = items.map(&:serialize)
18
+ result[:kind] = "PriorityLevelConfigurationList"
19
+ result[:metadata] = metadata.serialize
20
+ end
21
+ end
22
+
23
+ def kind_sym
24
+ :priority_level_configuration_list
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfigurationReference < ::KubeDSL::DSLObject
8
+ value_field :name
9
+
10
+ validates :name, field: { format: :string }, presence: false
11
+
12
+ def serialize
13
+ {}.tap do |result|
14
+ result[:name] = name
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :priority_level_configuration_reference
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,28 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfigurationSpec < ::KubeDSL::DSLObject
8
+ object_field(:limited) { KubeDSL::DSL::Flowcontrol::V1beta2::LimitedPriorityLevelConfiguration.new }
9
+ value_field :type
10
+
11
+ validates :limited, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::LimitedPriorityLevelConfiguration }
12
+ validates :type, field: { format: :string }, presence: false
13
+
14
+ def serialize
15
+ {}.tap do |result|
16
+ result[:limited] = limited.serialize
17
+ result[:type] = type
18
+ end
19
+ end
20
+
21
+ def kind_sym
22
+ :priority_level_configuration_spec
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class PriorityLevelConfigurationStatus < ::KubeDSL::DSLObject
8
+ array_field(:condition) { KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationCondition.new }
9
+
10
+ validates :conditions, array: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::PriorityLevelConfigurationCondition }, presence: false
11
+
12
+ def serialize
13
+ {}.tap do |result|
14
+ result[:conditions] = conditions.map(&:serialize)
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :priority_level_configuration_status
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,31 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class QueuingConfiguration < ::KubeDSL::DSLObject
8
+ value_field :hand_size
9
+ value_field :queue_length_limit
10
+ value_field :queues
11
+
12
+ validates :hand_size, field: { format: :integer }, presence: false
13
+ validates :queue_length_limit, field: { format: :integer }, presence: false
14
+ validates :queues, field: { format: :integer }, presence: false
15
+
16
+ def serialize
17
+ {}.tap do |result|
18
+ result[:handSize] = hand_size
19
+ result[:queueLengthLimit] = queue_length_limit
20
+ result[:queues] = queues
21
+ end
22
+ end
23
+
24
+ def kind_sym
25
+ :queuing_configuration
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -2,33 +2,33 @@
2
2
 
3
3
  module KubeDSL
4
4
  module DSL
5
- module Rbac
6
- module V1alpha1
7
- class PolicyRule < ::KubeDSL::DSLObject
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class ResourcePolicyRule < ::KubeDSL::DSLObject
8
8
  value_field :api_groups
9
- value_field :non_resource_ur_ls
10
- value_field :resource_names
9
+ value_field :cluster_scope
10
+ value_field :namespaces
11
11
  value_field :resources
12
12
  value_field :verbs
13
13
 
14
14
  validates :api_groups, field: { format: :string }, presence: false
15
- validates :non_resource_ur_ls, field: { format: :string }, presence: false
16
- validates :resource_names, field: { format: :string }, presence: false
15
+ validates :cluster_scope, field: { format: :boolean }, presence: false
16
+ validates :namespaces, field: { format: :string }, presence: false
17
17
  validates :resources, field: { format: :string }, presence: false
18
18
  validates :verbs, field: { format: :string }, presence: false
19
19
 
20
20
  def serialize
21
21
  {}.tap do |result|
22
22
  result[:apiGroups] = api_groups
23
- result[:nonResourceURLs] = non_resource_ur_ls
24
- result[:resourceNames] = resource_names
23
+ result[:clusterScope] = cluster_scope
24
+ result[:namespaces] = namespaces
25
25
  result[:resources] = resources
26
26
  result[:verbs] = verbs
27
27
  end
28
28
  end
29
29
 
30
30
  def kind_sym
31
- :policy_rule
31
+ :resource_policy_rule
32
32
  end
33
33
  end
34
34
  end
@@ -0,0 +1,28 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class ServiceAccountSubject < ::KubeDSL::DSLObject
8
+ value_field :name
9
+ value_field :namespace
10
+
11
+ validates :name, field: { format: :string }, presence: false
12
+ validates :namespace, field: { format: :string }, presence: false
13
+
14
+ def serialize
15
+ {}.tap do |result|
16
+ result[:name] = name
17
+ result[:namespace] = namespace
18
+ end
19
+ end
20
+
21
+ def kind_sym
22
+ :service_account_subject
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,34 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class Subject < ::KubeDSL::DSLObject
8
+ object_field(:group) { KubeDSL::DSL::Flowcontrol::V1beta2::GroupSubject.new }
9
+ value_field :kind
10
+ object_field(:service_account) { KubeDSL::DSL::Flowcontrol::V1beta2::ServiceAccountSubject.new }
11
+ object_field(:user) { KubeDSL::DSL::Flowcontrol::V1beta2::UserSubject.new }
12
+
13
+ validates :group, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::GroupSubject }
14
+ validates :kind, field: { format: :string }, presence: false
15
+ validates :service_account, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::ServiceAccountSubject }
16
+ validates :user, object: { kind_of: KubeDSL::DSL::Flowcontrol::V1beta2::UserSubject }
17
+
18
+ def serialize
19
+ {}.tap do |result|
20
+ result[:group] = group.serialize
21
+ result[:kind] = kind
22
+ result[:serviceAccount] = service_account.serialize
23
+ result[:user] = user.serialize
24
+ end
25
+ end
26
+
27
+ def kind_sym
28
+ :subject
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module Flowcontrol
6
+ module V1beta2
7
+ class UserSubject < ::KubeDSL::DSLObject
8
+ value_field :name
9
+
10
+ validates :name, field: { format: :string }, presence: false
11
+
12
+ def serialize
13
+ {}.tap do |result|
14
+ result[:name] = name
15
+ end
16
+ end
17
+
18
+ def kind_sym
19
+ :user_subject
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,24 @@
1
+ module KubeDSL::DSL::Flowcontrol::V1beta2
2
+ autoload :FlowDistinguisherMethod, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_distinguisher_method'
3
+ autoload :FlowSchema, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_schema'
4
+ autoload :FlowSchemaCondition, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_condition'
5
+ autoload :FlowSchemaList, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_list'
6
+ autoload :FlowSchemaSpec, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_spec'
7
+ autoload :FlowSchemaStatus, 'kube-dsl/dsl/flowcontrol/v1beta2/flow_schema_status'
8
+ autoload :GroupSubject, 'kube-dsl/dsl/flowcontrol/v1beta2/group_subject'
9
+ autoload :LimitResponse, 'kube-dsl/dsl/flowcontrol/v1beta2/limit_response'
10
+ autoload :LimitedPriorityLevelConfiguration, 'kube-dsl/dsl/flowcontrol/v1beta2/limited_priority_level_configuration'
11
+ autoload :NonResourcePolicyRule, 'kube-dsl/dsl/flowcontrol/v1beta2/non_resource_policy_rule'
12
+ autoload :PolicyRulesWithSubjects, 'kube-dsl/dsl/flowcontrol/v1beta2/policy_rules_with_subjects'
13
+ autoload :PriorityLevelConfiguration, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration'
14
+ autoload :PriorityLevelConfigurationCondition, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_condition'
15
+ autoload :PriorityLevelConfigurationList, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_list'
16
+ autoload :PriorityLevelConfigurationReference, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_reference'
17
+ autoload :PriorityLevelConfigurationSpec, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_spec'
18
+ autoload :PriorityLevelConfigurationStatus, 'kube-dsl/dsl/flowcontrol/v1beta2/priority_level_configuration_status'
19
+ autoload :QueuingConfiguration, 'kube-dsl/dsl/flowcontrol/v1beta2/queuing_configuration'
20
+ autoload :ResourcePolicyRule, 'kube-dsl/dsl/flowcontrol/v1beta2/resource_policy_rule'
21
+ autoload :ServiceAccountSubject, 'kube-dsl/dsl/flowcontrol/v1beta2/service_account_subject'
22
+ autoload :Subject, 'kube-dsl/dsl/flowcontrol/v1beta2/subject'
23
+ autoload :UserSubject, 'kube-dsl/dsl/flowcontrol/v1beta2/user_subject'
24
+ end
@@ -1,3 +1,4 @@
1
1
  module KubeDSL::DSL::Flowcontrol
2
2
  autoload :V1beta1, 'kube-dsl/dsl/flowcontrol/v1beta1'
3
+ autoload :V1beta2, 'kube-dsl/dsl/flowcontrol/v1beta2'
3
4
  end
@@ -1,4 +1,3 @@
1
1
  module KubeDSL::DSL::Rbac
2
2
  autoload :V1, 'kube-dsl/dsl/rbac/v1'
3
- autoload :V1alpha1, 'kube-dsl/dsl/rbac/v1alpha1'
4
3
  end
@@ -1,4 +1,3 @@
1
1
  module KubeDSL::DSL::Scheduling
2
2
  autoload :V1, 'kube-dsl/dsl/scheduling/v1'
3
- autoload :V1alpha1, 'kube-dsl/dsl/scheduling/v1alpha1'
4
3
  end
@@ -1,10 +1,4 @@
1
1
  module KubeDSL::DSL::Storage::V1alpha1
2
2
  autoload :CSIStorageCapacity, 'kube-dsl/dsl/storage/v1alpha1/csi_storage_capacity'
3
3
  autoload :CSIStorageCapacityList, 'kube-dsl/dsl/storage/v1alpha1/csi_storage_capacity_list'
4
- autoload :VolumeAttachment, 'kube-dsl/dsl/storage/v1alpha1/volume_attachment'
5
- autoload :VolumeAttachmentList, 'kube-dsl/dsl/storage/v1alpha1/volume_attachment_list'
6
- autoload :VolumeAttachmentSource, 'kube-dsl/dsl/storage/v1alpha1/volume_attachment_source'
7
- autoload :VolumeAttachmentSpec, 'kube-dsl/dsl/storage/v1alpha1/volume_attachment_spec'
8
- autoload :VolumeAttachmentStatus, 'kube-dsl/dsl/storage/v1alpha1/volume_attachment_status'
9
- autoload :VolumeError, 'kube-dsl/dsl/storage/v1alpha1/volume_error'
10
4
  end
@@ -0,0 +1,26 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module V1
6
+ class GRPCAction < ::KubeDSL::DSLObject
7
+ value_field :port
8
+ value_field :service
9
+
10
+ validates :port, field: { format: :integer }, presence: false
11
+ validates :service, field: { format: :string }, presence: false
12
+
13
+ def serialize
14
+ {}.tap do |result|
15
+ result[:port] = port
16
+ result[:service] = service
17
+ end
18
+ end
19
+
20
+ def kind_sym
21
+ :grpc_action
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -4,11 +4,11 @@ module KubeDSL
4
4
  module DSL
5
5
  module V1
6
6
  class Lifecycle < ::KubeDSL::DSLObject
7
- object_field(:post_start) { KubeDSL::DSL::V1::Handler.new }
8
- object_field(:pre_stop) { KubeDSL::DSL::V1::Handler.new }
7
+ object_field(:post_start) { KubeDSL::DSL::V1::LifecycleHandler.new }
8
+ object_field(:pre_stop) { KubeDSL::DSL::V1::LifecycleHandler.new }
9
9
 
10
- validates :post_start, object: { kind_of: KubeDSL::DSL::V1::Handler }
11
- validates :pre_stop, object: { kind_of: KubeDSL::DSL::V1::Handler }
10
+ validates :post_start, object: { kind_of: KubeDSL::DSL::V1::LifecycleHandler }
11
+ validates :pre_stop, object: { kind_of: KubeDSL::DSL::V1::LifecycleHandler }
12
12
 
13
13
  def serialize
14
14
  {}.tap do |result|
@@ -3,7 +3,7 @@
3
3
  module KubeDSL
4
4
  module DSL
5
5
  module V1
6
- class Handler < ::KubeDSL::DSLObject
6
+ class LifecycleHandler < ::KubeDSL::DSLObject
7
7
  object_field(:exec) { KubeDSL::DSL::V1::ExecAction.new }
8
8
  object_field(:http_get) { KubeDSL::DSL::V1::HTTPGetAction.new }
9
9
  object_field(:tcp_socket) { KubeDSL::DSL::V1::TCPSocketAction.new }
@@ -21,7 +21,7 @@ module KubeDSL
21
21
  end
22
22
 
23
23
  def kind_sym
24
- :handler
24
+ :lifecycle_handler
25
25
  end
26
26
  end
27
27
  end
@@ -5,21 +5,27 @@ module KubeDSL
5
5
  module V1
6
6
  class PersistentVolumeClaimStatus < ::KubeDSL::DSLObject
7
7
  value_field :access_modes
8
+ key_value_field(:allocated_resources, format: :string)
8
9
  key_value_field(:capacity, format: :string)
9
10
  array_field(:condition) { KubeDSL::DSL::V1::PersistentVolumeClaimCondition.new }
10
11
  value_field :phase
12
+ value_field :resize_status
11
13
 
12
14
  validates :access_modes, field: { format: :string }, presence: false
15
+ validates :allocated_resources, kv: { value_format: :string }, presence: false
13
16
  validates :capacity, kv: { value_format: :string }, presence: false
14
17
  validates :conditions, array: { kind_of: KubeDSL::DSL::V1::PersistentVolumeClaimCondition }, presence: false
15
18
  validates :phase, field: { format: :string }, presence: false
19
+ validates :resize_status, field: { format: :string }, presence: false
16
20
 
17
21
  def serialize
18
22
  {}.tap do |result|
19
23
  result[:accessModes] = access_modes
24
+ result[:allocatedResources] = allocated_resources.serialize
20
25
  result[:capacity] = capacity.serialize
21
26
  result[:conditions] = conditions.map(&:serialize)
22
27
  result[:phase] = phase
28
+ result[:resizeStatus] = resize_status
23
29
  end
24
30
  end
25
31
 
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+
3
+ module KubeDSL
4
+ module DSL
5
+ module V1
6
+ class PodOS < ::KubeDSL::DSLObject
7
+ value_field :name
8
+
9
+ validates :name, field: { format: :string }, presence: false
10
+
11
+ def serialize
12
+ {}.tap do |result|
13
+ result[:name] = name
14
+ end
15
+ end
16
+
17
+ def kind_sym
18
+ :pod_os
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -21,6 +21,7 @@ module KubeDSL
21
21
  array_field(:init_container) { KubeDSL::DSL::V1::Container.new }
22
22
  value_field :node_name
23
23
  key_value_field(:node_selector, format: :string)
24
+ object_field(:os) { KubeDSL::DSL::V1::PodOS.new }
24
25
  key_value_field(:overhead, format: :string)
25
26
  value_field :preemption_policy
26
27
  value_field :priority
@@ -57,6 +58,7 @@ module KubeDSL
57
58
  validates :init_containers, array: { kind_of: KubeDSL::DSL::V1::Container }, presence: false
58
59
  validates :node_name, field: { format: :string }, presence: false
59
60
  validates :node_selector, kv: { value_format: :string }, presence: false
61
+ validates :os, object: { kind_of: KubeDSL::DSL::V1::PodOS }
60
62
  validates :overhead, kv: { value_format: :string }, presence: false
61
63
  validates :preemption_policy, field: { format: :string }, presence: false
62
64
  validates :priority, field: { format: :integer }, presence: false
@@ -95,6 +97,7 @@ module KubeDSL
95
97
  result[:initContainers] = init_containers.map(&:serialize)
96
98
  result[:nodeName] = node_name
97
99
  result[:nodeSelector] = node_selector.serialize
100
+ result[:os] = os.serialize
98
101
  result[:overhead] = overhead.serialize
99
102
  result[:preemptionPolicy] = preemption_policy
100
103
  result[:priority] = priority
@@ -6,6 +6,7 @@ module KubeDSL
6
6
  class Probe < ::KubeDSL::DSLObject
7
7
  object_field(:exec) { KubeDSL::DSL::V1::ExecAction.new }
8
8
  value_field :failure_threshold
9
+ object_field(:grpc) { KubeDSL::DSL::V1::GRPCAction.new }
9
10
  object_field(:http_get) { KubeDSL::DSL::V1::HTTPGetAction.new }
10
11
  value_field :initial_delay_seconds
11
12
  value_field :period_seconds
@@ -16,6 +17,7 @@ module KubeDSL
16
17
 
17
18
  validates :exec, object: { kind_of: KubeDSL::DSL::V1::ExecAction }
18
19
  validates :failure_threshold, field: { format: :integer }, presence: false
20
+ validates :grpc, object: { kind_of: KubeDSL::DSL::V1::GRPCAction }
19
21
  validates :http_get, object: { kind_of: KubeDSL::DSL::V1::HTTPGetAction }
20
22
  validates :initial_delay_seconds, field: { format: :integer }, presence: false
21
23
  validates :period_seconds, field: { format: :integer }, presence: false
@@ -28,6 +30,7 @@ module KubeDSL
28
30
  {}.tap do |result|
29
31
  result[:exec] = exec.serialize
30
32
  result[:failureThreshold] = failure_threshold
33
+ result[:grpc] = grpc.serialize
31
34
  result[:httpGet] = http_get.serialize
32
35
  result[:initialDelaySeconds] = initial_delay_seconds
33
36
  result[:periodSeconds] = period_seconds
@@ -57,18 +57,19 @@ module KubeDSL::DSL::V1
57
57
  autoload :FlexVolumeSource, 'kube-dsl/dsl/v1/flex_volume_source'
58
58
  autoload :FlockerVolumeSource, 'kube-dsl/dsl/v1/flocker_volume_source'
59
59
  autoload :GCEPersistentDiskVolumeSource, 'kube-dsl/dsl/v1/gce_persistent_disk_volume_source'
60
+ autoload :GRPCAction, 'kube-dsl/dsl/v1/grpc_action'
60
61
  autoload :GitRepoVolumeSource, 'kube-dsl/dsl/v1/git_repo_volume_source'
61
62
  autoload :GlusterfsPersistentVolumeSource, 'kube-dsl/dsl/v1/glusterfs_persistent_volume_source'
62
63
  autoload :GlusterfsVolumeSource, 'kube-dsl/dsl/v1/glusterfs_volume_source'
63
64
  autoload :HTTPGetAction, 'kube-dsl/dsl/v1/http_get_action'
64
65
  autoload :HTTPHeader, 'kube-dsl/dsl/v1/http_header'
65
- autoload :Handler, 'kube-dsl/dsl/v1/handler'
66
66
  autoload :HostAlias, 'kube-dsl/dsl/v1/host_alias'
67
67
  autoload :HostPathVolumeSource, 'kube-dsl/dsl/v1/host_path_volume_source'
68
68
  autoload :ISCSIPersistentVolumeSource, 'kube-dsl/dsl/v1/iscsi_persistent_volume_source'
69
69
  autoload :ISCSIVolumeSource, 'kube-dsl/dsl/v1/iscsi_volume_source'
70
70
  autoload :KeyToPath, 'kube-dsl/dsl/v1/key_to_path'
71
71
  autoload :Lifecycle, 'kube-dsl/dsl/v1/lifecycle'
72
+ autoload :LifecycleHandler, 'kube-dsl/dsl/v1/lifecycle_handler'
72
73
  autoload :LimitRange, 'kube-dsl/dsl/v1/limit_range'
73
74
  autoload :LimitRangeItem, 'kube-dsl/dsl/v1/limit_range_item'
74
75
  autoload :LimitRangeList, 'kube-dsl/dsl/v1/limit_range_list'
@@ -120,6 +121,7 @@ module KubeDSL::DSL::V1
120
121
  autoload :PodDNSConfigOption, 'kube-dsl/dsl/v1/pod_dns_config_option'
121
122
  autoload :PodIP, 'kube-dsl/dsl/v1/pod_ip'
122
123
  autoload :PodList, 'kube-dsl/dsl/v1/pod_list'
124
+ autoload :PodOS, 'kube-dsl/dsl/v1/pod_os'
123
125
  autoload :PodReadinessGate, 'kube-dsl/dsl/v1/pod_readiness_gate'
124
126
  autoload :PodSecurityContext, 'kube-dsl/dsl/v1/pod_security_context'
125
127
  autoload :PodSpec, 'kube-dsl/dsl/v1/pod_spec'