kube-dsl 0.1.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (692) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/LICENSE +21 -0
  4. data/README.md +293 -0
  5. data/Rakefile +4 -0
  6. data/kube-dsl.gemspec +1 -1
  7. data/lib/kube-dsl.rb +6 -0
  8. data/lib/kube-dsl/array_field_res.rb +41 -0
  9. data/lib/kube-dsl/builder.rb +22 -11
  10. data/lib/kube-dsl/default_field_res.rb +28 -0
  11. data/lib/kube-dsl/dsl/admissionregistration/v1/mutating_webhook.rb +25 -8
  12. data/lib/kube-dsl/dsl/admissionregistration/v1/mutating_webhook_configuration.rb +5 -2
  13. data/lib/kube-dsl/dsl/admissionregistration/v1/mutating_webhook_configuration_list.rb +4 -1
  14. data/lib/kube-dsl/dsl/admissionregistration/v1/rule_with_operations.rb +12 -6
  15. data/lib/kube-dsl/dsl/admissionregistration/v1/service_reference.rb +9 -1
  16. data/lib/kube-dsl/dsl/admissionregistration/v1/validating_webhook.rb +23 -8
  17. data/lib/kube-dsl/dsl/admissionregistration/v1/validating_webhook_configuration.rb +5 -2
  18. data/lib/kube-dsl/dsl/admissionregistration/v1/validating_webhook_configuration_list.rb +4 -1
  19. data/lib/kube-dsl/dsl/admissionregistration/v1/webhook_client_config.rb +7 -2
  20. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/mutating_webhook.rb +25 -8
  21. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/mutating_webhook_configuration.rb +5 -2
  22. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/mutating_webhook_configuration_list.rb +4 -1
  23. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/rule_with_operations.rb +12 -6
  24. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/service_reference.rb +9 -1
  25. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/validating_webhook.rb +23 -8
  26. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/validating_webhook_configuration.rb +5 -2
  27. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/validating_webhook_configuration_list.rb +4 -1
  28. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/webhook_client_config.rb +7 -2
  29. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_column_definition.rb +13 -1
  30. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_conversion.rb +4 -1
  31. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition.rb +4 -0
  32. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_condition.rb +11 -1
  33. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_list.rb +4 -1
  34. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_names.rb +15 -5
  35. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_spec.rb +13 -4
  36. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_status.rb +7 -3
  37. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_version.rb +12 -3
  38. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_subresource_scale.rb +7 -1
  39. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_subresources.rb +5 -2
  40. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_validation.rb +2 -0
  41. data/lib/kube-dsl/dsl/apiextensions/v1/external_documentation.rb +5 -1
  42. data/lib/kube-dsl/dsl/apiextensions/v1/json_schema_props.rb +91 -23
  43. data/lib/kube-dsl/dsl/apiextensions/v1/service_reference.rb +9 -1
  44. data/lib/kube-dsl/dsl/apiextensions/v1/webhook_client_config.rb +7 -2
  45. data/lib/kube-dsl/dsl/apiextensions/v1/webhook_conversion.rb +5 -2
  46. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_column_definition.rb +13 -1
  47. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_conversion.rb +7 -3
  48. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition.rb +4 -0
  49. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_condition.rb +11 -1
  50. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_list.rb +4 -1
  51. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_names.rb +15 -5
  52. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_spec.rb +21 -7
  53. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_status.rb +7 -3
  54. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_version.rb +12 -3
  55. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_subresource_scale.rb +7 -1
  56. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_subresources.rb +5 -2
  57. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_validation.rb +2 -0
  58. data/lib/kube-dsl/dsl/apiextensions/v1beta1/external_documentation.rb +5 -1
  59. data/lib/kube-dsl/dsl/apiextensions/v1beta1/json_schema_props.rb +91 -23
  60. data/lib/kube-dsl/dsl/apiextensions/v1beta1/service_reference.rb +9 -1
  61. data/lib/kube-dsl/dsl/apiextensions/v1beta1/webhook_client_config.rb +7 -2
  62. data/lib/kube-dsl/dsl/apiregistration/v1/api_service.rb +4 -0
  63. data/lib/kube-dsl/dsl/apiregistration/v1/api_service_condition.rb +11 -1
  64. data/lib/kube-dsl/dsl/apiregistration/v1/api_service_list.rb +4 -1
  65. data/lib/kube-dsl/dsl/apiregistration/v1/api_service_spec.rb +15 -2
  66. data/lib/kube-dsl/dsl/apiregistration/v1/api_service_status.rb +2 -0
  67. data/lib/kube-dsl/dsl/apiregistration/v1/service_reference.rb +7 -1
  68. data/lib/kube-dsl/dsl/apiregistration/v1beta1/api_service.rb +4 -0
  69. data/lib/kube-dsl/dsl/apiregistration/v1beta1/api_service_condition.rb +11 -1
  70. data/lib/kube-dsl/dsl/apiregistration/v1beta1/api_service_list.rb +4 -1
  71. data/lib/kube-dsl/dsl/apiregistration/v1beta1/api_service_spec.rb +15 -2
  72. data/lib/kube-dsl/dsl/apiregistration/v1beta1/api_service_status.rb +2 -0
  73. data/lib/kube-dsl/dsl/apiregistration/v1beta1/service_reference.rb +7 -1
  74. data/lib/kube-dsl/dsl/apps/v1/controller_revision.rb +8 -3
  75. data/lib/kube-dsl/dsl/apps/v1/controller_revision_list.rb +4 -1
  76. data/lib/kube-dsl/dsl/apps/v1/daemon_set.rb +4 -0
  77. data/lib/kube-dsl/dsl/apps/v1/daemon_set_condition.rb +11 -1
  78. data/lib/kube-dsl/dsl/apps/v1/daemon_set_list.rb +4 -1
  79. data/lib/kube-dsl/dsl/apps/v1/daemon_set_spec.rb +8 -1
  80. data/lib/kube-dsl/dsl/apps/v1/daemon_set_status.rb +21 -2
  81. data/lib/kube-dsl/dsl/apps/v1/daemon_set_update_strategy.rb +5 -2
  82. data/lib/kube-dsl/dsl/apps/v1/deployment.rb +4 -0
  83. data/lib/kube-dsl/dsl/apps/v1/deployment_condition.rb +13 -1
  84. data/lib/kube-dsl/dsl/apps/v1/deployment_list.rb +4 -1
  85. data/lib/kube-dsl/dsl/apps/v1/deployment_spec.rb +14 -1
  86. data/lib/kube-dsl/dsl/apps/v1/deployment_status.rb +17 -2
  87. data/lib/kube-dsl/dsl/apps/v1/deployment_strategy.rb +5 -2
  88. data/lib/kube-dsl/dsl/apps/v1/replica_set.rb +4 -0
  89. data/lib/kube-dsl/dsl/apps/v1/replica_set_condition.rb +11 -1
  90. data/lib/kube-dsl/dsl/apps/v1/replica_set_list.rb +4 -1
  91. data/lib/kube-dsl/dsl/apps/v1/replica_set_spec.rb +7 -1
  92. data/lib/kube-dsl/dsl/apps/v1/replica_set_status.rb +13 -2
  93. data/lib/kube-dsl/dsl/apps/v1/rolling_update_daemon_set.rb +3 -1
  94. data/lib/kube-dsl/dsl/apps/v1/rolling_update_deployment.rb +5 -1
  95. data/lib/kube-dsl/dsl/apps/v1/rolling_update_stateful_set_strategy.rb +3 -1
  96. data/lib/kube-dsl/dsl/apps/v1/stateful_set.rb +4 -0
  97. data/lib/kube-dsl/dsl/apps/v1/stateful_set_condition.rb +11 -1
  98. data/lib/kube-dsl/dsl/apps/v1/stateful_set_list.rb +4 -1
  99. data/lib/kube-dsl/dsl/apps/v1/stateful_set_spec.rb +16 -4
  100. data/lib/kube-dsl/dsl/apps/v1/stateful_set_status.rb +19 -2
  101. data/lib/kube-dsl/dsl/apps/v1/stateful_set_update_strategy.rb +5 -2
  102. data/lib/kube-dsl/dsl/apps/v1beta1/controller_revision.rb +8 -3
  103. data/lib/kube-dsl/dsl/apps/v1beta1/controller_revision_list.rb +4 -1
  104. data/lib/kube-dsl/dsl/apps/v1beta1/deployment.rb +4 -0
  105. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_condition.rb +13 -1
  106. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_list.rb +4 -1
  107. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_rollback.rb +6 -2
  108. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_spec.rb +15 -1
  109. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_status.rb +17 -2
  110. data/lib/kube-dsl/dsl/apps/v1beta1/deployment_strategy.rb +5 -2
  111. data/lib/kube-dsl/dsl/apps/v1beta1/rollback_config.rb +3 -1
  112. data/lib/kube-dsl/dsl/apps/v1beta1/rolling_update_deployment.rb +5 -1
  113. data/lib/kube-dsl/dsl/apps/v1beta1/rolling_update_stateful_set_strategy.rb +3 -1
  114. data/lib/kube-dsl/dsl/apps/v1beta1/scale.rb +4 -0
  115. data/lib/kube-dsl/dsl/apps/v1beta1/scale_spec.rb +3 -1
  116. data/lib/kube-dsl/dsl/apps/v1beta1/scale_status.rb +8 -3
  117. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set.rb +4 -0
  118. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set_condition.rb +11 -1
  119. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set_list.rb +4 -1
  120. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set_spec.rb +16 -4
  121. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set_status.rb +19 -2
  122. data/lib/kube-dsl/dsl/apps/v1beta1/stateful_set_update_strategy.rb +5 -2
  123. data/lib/kube-dsl/dsl/apps/v1beta2/controller_revision.rb +8 -3
  124. data/lib/kube-dsl/dsl/apps/v1beta2/controller_revision_list.rb +4 -1
  125. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set.rb +4 -0
  126. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set_condition.rb +11 -1
  127. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set_list.rb +4 -1
  128. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set_spec.rb +8 -1
  129. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set_status.rb +21 -2
  130. data/lib/kube-dsl/dsl/apps/v1beta2/daemon_set_update_strategy.rb +5 -2
  131. data/lib/kube-dsl/dsl/apps/v1beta2/deployment.rb +4 -0
  132. data/lib/kube-dsl/dsl/apps/v1beta2/deployment_condition.rb +13 -1
  133. data/lib/kube-dsl/dsl/apps/v1beta2/deployment_list.rb +4 -1
  134. data/lib/kube-dsl/dsl/apps/v1beta2/deployment_spec.rb +14 -1
  135. data/lib/kube-dsl/dsl/apps/v1beta2/deployment_status.rb +17 -2
  136. data/lib/kube-dsl/dsl/apps/v1beta2/deployment_strategy.rb +5 -2
  137. data/lib/kube-dsl/dsl/apps/v1beta2/replica_set.rb +4 -0
  138. data/lib/kube-dsl/dsl/apps/v1beta2/replica_set_condition.rb +11 -1
  139. data/lib/kube-dsl/dsl/apps/v1beta2/replica_set_list.rb +4 -1
  140. data/lib/kube-dsl/dsl/apps/v1beta2/replica_set_spec.rb +7 -1
  141. data/lib/kube-dsl/dsl/apps/v1beta2/replica_set_status.rb +13 -2
  142. data/lib/kube-dsl/dsl/apps/v1beta2/rolling_update_daemon_set.rb +3 -1
  143. data/lib/kube-dsl/dsl/apps/v1beta2/rolling_update_deployment.rb +5 -1
  144. data/lib/kube-dsl/dsl/apps/v1beta2/rolling_update_stateful_set_strategy.rb +3 -1
  145. data/lib/kube-dsl/dsl/apps/v1beta2/scale.rb +4 -0
  146. data/lib/kube-dsl/dsl/apps/v1beta2/scale_spec.rb +3 -1
  147. data/lib/kube-dsl/dsl/apps/v1beta2/scale_status.rb +8 -3
  148. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set.rb +4 -0
  149. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set_condition.rb +11 -1
  150. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set_list.rb +4 -1
  151. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set_spec.rb +16 -4
  152. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set_status.rb +19 -2
  153. data/lib/kube-dsl/dsl/apps/v1beta2/stateful_set_update_strategy.rb +5 -2
  154. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/audit_sink.rb +3 -0
  155. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/audit_sink_list.rb +4 -1
  156. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/audit_sink_spec.rb +3 -0
  157. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/policy.rb +5 -2
  158. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/service_reference.rb +9 -1
  159. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/webhook.rb +3 -0
  160. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/webhook_client_config.rb +7 -2
  161. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/webhook_throttle_config.rb +5 -1
  162. data/lib/kube-dsl/dsl/authentication/v1/bound_object_reference.rb +9 -1
  163. data/lib/kube-dsl/dsl/authentication/v1/token_request.rb +4 -0
  164. data/lib/kube-dsl/dsl/authentication/v1/token_request_spec.rb +7 -3
  165. data/lib/kube-dsl/dsl/authentication/v1/token_request_status.rb +5 -1
  166. data/lib/kube-dsl/dsl/authentication/v1/token_review.rb +4 -0
  167. data/lib/kube-dsl/dsl/authentication/v1/token_review_spec.rb +6 -3
  168. data/lib/kube-dsl/dsl/authentication/v1/token_review_status.rb +9 -3
  169. data/lib/kube-dsl/dsl/authentication/v1/user_info.rb +11 -5
  170. data/lib/kube-dsl/dsl/authentication/v1beta1/token_review.rb +4 -0
  171. data/lib/kube-dsl/dsl/authentication/v1beta1/token_review_spec.rb +6 -3
  172. data/lib/kube-dsl/dsl/authentication/v1beta1/token_review_status.rb +9 -3
  173. data/lib/kube-dsl/dsl/authentication/v1beta1/user_info.rb +11 -5
  174. data/lib/kube-dsl/dsl/authorization/v1/local_subject_access_review.rb +4 -0
  175. data/lib/kube-dsl/dsl/authorization/v1/non_resource_attributes.rb +5 -1
  176. data/lib/kube-dsl/dsl/authorization/v1/non_resource_rule.rb +6 -3
  177. data/lib/kube-dsl/dsl/authorization/v1/resource_attributes.rb +15 -1
  178. data/lib/kube-dsl/dsl/authorization/v1/resource_rule.rb +9 -4
  179. data/lib/kube-dsl/dsl/authorization/v1/self_subject_access_review.rb +4 -0
  180. data/lib/kube-dsl/dsl/authorization/v1/self_subject_access_review_spec.rb +3 -0
  181. data/lib/kube-dsl/dsl/authorization/v1/self_subject_rules_review.rb +4 -0
  182. data/lib/kube-dsl/dsl/authorization/v1/self_subject_rules_review_spec.rb +3 -1
  183. data/lib/kube-dsl/dsl/authorization/v1/subject_access_review.rb +4 -0
  184. data/lib/kube-dsl/dsl/authorization/v1/subject_access_review_spec.rb +14 -6
  185. data/lib/kube-dsl/dsl/authorization/v1/subject_access_review_status.rb +9 -1
  186. data/lib/kube-dsl/dsl/authorization/v1/subject_rules_review_status.rb +7 -1
  187. data/lib/kube-dsl/dsl/authorization/v1beta1/local_subject_access_review.rb +4 -0
  188. data/lib/kube-dsl/dsl/authorization/v1beta1/non_resource_attributes.rb +5 -1
  189. data/lib/kube-dsl/dsl/authorization/v1beta1/non_resource_rule.rb +6 -3
  190. data/lib/kube-dsl/dsl/authorization/v1beta1/resource_attributes.rb +15 -1
  191. data/lib/kube-dsl/dsl/authorization/v1beta1/resource_rule.rb +9 -4
  192. data/lib/kube-dsl/dsl/authorization/v1beta1/self_subject_access_review.rb +4 -0
  193. data/lib/kube-dsl/dsl/authorization/v1beta1/self_subject_access_review_spec.rb +3 -0
  194. data/lib/kube-dsl/dsl/authorization/v1beta1/self_subject_rules_review.rb +4 -0
  195. data/lib/kube-dsl/dsl/authorization/v1beta1/self_subject_rules_review_spec.rb +3 -1
  196. data/lib/kube-dsl/dsl/authorization/v1beta1/subject_access_review.rb +4 -0
  197. data/lib/kube-dsl/dsl/authorization/v1beta1/subject_access_review_spec.rb +15 -7
  198. data/lib/kube-dsl/dsl/authorization/v1beta1/subject_access_review_status.rb +9 -1
  199. data/lib/kube-dsl/dsl/authorization/v1beta1/subject_rules_review_status.rb +7 -1
  200. data/lib/kube-dsl/dsl/autoscaling/v1/cross_version_object_reference.rb +7 -1
  201. data/lib/kube-dsl/dsl/autoscaling/v1/horizontal_pod_autoscaler.rb +4 -0
  202. data/lib/kube-dsl/dsl/autoscaling/v1/horizontal_pod_autoscaler_list.rb +4 -1
  203. data/lib/kube-dsl/dsl/autoscaling/v1/horizontal_pod_autoscaler_spec.rb +9 -2
  204. data/lib/kube-dsl/dsl/autoscaling/v1/horizontal_pod_autoscaler_status.rb +11 -1
  205. data/lib/kube-dsl/dsl/autoscaling/v1/scale.rb +4 -0
  206. data/lib/kube-dsl/dsl/autoscaling/v1/scale_spec.rb +3 -1
  207. data/lib/kube-dsl/dsl/autoscaling/v1/scale_status.rb +5 -1
  208. data/lib/kube-dsl/dsl/autoscaling/v2beta1/cross_version_object_reference.rb +7 -1
  209. data/lib/kube-dsl/dsl/autoscaling/v2beta1/external_metric_source.rb +9 -2
  210. data/lib/kube-dsl/dsl/autoscaling/v2beta1/external_metric_status.rb +8 -1
  211. data/lib/kube-dsl/dsl/autoscaling/v2beta1/horizontal_pod_autoscaler.rb +4 -0
  212. data/lib/kube-dsl/dsl/autoscaling/v2beta1/horizontal_pod_autoscaler_condition.rb +11 -1
  213. data/lib/kube-dsl/dsl/autoscaling/v2beta1/horizontal_pod_autoscaler_list.rb +4 -1
  214. data/lib/kube-dsl/dsl/autoscaling/v2beta1/horizontal_pod_autoscaler_spec.rb +8 -2
  215. data/lib/kube-dsl/dsl/autoscaling/v2beta1/horizontal_pod_autoscaler_status.rb +13 -3
  216. data/lib/kube-dsl/dsl/autoscaling/v2beta1/metric_spec.rb +8 -2
  217. data/lib/kube-dsl/dsl/autoscaling/v2beta1/metric_status.rb +8 -2
  218. data/lib/kube-dsl/dsl/autoscaling/v2beta1/object_metric_source.rb +10 -2
  219. data/lib/kube-dsl/dsl/autoscaling/v2beta1/object_metric_status.rb +9 -1
  220. data/lib/kube-dsl/dsl/autoscaling/v2beta1/pods_metric_source.rb +7 -2
  221. data/lib/kube-dsl/dsl/autoscaling/v2beta1/pods_metric_status.rb +6 -1
  222. data/lib/kube-dsl/dsl/autoscaling/v2beta1/resource_metric_source.rb +7 -1
  223. data/lib/kube-dsl/dsl/autoscaling/v2beta1/resource_metric_status.rb +7 -1
  224. data/lib/kube-dsl/dsl/autoscaling/v2beta2/cross_version_object_reference.rb +7 -1
  225. data/lib/kube-dsl/dsl/autoscaling/v2beta2/external_metric_source.rb +3 -0
  226. data/lib/kube-dsl/dsl/autoscaling/v2beta2/external_metric_status.rb +3 -0
  227. data/lib/kube-dsl/dsl/autoscaling/v2beta2/horizontal_pod_autoscaler.rb +4 -0
  228. data/lib/kube-dsl/dsl/autoscaling/v2beta2/horizontal_pod_autoscaler_condition.rb +11 -1
  229. data/lib/kube-dsl/dsl/autoscaling/v2beta2/horizontal_pod_autoscaler_list.rb +4 -1
  230. data/lib/kube-dsl/dsl/autoscaling/v2beta2/horizontal_pod_autoscaler_spec.rb +8 -2
  231. data/lib/kube-dsl/dsl/autoscaling/v2beta2/horizontal_pod_autoscaler_status.rb +13 -3
  232. data/lib/kube-dsl/dsl/autoscaling/v2beta2/metric_identifier.rb +4 -1
  233. data/lib/kube-dsl/dsl/autoscaling/v2beta2/metric_spec.rb +8 -2
  234. data/lib/kube-dsl/dsl/autoscaling/v2beta2/metric_status.rb +8 -2
  235. data/lib/kube-dsl/dsl/autoscaling/v2beta2/metric_target.rb +9 -1
  236. data/lib/kube-dsl/dsl/autoscaling/v2beta2/metric_value_status.rb +7 -1
  237. data/lib/kube-dsl/dsl/autoscaling/v2beta2/object_metric_source.rb +4 -0
  238. data/lib/kube-dsl/dsl/autoscaling/v2beta2/object_metric_status.rb +4 -0
  239. data/lib/kube-dsl/dsl/autoscaling/v2beta2/pods_metric_source.rb +3 -0
  240. data/lib/kube-dsl/dsl/autoscaling/v2beta2/pods_metric_status.rb +3 -0
  241. data/lib/kube-dsl/dsl/autoscaling/v2beta2/resource_metric_source.rb +4 -1
  242. data/lib/kube-dsl/dsl/autoscaling/v2beta2/resource_metric_status.rb +5 -2
  243. data/lib/kube-dsl/dsl/batch/v1/job.rb +4 -0
  244. data/lib/kube-dsl/dsl/batch/v1/job_condition.rb +13 -1
  245. data/lib/kube-dsl/dsl/batch/v1/job_list.rb +4 -1
  246. data/lib/kube-dsl/dsl/batch/v1/job_spec.rb +16 -2
  247. data/lib/kube-dsl/dsl/batch/v1/job_status.rb +13 -2
  248. data/lib/kube-dsl/dsl/batch/v1beta1/cron_job.rb +4 -0
  249. data/lib/kube-dsl/dsl/batch/v1beta1/cron_job_list.rb +4 -1
  250. data/lib/kube-dsl/dsl/batch/v1beta1/cron_job_spec.rb +15 -2
  251. data/lib/kube-dsl/dsl/batch/v1beta1/cron_job_status.rb +5 -2
  252. data/lib/kube-dsl/dsl/batch/v1beta1/job_template_spec.rb +3 -0
  253. data/lib/kube-dsl/dsl/batch/v2alpha1/cron_job.rb +4 -0
  254. data/lib/kube-dsl/dsl/batch/v2alpha1/cron_job_list.rb +4 -1
  255. data/lib/kube-dsl/dsl/batch/v2alpha1/cron_job_spec.rb +15 -2
  256. data/lib/kube-dsl/dsl/batch/v2alpha1/cron_job_status.rb +5 -2
  257. data/lib/kube-dsl/dsl/batch/v2alpha1/job_template_spec.rb +3 -0
  258. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request.rb +4 -0
  259. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request_condition.rb +9 -1
  260. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request_list.rb +4 -1
  261. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request_spec.rb +16 -7
  262. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request_status.rb +4 -1
  263. data/lib/kube-dsl/dsl/coordination/v1/lease.rb +3 -0
  264. data/lib/kube-dsl/dsl/coordination/v1/lease_list.rb +4 -1
  265. data/lib/kube-dsl/dsl/coordination/v1/lease_spec.rb +11 -1
  266. data/lib/kube-dsl/dsl/coordination/v1beta1/lease.rb +3 -0
  267. data/lib/kube-dsl/dsl/coordination/v1beta1/lease_list.rb +4 -1
  268. data/lib/kube-dsl/dsl/coordination/v1beta1/lease_spec.rb +11 -1
  269. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint.rb +10 -4
  270. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint_conditions.rb +3 -1
  271. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint_port.rb +9 -1
  272. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint_slice.rb +10 -5
  273. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint_slice_list.rb +4 -1
  274. data/lib/kube-dsl/dsl/events/v1beta1/event.rb +33 -8
  275. data/lib/kube-dsl/dsl/events/v1beta1/event_list.rb +4 -1
  276. data/lib/kube-dsl/dsl/events/v1beta1/event_series.rb +7 -1
  277. data/lib/kube-dsl/dsl/extensions/v1beta1/allowed_csi_driver.rb +3 -1
  278. data/lib/kube-dsl/dsl/extensions/v1beta1/allowed_flex_volume.rb +3 -1
  279. data/lib/kube-dsl/dsl/extensions/v1beta1/allowed_host_path.rb +5 -1
  280. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set.rb +4 -0
  281. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set_condition.rb +11 -1
  282. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set_list.rb +4 -1
  283. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set_spec.rb +11 -2
  284. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set_status.rb +21 -2
  285. data/lib/kube-dsl/dsl/extensions/v1beta1/daemon_set_update_strategy.rb +5 -2
  286. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment.rb +4 -0
  287. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_condition.rb +13 -1
  288. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_list.rb +4 -1
  289. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_rollback.rb +6 -2
  290. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_spec.rb +15 -1
  291. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_status.rb +17 -2
  292. data/lib/kube-dsl/dsl/extensions/v1beta1/deployment_strategy.rb +5 -2
  293. data/lib/kube-dsl/dsl/extensions/v1beta1/fs_group_strategy_options.rb +5 -2
  294. data/lib/kube-dsl/dsl/extensions/v1beta1/host_port_range.rb +5 -1
  295. data/lib/kube-dsl/dsl/extensions/v1beta1/http_ingress_path.rb +5 -2
  296. data/lib/kube-dsl/dsl/extensions/v1beta1/http_ingress_rule_value.rb +2 -0
  297. data/lib/kube-dsl/dsl/extensions/v1beta1/id_range.rb +5 -1
  298. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress.rb +4 -0
  299. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_backend.rb +5 -1
  300. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_list.rb +4 -1
  301. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_rule.rb +4 -1
  302. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_spec.rb +6 -2
  303. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_status.rb +2 -0
  304. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_tls.rb +6 -3
  305. data/lib/kube-dsl/dsl/extensions/v1beta1/ip_block.rb +6 -3
  306. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy.rb +3 -0
  307. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_egress_rule.rb +3 -0
  308. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_ingress_rule.rb +3 -0
  309. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_list.rb +4 -1
  310. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_peer.rb +4 -0
  311. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_port.rb +5 -1
  312. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_spec.rb +7 -2
  313. data/lib/kube-dsl/dsl/extensions/v1beta1/pod_security_policy.rb +3 -0
  314. data/lib/kube-dsl/dsl/extensions/v1beta1/pod_security_policy_list.rb +4 -1
  315. data/lib/kube-dsl/dsl/extensions/v1beta1/pod_security_policy_spec.rb +50 -19
  316. data/lib/kube-dsl/dsl/extensions/v1beta1/replica_set.rb +4 -0
  317. data/lib/kube-dsl/dsl/extensions/v1beta1/replica_set_condition.rb +11 -1
  318. data/lib/kube-dsl/dsl/extensions/v1beta1/replica_set_list.rb +4 -1
  319. data/lib/kube-dsl/dsl/extensions/v1beta1/replica_set_spec.rb +7 -1
  320. data/lib/kube-dsl/dsl/extensions/v1beta1/replica_set_status.rb +13 -2
  321. data/lib/kube-dsl/dsl/extensions/v1beta1/rollback_config.rb +3 -1
  322. data/lib/kube-dsl/dsl/extensions/v1beta1/rolling_update_daemon_set.rb +3 -1
  323. data/lib/kube-dsl/dsl/extensions/v1beta1/rolling_update_deployment.rb +5 -1
  324. data/lib/kube-dsl/dsl/extensions/v1beta1/run_as_group_strategy_options.rb +5 -2
  325. data/lib/kube-dsl/dsl/extensions/v1beta1/run_as_user_strategy_options.rb +5 -2
  326. data/lib/kube-dsl/dsl/extensions/v1beta1/runtime_class_strategy_options.rb +6 -3
  327. data/lib/kube-dsl/dsl/extensions/v1beta1/scale.rb +4 -0
  328. data/lib/kube-dsl/dsl/extensions/v1beta1/scale_spec.rb +3 -1
  329. data/lib/kube-dsl/dsl/extensions/v1beta1/scale_status.rb +8 -3
  330. data/lib/kube-dsl/dsl/extensions/v1beta1/se_linux_strategy_options.rb +4 -1
  331. data/lib/kube-dsl/dsl/extensions/v1beta1/supplemental_groups_strategy_options.rb +5 -2
  332. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_distinguisher_method.rb +3 -1
  333. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_schema.rb +4 -0
  334. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_schema_condition.rb +11 -1
  335. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_schema_list.rb +4 -1
  336. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_schema_spec.rb +9 -4
  337. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/flow_schema_status.rb +2 -0
  338. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/group_subject.rb +3 -1
  339. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/limit_response.rb +5 -2
  340. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/limited_priority_level_configuration.rb +4 -1
  341. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/non_resource_policy_rule.rb +6 -3
  342. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/policy_rules_with_subjects.rb +4 -0
  343. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration.rb +4 -0
  344. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration_condition.rb +11 -1
  345. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration_list.rb +4 -1
  346. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration_reference.rb +3 -1
  347. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration_spec.rb +5 -2
  348. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/priority_level_configuration_status.rb +2 -0
  349. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/queuing_configuration.rb +7 -1
  350. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/resource_policy_rule.rb +12 -6
  351. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/service_account_subject.rb +5 -1
  352. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/subject.rb +7 -2
  353. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/user_subject.rb +3 -1
  354. data/lib/kube-dsl/dsl/meta/v1/api_group.rb +8 -3
  355. data/lib/kube-dsl/dsl/meta/v1/api_group_list.rb +3 -1
  356. data/lib/kube-dsl/dsl/meta/v1/api_resource.rb +24 -7
  357. data/lib/kube-dsl/dsl/meta/v1/api_resource_list.rb +5 -2
  358. data/lib/kube-dsl/dsl/meta/v1/api_versions.rb +4 -1
  359. data/lib/kube-dsl/dsl/meta/v1/delete_options.rb +15 -5
  360. data/lib/kube-dsl/dsl/meta/v1/group_version_for_discovery.rb +5 -1
  361. data/lib/kube-dsl/dsl/meta/v1/label_selector.rb +4 -1
  362. data/lib/kube-dsl/dsl/meta/v1/label_selector_requirement.rb +7 -2
  363. data/lib/kube-dsl/dsl/meta/v1/list_meta.rb +9 -1
  364. data/lib/kube-dsl/dsl/meta/v1/managed_fields_entry.rb +13 -1
  365. data/lib/kube-dsl/dsl/meta/v1/object_meta.rb +36 -9
  366. data/lib/kube-dsl/dsl/meta/v1/owner_reference.rb +13 -1
  367. data/lib/kube-dsl/dsl/meta/v1/preconditions.rb +5 -1
  368. data/lib/kube-dsl/dsl/meta/v1/server_address_by_client_cidr.rb +5 -1
  369. data/lib/kube-dsl/dsl/meta/v1/status.rb +14 -4
  370. data/lib/kube-dsl/dsl/meta/v1/status_cause.rb +7 -1
  371. data/lib/kube-dsl/dsl/meta/v1/status_details.rb +13 -2
  372. data/lib/kube-dsl/dsl/meta/v1/watch_event.rb +5 -1
  373. data/lib/kube-dsl/dsl/networking/v1/ip_block.rb +6 -3
  374. data/lib/kube-dsl/dsl/networking/v1/network_policy.rb +3 -0
  375. data/lib/kube-dsl/dsl/networking/v1/network_policy_egress_rule.rb +3 -0
  376. data/lib/kube-dsl/dsl/networking/v1/network_policy_ingress_rule.rb +3 -0
  377. data/lib/kube-dsl/dsl/networking/v1/network_policy_list.rb +4 -1
  378. data/lib/kube-dsl/dsl/networking/v1/network_policy_peer.rb +4 -0
  379. data/lib/kube-dsl/dsl/networking/v1/network_policy_port.rb +5 -1
  380. data/lib/kube-dsl/dsl/networking/v1/network_policy_spec.rb +7 -2
  381. data/lib/kube-dsl/dsl/networking/v1beta1/http_ingress_path.rb +5 -2
  382. data/lib/kube-dsl/dsl/networking/v1beta1/http_ingress_rule_value.rb +2 -0
  383. data/lib/kube-dsl/dsl/networking/v1beta1/ingress.rb +4 -0
  384. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_backend.rb +5 -1
  385. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_list.rb +4 -1
  386. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_rule.rb +4 -1
  387. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_spec.rb +6 -2
  388. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_status.rb +2 -0
  389. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_tls.rb +6 -3
  390. data/lib/kube-dsl/dsl/node/v1alpha1/overhead.rb +3 -1
  391. data/lib/kube-dsl/dsl/node/v1alpha1/runtime_class.rb +3 -0
  392. data/lib/kube-dsl/dsl/node/v1alpha1/runtime_class_list.rb +4 -1
  393. data/lib/kube-dsl/dsl/node/v1alpha1/runtime_class_spec.rb +6 -2
  394. data/lib/kube-dsl/dsl/node/v1alpha1/scheduling.rb +5 -2
  395. data/lib/kube-dsl/dsl/node/v1beta1/overhead.rb +3 -1
  396. data/lib/kube-dsl/dsl/node/v1beta1/runtime_class.rb +7 -2
  397. data/lib/kube-dsl/dsl/node/v1beta1/runtime_class_list.rb +4 -1
  398. data/lib/kube-dsl/dsl/node/v1beta1/scheduling.rb +5 -2
  399. data/lib/kube-dsl/dsl/policy/v1beta1/allowed_csi_driver.rb +3 -1
  400. data/lib/kube-dsl/dsl/policy/v1beta1/allowed_flex_volume.rb +3 -1
  401. data/lib/kube-dsl/dsl/policy/v1beta1/allowed_host_path.rb +5 -1
  402. data/lib/kube-dsl/dsl/policy/v1beta1/eviction.rb +4 -1
  403. data/lib/kube-dsl/dsl/policy/v1beta1/fs_group_strategy_options.rb +5 -2
  404. data/lib/kube-dsl/dsl/policy/v1beta1/host_port_range.rb +5 -1
  405. data/lib/kube-dsl/dsl/policy/v1beta1/id_range.rb +5 -1
  406. data/lib/kube-dsl/dsl/policy/v1beta1/pod_disruption_budget.rb +4 -0
  407. data/lib/kube-dsl/dsl/policy/v1beta1/pod_disruption_budget_list.rb +4 -1
  408. data/lib/kube-dsl/dsl/policy/v1beta1/pod_disruption_budget_spec.rb +6 -1
  409. data/lib/kube-dsl/dsl/policy/v1beta1/pod_disruption_budget_status.rb +14 -3
  410. data/lib/kube-dsl/dsl/policy/v1beta1/pod_security_policy.rb +3 -0
  411. data/lib/kube-dsl/dsl/policy/v1beta1/pod_security_policy_list.rb +4 -1
  412. data/lib/kube-dsl/dsl/policy/v1beta1/pod_security_policy_spec.rb +50 -19
  413. data/lib/kube-dsl/dsl/policy/v1beta1/run_as_group_strategy_options.rb +5 -2
  414. data/lib/kube-dsl/dsl/policy/v1beta1/run_as_user_strategy_options.rb +5 -2
  415. data/lib/kube-dsl/dsl/policy/v1beta1/runtime_class_strategy_options.rb +6 -3
  416. data/lib/kube-dsl/dsl/policy/v1beta1/se_linux_strategy_options.rb +4 -1
  417. data/lib/kube-dsl/dsl/policy/v1beta1/supplemental_groups_strategy_options.rb +5 -2
  418. data/lib/kube-dsl/dsl/rbac/v1/aggregation_rule.rb +2 -0
  419. data/lib/kube-dsl/dsl/rbac/v1/cluster_role.rb +7 -3
  420. data/lib/kube-dsl/dsl/rbac/v1/cluster_role_binding.rb +6 -2
  421. data/lib/kube-dsl/dsl/rbac/v1/cluster_role_binding_list.rb +4 -1
  422. data/lib/kube-dsl/dsl/rbac/v1/cluster_role_list.rb +4 -1
  423. data/lib/kube-dsl/dsl/rbac/v1/policy_rule.rb +12 -6
  424. data/lib/kube-dsl/dsl/rbac/v1/role.rb +5 -2
  425. data/lib/kube-dsl/dsl/rbac/v1/role_binding.rb +6 -2
  426. data/lib/kube-dsl/dsl/rbac/v1/role_binding_list.rb +4 -1
  427. data/lib/kube-dsl/dsl/rbac/v1/role_list.rb +4 -1
  428. data/lib/kube-dsl/dsl/rbac/v1/role_ref.rb +7 -1
  429. data/lib/kube-dsl/dsl/rbac/v1/subject.rb +9 -1
  430. data/lib/kube-dsl/dsl/rbac/v1alpha1/aggregation_rule.rb +2 -0
  431. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role.rb +7 -3
  432. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role_binding.rb +6 -2
  433. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role_binding_list.rb +4 -1
  434. data/lib/kube-dsl/dsl/rbac/v1alpha1/cluster_role_list.rb +4 -1
  435. data/lib/kube-dsl/dsl/rbac/v1alpha1/policy_rule.rb +12 -6
  436. data/lib/kube-dsl/dsl/rbac/v1alpha1/role.rb +5 -2
  437. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_binding.rb +6 -2
  438. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_binding_list.rb +4 -1
  439. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_list.rb +4 -1
  440. data/lib/kube-dsl/dsl/rbac/v1alpha1/role_ref.rb +7 -1
  441. data/lib/kube-dsl/dsl/rbac/v1alpha1/subject.rb +9 -1
  442. data/lib/kube-dsl/dsl/rbac/v1beta1/aggregation_rule.rb +2 -0
  443. data/lib/kube-dsl/dsl/rbac/v1beta1/cluster_role.rb +7 -3
  444. data/lib/kube-dsl/dsl/rbac/v1beta1/cluster_role_binding.rb +6 -2
  445. data/lib/kube-dsl/dsl/rbac/v1beta1/cluster_role_binding_list.rb +4 -1
  446. data/lib/kube-dsl/dsl/rbac/v1beta1/cluster_role_list.rb +4 -1
  447. data/lib/kube-dsl/dsl/rbac/v1beta1/policy_rule.rb +12 -6
  448. data/lib/kube-dsl/dsl/rbac/v1beta1/role.rb +5 -2
  449. data/lib/kube-dsl/dsl/rbac/v1beta1/role_binding.rb +6 -2
  450. data/lib/kube-dsl/dsl/rbac/v1beta1/role_binding_list.rb +4 -1
  451. data/lib/kube-dsl/dsl/rbac/v1beta1/role_list.rb +4 -1
  452. data/lib/kube-dsl/dsl/rbac/v1beta1/role_ref.rb +7 -1
  453. data/lib/kube-dsl/dsl/rbac/v1beta1/subject.rb +9 -1
  454. data/lib/kube-dsl/dsl/scheduling/v1/priority_class.rb +12 -3
  455. data/lib/kube-dsl/dsl/scheduling/v1/priority_class_list.rb +4 -1
  456. data/lib/kube-dsl/dsl/scheduling/v1alpha1/priority_class.rb +12 -3
  457. data/lib/kube-dsl/dsl/scheduling/v1alpha1/priority_class_list.rb +4 -1
  458. data/lib/kube-dsl/dsl/scheduling/v1beta1/priority_class.rb +12 -3
  459. data/lib/kube-dsl/dsl/scheduling/v1beta1/priority_class_list.rb +4 -1
  460. data/lib/kube-dsl/dsl/settings/v1alpha1/pod_preset.rb +3 -0
  461. data/lib/kube-dsl/dsl/settings/v1alpha1/pod_preset_list.rb +4 -1
  462. data/lib/kube-dsl/dsl/settings/v1alpha1/pod_preset_spec.rb +8 -2
  463. data/lib/kube-dsl/dsl/storage/v1/csi_node.rb +3 -0
  464. data/lib/kube-dsl/dsl/storage/v1/csi_node_driver.rb +9 -3
  465. data/lib/kube-dsl/dsl/storage/v1/csi_node_list.rb +4 -1
  466. data/lib/kube-dsl/dsl/storage/v1/csi_node_spec.rb +2 -0
  467. data/lib/kube-dsl/dsl/storage/v1/storage_class.rb +20 -8
  468. data/lib/kube-dsl/dsl/storage/v1/storage_class_list.rb +4 -1
  469. data/lib/kube-dsl/dsl/storage/v1/volume_attachment.rb +4 -0
  470. data/lib/kube-dsl/dsl/storage/v1/volume_attachment_list.rb +4 -1
  471. data/lib/kube-dsl/dsl/storage/v1/volume_attachment_source.rb +5 -2
  472. data/lib/kube-dsl/dsl/storage/v1/volume_attachment_spec.rb +6 -1
  473. data/lib/kube-dsl/dsl/storage/v1/volume_attachment_status.rb +9 -4
  474. data/lib/kube-dsl/dsl/storage/v1/volume_error.rb +5 -1
  475. data/lib/kube-dsl/dsl/storage/v1/volume_node_resources.rb +3 -1
  476. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment.rb +4 -0
  477. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_list.rb +4 -1
  478. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_source.rb +5 -2
  479. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_spec.rb +6 -1
  480. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_attachment_status.rb +9 -4
  481. data/lib/kube-dsl/dsl/storage/v1alpha1/volume_error.rb +5 -1
  482. data/lib/kube-dsl/dsl/storage/v1beta1/csi_driver.rb +3 -0
  483. data/lib/kube-dsl/dsl/storage/v1beta1/csi_driver_list.rb +4 -1
  484. data/lib/kube-dsl/dsl/storage/v1beta1/csi_driver_spec.rb +7 -2
  485. data/lib/kube-dsl/dsl/storage/v1beta1/csi_node.rb +3 -0
  486. data/lib/kube-dsl/dsl/storage/v1beta1/csi_node_driver.rb +9 -3
  487. data/lib/kube-dsl/dsl/storage/v1beta1/csi_node_list.rb +4 -1
  488. data/lib/kube-dsl/dsl/storage/v1beta1/csi_node_spec.rb +2 -0
  489. data/lib/kube-dsl/dsl/storage/v1beta1/storage_class.rb +20 -8
  490. data/lib/kube-dsl/dsl/storage/v1beta1/storage_class_list.rb +4 -1
  491. data/lib/kube-dsl/dsl/storage/v1beta1/volume_attachment.rb +4 -0
  492. data/lib/kube-dsl/dsl/storage/v1beta1/volume_attachment_list.rb +4 -1
  493. data/lib/kube-dsl/dsl/storage/v1beta1/volume_attachment_source.rb +5 -2
  494. data/lib/kube-dsl/dsl/storage/v1beta1/volume_attachment_spec.rb +6 -1
  495. data/lib/kube-dsl/dsl/storage/v1beta1/volume_attachment_status.rb +9 -4
  496. data/lib/kube-dsl/dsl/storage/v1beta1/volume_error.rb +5 -1
  497. data/lib/kube-dsl/dsl/storage/v1beta1/volume_node_resources.rb +3 -1
  498. data/lib/kube-dsl/dsl/v1/affinity.rb +4 -0
  499. data/lib/kube-dsl/dsl/v1/attached_volume.rb +5 -1
  500. data/lib/kube-dsl/dsl/v1/aws_elastic_block_store_volume_source.rb +9 -1
  501. data/lib/kube-dsl/dsl/v1/azure_disk_volume_source.rb +13 -1
  502. data/lib/kube-dsl/dsl/v1/azure_file_persistent_volume_source.rb +9 -1
  503. data/lib/kube-dsl/dsl/v1/azure_file_volume_source.rb +7 -1
  504. data/lib/kube-dsl/dsl/v1/binding.rb +3 -0
  505. data/lib/kube-dsl/dsl/v1/capabilities.rb +7 -4
  506. data/lib/kube-dsl/dsl/v1/ceph_fs_persistent_volume_source.rb +14 -4
  507. data/lib/kube-dsl/dsl/v1/ceph_fs_volume_source.rb +14 -4
  508. data/lib/kube-dsl/dsl/v1/cinder_persistent_volume_source.rb +9 -2
  509. data/lib/kube-dsl/dsl/v1/cinder_volume_source.rb +9 -2
  510. data/lib/kube-dsl/dsl/v1/client_ip_config.rb +3 -1
  511. data/lib/kube-dsl/dsl/v1/component_condition.rb +9 -1
  512. data/lib/kube-dsl/dsl/v1/component_status.rb +4 -1
  513. data/lib/kube-dsl/dsl/v1/component_status_list.rb +4 -1
  514. data/lib/kube-dsl/dsl/v1/config_map.rb +8 -4
  515. data/lib/kube-dsl/dsl/v1/config_map_env_source.rb +5 -1
  516. data/lib/kube-dsl/dsl/v1/config_map_key_selector.rb +7 -1
  517. data/lib/kube-dsl/dsl/v1/config_map_list.rb +4 -1
  518. data/lib/kube-dsl/dsl/v1/config_map_node_config_source.rb +11 -1
  519. data/lib/kube-dsl/dsl/v1/config_map_projection.rb +7 -2
  520. data/lib/kube-dsl/dsl/v1/config_map_volume_source.rb +9 -2
  521. data/lib/kube-dsl/dsl/v1/container.rb +49 -18
  522. data/lib/kube-dsl/dsl/v1/container_image.rb +6 -3
  523. data/lib/kube-dsl/dsl/v1/container_port.rb +11 -1
  524. data/lib/kube-dsl/dsl/v1/container_state.rb +4 -0
  525. data/lib/kube-dsl/dsl/v1/container_state_running.rb +3 -1
  526. data/lib/kube-dsl/dsl/v1/container_state_terminated.rb +15 -1
  527. data/lib/kube-dsl/dsl/v1/container_state_waiting.rb +5 -1
  528. data/lib/kube-dsl/dsl/v1/container_status.rb +18 -2
  529. data/lib/kube-dsl/dsl/v1/csi_persistent_volume_source.rb +19 -6
  530. data/lib/kube-dsl/dsl/v1/csi_volume_source.rb +11 -3
  531. data/lib/kube-dsl/dsl/v1/daemon_endpoint.rb +3 -1
  532. data/lib/kube-dsl/dsl/v1/downward_api_projection.rb +2 -0
  533. data/lib/kube-dsl/dsl/v1/downward_api_volume_file.rb +8 -2
  534. data/lib/kube-dsl/dsl/v1/downward_api_volume_source.rb +4 -1
  535. data/lib/kube-dsl/dsl/v1/empty_dir_volume_source.rb +5 -1
  536. data/lib/kube-dsl/dsl/v1/endpoint_address.rb +8 -1
  537. data/lib/kube-dsl/dsl/v1/endpoint_port.rb +7 -1
  538. data/lib/kube-dsl/dsl/v1/endpoint_subset.rb +4 -0
  539. data/lib/kube-dsl/dsl/v1/endpoints.rb +5 -2
  540. data/lib/kube-dsl/dsl/v1/endpoints_list.rb +4 -1
  541. data/lib/kube-dsl/dsl/v1/env_from_source.rb +6 -2
  542. data/lib/kube-dsl/dsl/v1/env_var.rb +6 -1
  543. data/lib/kube-dsl/dsl/v1/env_var_source.rb +5 -0
  544. data/lib/kube-dsl/dsl/v1/ephemeral_container.rb +51 -18
  545. data/lib/kube-dsl/dsl/v1/event.rb +32 -7
  546. data/lib/kube-dsl/dsl/v1/event_list.rb +4 -1
  547. data/lib/kube-dsl/dsl/v1/event_series.rb +7 -1
  548. data/lib/kube-dsl/dsl/v1/event_source.rb +5 -1
  549. data/lib/kube-dsl/dsl/v1/exec_action.rb +4 -2
  550. data/lib/kube-dsl/dsl/v1/fc_volume_source.rb +12 -4
  551. data/lib/kube-dsl/dsl/v1/flex_persistent_volume_source.rb +11 -3
  552. data/lib/kube-dsl/dsl/v1/flex_volume_source.rb +11 -3
  553. data/lib/kube-dsl/dsl/v1/flocker_volume_source.rb +5 -1
  554. data/lib/kube-dsl/dsl/v1/gce_persistent_disk_volume_source.rb +9 -1
  555. data/lib/kube-dsl/dsl/v1/git_repo_volume_source.rb +7 -1
  556. data/lib/kube-dsl/dsl/v1/glusterfs_persistent_volume_source.rb +9 -1
  557. data/lib/kube-dsl/dsl/v1/glusterfs_volume_source.rb +7 -1
  558. data/lib/kube-dsl/dsl/v1/handler.rb +4 -0
  559. data/lib/kube-dsl/dsl/v1/host_alias.rb +6 -3
  560. data/lib/kube-dsl/dsl/v1/host_path_volume_source.rb +5 -1
  561. data/lib/kube-dsl/dsl/v1/http_get_action.rb +11 -2
  562. data/lib/kube-dsl/dsl/v1/http_header.rb +5 -1
  563. data/lib/kube-dsl/dsl/v1/iscsi_persistent_volume_source.rb +24 -4
  564. data/lib/kube-dsl/dsl/v1/iscsi_volume_source.rb +24 -4
  565. data/lib/kube-dsl/dsl/v1/key_to_path.rb +7 -1
  566. data/lib/kube-dsl/dsl/v1/lifecycle.rb +3 -0
  567. data/lib/kube-dsl/dsl/v1/limit_range.rb +3 -0
  568. data/lib/kube-dsl/dsl/v1/limit_range_item.rb +14 -7
  569. data/lib/kube-dsl/dsl/v1/limit_range_list.rb +4 -1
  570. data/lib/kube-dsl/dsl/v1/limit_range_spec.rb +2 -0
  571. data/lib/kube-dsl/dsl/v1/load_balancer_ingress.rb +5 -1
  572. data/lib/kube-dsl/dsl/v1/load_balancer_status.rb +2 -0
  573. data/lib/kube-dsl/dsl/v1/local_object_reference.rb +3 -1
  574. data/lib/kube-dsl/dsl/v1/local_volume_source.rb +5 -1
  575. data/lib/kube-dsl/dsl/v1/namespace.rb +4 -0
  576. data/lib/kube-dsl/dsl/v1/namespace_condition.rb +11 -1
  577. data/lib/kube-dsl/dsl/v1/namespace_list.rb +4 -1
  578. data/lib/kube-dsl/dsl/v1/namespace_spec.rb +3 -1
  579. data/lib/kube-dsl/dsl/v1/namespace_status.rb +5 -2
  580. data/lib/kube-dsl/dsl/v1/nfs_volume_source.rb +7 -1
  581. data/lib/kube-dsl/dsl/v1/node.rb +4 -0
  582. data/lib/kube-dsl/dsl/v1/node_address.rb +5 -1
  583. data/lib/kube-dsl/dsl/v1/node_affinity.rb +3 -0
  584. data/lib/kube-dsl/dsl/v1/node_condition.rb +13 -1
  585. data/lib/kube-dsl/dsl/v1/node_config_source.rb +2 -0
  586. data/lib/kube-dsl/dsl/v1/node_config_status.rb +7 -2
  587. data/lib/kube-dsl/dsl/v1/node_daemon_endpoints.rb +2 -0
  588. data/lib/kube-dsl/dsl/v1/node_list.rb +4 -1
  589. data/lib/kube-dsl/dsl/v1/node_selector.rb +2 -0
  590. data/lib/kube-dsl/dsl/v1/node_selector_requirement.rb +7 -2
  591. data/lib/kube-dsl/dsl/v1/node_selector_term.rb +3 -0
  592. data/lib/kube-dsl/dsl/v1/node_spec.rb +17 -6
  593. data/lib/kube-dsl/dsl/v1/node_status.rb +24 -12
  594. data/lib/kube-dsl/dsl/v1/node_system_info.rb +21 -1
  595. data/lib/kube-dsl/dsl/v1/object_field_selector.rb +5 -1
  596. data/lib/kube-dsl/dsl/v1/object_reference.rb +15 -1
  597. data/lib/kube-dsl/dsl/v1/persistent_volume.rb +4 -0
  598. data/lib/kube-dsl/dsl/v1/persistent_volume_claim.rb +4 -0
  599. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_condition.rb +13 -1
  600. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_list.rb +4 -1
  601. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_spec.rb +15 -5
  602. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_status.rb +10 -5
  603. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_volume_source.rb +5 -1
  604. data/lib/kube-dsl/dsl/v1/persistent_volume_list.rb +4 -1
  605. data/lib/kube-dsl/dsl/v1/persistent_volume_spec.rb +42 -9
  606. data/lib/kube-dsl/dsl/v1/persistent_volume_status.rb +7 -1
  607. data/lib/kube-dsl/dsl/v1/photon_persistent_disk_volume_source.rb +5 -1
  608. data/lib/kube-dsl/dsl/v1/pod.rb +4 -0
  609. data/lib/kube-dsl/dsl/v1/pod_affinity.rb +3 -0
  610. data/lib/kube-dsl/dsl/v1/pod_affinity_term.rb +8 -4
  611. data/lib/kube-dsl/dsl/v1/pod_anti_affinity.rb +3 -0
  612. data/lib/kube-dsl/dsl/v1/pod_condition.rb +13 -1
  613. data/lib/kube-dsl/dsl/v1/pod_dns_config.rb +6 -2
  614. data/lib/kube-dsl/dsl/v1/pod_dns_config_option.rb +5 -1
  615. data/lib/kube-dsl/dsl/v1/pod_ip.rb +3 -1
  616. data/lib/kube-dsl/dsl/v1/pod_list.rb +4 -1
  617. data/lib/kube-dsl/dsl/v1/pod_readiness_gate.rb +3 -1
  618. data/lib/kube-dsl/dsl/v1/pod_security_context.rb +16 -4
  619. data/lib/kube-dsl/dsl/v1/pod_spec.rb +71 -17
  620. data/lib/kube-dsl/dsl/v1/pod_status.rb +27 -6
  621. data/lib/kube-dsl/dsl/v1/pod_template.rb +3 -0
  622. data/lib/kube-dsl/dsl/v1/pod_template_list.rb +4 -1
  623. data/lib/kube-dsl/dsl/v1/pod_template_spec.rb +3 -0
  624. data/lib/kube-dsl/dsl/v1/portworx_volume_source.rb +7 -1
  625. data/lib/kube-dsl/dsl/v1/preferred_scheduling_term.rb +5 -2
  626. data/lib/kube-dsl/dsl/v1/probe.rb +17 -4
  627. data/lib/kube-dsl/dsl/v1/projected_volume_source.rb +4 -1
  628. data/lib/kube-dsl/dsl/v1/quobyte_volume_source.rb +13 -1
  629. data/lib/kube-dsl/dsl/v1/rbd_persistent_volume_source.rb +18 -4
  630. data/lib/kube-dsl/dsl/v1/rbd_volume_source.rb +18 -4
  631. data/lib/kube-dsl/dsl/v1/replication_controller.rb +4 -0
  632. data/lib/kube-dsl/dsl/v1/replication_controller_condition.rb +11 -1
  633. data/lib/kube-dsl/dsl/v1/replication_controller_list.rb +4 -1
  634. data/lib/kube-dsl/dsl/v1/replication_controller_spec.rb +9 -3
  635. data/lib/kube-dsl/dsl/v1/replication_controller_status.rb +13 -2
  636. data/lib/kube-dsl/dsl/v1/resource_field_selector.rb +7 -1
  637. data/lib/kube-dsl/dsl/v1/resource_quota.rb +4 -0
  638. data/lib/kube-dsl/dsl/v1/resource_quota_list.rb +4 -1
  639. data/lib/kube-dsl/dsl/v1/resource_quota_spec.rb +8 -4
  640. data/lib/kube-dsl/dsl/v1/resource_quota_status.rb +5 -2
  641. data/lib/kube-dsl/dsl/v1/resource_requirements.rb +5 -2
  642. data/lib/kube-dsl/dsl/v1/scale_io_persistent_volume_source.rb +21 -2
  643. data/lib/kube-dsl/dsl/v1/scale_io_volume_source.rb +21 -2
  644. data/lib/kube-dsl/dsl/v1/scope_selector.rb +2 -0
  645. data/lib/kube-dsl/dsl/v1/scoped_resource_selector_requirement.rb +7 -2
  646. data/lib/kube-dsl/dsl/v1/se_linux_options.rb +9 -1
  647. data/lib/kube-dsl/dsl/v1/secret.rb +10 -5
  648. data/lib/kube-dsl/dsl/v1/secret_env_source.rb +5 -1
  649. data/lib/kube-dsl/dsl/v1/secret_key_selector.rb +7 -1
  650. data/lib/kube-dsl/dsl/v1/secret_list.rb +4 -1
  651. data/lib/kube-dsl/dsl/v1/secret_projection.rb +7 -2
  652. data/lib/kube-dsl/dsl/v1/secret_reference.rb +5 -1
  653. data/lib/kube-dsl/dsl/v1/secret_volume_source.rb +9 -2
  654. data/lib/kube-dsl/dsl/v1/security_context.rb +19 -2
  655. data/lib/kube-dsl/dsl/v1/service.rb +4 -0
  656. data/lib/kube-dsl/dsl/v1/service_account.rb +9 -4
  657. data/lib/kube-dsl/dsl/v1/service_account_list.rb +4 -1
  658. data/lib/kube-dsl/dsl/v1/service_account_token_projection.rb +7 -1
  659. data/lib/kube-dsl/dsl/v1/service_list.rb +4 -1
  660. data/lib/kube-dsl/dsl/v1/service_port.rb +11 -1
  661. data/lib/kube-dsl/dsl/v1/service_spec.rb +35 -11
  662. data/lib/kube-dsl/dsl/v1/service_status.rb +2 -0
  663. data/lib/kube-dsl/dsl/v1/session_affinity_config.rb +2 -0
  664. data/lib/kube-dsl/dsl/v1/storage_os_persistent_volume_source.rb +11 -2
  665. data/lib/kube-dsl/dsl/v1/storage_os_volume_source.rb +11 -2
  666. data/lib/kube-dsl/dsl/v1/sysctl.rb +5 -1
  667. data/lib/kube-dsl/dsl/v1/taint.rb +9 -1
  668. data/lib/kube-dsl/dsl/v1/tcp_socket_action.rb +5 -1
  669. data/lib/kube-dsl/dsl/v1/toleration.rb +11 -1
  670. data/lib/kube-dsl/dsl/v1/topology_selector_label_requirement.rb +5 -2
  671. data/lib/kube-dsl/dsl/v1/topology_selector_term.rb +2 -0
  672. data/lib/kube-dsl/dsl/v1/topology_spread_constraint.rb +9 -2
  673. data/lib/kube-dsl/dsl/v1/typed_local_object_reference.rb +7 -1
  674. data/lib/kube-dsl/dsl/v1/volume.rb +32 -2
  675. data/lib/kube-dsl/dsl/v1/volume_device.rb +5 -1
  676. data/lib/kube-dsl/dsl/v1/volume_mount.rb +13 -1
  677. data/lib/kube-dsl/dsl/v1/volume_node_affinity.rb +2 -0
  678. data/lib/kube-dsl/dsl/v1/volume_projection.rb +5 -0
  679. data/lib/kube-dsl/dsl/v1/vsphere_virtual_disk_volume_source.rb +9 -1
  680. data/lib/kube-dsl/dsl/v1/weighted_pod_affinity_term.rb +5 -2
  681. data/lib/kube-dsl/dsl/v1/windows_security_context_options.rb +7 -1
  682. data/lib/kube-dsl/dsl_object.rb +1 -0
  683. data/lib/kube-dsl/field_res.rb +35 -0
  684. data/lib/kube-dsl/key_value_field_res.rb +32 -0
  685. data/lib/kube-dsl/key_value_fields.rb +5 -1
  686. data/lib/kube-dsl/object_field_res.rb +35 -0
  687. data/lib/kube-dsl/resource_meta.rb +27 -64
  688. data/lib/kube-dsl/string_helpers.rb +14 -0
  689. data/lib/kube-dsl/validations.rb +228 -0
  690. data/lib/kube-dsl/value_fields.rb +134 -48
  691. data/lib/kube-dsl/version.rb +1 -1
  692. metadata +14 -6
