openshift-python-wrapper 11.0.82__tar.gz → 11.0.83__tar.gz

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 (679) hide show
  1. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.flake8 +1 -0
  2. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.gitignore +7 -8
  3. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/PKG-INFO +1 -1
  4. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/README.md +20 -31
  5. openshift_python_wrapper-11.0.83/class_generator/cli.py +560 -0
  6. openshift_python_wrapper-11.0.83/class_generator/constants.py +37 -0
  7. openshift_python_wrapper-11.0.83/class_generator/core/coverage.py +199 -0
  8. openshift_python_wrapper-11.0.83/class_generator/core/discovery.py +245 -0
  9. openshift_python_wrapper-11.0.83/class_generator/core/generator.py +247 -0
  10. openshift_python_wrapper-11.0.83/class_generator/core/schema.py +371 -0
  11. openshift_python_wrapper-11.0.83/class_generator/formatters/file_writer.py +106 -0
  12. openshift_python_wrapper-11.0.83/class_generator/formatters/template_renderer.py +63 -0
  13. openshift_python_wrapper-11.0.83/class_generator/parsers/explain_parser.py +157 -0
  14. openshift_python_wrapper-11.0.83/class_generator/parsers/type_parser.py +150 -0
  15. openshift_python_wrapper-11.0.83/class_generator/parsers/user_code_parser.py +101 -0
  16. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/test_parse_explain.j2 +3 -2
  17. openshift_python_wrapper-11.0.83/class_generator/tests/test_batch_regeneration.py +585 -0
  18. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/test_class_generator.py +3 -3
  19. openshift_python_wrapper-11.0.83/class_generator/tests/test_cli.py +250 -0
  20. openshift_python_wrapper-11.0.83/class_generator/tests/test_generation.py +81 -0
  21. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/test_resource_discovery.py +156 -178
  22. openshift_python_wrapper-11.0.83/class_generator/tests/test_user_code_parser.py +232 -0
  23. openshift_python_wrapper-11.0.83/class_generator/tests/test_utils.py +320 -0
  24. openshift_python_wrapper-11.0.83/class_generator/utils.py +242 -0
  25. openshift_python_wrapper-11.0.83/ocp_resources/pipeline.py +91 -0
  26. openshift_python_wrapper-11.0.83/ocp_resources/pipeline_run.py +89 -0
  27. openshift_python_wrapper-11.0.83/ocp_resources/task.py +107 -0
  28. openshift_python_wrapper-11.0.83/ocp_resources/task_run.py +135 -0
  29. openshift_python_wrapper-11.0.83/pypi-dist/.gitignore +1 -0
  30. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/pyproject.toml +3 -3
  31. openshift_python_wrapper-11.0.83/scripts/__init__.py +0 -0
  32. openshift_python_wrapper-11.0.83/tests/__init__.py +0 -0
  33. openshift_python_wrapper-11.0.83/tests/scripts/__init__.py +0 -0
  34. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/scripts/generate_pytest_test.py +8 -226
  35. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/uv.lock +1 -1
  36. openshift_python_wrapper-11.0.82/.aider.chat.history.md +0 -2169
  37. openshift_python_wrapper-11.0.82/.aider.input.history +0 -51
  38. openshift_python_wrapper-11.0.82/.aider.tags.cache.v3/cache.db +0 -0
  39. openshift_python_wrapper-11.0.82/.local-dev/dev.py +0 -5
  40. openshift_python_wrapper-11.0.82/.tests_coverage/.gitignore +0 -2
  41. openshift_python_wrapper-11.0.82/.tests_coverage/class_index.html +0 -540
  42. openshift_python_wrapper-11.0.82/.tests_coverage/coverage_html_cb_6fb7b396.js +0 -733
  43. openshift_python_wrapper-11.0.82/.tests_coverage/favicon_32_cb_58284776.png +0 -0
  44. openshift_python_wrapper-11.0.82/.tests_coverage/function_index.html +0 -2243
  45. openshift_python_wrapper-11.0.82/.tests_coverage/index.html +0 -308
  46. openshift_python_wrapper-11.0.82/.tests_coverage/keybd_closed_cb_ce680311.png +0 -0
  47. openshift_python_wrapper-11.0.82/.tests_coverage/status.json +0 -1
  48. openshift_python_wrapper-11.0.82/.tests_coverage/style_cb_6b508a39.css +0 -377
  49. openshift_python_wrapper-11.0.82/.tests_coverage/style_cb_81f8c14c.css +0 -337
  50. openshift_python_wrapper-11.0.82/.tests_coverage/style_cb_8e611ae1.css +0 -337
  51. openshift_python_wrapper-11.0.82/.tests_coverage/z_135acb71669f5d91_test_camelcase_to_snake_py.html +0 -137
  52. openshift_python_wrapper-11.0.82/.tests_coverage/z_135acb71669f5d91_test_class_generator_py.html +0 -135
  53. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61___init___py.html +0 -126
  54. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_configuration_py.html +0 -119
  55. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_dynamic_client_py.html +0 -246
  56. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_exceptions_py.html +0 -155
  57. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_kubernetes_client_py.html +0 -150
  58. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_resource_field_py.html +0 -217
  59. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_resource_instance_py.html +0 -566
  60. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_resource_manager_py.html +0 -174
  61. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_resource_registry_py.html +0 -484
  62. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_resource_storage_py.html +0 -297
  63. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_status_schema_parser_py.html +0 -552
  64. openshift_python_wrapper-11.0.82/.tests_coverage/z_19665a6489547e61_status_templates_py.html +0 -421
  65. openshift_python_wrapper-11.0.82/.tests_coverage/z_1bcaa03a7ef87e06_constants_py.html +0 -129
  66. openshift_python_wrapper-11.0.82/.tests_coverage/z_1bcaa03a7ef87e06_resource_constants_py.html +0 -169
  67. openshift_python_wrapper-11.0.82/.tests_coverage/z_1bcaa03a7ef87e06_utils_py.html +0 -253
  68. openshift_python_wrapper-11.0.82/.tests_coverage/z_3b2beccc2057a243_explain_parser_py.html +0 -232
  69. openshift_python_wrapper-11.0.82/.tests_coverage/z_3b2beccc2057a243_type_parser_py.html +0 -247
  70. openshift_python_wrapper-11.0.82/.tests_coverage/z_3b2beccc2057a243_user_code_parser_py.html +0 -154
  71. openshift_python_wrapper-11.0.82/.tests_coverage/z_427be826a39fd312_class_generator_py.html +0 -184
  72. openshift_python_wrapper-11.0.82/.tests_coverage/z_427be826a39fd312_cli_py.html +0 -305
  73. openshift_python_wrapper-11.0.82/.tests_coverage/z_427be826a39fd312_constants_py.html +0 -134
  74. openshift_python_wrapper-11.0.82/.tests_coverage/z_427be826a39fd312_utils_py.html +0 -336
  75. openshift_python_wrapper-11.0.82/.tests_coverage/z_56958ebbae0b032c_tools_py.html +0 -217
  76. openshift_python_wrapper-11.0.82/.tests_coverage/z_6251850b9f9650b2_test_scripts_py.html +0 -104
  77. openshift_python_wrapper-11.0.82/.tests_coverage/z_82f8b9aabd15a88f_file_writer_py.html +0 -121
  78. openshift_python_wrapper-11.0.82/.tests_coverage/z_82f8b9aabd15a88f_template_renderer_py.html +0 -136
  79. openshift_python_wrapper-11.0.82/.tests_coverage/z_b0ed09eb658be1a0___init___py.html +0 -107
  80. openshift_python_wrapper-11.0.82/.tests_coverage/z_b0ed09eb658be1a0_example_client_py.html +0 -174
  81. openshift_python_wrapper-11.0.82/.tests_coverage/z_b0ed09eb658be1a0_server_py.html +0 -916
  82. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_aaq_py.html +0 -179
  83. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_api_server_py.html +0 -191
  84. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_api_service_py.html +0 -106
  85. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_application_aware_applied_cluster_resource_quota_py.html +0 -109
  86. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_application_aware_cluster_resource_quota_py.html +0 -138
  87. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_application_aware_resource_quota_py.html +0 -147
  88. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_authorino_py.html +0 -243
  89. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_backup_py.html +0 -154
  90. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_benchmark_py.html +0 -190
  91. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_catalog_source_py.html +0 -149
  92. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cdi_config_py.html +0 -265
  93. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cdi_py.html +0 -194
  94. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_chaos_engine_py.html +0 -128
  95. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_chaos_result_py.html +0 -108
  96. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_claim_py.html +0 -125
  97. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_deployment_py.html +0 -152
  98. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_operator_py.html +0 -102
  99. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_pool_py.html +0 -158
  100. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_role_binding_py.html +0 -140
  101. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_role_py.html +0 -125
  102. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_service_version_py.html +0 -128
  103. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cluster_version_py.html +0 -102
  104. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_config_map_py.html +0 -162
  105. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_console_cli_download_py.html +0 -106
  106. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_console_plugin_py.html +0 -106
  107. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_console_quick_start_py.html +0 -106
  108. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_constants_py.html +0 -131
  109. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_controller_revision_py.html +0 -136
  110. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_cron_job_py.html +0 -164
  111. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_csi_driver_py.html +0 -276
  112. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_csi_storage_capacity_py.html +0 -145
  113. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_custom_resource_definition_py.html +0 -102
  114. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_daemonset_py.html +0 -155
  115. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_data_import_cron_py.html +0 -182
  116. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_data_science_cluster_py.html +0 -135
  117. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_data_source_py.html +0 -158
  118. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_datavolume_py.html +0 -446
  119. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_deployment_py.html +0 -266
  120. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_destination_rule_py.html +0 -108
  121. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_dns_config_openshift_io_py.html +0 -170
  122. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_dns_operator_openshift_io_py.html +0 -219
  123. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_dsc_initialization_py.html +0 -176
  124. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_endpoint_slice_py.html +0 -159
  125. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_endpoints_py.html +0 -156
  126. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_event_py.html +0 -210
  127. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_exceptions_py.html +0 -187
  128. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_fence_agent_remediation_templates_py.html +0 -161
  129. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_forklift_controller_py.html +0 -106
  130. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_gateway_py.html +0 -108
  131. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_group_py.html +0 -136
  132. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_hook_py.html +0 -146
  133. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_host_py.html +0 -157
  134. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_hostpath_provisioner_py.html +0 -147
  135. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_hyperconverged_py.html +0 -136
  136. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_caching_internal_knative_dev_py.html +0 -160
  137. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_config_openshift_io_py.html +0 -174
  138. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_content_source_policy_py.html +0 -154
  139. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_digest_mirror_set_py.html +0 -128
  140. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_image_openshift_io_py.html +0 -231
  141. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_image_stream_py.html +0 -142
  142. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_imagestreamtag_py.html +0 -106
  143. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_inference_service_py.html +0 -147
  144. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_infrastructure_py.html +0 -115
  145. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_ingress_controller_py.html +0 -318
  146. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_installplan_py.html +0 -102
  147. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_ip_address_pool_py.html +0 -151
  148. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_job_py.html +0 -192
  149. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_kube_descheduler_py.html +0 -208
  150. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_kubevirt_py.html +0 -264
  151. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_l2_advertisement_py.html +0 -151
  152. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_lease_py.html +0 -166
  153. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_limit_range_py.html +0 -127
  154. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_lm_eval_job_py.html +0 -236
  155. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_machine_config_pool_py.html +0 -177
  156. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_machine_config_py.html +0 -190
  157. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_machine_health_check_py.html +0 -171
  158. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_machine_py.html +0 -203
  159. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_machine_set_py.html +0 -282
  160. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_managed_cluster_py.html +0 -107
  161. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_maria_db_py.html +0 -559
  162. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_mariadb_operator_py.html +0 -239
  163. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_metallb_py.html +0 -150
  164. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_migration_policy_py.html +0 -157
  165. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_migration_py.html +0 -154
  166. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_model_registry_py.html +0 -183
  167. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_mtq_py.html +0 -207
  168. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_mtv_py.html +0 -248
  169. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_multi_cluster_hub_py.html +0 -106
  170. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_multi_cluster_observability_py.html +0 -152
  171. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_multi_network_policy_py.html +0 -153
  172. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_mutating_webhook_config_py.html +0 -106
  173. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_namespace_py.html +0 -137
  174. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_addons_config_py.html +0 -106
  175. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_attachment_definition_py.html +0 -343
  176. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_config_openshift_io_py.html +0 -188
  177. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_map_py.html +0 -177
  178. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_operator_openshift_io_py.html +0 -289
  179. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_network_policy_py.html +0 -106
  180. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_nm_state_py.html +0 -194
  181. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_config_openshift_io_py.html +0 -144
  182. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_health_check_py.html +0 -177
  183. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_maintenance_py.html +0 -137
  184. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_network_configuration_enactment_py.html +0 -117
  185. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_network_configuration_policy_py.html +0 -546
  186. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_network_state_py.html +0 -209
  187. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_node_py.html +0 -211
  188. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_oauth_py.html +0 -152
  189. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_ocs_initialization_py.html +0 -145
  190. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_operator_condition_py.html +0 -102
  191. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_operator_group_py.html +0 -134
  192. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_operator_hub_py.html +0 -102
  193. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_operator_py.html +0 -117
  194. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_operator_source_py.html +0 -145
  195. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_package_manifest_py.html +0 -102
  196. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_peer_authentication_py.html +0 -115
  197. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_performance_profile_py.html +0 -189
  198. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_persistent_volume_claim_py.html +0 -212
  199. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_persistent_volume_py.html +0 -118
  200. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_pipeline_py.html +0 -142
  201. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_pipelineruns_py.html +0 -140
  202. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_plan_py.html +0 -221
  203. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_pod_disruption_budget_py.html +0 -150
  204. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_pod_metrics_py.html +0 -107
  205. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_pod_py.html +0 -652
  206. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_priority_class_py.html +0 -145
  207. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_project_config_openshift_io_py.html +0 -147
  208. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_project_project_openshift_io_py.html +0 -142
  209. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_project_request_py.html +0 -145
  210. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_prometheus_py.html +0 -1308
  211. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_prometheus_rule_py.html +0 -106
  212. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_provider_py.html +0 -138
  213. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_proxy_py.html +0 -157
  214. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_reclaim_space_cron_job_py.html +0 -150
  215. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_reclaim_space_job_py.html +0 -147
  216. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_replica_set_py.html +0 -168
  217. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_resource_py.html +0 -2109
  218. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_resource_quota_py.html +0 -142
  219. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_restore_py.html +0 -147
  220. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_rhmi_py.html +0 -140
  221. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_role_binding_py.html +0 -164
  222. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_role_py.html +0 -153
  223. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_route_py.html +0 -171
  224. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_scheduler_py.html +0 -190
  225. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_sealed_secret_py.html +0 -150
  226. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_secret_py.html +0 -170
  227. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_security_context_constraints_py.html +0 -359
  228. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_self_node_remediation_templates_py.html +0 -133
  229. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_account_py.html +0 -155
  230. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_mesh_control_plane_py.html +0 -108
  231. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_mesh_member_py.html +0 -138
  232. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_mesh_member_roll_py.html +0 -111
  233. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_monitor_py.html +0 -106
  234. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_py.html +0 -483
  235. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_service_serving_knative_dev_py.html +0 -146
  236. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_serving_runtime_py.html +0 -257
  237. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_sriov_network_node_policy_py.html +0 -162
  238. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_sriov_network_node_state_py.html +0 -149
  239. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_sriov_network_py.html +0 -151
  240. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_ssp_py.html +0 -183
  241. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_storage_class_py.html +0 -217
  242. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_storage_map_py.html +0 -180
  243. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_storage_profile_py.html +0 -136
  244. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_subscription_py.html +0 -159
  245. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_task_py.html +0 -173
  246. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_task_run_py.html +0 -161
  247. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_tekton_tasks_py.html +0 -106
  248. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_template_py.html +0 -166
  249. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_trustyai_service_py.html +0 -159
  250. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_upload_token_request_py.html +0 -136
  251. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_user_defined_network_py.html +0 -304
  252. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_utils_py.html +0 -152
  253. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_validating_webhook_config_py.html +0 -106
  254. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_clone_py.html +0 -164
  255. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_cluster_instancetype_py.html +0 -203
  256. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_cluster_preference_py.html +0 -223
  257. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_export_py.html +0 -159
  258. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_import_py.html +0 -372
  259. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_instance_migration_py.html +0 -137
  260. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_instance_preset_py.html +0 -149
  261. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_instance_py.html +0 -425
  262. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_instance_replica_set_py.html +0 -161
  263. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_instancetype_py.html +0 -204
  264. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_migration_resource_quota_py.html +0 -143
  265. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_preference_py.html +0 -223
  266. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_py.html +0 -287
  267. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_restore_py.html +0 -201
  268. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_machine_snapshot_py.html +0 -198
  269. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_virtual_service_py.html +0 -108
  270. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_vm_import_config_py.html +0 -106
  271. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_volume_snapshot_class_py.html +0 -157
  272. openshift_python_wrapper-11.0.82/.tests_coverage/z_f68db28afc5f7ebd_volume_snapshot_py.html +0 -156
  273. openshift_python_wrapper-11.0.82/.tests_coverage/z_f752d4c0acd10ffd_coverage_py.html +0 -294
  274. openshift_python_wrapper-11.0.82/.tests_coverage/z_f752d4c0acd10ffd_discovery_py.html +0 -334
  275. openshift_python_wrapper-11.0.82/.tests_coverage/z_f752d4c0acd10ffd_generator_py.html +0 -306
  276. openshift_python_wrapper-11.0.82/.tests_coverage/z_f752d4c0acd10ffd_schema_py.html +0 -343
  277. openshift_python_wrapper-11.0.82/.vscode/settings.json +0 -3
  278. openshift_python_wrapper-11.0.82/class_generator/class_generator.py +0 -1541
  279. openshift_python_wrapper-11.0.82/ocp_resources/pipeline.py +0 -45
  280. openshift_python_wrapper-11.0.82/ocp_resources/pipelineruns.py +0 -43
  281. openshift_python_wrapper-11.0.82/ocp_resources/task.py +0 -78
  282. openshift_python_wrapper-11.0.82/ocp_resources/task_run.py +0 -64
  283. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.coderabbit.yaml +0 -0
  284. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.dockerignore +0 -0
  285. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.gitattributes +0 -0
  286. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  287. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  288. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/pull_request_template.md +0 -0
  289. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/weekly-digest.yml +0 -0
  290. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/workflows/close-stale-issues.yml +0 -0
  291. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.github/workflows/code-check.yml.old +0 -0
  292. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.gitleaks.toml +0 -0
  293. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.pre-commit-config.yaml +0 -0
  294. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.readthedocs.yaml +0 -0
  295. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.release-it.json +0 -0
  296. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/.sonarcloud.properties +0 -0
  297. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/CONTRIBUTING.md +0 -0
  298. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/LICENSE +0 -0
  299. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/Makefile +0 -0
  300. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/OWNERS +0 -0
  301. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/README.md +0 -0
  302. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/VERSION +0 -0
  303. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/__init__.py +0 -0
  304. {openshift_python_wrapper-11.0.82/ocp_resources → openshift_python_wrapper-11.0.83/class_generator/core}/__init__.py +0 -0
  305. {openshift_python_wrapper-11.0.82/ocp_resources/utils → openshift_python_wrapper-11.0.83/class_generator/formatters}/__init__.py +0 -0
  306. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/manifests/class_generator_template.j2 +0 -0
  307. {openshift_python_wrapper-11.0.82/scripts → openshift_python_wrapper-11.0.83/class_generator/parsers}/__init__.py +0 -0
  308. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/py.typed +0 -0
  309. {openshift_python_wrapper-11.0.82/class_generator → openshift_python_wrapper-11.0.83/class_generator/schema}/__cluster_version__.txt +0 -0
  310. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/schema/__resources-mappings.json +0 -0
  311. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/schema/_definitions.json +0 -0
  312. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/APIServer/api_server.py +0 -0
  313. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/ClusterOperator/cluster_operator.py +0 -0
  314. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/ConfigMap/config_map.py +0 -0
  315. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/DNS/dns_config_openshift_io.py +0 -0
  316. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/DNS/dns_operator_openshift_io.py +0 -0
  317. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Deployment/deployment.py +0 -0
  318. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Image/image_caching_internal_knative_dev.py +0 -0
  319. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Image/image_config_openshift_io.py +0 -0
  320. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Image/image_image_openshift_io.py +0 -0
  321. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/ImageContentSourcePolicy/image_content_source_policy.py +0 -0
  322. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Machine/machine.py +0 -0
  323. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/NMState/nm_state.py +0 -0
  324. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/OAuth/oauth.py +0 -0
  325. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Pipeline/pipeline.py +0 -0
  326. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Pod/pod.py +0 -0
  327. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/Secret/secret.py +0 -0
  328. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/ServiceMeshMember/service_mesh_member.py +0 -0
  329. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/class_generator/tests/manifests/ServingRuntime/serving_runtime.py +0 -0
  330. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/docs/Makefile +0 -0
  331. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/docs/conf.py +0 -0
  332. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/docs/index.rst +0 -0
  333. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/docs/modules.rst +0 -0
  334. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/docs/ocp_resources.rst +0 -0
  335. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/general.py +0 -0
  336. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/node_network_configuration_policy.py +0 -0
  337. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/pods.py +0 -0
  338. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/resource_list.py +0 -0
  339. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/role.py +0 -0
  340. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/special_cases.py +0 -0
  341. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/validation_demo.py +0 -0
  342. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/validation_troubleshooting.py +0 -0
  343. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/examples/virtual_machine.py +0 -0
  344. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/README.md +0 -0
  345. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/__init__.py +0 -0
  346. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/configuration.py +0 -0
  347. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/dynamic_client.py +0 -0
  348. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/exceptions.py +0 -0
  349. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/kubernetes_client.py +0 -0
  350. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/resource_field.py +0 -0
  351. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/resource_instance.py +0 -0
  352. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/resource_manager.py +0 -0
  353. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/resource_registry.py +0 -0
  354. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/resource_storage.py +0 -0
  355. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/status_schema_parser.py +0 -0
  356. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/status_templates.py +0 -0
  357. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/fake_kubernetes_client/types.py +0 -0
  358. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/README.md +0 -0
  359. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/__init__.py +0 -0
  360. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/example_client.py +0 -0
  361. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/server-info.json +0 -0
  362. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/server.py +0 -0
  363. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/tests/__init__.py +0 -0
  364. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/mcp_server/tests/test_server.py +0 -0
  365. {openshift_python_wrapper-11.0.82/tests → openshift_python_wrapper-11.0.83/ocp_resources}/__init__.py +0 -0
  366. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/aaq.py +0 -0
  367. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/api_server.py +0 -0
  368. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/api_service.py +0 -0
  369. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/application_aware_applied_cluster_resource_quota.py +0 -0
  370. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/application_aware_cluster_resource_quota.py +0 -0
  371. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/application_aware_resource_quota.py +0 -0
  372. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/authorino.py +0 -0
  373. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/backup.py +0 -0
  374. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/benchmark.py +0 -0
  375. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/catalog_source.py +0 -0
  376. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cdi.py +0 -0
  377. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cdi_config.py +0 -0
  378. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/chaos_engine.py +0 -0
  379. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/chaos_result.py +0 -0
  380. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_claim.py +0 -0
  381. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_deployment.py +0 -0
  382. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_operator.py +0 -0
  383. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_pool.py +0 -0
  384. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_resource_quota.py +0 -0
  385. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_role.py +0 -0
  386. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_role_binding.py +0 -0
  387. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_service_version.py +0 -0
  388. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_user_defined_network.py +0 -0
  389. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cluster_version.py +0 -0
  390. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/config_map.py +0 -0
  391. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/console_cli_download.py +0 -0
  392. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/console_config_openshift_io.py +0 -0
  393. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/console_operator_openshift_io.py +0 -0
  394. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/console_plugin.py +0 -0
  395. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/console_quick_start.py +0 -0
  396. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/controller_revision.py +0 -0
  397. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/cron_job.py +0 -0
  398. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/csi_driver.py +0 -0
  399. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/csi_storage_capacity.py +0 -0
  400. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/custom_resource_definition.py +0 -0
  401. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/daemonset.py +0 -0
  402. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/data_import_cron.py +0 -0
  403. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/data_science_cluster.py +0 -0
  404. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/data_source.py +0 -0
  405. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/datavolume.py +0 -0
  406. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/deployment.py +0 -0
  407. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/destination_rule.py +0 -0
  408. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/direct_volume_migration.py +0 -0
  409. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/direct_volume_migration_progress.py +0 -0
  410. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/dns_config_openshift_io.py +0 -0
  411. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/dns_operator_openshift_io.py +0 -0
  412. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/dsc_initialization.py +0 -0
  413. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/endpoint_slice.py +0 -0
  414. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/endpoints.py +0 -0
  415. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/event.py +0 -0
  416. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/exceptions.py +0 -0
  417. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/fence_agent_remediation_templates.py +0 -0
  418. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/forklift_controller.py +0 -0
  419. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/gateway.py +0 -0
  420. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/group.py +0 -0
  421. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/guardrails_orchestrator.py +0 -0
  422. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/hook.py +0 -0
  423. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/host.py +0 -0
  424. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/hostpath_provisioner.py +0 -0
  425. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/hyperconverged.py +0 -0
  426. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_caching_internal_knative_dev.py +0 -0
  427. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_config_openshift_io.py +0 -0
  428. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_content_source_policy.py +0 -0
  429. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_digest_mirror_set.py +0 -0
  430. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_image_openshift_io.py +0 -0
  431. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/image_stream.py +0 -0
  432. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/imagestreamtag.py +0 -0
  433. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/inference_graph.py +0 -0
  434. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/inference_service.py +0 -0
  435. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/infrastructure.py +0 -0
  436. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/ingress_controller.py +0 -0
  437. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/installplan.py +0 -0
  438. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/ip_address_pool.py +0 -0
  439. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/job.py +0 -0
  440. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/kube_descheduler.py +0 -0
  441. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/kubelet_config.py +0 -0
  442. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/kubevirt.py +0 -0
  443. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/l2_advertisement.py +0 -0
  444. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/lease.py +0 -0
  445. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/limit_range.py +0 -0
  446. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/llama_stack_distribution.py +0 -0
  447. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/lm_eval_job.py +0 -0
  448. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/machine.py +0 -0
  449. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/machine_config.py +0 -0
  450. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/machine_config_pool.py +0 -0
  451. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/machine_health_check.py +0 -0
  452. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/machine_set.py +0 -0
  453. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/managed_cluster.py +0 -0
  454. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/maria_db.py +0 -0
  455. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mariadb_operator.py +0 -0
  456. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/metallb.py +0 -0
  457. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mig_analytic.py +0 -0
  458. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mig_cluster.py +0 -0
  459. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mig_migration.py +0 -0
  460. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mig_plan.py +0 -0
  461. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/migration.py +0 -0
  462. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/migration_policy.py +0 -0
  463. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/model_registry.py +0 -0
  464. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/model_registry_components_platform_opendatahub_io.py +0 -0
  465. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/model_registry_modelregistry_opendatahub_io.py +0 -0
  466. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mtq.py +0 -0
  467. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/multi_cluster_hub.py +0 -0
  468. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/multi_cluster_observability.py +0 -0
  469. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/multi_network_policy.py +0 -0
  470. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/mutating_webhook_config.py +0 -0
  471. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/namespace.py +0 -0
  472. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_addons_config.py +0 -0
  473. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_attachment_definition.py +0 -0
  474. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_config_openshift_io.py +0 -0
  475. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_map.py +0 -0
  476. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_operator_openshift_io.py +0 -0
  477. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/network_policy.py +0 -0
  478. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/nm_state.py +0 -0
  479. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node.py +0 -0
  480. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_config_openshift_io.py +0 -0
  481. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_health_check.py +0 -0
  482. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_maintenance.py +0 -0
  483. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_network_configuration_enactment.py +0 -0
  484. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_network_configuration_policy.py +0 -0
  485. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_network_configuration_policy_latest.py +0 -0
  486. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/node_network_state.py +0 -0
  487. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/notebook.py +0 -0
  488. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/oauth.py +0 -0
  489. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/ocs_initialization.py +0 -0
  490. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/operator.py +0 -0
  491. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/operator_condition.py +0 -0
  492. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/operator_group.py +0 -0
  493. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/operator_hub.py +0 -0
  494. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/operator_source.py +0 -0
  495. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/package_manifest.py +0 -0
  496. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/peer_authentication.py +0 -0
  497. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/performance_profile.py +0 -0
  498. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/persistent_volume.py +0 -0
  499. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/persistent_volume_claim.py +0 -0
  500. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/plan.py +0 -0
  501. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/pod.py +0 -0
  502. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/pod_disruption_budget.py +0 -0
  503. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/pod_metrics.py +0 -0
  504. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/priority_class.py +0 -0
  505. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/project_config_openshift_io.py +0 -0
  506. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/project_project_openshift_io.py +0 -0
  507. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/project_request.py +0 -0
  508. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/prometheus.py +0 -0
  509. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/prometheus_rule.py +0 -0
  510. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/provider.py +0 -0
  511. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/proxy.py +0 -0
  512. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/py.typed +0 -0
  513. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/reclaim_space_cron_job.py +0 -0
  514. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/reclaim_space_job.py +0 -0
  515. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/replica_set.py +0 -0
  516. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/resource.py +0 -0
  517. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/resource_quota.py +0 -0
  518. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/restore.py +0 -0
  519. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/rhmi.py +0 -0
  520. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/role.py +0 -0
  521. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/role_binding.py +0 -0
  522. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/route.py +0 -0
  523. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/scheduler.py +0 -0
  524. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/sealed_secret.py +0 -0
  525. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/secret.py +0 -0
  526. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/security_context_constraints.py +0 -0
  527. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/self_node_remediation_templates.py +0 -0
  528. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/self_subject_review.py +0 -0
  529. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service.py +0 -0
  530. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_account.py +0 -0
  531. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_mesh_control_plane.py +0 -0
  532. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_mesh_member.py +0 -0
  533. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_mesh_member_roll.py +0 -0
  534. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_monitor.py +0 -0
  535. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/service_serving_knative_dev.py +0 -0
  536. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/serving_runtime.py +0 -0
  537. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/snapshot.py +0 -0
  538. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/sriov_network.py +0 -0
  539. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/sriov_network_node_policy.py +0 -0
  540. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/sriov_network_node_state.py +0 -0
  541. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/ssp.py +0 -0
  542. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/storage_class.py +0 -0
  543. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/storage_cluster.py +0 -0
  544. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/storage_map.py +0 -0
  545. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/storage_profile.py +0 -0
  546. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/subscription.py +0 -0
  547. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/tekton_tasks.py +0 -0
  548. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/template.py +0 -0
  549. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/trustyai_service.py +0 -0
  550. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/upload_token_request.py +0 -0
  551. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/user.py +0 -0
  552. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/user_defined_network.py +0 -0
  553. {openshift_python_wrapper-11.0.82/tests/scripts → openshift_python_wrapper-11.0.83/ocp_resources/utils}/__init__.py +0 -0
  554. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/utils/constants.py +0 -0
  555. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/utils/resource_constants.py +0 -0
  556. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/utils/schema_validator.py +0 -0
  557. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/utils/utils.py +0 -0
  558. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/validating_webhook_config.py +0 -0
  559. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine.py +0 -0
  560. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_clone.py +0 -0
  561. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_cluster_instancetype.py +0 -0
  562. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_cluster_preference.py +0 -0
  563. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_export.py +0 -0
  564. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_import.py +0 -0
  565. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_instance.py +0 -0
  566. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_instance_migration.py +0 -0
  567. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_instance_preset.py +0 -0
  568. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_instance_replica_set.py +0 -0
  569. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_instancetype.py +0 -0
  570. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_migration_resource_quota.py +0 -0
  571. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_preference.py +0 -0
  572. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_restore.py +0 -0
  573. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_machine_snapshot.py +0 -0
  574. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/virtual_service.py +0 -0
  575. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/vm_import_config.py +0 -0
  576. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/volume_snapshot.py +0 -0
  577. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/ocp_resources/volume_snapshot_class.py +0 -0
  578. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/renovate.json +0 -0
  579. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/scripts/diff-from-latest-release.sh +0 -0
  580. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/scripts/diff-from-tag.sh +0 -0
  581. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/scripts/generate_changelog.py +0 -0
  582. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/scripts/get-latest-release.sh +0 -0
  583. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/sonar-project.properties +0 -0
  584. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/conftest.py +0 -0
  585. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/fixtures/validation_schemas.py +0 -0
  586. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/manifests/vm.yaml +0 -0
  587. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/scripts/validate_resources.py +0 -0
  588. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_api_group_order.py +0 -0
  589. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_camelcase_to_snake.py +0 -0
  590. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resource.py +0 -0
  591. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resource_validation.py +0 -0
  592. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_aaq.py +0 -0
  593. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_api_server.py +0 -0
  594. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_authorino.py +0 -0
  595. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_cdi.py +0 -0
  596. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_cdi_config.py +0 -0
  597. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_cluster_resource_quota.py +0 -0
  598. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_cluster_user_defined_network.py +0 -0
  599. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_config_map.py +0 -0
  600. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_console_config_openshift_io.py +0 -0
  601. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_console_operator_openshift_io.py +0 -0
  602. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_csi_driver.py +0 -0
  603. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_data_import_cron.py +0 -0
  604. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_data_science_cluster.py +0 -0
  605. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_deployment.py +0 -0
  606. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_direct_volume_migration.py +0 -0
  607. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_direct_volume_migration_progress.py +0 -0
  608. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_dns_config_openshift_io.py +0 -0
  609. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_dns_operator_openshift_io.py +0 -0
  610. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_dsc_initialization.py +0 -0
  611. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_group.py +0 -0
  612. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_guardrails_orchestrator.py +0 -0
  613. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_image_caching_internal_knative_dev.py +0 -0
  614. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_image_config_openshift_io.py +0 -0
  615. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_image_content_source_policy.py +0 -0
  616. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_image_image_openshift_io.py +0 -0
  617. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_inference_graph.py +0 -0
  618. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_kube_descheduler.py +0 -0
  619. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_kubelet_config.py +0 -0
  620. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_kubevirt.py +0 -0
  621. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_llama_stack_distribution.py +0 -0
  622. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_lm_eval_job.py +0 -0
  623. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_machine.py +0 -0
  624. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_maria_db.py +0 -0
  625. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mariadb_operator.py +0 -0
  626. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mig_analytic.py +0 -0
  627. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mig_cluster.py +0 -0
  628. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mig_migration.py +0 -0
  629. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mig_plan.py +0 -0
  630. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_model_registry.py +0 -0
  631. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_model_registry_components_platform_opendatahub_io.py +0 -0
  632. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_model_registry_modelregistry_opendatahub_io.py +0 -0
  633. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_mtq.py +0 -0
  634. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_namespace.py +0 -0
  635. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_network_config_openshift_io.py +0 -0
  636. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_network_operator_openshift_io.py +0 -0
  637. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_nm_state.py +0 -0
  638. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_node.py +0 -0
  639. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_node_config_openshift_io.py +0 -0
  640. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_node_network_configuration_policy_latest.py +0 -0
  641. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_notebook.py +0 -0
  642. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_oauth.py +0 -0
  643. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_operator.py +0 -0
  644. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_pod.py +0 -0
  645. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_pod_metrics.py +0 -0
  646. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_project_config_openshift_io.py +0 -0
  647. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_project_project_openshift_io.py +0 -0
  648. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_project_request.py +0 -0
  649. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_prometheus.py +0 -0
  650. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_replica_set.py +0 -0
  651. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_scheduler.py +0 -0
  652. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_security_context_constraints.py +0 -0
  653. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_self_subject_review.py +0 -0
  654. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_service.py +0 -0
  655. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_service_mesh_member.py +0 -0
  656. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_service_serving_knative_dev.py +0 -0
  657. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_serving_runtime.py +0 -0
  658. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_snapshot.py +0 -0
  659. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_ssp.py +0 -0
  660. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_storage_cluster.py +0 -0
  661. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_user.py +0 -0
  662. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_user_defined_network.py +0 -0
  663. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_cluster_instancetype.py +0 -0
  664. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_cluster_preference.py +0 -0
  665. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_export.py +0 -0
  666. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_instance_migration.py +0 -0
  667. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_instance_preset.py +0 -0
  668. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_instance_replica_set.py +0 -0
  669. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_instancetype.py +0 -0
  670. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_virtual_machine_preference.py +0 -0
  671. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_volume_snapshot.py +0 -0
  672. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_resources/test_volume_snapshot_class.py +0 -0
  673. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_schema_loading.py +0 -0
  674. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_unittests.py +0 -0
  675. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_validate_resources.py +0 -0
  676. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_validate_resources_script.py +0 -0
  677. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/test_validation_error.py +0 -0
  678. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tests/utils.py +0 -0
  679. {openshift_python_wrapper-11.0.82 → openshift_python_wrapper-11.0.83}/tox.toml +0 -0