@@ -1,13 +1,18 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ConfigMapProjection < ::KubeDSL::DSLObject
3
- value_fields :name, :optional
4
3
  array_field(:item) { KubeDSL::DSL::V1::KeyToPath.new }
4
+ value_field :name
5
+ value_field :optional
6
+
7
+ validates :items, array: { kind_of: KubeDSL::DSL::V1::KeyToPath }, presence: false
8
+ validates :name, field: { format: :string }, presence: false
9
+ validates :optional, field: { format: :boolean }, presence: false
5
10
 
6
11
  def serialize
7
12
  {}.tap do |result|
13
+ result[:items] = items.map(&:serialize)
8
14
  result[:name] = name
9
15
  result[:optional] = optional
10
- result[:items] = items.map(&:serialize)
11
16
  end
12
17
  end
13
18
 
@@ -1,14 +1,21 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ConfigMapVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :default_mode, :name, :optional
3
+ value_field :default_mode
4
4
  array_field(:item) { KubeDSL::DSL::V1::KeyToPath.new }
5
+ value_field :name
6
+ value_field :optional
7
+
8
+ validates :default_mode, field: { format: :integer }, presence: false
9
+ validates :items, array: { kind_of: KubeDSL::DSL::V1::KeyToPath }, presence: false
10
+ validates :name, field: { format: :string }, presence: false
11
+ validates :optional, field: { format: :boolean }, presence: false
5
12
 
6
13
  def serialize
7
14
  {}.tap do |result|
8
15
  result[:defaultMode] = default_mode
16
+ result[:items] = items.map(&:serialize)
9
17
  result[:name] = name
10
18
  result[:optional] = optional
11
- result[:items] = items.map(&:serialize)
12
19
  end
13
20
  end
14
21
 
@@ -1,44 +1,75 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class Container < ::KubeDSL::DSLObject
3
- value_fields :image, :image_pull_policy, :name, :stdin, :stdin_once, :termination_message_path, :termination_message_policy, :tty, :working_dir
4
- array_field :arg
5
- array_field :command
3
+ value_field :args
4
+ value_field :command
6
5
  array_field(:env) { KubeDSL::DSL::V1::EnvVar.new }
7
6
  array_field(:env_from) { KubeDSL::DSL::V1::EnvFromSource.new }
8
- array_field(:port) { KubeDSL::DSL::V1::ContainerPort.new }
9
- array_field(:volume_device) { KubeDSL::DSL::V1::VolumeDevice.new }
10
- array_field(:volume_mount) { KubeDSL::DSL::V1::VolumeMount.new }
7
+ value_field :image
8
+ value_field :image_pull_policy
11
9
  object_field(:lifecycle) { KubeDSL::DSL::V1::Lifecycle.new }