@@ -72,6 +72,7 @@ fcn_exclude_functions =
72
72
  __class__,
73
73
  cls,
74
74
  validate,
75
+ relative_to,
75
76
 
76
77
  enable-extensions =
77
78
  FCN,
@@ -1,14 +1,6 @@
1
1
  # Temporary files
2
2
  _out
3
3
 
4
- # Generated OpenAPI files
5
- class_generator/__k8s-openapi-*.json
6
-
7
- # Generated schema files (except the two needed for distribution)
8
- class_generator/schema/*.json
9
- !class_generator/schema/__resources-mappings.json
10
- !class_generator/schema/_definitions.json
11
- class_generator/schema/__not-kind.txt
12
4
 
13
5
  # Created by .ignore support plugin (hsz.mobi)
14
6
  ### Python template
@@ -142,3 +134,10 @@ package-lock.json
142
134
  CLAUDE.md
143
135
  .agent-os/
144
136
  .cursorrules
137
+ .claude/
138
+
139
+ # VS Code settings
140
+ .vscode/
141
+
142
+ # Backup directories
143
+ .backups/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openshift-python-wrapper
3
- Version: 11.0.82
3
+ Version: 11.0.83
4
4
  Summary: Wrapper around https://github.com/kubernetes-client/python
5
5
  Project-URL: homepage, https://github.com/RedHatQE/openshift-python-wrapper
6
6
  Project-URL: documentation, https://openshift-python-wrapper.readthedocs.io/en/latest/
@@ -50,6 +50,26 @@ class-generator --kind <kind>
50
50
  - `OATH` -> `oath`
51
51
  - `CDIConfig` -> `cdi_config`
52
52
 
53
+ ### Overwriting existing files
54
+
55
+ When regenerating or updating existing resource files, you can use the `--overwrite` flag along with `--backup` to create a backup of existing files before overwriting them:
56
+
57
+ ```bash
58
+ class-generator --kind <kind> --overwrite --backup
59
+ ```
60
+
61
+ This creates a timestamped backup in `.backups/backup-YYYYMMDD-HHMMSS/` preserving the original directory structure of your files.
62
+
63
+ ### Batch regeneration with backup
64
+
65
+ When regenerating all resources, backups are also stored in the unified `.backups/` directory:
66
+
67
+ ```bash
68
+ class-generator --regenerate-all --backup
69
+ ```
70
+
71
+ All backups preserve the original directory structure, making it easy to restore specific files or entire directories if needed.
72
+
53
73
  ### Discovering missing resources
54
74
 
55
75
  The class-generator can automatically discover resources in your cluster that don't have wrapper classes yet. Resource discovery runs in parallel for improved performance, typically reducing discovery time by 3-5x compared to sequential discovery.
@@ -149,35 +169,4 @@ cd openshift-python-wrapper
149
169
 
150
170
  - Login to the cluster use admin user and password.
151
171
 
152
- ```bash
153
- oc login <clster api URL> -u <username> -p <password>
154
172
  ```
155
-
156
- - Execute the command:
157
-
158
- ```bash
159
- class-generator --update-schema
160
- ```
161
-
162
- The schema update process:
163
- - Fetches schemas directly from the OpenAPI v3 endpoint
164
- - Runs in parallel for improved performance
165
- - Stores schemas in `class_generator/schema/__resources-mappings.json` and `class_generator/schema/_definitions.json`
166
-
167
- ## Version Selection
168
-
169
- When multiple API versions exist for the same resource within an API group, the class generator automatically selects the latest stable version according to this precedence:
170
-
171
- `v2` > `v1` > `v1beta2` > `v1beta1` > `v1alpha2` > `v1alpha1`
172
-
173
- For example:
174
- - If both `v1` and `v1beta1` exist, `v1` will be used
175
- - Resources from different API groups are treated as separate resources
176
-
177
- ## Python Keyword Handling
178
-
179
- Fields that conflict with Python reserved keywords are automatically renamed by appending an underscore. The original field name is preserved in the API calls.
180
-
181
- Example:
182
- - CRD field `finally` → Python parameter `finally_`
183
- - The generated `to_dict()` method correctly maps back to `finally` for API operations
@@ -0,0 +1,560 @@
1
+ """Command-line interface for the class generator."""
2
+
3
+ import fnmatch
4
+ import shutil
5
+ import sys
6
+ from concurrent.futures import Future, ThreadPoolExecutor, as_completed
7
+ from datetime import datetime
8
+ from pathlib import Path
9
+ from typing import Any
10
+
11
+ import cloup
12
+ from cloup.constraints import If, IsSet, accept_none, require_one
13
+ from simple_logger.logger import get_logger
14
+
15
+ from class_generator.constants import TESTS_MANIFESTS_DIR
16
+ from class_generator.core.coverage import analyze_coverage, generate_report
17
+ from class_generator.core.discovery import discover_generated_resources
18
+ from class_generator.core.generator import class_generator
19
+ from class_generator.core.schema import update_kind_schema
20
+ from class_generator.tests.test_generation import generate_class_generator_tests
21
+ from ocp_resources.utils.utils import convert_camel_case_to_snake_case
22
+
23
+ LOGGER = get_logger(name=__name__)
24
+
25
+
26
+ def validate_actions(
27
+ kind: str | None,
28
+ update_schema: bool,
29
+ discover_missing: bool,
30
+ coverage_report: bool,
31
+ generate_missing: bool,
32
+ regenerate_all: bool,
33
+ ) -> None:
34
+ """Validate that at least one action is specified."""
35
+ actions = [kind, update_schema, discover_missing, coverage_report, generate_missing, regenerate_all]
36
+ if not any(actions):
37
+ LOGGER.error(
38
+ "At least one action must be specified (--kind, --update-schema, --discover-missing, --coverage-report, --generate-missing, or --regenerate-all)"
39
+ )
40
+ sys.exit(1)
41
+
42
+
43
+ def handle_schema_update(update_schema: bool, generate_missing: bool) -> bool:
44
+ """
45
+ Handle schema update operations.
46
+
47
+ Args:
48
+ update_schema: Whether to update the schema
49
+ generate_missing: Whether to generate missing resources after update
50
+
51
+ Returns:
52
+ True if processing should continue, False if it should exit
53
+ """
54
+ if update_schema:
55
+ LOGGER.info("Updating resource schema...")
56
+ update_kind_schema()
57
+
58
+ # If only updating schema (not generating), exit
59
+ if not generate_missing:
60
+ return False
61
+
62
+ LOGGER.info("Schema updated. Proceeding with resource generation...")
63
+
64
+ return True
65
+
66
+
67
+ def handle_coverage_analysis_and_reporting(
68
+ coverage_report: bool,
69
+ discover_missing: bool,
70
+ generate_missing: bool,
71
+ json_output: bool,
72
+ ) -> dict[str, Any]:
73
+ """
74
+ Handle coverage analysis and reporting.
75
+
76
+ Args:
77
+ coverage_report: Whether to generate a coverage report
78
+ discover_missing: Whether to discover missing resources
79
+ generate_missing: Whether to generate missing resources
80
+ json_output: Whether to output in JSON format
81
+
82
+ Returns:
83
+ Coverage analysis data
84
+ """
85
+ # Analyze coverage (now based on schema mapping, not cluster discovery)
86
+ coverage_analysis = analyze_coverage()
87
+
88
+ # Generate report if requested
89
+ if coverage_report or discover_missing or generate_missing:
90
+ output_format = "json" if json_output else None
91
+ report = generate_report(coverage_data=coverage_analysis, output_format=output_format)
92
+ if report is not None: # Only print if report is not None (json format)
93
+ print(report)
94
+
95
+ return coverage_analysis
96
+
97
+
98
+ def handle_missing_resources_generation(
99
+ generate_missing: bool,
100
+ coverage_analysis: dict[str, Any],
101
+ overwrite: bool,
102
+ dry_run: bool,
103
+ ) -> None:
104
+ """
105
+ Handle generation of missing resources.
106
+
107
+ Args:
108
+ generate_missing: Whether to generate missing resources
109
+ coverage_analysis: Coverage analysis data containing missing resources
110
+ overwrite: Whether to overwrite existing files
111
+ dry_run: Whether this is a dry run
112
+ """
113
+ if generate_missing and coverage_analysis["missing_resources"]:
114
+ LOGGER.info(f"Generating {len(coverage_analysis['missing_resources'])} missing resources...")
115
+ for resource_kind in coverage_analysis["missing_resources"]:
116
+ # Extract kind from dict (missing_resources entries are now always dicts)
117
+ kind_to_generate = resource_kind["kind"]
118
+
119
+ try:
120
+ class_generator(
121
+ kind=kind_to_generate,
122
+ output_file="",
123
+ overwrite=overwrite,
124
+ add_tests=False,
125
+ dry_run=dry_run,
126
+ )
127
+ if not dry_run:
128
+ LOGGER.info(f"Generated {kind_to_generate}")
129
+ except Exception as e:
130
+ LOGGER.error(f"Failed to generate {kind_to_generate}: {e}")
131
+
132
+
133
+ def create_backup_if_needed(target_file: Path, backup_dir: Path | None) -> None:
134
+ """
135
+ Create a backup of the target file if backup_dir is set and file exists.
136
+
137
+ Args:
138
+ target_file: The file to backup
139
+ backup_dir: The directory where backups should be stored
140
+ """
141
+ if backup_dir and target_file.exists():
142
+ # Preserve directory structure in backup
143
+ if target_file.is_absolute():
144
+ try:
145
+ relative_path = target_file.relative_to(Path.cwd())
146
+ except ValueError:
147
+ # File is outside current directory, use just the filename
148
+ relative_path = Path(target_file.name)
149
+ else:
150
+ # Path is already relative, use as-is
151
+ relative_path = target_file
152
+ backup_path = backup_dir / relative_path
153
+ backup_path.parent.mkdir(parents=True, exist_ok=True)
154
+ shutil.copy2(target_file, backup_path)
155
+ LOGGER.info(f"Backed up {target_file}")
156
+
157
+
158
+ def handle_regenerate_all(
159
+ regenerate_all: bool,
160
+ backup: bool,
161
+ dry_run: bool,
162
+ filter: str | None,
163
+ ) -> bool:
164
+ """
165
+ Handle regeneration of all generated resources.
166
+
167
+ Args:
168
+ regenerate_all: Whether to regenerate all resources
169
+ backup: Whether to create backups
170
+ dry_run: Whether this is a dry run
171
+ filter: Optional filter pattern for resource names
172
+
173
+ Returns:
174
+ True if regeneration was performed and main should exit, False to continue
175
+ """
176
+ if not regenerate_all:
177
+ return False
178
+
179
+ LOGGER.info("Starting batch regeneration of all generated resources...")
180
+
181
+ # Create backup if requested
182
+ backup_dir = None
183
+ if backup and not dry_run:
184
+ timestamp = datetime.now().strftime("%Y%m%d-%H%M%S")
185
+ backup_root = Path(".backups")
186
+ backup_root.mkdir(exist_ok=True)
187
+ backup_dir = backup_root / f"backup-{timestamp}"
188
+ backup_dir.mkdir(exist_ok=True)
189
+ LOGGER.info(f"Creating backup in {backup_dir}")
190
+
191
+ # Discover all generated resources
192
+ discovered = discover_generated_resources()
193
+ LOGGER.info(f"Found {len(discovered)} generated resources")
194
+
195
+ # Filter resources if pattern provided
196
+ if filter:
197
+ filtered = []
198
+ for resource in discovered:
199
+ if fnmatch.fnmatch(resource["kind"], filter):
200
+ filtered.append(resource)
201
+ discovered = filtered
202
+ LOGGER.info(f"Filtered to {len(discovered)} resources matching '{filter}'")
203
+
204
+ # Regenerate each resource
205
+ success_count = 0
206
+ error_count = 0
207
+
208
+ # Define function to process a single resource
209
+ def regenerate_single_resource(resource: dict[str, Any]) -> tuple[str, bool, str | None]:
210
+ """
211
+ Regenerate a single resource.
212
+
213
+ Returns:
214
+ Tuple of (resource_kind, success, error_message)
215
+ """
216
+ resource_kind = resource["kind"]
217
+ resource_file = resource["path"]
218
+
219
+ try:
220
+ LOGGER.info(f"Regenerating {resource_kind}...")
221
+
222
+ # Create backup of original file if requested
223
+ create_backup_if_needed(target_file=Path(resource_file), backup_dir=backup_dir)
224
+
225
+ # Regenerate the resource
226
+ result = class_generator(
227
+ kind=resource_kind,
228
+ overwrite=True, # Always overwrite in regenerate mode
229
+ dry_run=dry_run,
230
+ output_file=resource_file,
231
+ add_tests=False,
232
+ called_from_cli=False, # Don't prompt for missing resources during batch regeneration
233
+ )
234
+
235
+ # Check if generation was successful (empty list means failure)
236
+ if result:
237
+ if not dry_run:
238
+ LOGGER.info(f"Successfully regenerated {resource_kind}")
239
+ return resource_kind, True, None
240
+ else:
241
+ LOGGER.warning(f"Skipped {resource_kind}: Not found in schema mapping")
242
+ return resource_kind, False, "Not found in schema mapping"
243
+ except Exception as e:
244
+ LOGGER.error(f"Failed to regenerate {resource_kind}: {e}")
245
+ return resource_kind, False, str(e)
246
+
247
+ # Process resources in parallel
248
+ with ThreadPoolExecutor(max_workers=10) as executor:
249
+ # Submit all tasks
250
+ regeneration_futures = {
251
+ executor.submit(regenerate_single_resource, resource): resource for resource in discovered
252
+ }
253
+
254
+ # Process results as they complete
255
+ for future in as_completed(regeneration_futures):
256
+ resource_kind, success, error = future.result()
257
+ if success:
258
+ success_count += 1
259
+ else:
260
+ error_count += 1
261
+
262
+ # Print summary
263
+ if not dry_run:
264
+ LOGGER.info(f"\nRegeneration complete: {success_count} succeeded, {error_count} failed")
265
+ if backup_dir:
266
+ LOGGER.info(f"Backup files stored in: {backup_dir}")
267
+ else:
268
+ LOGGER.info(f"\nDry run complete: would regenerate {len(discovered)} resources")
269
+
270
+ return True
271
+
272
+
273
+ def handle_normal_kind_generation(
274
+ kind: str,
275
+ overwrite: bool,
276
+ output_file: str,
277
+ dry_run: bool,
278
+ add_tests: bool,
279
+ backup: bool,
280
+ ) -> None:
281
+ """
282
+ Handle normal kind generation with -k/--kind option.
283
+
284
+ Args:
285
+ kind: Comma-separated list of kinds to generate
286
+ overwrite: Whether to overwrite existing files
287
+ output_file: Optional output file path
288
+ dry_run: Whether this is a dry run
289
+ add_tests: Whether to add tests
290
+ backup: Whether to create backups
291
+ """
292
+ # Generate class files for specified kinds
293
+ kind_list: list[str] = kind.split(",")
294
+
295
+ # Create backup directory if backup is requested with overwrite
296
+ backup_dir = None
297
+ if backup and overwrite and not dry_run:
298
+ timestamp = datetime.now().strftime("%Y%m%d-%H%M%S")
299
+ backup_root = Path(".backups")
300
+ backup_root.mkdir(exist_ok=True)
301
+ backup_dir = backup_root / f"backup-{timestamp}"
302
+ backup_dir.mkdir(exist_ok=True)
303
+ LOGGER.info(f"Creating backup in {backup_dir}")
304
+
305
+ if len(kind_list) == 1:
306
+ # Single kind - run directly
307
+ # First get the output file path to check if it exists
308
+ if overwrite and backup_dir:
309
+ # Determine the output file path
310
+ if output_file:
311
+ target_file = Path(output_file)
312
+ else:
313
+ # Default output path based on kind
314
+ formatted_kind = convert_camel_case_to_snake_case(name=kind)
315
+ target_file = Path("ocp_resources") / f"{formatted_kind}.py"
316
+
317
+ # Create backup if file exists
318
+ create_backup_if_needed(target_file=target_file, backup_dir=backup_dir)
319
+
320
+ class_generator(
321
+ kind=kind,
322
+ overwrite=overwrite,
323
+ dry_run=dry_run,
324
+ output_file=output_file,
325
+ add_tests=add_tests,
326
+ )
327
+
328
+ if backup_dir and not dry_run:
329
+ LOGGER.info(f"Backup files stored in: {backup_dir}")
330
+ else:
331
+ # Multiple kinds - run in parallel
332
+ def generate_with_backup(kind_to_generate: str) -> list[str]:
333
+ """Generate a single kind with optional backup."""
334
+ if overwrite and backup_dir:
335
+ # Determine the output file path for this kind
336
+ formatted_kind = convert_camel_case_to_snake_case(name=kind_to_generate)
337
+ target_file = Path("ocp_resources") / f"{formatted_kind}.py"
338
+
339
+ # Create backup if file exists
340
+ create_backup_if_needed(target_file=target_file, backup_dir=backup_dir)
341
+
342
+ return class_generator(
343
+ kind=kind_to_generate,
344
+ overwrite=overwrite,
345
+ dry_run=dry_run,
346
+ output_file=output_file,
347
+ add_tests=add_tests,
348
+ )
349
+
350
+ futures: list[Future] = []
351
+ with ThreadPoolExecutor(max_workers=10) as executor:
352
+ for _kind in kind_list:
353
+ futures.append(executor.submit(generate_with_backup, _kind))
354
+
355
+ # Wait for all tasks to complete
356
+ for _ in as_completed(futures):
357
+ pass
358
+
359
+ if backup_dir and not dry_run:
360
+ LOGGER.info(f"Backup files stored in: {backup_dir}")
361
+
362
+
363
+ def handle_test_generation(add_tests: bool) -> None:
364
+ """
365
+ Handle test generation and execution.
366
+
367
+ Args:
368
+ add_tests: Whether to generate and run tests
369
+ """
370
+ if add_tests:
371
+ generate_class_generator_tests()
372
+
373
+ # Run the generated test file
374
+ LOGGER.info("Running generated tests...")
375
+ import os
376
+
377
+ test_file = "class_generator/tests/test_class_generator.py"
378
+ exit_code = os.system(f"uv run pytest {test_file}")
379
+
380
+ # os.system returns the exit status shifted left by 8 bits
381
+ if exit_code != 0:
382
+ LOGGER.error(f"Tests failed with exit code {exit_code >> 8}")
383
+
384
+
385
+ @cloup.command("Resource class generator", show_constraints=True)
386
+ @cloup.option(
387
+ "-k",
388
+ "--kind",
389
+ type=cloup.STRING,
390
+ help="""
391
+ \b
392
+ The Kind to generate the class for, Needs working cluster with admin privileges.
393
+ multiple kinds can be sent separated by comma (without spaces)
394
+ Example: -k Deployment,Pod,ConfigMap
395
+ """,
396
+ )
397
+ @cloup.option(
398
+ "-o",
399
+ "--output-file",
400
+ help="The full filename path to generate a python resource file. If not sent, resource kind will be used",
401
+ type=cloup.Path(),
402
+ )
403
+ @cloup.option(
404
+ "--overwrite",
405
+ is_flag=True,
406
+ help="Output file overwrite existing file if passed",
407
+ )
408
+ @cloup.option("--dry-run", is_flag=True, help="Run the script without writing to file")
409
+ @cloup.option(
410
+ "--add-tests",
411
+ help=f"Add a test to `test_class_generator.py` and test files to `{TESTS_MANIFESTS_DIR}` dir",
412
+ is_flag=True,
413
+ show_default=True,
414
+ )
415
+ @cloup.option(
416
+ "--update-schema",
417
+ help="Update kind schema files",
418
+ is_flag=True,
419
+ show_default=True,
420
+ )
421
+ @cloup.option(
422
+ "--discover-missing",
423
+ help="Discover resources in the cluster that don't have wrapper classes",
424
+ is_flag=True,
425
+ show_default=True,
426
+ )
427
+ @cloup.option(
428
+ "--coverage-report",
429
+ help="Generate a coverage report of implemented vs discovered resources",
430
+ is_flag=True,
431
+ show_default=True,
432
+ )
433
+ @cloup.option(
434
+ "--json",
435
+ "json_output",
436
+ help="Output reports in JSON format",
437
+ is_flag=True,
438
+ default=False,
439
+ show_default=True,
440
+ )
441
+ @cloup.option(
442
+ "--generate-missing",
443
+ help="Generate classes for all missing resources after discovery",
444
+ is_flag=True,
445
+ show_default=True,
446
+ )
447
+ @cloup.option(
448
+ "--regenerate-all",
449
+ help="Regenerate all existing generated resource classes with latest schemas",
450
+ is_flag=True,
451
+ show_default=True,
452
+ )
453
+ @cloup.option(
454
+ "--backup",
455
+ help="Create timestamped backup before regeneration or overwriting files",
456
+ is_flag=True,
457
+ show_default=True,
458
+ )
459
+ @cloup.option(
460
+ "--filter",
461
+ help="Filter resources to regenerate using glob pattern (e.g., 'Pod*', '*Service')",
462
+ type=cloup.STRING,
463
+ default=None,
464
+ )
465
+ @cloup.constraint(
466
+ If(IsSet("update_schema") & ~IsSet("generate_missing"), then=accept_none),
467
+ [
468
+ "kind",
469
+ "discover_missing",
470
+ "coverage_report",
471
+ "dry_run",
472
+ "overwrite",
473
+ "output_file",
474
+ "add_tests",
475
+ "regenerate_all",
476
+ ],
477
+ )
478
+ @cloup.constraint(
479
+ If(IsSet("backup"), then=require_one),
480
+ ["regenerate_all", "overwrite"],
481
+ )
482
+ @cloup.constraint(
483
+ If(IsSet("filter"), then=require_one),
484
+ ["regenerate_all"],
485
+ )
486
+ def main(
487
+ kind: str | None,
488
+ overwrite: bool,
489
+ output_file: str,
490
+ dry_run: bool,
491
+ add_tests: bool,
492
+ discover_missing: bool,
493
+ coverage_report: bool,
494
+ generate_missing: bool,
495
+ regenerate_all: bool,
496
+ backup: bool,
497
+ filter: str | None,
498
+ json_output: bool,
499
+ update_schema: bool,
500
+ ) -> None:
501
+ """Generate Python module for K8S resource."""
502
+ # Validate input parameters
503
+ validate_actions(
504
+ kind=kind,
505
+ update_schema=update_schema,
506
+ discover_missing=discover_missing,
507
+ coverage_report=coverage_report,
508
+ generate_missing=generate_missing,
509
+ regenerate_all=regenerate_all,
510
+ )
511
+
512
+ # Handle schema update
513
+ if not handle_schema_update(update_schema=update_schema, generate_missing=generate_missing):
514
+ return
515
+
516
+ # Handle coverage analysis and reporting
517
+ coverage_analysis = handle_coverage_analysis_and_reporting(
518
+ coverage_report=coverage_report,
519
+ discover_missing=discover_missing,
520
+ generate_missing=generate_missing,
521
+ json_output=json_output,
522
+ )
523
+
524
+ # Handle missing resources generation
525
+ handle_missing_resources_generation(
526
+ generate_missing=generate_missing,
527
+ coverage_analysis=coverage_analysis,
528
+ overwrite=overwrite,
529
+ dry_run=dry_run,
530
+ )
531
+
532
+ # Handle regenerate-all operation
533
+ if handle_regenerate_all(regenerate_all=regenerate_all, backup=backup, dry_run=dry_run, filter=filter):
534
+ return
535
+
536
+ # Exit if we only did discovery/report/generation
537
+ if discover_missing or coverage_report or generate_missing:
538
+ return
539
+
540
+ # Handle normal generation with -k/--kind option
541
+ if not kind:
542
+ LOGGER.error("No kind specified for generation")
543
+ return
544
+
545
+ # Handle normal kind generation
546
+ handle_normal_kind_generation(
547
+ kind=kind,
548
+ overwrite=overwrite,
549
+ output_file=output_file,
550
+ dry_run=dry_run,
551
+ add_tests=add_tests,
552
+ backup=backup,
553
+ )
554
+
555
+ # Handle test generation
556
+ handle_test_generation(add_tests=add_tests)
557
+
558
+
559
+ if __name__ == "__main__":
560
+ main()
@@ -0,0 +1,37 @@
1
+ """Constants used throughout the class generator."""
2
+
3
+ import keyword
4
+ from pathlib import Path
5
+
6
+ # String constants
7
+ SPEC_STR: str = "SPEC"
8
+ FIELDS_STR: str = "FIELDS"
9
+
10
+ # Directory constants
11
+ TESTS_MANIFESTS_DIR: Path = Path("class_generator") / "tests" / "manifests"
12
+ SCHEMA_DIR: Path = Path("class_generator") / "schema"
13
+ RESOURCES_MAPPING_FILE: Path = SCHEMA_DIR / "__resources-mappings.json"
14
+
15
+ # Description constants
16
+ MISSING_DESCRIPTION_STR: str = "No field description from API"
17
+
18
+ # Python keyword mappings for safe variable names
19
+ PYTHON_KEYWORD_MAPPINGS = {
20
+ # Map Python keywords to safe alternatives by appending underscore
21
+ kw: f"{kw}_"
22
+ for kw in keyword.kwlist
23
+ }
24
+
25
+ # Version priority for Kubernetes API versions
26
+ VERSION_PRIORITY = {
27
+ "v2": 6,
28
+ "v1": 5,
29
+ "v1beta2": 4,
30
+ "v1beta1": 3,
31
+ "v1alpha2": 2,
32
+ "v1alpha1": 1,
33
+ }
34
+
35
+ # Generated code marker
36
+ END_OF_GENERATED_CODE = "# End of generated code"
37
+ GENERATED_USING_MARKER = "# Generated using"