12
10
  object_field(:liveness_probe) { KubeDSL::DSL::V1::Probe.new }
11
+ value_field :name
12
+ array_field(:port) { KubeDSL::DSL::V1::ContainerPort.new }
13
13
  object_field(:readiness_probe) { KubeDSL::DSL::V1::Probe.new }
14
14
  object_field(:resources) { KubeDSL::DSL::V1::ResourceRequirements.new }
15
15
  object_field(:security_context) { KubeDSL::DSL::V1::SecurityContext.new }
16
16
  object_field(:startup_probe) { KubeDSL::DSL::V1::Probe.new }
17
+ value_field :stdin
18
+ value_field :stdin_once
19
+ value_field :termination_message_path
20
+ value_field :termination_message_policy
21
+ value_field :tty
22
+ array_field(:volume_device) { KubeDSL::DSL::V1::VolumeDevice.new }
23
+ array_field(:volume_mount) { KubeDSL::DSL::V1::VolumeMount.new }
24
+ value_field :working_dir
25
+
26
+ validates :args, field: { format: :string }, presence: false
27
+ validates :command, field: { format: :string }, presence: false
28
+ validates :envs, array: { kind_of: KubeDSL::DSL::V1::EnvVar }, presence: false
29
+ validates :env_froms, array: { kind_of: KubeDSL::DSL::V1::EnvFromSource }, presence: false
30
+ validates :image, field: { format: :string }, presence: false
31
+ validates :image_pull_policy, field: { format: :string }, presence: false
32
+ validates :lifecycle, object: { kind_of: KubeDSL::DSL::V1::Lifecycle }
33
+ validates :liveness_probe, object: { kind_of: KubeDSL::DSL::V1::Probe }
34
+ validates :name, field: { format: :string }, presence: false
35
+ validates :ports, array: { kind_of: KubeDSL::DSL::V1::ContainerPort }, presence: false
36
+ validates :readiness_probe, object: { kind_of: KubeDSL::DSL::V1::Probe }
37
+ validates :resources, object: { kind_of: KubeDSL::DSL::V1::ResourceRequirements }
38
+ validates :security_context, object: { kind_of: KubeDSL::DSL::V1::SecurityContext }
39
+ validates :startup_probe, object: { kind_of: KubeDSL::DSL::V1::Probe }
40
+ validates :stdin, field: { format: :boolean }, presence: false
41
+ validates :stdin_once, field: { format: :boolean }, presence: false
42
+ validates :termination_message_path, field: { format: :string }, presence: false
43
+ validates :termination_message_policy, field: { format: :string }, presence: false
44
+ validates :tty, field: { format: :boolean }, presence: false
45
+ validates :volume_devices, array: { kind_of: KubeDSL::DSL::V1::VolumeDevice }, presence: false
46
+ validates :volume_mounts, array: { kind_of: KubeDSL::DSL::V1::VolumeMount }, presence: false
47
+ validates :working_dir, field: { format: :string }, presence: false
17
48
 
18
49
  def serialize
19
50
  {}.tap do |result|
51
+ result[:args] = args
52
+ result[:command] = command
53
+ result[:env] = envs.map(&:serialize)
54
+ result[:envFrom] = env_froms.map(&:serialize)
20
55
  result[:image] = image
21
56
  result[:imagePullPolicy] = image_pull_policy
57
+ result[:lifecycle] = lifecycle.serialize
58
+ result[:livenessProbe] = liveness_probe.serialize
22
59
  result[:name] = name
60
+ result[:ports] = ports.map(&:serialize)
61
+ result[:readinessProbe] = readiness_probe.serialize
62
+ result[:resources] = resources.serialize
63
+ result[:securityContext] = security_context.serialize
64
+ result[:startupProbe] = startup_probe.serialize
23
65
  result[:stdin] = stdin
24
66
  result[:stdinOnce] = stdin_once
25
67
  result[:terminationMessagePath] = termination_message_path
26
68
  result[:terminationMessagePolicy] = termination_message_policy
27
69
  result[:tty] = tty
28
- result[:workingDir] = working_dir
29
- result[:args] = args
30
- result[:command] = commands
31
- result[:env] = envs.map(&:serialize)
32
- result[:envFrom] = env_froms.map(&:serialize)
33
- result[:ports] = ports.map(&:serialize)
34
70
  result[:volumeDevices] = volume_devices.map(&:serialize)
35
71
  result[:volumeMounts] = volume_mounts.map(&:serialize)
36
- result[:lifecycle] = lifecycle.serialize
37
- result[:livenessProbe] = liveness_probe.serialize
38
- result[:readinessProbe] = readiness_probe.serialize
39
- result[:resources] = resources.serialize
40
- result[:securityContext] = security_context.serialize
41
- result[:startupProbe] = startup_probe.serialize
72
+ result[:workingDir] = working_dir
42
73
  end
43
74
  end
44
75
 
@@ -1,12 +1,15 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerImage < ::KubeDSL::DSLObject
3
- value_fields :size_bytes
4
- array_field :name
3
+ value_field :names
4
+ value_field :size_bytes
5
+
6
+ validates :names, field: { format: :string }, presence: false
7
+ validates :size_bytes, field: { format: :integer }, presence: false
5
8
 
6
9
  def serialize
7
10
  {}.tap do |result|
8
- result[:sizeBytes] = size_bytes
9
11
  result[:names] = names
12
+ result[:sizeBytes] = size_bytes
10
13
  end
11
14
  end
12
15
 
@@ -1,6 +1,16 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerPort < ::KubeDSL::DSLObject
3
- value_fields :container_port, :host_ip, :host_port, :name, :protocol
3
+ value_field :container_port
4
+ value_field :host_ip
5
+ value_field :host_port
6
+ value_field :name
7
+ value_field :protocol
8
+
9
+ validates :container_port, field: { format: :integer }, presence: false
10
+ validates :host_ip, field: { format: :string }, presence: false
11
+ validates :host_port, field: { format: :integer }, presence: false
12
+ validates :name, field: { format: :string }, presence: false
13
+ validates :protocol, field: { format: :string }, presence: false
4
14
 
5
15
  def serialize
6
16
  {}.tap do |result|
@@ -4,6 +4,10 @@ module KubeDSL::DSL::V1
4
4
  object_field(:terminated) { KubeDSL::DSL::V1::ContainerStateTerminated.new }
5
5
  object_field(:waiting) { KubeDSL::DSL::V1::ContainerStateWaiting.new }
6
6
 
7
+ validates :running, object: { kind_of: KubeDSL::DSL::V1::ContainerStateRunning }
8
+ validates :terminated, object: { kind_of: KubeDSL::DSL::V1::ContainerStateTerminated }
9
+ validates :waiting, object: { kind_of: KubeDSL::DSL::V1::ContainerStateWaiting }
10
+
7
11
  def serialize
8
12
  {}.tap do |result|
9
13
  result[:running] = running.serialize
@@ -1,6 +1,8 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerStateRunning < ::KubeDSL::DSLObject
3
- value_fields :started_at
3
+ value_field :started_at
4
+
5
+ validates :started_at, field: { format: :string }, presence: false
4
6
 
5
7
  def serialize
6
8
  {}.tap do |result|
@@ -1,6 +1,20 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerStateTerminated < ::KubeDSL::DSLObject
3
- value_fields :container_id, :exit_code, :finished_at, :message, :reason, :signal, :started_at
3
+ value_field :container_id
4
+ value_field :exit_code
5
+ value_field :finished_at
6
+ value_field :message
7
+ value_field :reason
8
+ value_field :signal
9
+ value_field :started_at
10
+
11
+ validates :container_id, field: { format: :string }, presence: false
12
+ validates :exit_code, field: { format: :integer }, presence: false
13
+ validates :finished_at, field: { format: :string }, presence: false
14
+ validates :message, field: { format: :string }, presence: false
15
+ validates :reason, field: { format: :string }, presence: false
16
+ validates :signal, field: { format: :integer }, presence: false
17
+ validates :started_at, field: { format: :string }, presence: false
4
18
 
5
19
  def serialize
6
20
  {}.tap do |result|
@@ -1,6 +1,10 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerStateWaiting < ::KubeDSL::DSLObject
3
- value_fields :message, :reason
3
+ value_field :message
4
+ value_field :reason
5
+
6
+ validates :message, field: { format: :string }, presence: false
7
+ validates :reason, field: { format: :string }, presence: false
4
8
 
5
9
  def serialize
6
10
  {}.tap do |result|
@@ -1,19 +1,35 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ContainerStatus < ::KubeDSL::DSLObject
3
- value_fields :container_id, :image, :image_id, :name, :ready, :restart_count, :started
3
+ value_field :container_id
4
+ value_field :image
5
+ value_field :image_id
4
6
  object_field(:last_state) { KubeDSL::DSL::V1::ContainerState.new }
7
+ value_field :name
8
+ value_field :ready
9
+ value_field :restart_count
10
+ value_field :started
5
11
  object_field(:state) { KubeDSL::DSL::V1::ContainerState.new }
6
12
 
13
+ validates :container_id, field: { format: :string }, presence: false
14
+ validates :image, field: { format: :string }, presence: false
15
+ validates :image_id, field: { format: :string }, presence: false
16
+ validates :last_state, object: { kind_of: KubeDSL::DSL::V1::ContainerState }
17
+ validates :name, field: { format: :string }, presence: false
18
+ validates :ready, field: { format: :boolean }, presence: false
19
+ validates :restart_count, field: { format: :integer }, presence: false
20
+ validates :started, field: { format: :boolean }, presence: false
21
+ validates :state, object: { kind_of: KubeDSL::DSL::V1::ContainerState }
22
+
7
23
  def serialize
8
24
  {}.tap do |result|
9
25
  result[:containerID] = container_id
10
26
  result[:image] = image
11
27
  result[:imageID] = image_id
28
+ result[:lastState] = last_state.serialize
12
29
  result[:name] = name
13
30
  result[:ready] = ready
14
31
  result[:restartCount] = restart_count
15
32
  result[:started] = started
16
- result[:lastState] = last_state.serialize
17
33
  result[:state] = state.serialize
18
34
  end
19
35
  end
@@ -1,23 +1,36 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class CSIPersistentVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :driver, :fs_type, :read_only, :volume_handle
4
3
  object_field(:controller_expand_secret_ref) { KubeDSL::DSL::V1::SecretReference.new }
5
4
  object_field(:controller_publish_secret_ref) { KubeDSL::DSL::V1::SecretReference.new }
5
+ value_field :driver
6
+ value_field :fs_type
6
7
  object_field(:node_publish_secret_ref) { KubeDSL::DSL::V1::SecretReference.new }
7
8
  object_field(:node_stage_secret_ref) { KubeDSL::DSL::V1::SecretReference.new }
8
- object_field(:volume_attributes) { ::KubeDSL::KeyValueFields.new(format: :string) }
9
+ value_field :read_only
10
+ key_value_field(:volume_attributes, format: :string)
11
+ value_field :volume_handle
12
+
13
+ validates :controller_expand_secret_ref, object: { kind_of: KubeDSL::DSL::V1::SecretReference }
14
+ validates :controller_publish_secret_ref, object: { kind_of: KubeDSL::DSL::V1::SecretReference }
15
+ validates :driver, field: { format: :string }, presence: false
16
+ validates :fs_type, field: { format: :string }, presence: false
17
+ validates :node_publish_secret_ref, object: { kind_of: KubeDSL::DSL::V1::SecretReference }
18
+ validates :node_stage_secret_ref, object: { kind_of: KubeDSL::DSL::V1::SecretReference }
19
+ validates :read_only, field: { format: :boolean }, presence: false
20
+ validates :volume_attributes, kv: { value_format: :string }, presence: false
21
+ validates :volume_handle, field: { format: :string }, presence: false
9
22
 
10
23
  def serialize
11
24
  {}.tap do |result|
12
- result[:driver] = driver
13
- result[:fsType] = fs_type
14
- result[:readOnly] = read_only
15
- result[:volumeHandle] = volume_handle
16
25
  result[:controllerExpandSecretRef] = controller_expand_secret_ref.serialize
17
26
  result[:controllerPublishSecretRef] = controller_publish_secret_ref.serialize
27
+ result[:driver] = driver
28
+ result[:fsType] = fs_type
18
29
  result[:nodePublishSecretRef] = node_publish_secret_ref.serialize
19
30
  result[:nodeStageSecretRef] = node_stage_secret_ref.serialize
31
+ result[:readOnly] = read_only
20
32
  result[:volumeAttributes] = volume_attributes.serialize
33
+ result[:volumeHandle] = volume_handle
21
34
  end
22
35
  end
23
36
 
@@ -1,15 +1,23 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class CSIVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :driver, :fs_type, :read_only
3
+ value_field :driver
4
+ value_field :fs_type
4
5
  object_field(:node_publish_secret_ref) { KubeDSL::DSL::V1::LocalObjectReference.new }
5
- object_field(:volume_attributes) { ::KubeDSL::KeyValueFields.new(format: :string) }
6
+ value_field :read_only
7
+ key_value_field(:volume_attributes, format: :string)
8
+
9
+ validates :driver, field: { format: :string }, presence: false
10
+ validates :fs_type, field: { format: :string }, presence: false
11
+ validates :node_publish_secret_ref, object: { kind_of: KubeDSL::DSL::V1::LocalObjectReference }
12
+ validates :read_only, field: { format: :boolean }, presence: false
13
+ validates :volume_attributes, kv: { value_format: :string }, presence: false
6
14
 
7
15
  def serialize
8
16
  {}.tap do |result|
9
17
  result[:driver] = driver
10
18
  result[:fsType] = fs_type
11
- result[:readOnly] = read_only
12
19
  result[:nodePublishSecretRef] = node_publish_secret_ref.serialize
20
+ result[:readOnly] = read_only
13
21
  result[:volumeAttributes] = volume_attributes.serialize
14
22
  end
15
23
  end
@@ -1,6 +1,8 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class DaemonEndpoint < ::KubeDSL::DSLObject
3
- value_fields :port
3
+ value_field :port
4
+
5
+ validates :port, field: { format: :integer }, presence: false
4
6
 
5
7
  def serialize
6
8
  {}.tap do |result|
@@ -2,6 +2,8 @@ module KubeDSL::DSL::V1
2
2
  class DownwardAPIProjection < ::KubeDSL::DSLObject
3
3
  array_field(:item) { KubeDSL::DSL::V1::DownwardAPIVolumeFile.new }
4
4
 
5
+ validates :items, array: { kind_of: KubeDSL::DSL::V1::DownwardAPIVolumeFile }, presence: false
6
+
5
7
  def serialize
6
8
  {}.tap do |result|
7
9
  result[:items] = items.map(&:serialize)
@@ -1,14 +1,20 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class DownwardAPIVolumeFile < ::KubeDSL::DSLObject
3
- value_fields :mode, :path
4
3
  object_field(:field_ref) { KubeDSL::DSL::V1::ObjectFieldSelector.new }
4
+ value_field :mode
5
+ value_field :path
5
6
  object_field(:resource_field_ref) { KubeDSL::DSL::V1::ResourceFieldSelector.new }
6
7
 
8
+ validates :field_ref, object: { kind_of: KubeDSL::DSL::V1::ObjectFieldSelector }
9
+ validates :mode, field: { format: :integer }, presence: false
10
+ validates :path, field: { format: :string }, presence: false
11
+ validates :resource_field_ref, object: { kind_of: KubeDSL::DSL::V1::ResourceFieldSelector }
12
+
7
13
  def serialize
8
14
  {}.tap do |result|
15
+ result[:fieldRef] = field_ref.serialize
9
16
  result[:mode] = mode
10
17
  result[:path] = path
11
- result[:fieldRef] = field_ref.serialize
12
18
  result[:resourceFieldRef] = resource_field_ref.serialize
13
19
  end
14
20
  end
@@ -1,8 +1,11 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class DownwardAPIVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :default_mode
3
+ value_field :default_mode
4
4
  array_field(:item) { KubeDSL::DSL::V1::DownwardAPIVolumeFile.new }
5
5
 
6
+ validates :default_mode, field: { format: :integer }, presence: false
7
+ validates :items, array: { kind_of: KubeDSL::DSL::V1::DownwardAPIVolumeFile }, presence: false
8
+
6
9
  def serialize
7
10
  {}.tap do |result|
8
11
  result[:defaultMode] = default_mode
@@ -1,6 +1,10 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class EmptyDirVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :medium, :size_limit
3
+ value_field :medium
4
+ value_field :size_limit
5
+
6
+ validates :medium, field: { format: :string }, presence: false
7
+ validates :size_limit, field: { format: :string }, presence: false
4
8
 
5
9
  def serialize
6
10
  {}.tap do |result|
@@ -1,8 +1,15 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class EndpointAddress < ::KubeDSL::DSLObject
3
- value_fields :hostname, :ip, :node_name
3
+ value_field :hostname
4
+ value_field :ip
5
+ value_field :node_name
4
6
  object_field(:target_ref) { KubeDSL::DSL::V1::ObjectReference.new }
5
7
 
8
+ validates :hostname, field: { format: :string }, presence: false
9
+ validates :ip, field: { format: :string }, presence: false
10
+ validates :node_name, field: { format: :string }, presence: false
11
+ validates :target_ref, object: { kind_of: KubeDSL::DSL::V1::ObjectReference }
12
+
6
13
  def serialize
7
14
  {}.tap do |result|
8
15
  result[:hostname] = hostname
@@ -1,6 +1,12 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class EndpointPort < ::KubeDSL::DSLObject
3
- value_fields :name, :port, :protocol
3
+ value_field :name
4
+ value_field :port
5
+ value_field :protocol
6
+
7
+ validates :name, field: { format: :string }, presence: false
8
+ validates :port, field: { format: :integer }, presence: false
9
+ validates :protocol, field: { format: :string }, presence: false
4
10
 
5
11
  def serialize
6
12
  {}.tap do |result|