oci-cli 3.64.0__py3-none-any.whl → 3.65.0__py3-none-any.whl

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 (508) hide show
  1. oci_cli/help_text_producer/data_files/text/cmdref/data-safe/security-assessment/list-finding-analytics.txt +14 -0
  2. oci_cli/help_text_producer/data_files/text/cmdref/data-safe/security-assessment/list-findings.txt +8 -0
  3. oci_cli/help_text_producer/data_files/text/cmdref/db/autonomous-container-database/create-autonomous-container-database-create-autonomous-container-database-from-backup-details.txt +2 -2
  4. oci_cli/help_text_producer/data_files/text/cmdref/db/autonomous-container-database/create.txt +3 -3
  5. oci_cli/help_text_producer/data_files/text/cmdref/db/autonomous-container-database-backup/list.txt +2 -2
  6. oci_cli/help_text_producer/data_files/text/cmdref/db/data-guard-association/create/with-new-db-system.txt +15 -0
  7. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-from-backup.txt +10 -0
  8. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-standby-database.txt +14 -0
  9. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create.txt +10 -0
  10. oci_cli/help_text_producer/data_files/text/cmdref/db/database/update.txt +11 -0
  11. oci_cli/help_text_producer/data_files/text/cmdref/db/exadb-vm-cluster/create.txt +9 -0
  12. oci_cli/help_text_producer/data_files/text/cmdref/db/exascale-db-storage-vault/list.txt +21 -0
  13. oci_cli/help_text_producer/data_files/text/cmdref/db/gi-version/list.txt +5 -0
  14. oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database/create-local-clone.txt +4 -0
  15. oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database/create-remote-clone.txt +4 -0
  16. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project/create.txt → db/pluggable-database/create-snapshot.txt} +30 -25
  17. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/managed-instance/install-all-updates.txt → db/pluggable-database/delete-snapshot.txt} +21 -17
  18. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/work-request/get.txt → db/pluggable-database/get-snapshot.txt} +9 -8
  19. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/access-policy/list.txt → db/pluggable-database/list-snapshots.txt} +32 -37
  20. oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database.txt +8 -0
  21. oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-backup.txt +42 -27
  22. oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-database.txt +42 -27
  23. oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-db-system.txt +42 -27
  24. oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch.txt +42 -27
  25. oci_cli/help_text_producer/data_files/text/cmdref/db/system/list-db-system-storage-performances.txt +4 -0
  26. oci_cli/help_text_producer/data_files/text/cmdref/db/system/update.txt +15 -0
  27. oci_cli/help_text_producer/data_files/text/cmdref/db/system-shape/list.txt +5 -0
  28. oci_cli/help_text_producer/data_files/text/cmdref/db/version/list.txt +5 -0
  29. oci_cli/help_text_producer/data_files/text/cmdref/db.txt +8 -0
  30. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error/{list.txt → list-errors.txt} +5 -5
  31. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error.txt +1 -1
  32. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/{work-request-log/list.txt → work-request-log-entry/list-logs.txt} +5 -5
  33. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection → delegate-access-control/work-request}/work-request-log-entry.txt +1 -1
  34. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request.txt +3 -3
  35. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control.txt +3 -3
  36. oci_cli/help_text_producer/data_files/text/cmdref/generative-ai-inference/chat-result/chat-cohere-chat-request.txt +3 -1
  37. oci_cli/help_text_producer/data_files/text/cmdref/generative-ai-inference/chat-result/chat-generic-chat-request.txt +83 -3
  38. oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/create.txt +12 -0
  39. oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/list.txt +9 -0
  40. oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/update.txt +12 -0
  41. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-error/{list.txt → list-errors.txt} +5 -5
  42. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-error.txt +1 -1
  43. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-log-entry/{list-work-request-logs.txt → list-logs.txt} +5 -5
  44. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-log-entry.txt +1 -1
  45. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request.txt +2 -2
  46. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane.txt +2 -2
  47. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh/delete.txt → kafka/cluster/change-compartment.txt} +15 -20
  48. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/virtual-service → kafka/cluster}/create.txt +78 -66
  49. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster}/delete.txt +7 -12
  50. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/managed-instance/install-all-windows-updates.txt → kafka/cluster/disable-superuser.txt} +17 -17
  51. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh/change-compartment.txt → kafka/cluster/enable-superuser.txt} +17 -18
  52. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/erratum → kafka/cluster}/get.txt +6 -6
  53. oci_cli/help_text_producer/data_files/text/cmdref/{dts/export → kafka/cluster}/list.txt +36 -23
  54. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh → kafka/cluster}/update.txt +68 -45
  55. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster-config}/change-compartment.txt +10 -10
  56. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/data-asset → kafka/cluster-config}/create.txt +30 -33
  57. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/managed-instance-group → kafka/cluster-config}/delete.txt +7 -10
  58. oci_cli/help_text_producer/data_files/text/cmdref/{os-management/windows-update → kafka/cluster-config}/get.txt +6 -6
  59. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh → kafka/cluster-config}/list.txt +25 -30
  60. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/data-asset → kafka/cluster-config}/update.txt +40 -30
  61. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/work-request/cancel.txt → kafka/cluster-config-version/delete.txt} +12 -7
  62. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster-config-version}/get.txt +11 -8
  63. oci_cli/help_text_producer/data_files/text/cmdref/{dts/job → kafka/cluster-config-version}/list.txt +25 -23
  64. oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster-config-version.txt +18 -0
  65. oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster-config.txt +29 -0
  66. oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster.txt +33 -0
  67. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/cancel.txt +5 -5
  68. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/get.txt +5 -5
  69. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/list.txt +26 -31
  70. oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request-error/list.txt +131 -0
  71. oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection → kafka}/work-request-error.txt +2 -1
  72. oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/work-request → kafka/work-request-log-entry}/list-work-request-logs.txt +14 -11
  73. oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request-log-entry.txt +15 -0
  74. oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request.txt +23 -0
  75. oci_cli/help_text_producer/data_files/text/cmdref/kafka.txt +69 -0
  76. oci_cli/help_text_producer/data_files/text/cmdref/lfs/lustre-file-system.txt +1 -1
  77. oci_cli/help_text_producer/data_files/text/cmdref/lfs.txt +2 -1
  78. oci_cli/help_text_producer/data_files/text/cmdref/network/ipv6/create.txt +4 -0
  79. oci_cli/help_text_producer/data_files/text/cmdref/network/vnic/assign-ipv6.txt +4 -0
  80. oci_cli/help_text_producer/data_files/text/cmdref/ocvs/work-request-error/{list.txt → list-errors.txt} +5 -5
  81. oci_cli/help_text_producer/data_files/text/cmdref/ocvs/work-request-error.txt +1 -1
  82. oci_cli/help_text_producer/data_files/text/cmdref/ocvs.txt +1 -1
  83. oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error/{list.txt → list-errors.txt} +5 -5
  84. oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error.txt +1 -1
  85. oci_cli/help_text_producer/data_files/text/cmdref/organizations.txt +1 -1
  86. oci_cli/help_text_producer/data_files/text/cmdref/support/incident/create.txt +6 -6
  87. oci_cli/help_text_producer/data_files/text/cmdref/support/incident/get.txt +2 -2
  88. oci_cli/help_text_producer/data_files/text/cmdref/support/incident/list.txt +1 -1
  89. oci_cli/help_text_producer/data_files/text/cmdref/support/incident/update.txt +4 -4
  90. oci_cli/help_text_producer/data_files/text/cmdref/support/incident-resource-type/list.txt +3 -3
  91. oci_cli/help_text_producer/data_files/text/cmdref/support/validation-response/validate-user.txt +1 -1
  92. oci_cli/help_text_producer/data_files/text/index.txt +2 -8
  93. oci_cli/service_mapping.py +5 -20
  94. oci_cli/version.py +1 -1
  95. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/METADATA +2 -2
  96. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/RECORD +117 -498
  97. services/cims/src/oci_cli_incident/cims_cli_extended.py +1 -1
  98. services/core/src/oci_cli_virtual_network/generated/virtualnetwork_cli.py +5 -1
  99. services/core/src/oci_cli_virtual_network/virtualnetwork_cli_extended.py +5 -1
  100. services/data_safe/src/oci_cli_data_safe/generated/datasafe_cli.py +12 -2
  101. services/database/src/oci_cli_database/database_cli_extended.py +109 -3
  102. services/database/src/oci_cli_database/generated/database_cli.py +381 -63
  103. services/generative_ai_inference/src/oci_cli_generative_ai_inference/generated/generativeaiinference_cli.py +39 -5
  104. services/golden_gate/src/oci_cli_golden_gate/generated/goldengate_cli.py +22 -3
  105. services/{ai_anomaly_detection → managed_kafka}/__init__.py +1 -1
  106. services/{ai_anomaly_detection → managed_kafka}/src/__init__.py +1 -1
  107. services/{ai_anomaly_detection/src/oci_cli_anomaly_detection → managed_kafka/src/oci_cli_kafka_cluster}/__init__.py +1 -1
  108. services/{ai_anomaly_detection/src/oci_cli_anomaly_detection → managed_kafka/src/oci_cli_kafka_cluster}/generated/__init__.py +1 -1
  109. services/{os_management/src/oci_cli_os_management → managed_kafka/src/oci_cli_kafka_cluster}/generated/client_mappings.py +6 -6
  110. services/managed_kafka/src/oci_cli_kafka_cluster/generated/kafkacluster_cli.py +1254 -0
  111. services/managed_kafka/src/oci_cli_kafka_cluster/kafkacluster_cli_extended.py +46 -0
  112. services/managed_kafka/tests/__init__.py +4 -0
  113. oci_cli/bin/dts.psm1 +0 -147
  114. oci_cli/bin/os-management.psm1 +0 -140
  115. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/change-compartment.txt +0 -138
  116. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-atp.txt +0 -207
  117. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-influx.txt +0 -198
  118. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-os.txt +0 -174
  119. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/delete.txt +0 -138
  120. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/get.txt +0 -100
  121. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/list.txt +0 -146
  122. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset.txt +0 -30
  123. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/change-compartment.txt +0 -119
  124. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-embedded-input-details.txt +0 -144
  125. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-inline-input-details.txt +0 -185
  126. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-object-list-input-details.txt +0 -173
  127. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-object-store-output-details.txt +0 -175
  128. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create.txt +0 -173
  129. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/delete.txt +0 -143
  130. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/get.txt +0 -105
  131. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/update.txt +0 -147
  132. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job-collection/list-detect-anomaly-jobs.txt +0 -155
  133. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job-collection.txt +0 -15
  134. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job.txt +0 -31
  135. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/change-compartment.txt +0 -113
  136. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/create.txt +0 -174
  137. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/delete.txt +0 -140
  138. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies-embedded.txt +0 -124
  139. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies-inline.txt +0 -139
  140. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies.txt +0 -125
  141. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/get.txt +0 -100
  142. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/list.txt +0 -148
  143. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/update.txt +0 -173
  144. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model.txt +0 -30
  145. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/change-compartment.txt +0 -138
  146. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/create.txt +0 -170
  147. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/delete.txt +0 -137
  148. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/get.txt +0 -99
  149. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/list.txt +0 -147
  150. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/update.txt +0 -180
  151. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe.txt +0 -25
  152. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project/list.txt +0 -144
  153. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project/update.txt +0 -166
  154. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project.txt +0 -24
  155. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request/get.txt +0 -91
  156. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request/list.txt +0 -114
  157. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request-error/list.txt +0 -110
  158. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request-log-entry/list-work-request-logs.txt +0 -110
  159. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request.txt +0 -18
  160. oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection.txt +0 -125
  161. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-log.txt +0 -14
  162. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/cancel.txt +0 -101
  163. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/delete.txt +0 -105
  164. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/get-passphrase.txt +0 -101
  165. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/list.txt +0 -100
  166. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/never-receive.txt +0 -101
  167. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request-entitlement.txt +0 -189
  168. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request-return-label.txt +0 -249
  169. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request.txt +0 -188
  170. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/setup-notifications.txt +0 -63
  171. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/show-entitlement.txt +0 -113
  172. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/show.txt +0 -101
  173. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/update-minimum-storage-capacity.txt +0 -107
  174. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/update-shipping-address.txt +0 -154
  175. oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance.txt +0 -38
  176. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/change-compartment.txt +0 -106
  177. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/configure-physical-appliance.txt +0 -114
  178. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/create-policy.txt +0 -68
  179. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/create.txt +0 -226
  180. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/delete.txt +0 -132
  181. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/generate-manifest.txt +0 -97
  182. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/get-passphrase.txt +0 -68
  183. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/request-appliance.txt +0 -68
  184. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/request-return-label.txt +0 -245
  185. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/setup-notifications.txt +0 -51
  186. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/show.txt +0 -96
  187. oci_cli/help_text_producer/data_files/text/cmdref/dts/export/update.txt +0 -265
  188. oci_cli/help_text_producer/data_files/text/cmdref/dts/export.txt +0 -38
  189. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/change-compartment.txt +0 -106
  190. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/close.txt +0 -96
  191. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/create.txt +0 -192
  192. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/delete.txt +0 -100
  193. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/detach-devices-details/change-compartment.txt +0 -102
  194. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/detach-devices-details.txt +0 -12
  195. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/setup-notifications.txt +0 -68
  196. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/show.txt +0 -96
  197. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/update.txt +0 -150
  198. oci_cli/help_text_producer/data_files/text/cmdref/dts/job/verify-upload-user-credentials.txt +0 -91
  199. oci_cli/help_text_producer/data_files/text/cmdref/dts/job.txt +0 -34
  200. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/activate.txt +0 -93
  201. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/create.txt +0 -93
  202. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/deactivate.txt +0 -77
  203. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/delete.txt +0 -77
  204. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/get-seal-manifest.txt +0 -81
  205. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/list.txt +0 -67
  206. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/reopen.txt +0 -77
  207. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/seal-status.txt +0 -77
  208. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/seal.txt +0 -75
  209. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/set-export.txt +0 -93
  210. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/show.txt +0 -77
  211. oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset.txt +0 -34
  212. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/configure-encryption.txt +0 -81
  213. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/finalize.txt +0 -89
  214. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/initialize-authentication.txt +0 -106
  215. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/list.txt +0 -63
  216. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/show.txt +0 -67
  217. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/unlock.txt +0 -75
  218. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/unregister.txt +0 -67
  219. oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance.txt +0 -26
  220. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/configured.txt +0 -111
  221. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/copied.txt +0 -105
  222. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/monitored.txt +0 -102
  223. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/prepared.txt +0 -104
  224. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/shipped.txt +0 -106
  225. oci_cli/help_text_producer/data_files/text/cmdref/dts/verify.txt +0 -22
  226. oci_cli/help_text_producer/data_files/text/cmdref/dts.txt +0 -144
  227. oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum-summary/list-errata.txt +0 -310
  228. oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum-summary.txt +0 -15
  229. oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum.txt +0 -14
  230. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/delete-content.txt +0 -113
  231. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/get-content.txt +0 -108
  232. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/get-report.txt +0 -270
  233. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/list-related-events.txt +0 -307
  234. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/list.txt +0 -319
  235. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/update.txt +0 -139
  236. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/upload-content.txt +0 -110
  237. oci_cli/help_text_producer/data_files/text/cmdref/os-management/event.txt +0 -27
  238. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/attach-child.txt +0 -102
  239. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/attach-parent.txt +0 -104
  240. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/detach-child.txt +0 -101
  241. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/detach-parent.txt +0 -102
  242. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/disable-module-stream.txt +0 -138
  243. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/enable-module-stream.txt +0 -139
  244. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/get.txt +0 -91
  245. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-module-profile.txt +0 -141
  246. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-package.txt +0 -123
  247. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-update.txt +0 -123
  248. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-windows-update.txt +0 -124
  249. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-packages.txt +0 -142
  250. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-software-sources.txt +0 -141
  251. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-updates.txt +0 -141
  252. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-windows-updates.txt +0 -150
  253. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-installed-packages.txt +0 -141
  254. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-installed-windows-updates.txt +0 -142
  255. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-managed-instance-errata.txt +0 -141
  256. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-module-profiles.txt +0 -210
  257. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-module-streams.txt +0 -210
  258. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list.txt +0 -144
  259. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/remove-module-profile.txt +0 -142
  260. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/remove-package.txt +0 -123
  261. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/switch-module-stream.txt +0 -138
  262. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/attach.txt +0 -102
  263. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/change-compartment.txt +0 -107
  264. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/create.txt +0 -163
  265. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/detach.txt +0 -99
  266. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/get.txt +0 -94
  267. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/install-all-updates.txt +0 -128
  268. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/list.txt +0 -152
  269. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/update.txt +0 -166
  270. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group.txt +0 -30
  271. oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance.txt +0 -64
  272. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile/get.txt +0 -137
  273. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile/list.txt +0 -189
  274. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile.txt +0 -16
  275. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream/get.txt +0 -132
  276. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream/list.txt +0 -188
  277. oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream.txt +0 -16
  278. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/change-compartment.txt +0 -110
  279. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/create.txt +0 -357
  280. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/delete.txt +0 -135
  281. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/get.txt +0 -97
  282. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/list-upcoming.txt +0 -251
  283. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/list.txt +0 -174
  284. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/run-now.txt +0 -106
  285. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/skip-next-execution.txt +0 -106
  286. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/update.txt +0 -323
  287. oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job.txt +0 -30
  288. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/add-packages.txt +0 -111
  289. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/change-compartment.txt +0 -108
  290. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/create.txt +0 -187
  291. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/delete.txt +0 -133
  292. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/get-package.txt +0 -101
  293. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/get.txt +0 -95
  294. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/list-packages.txt +0 -145
  295. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/list.txt +0 -144
  296. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/remove-packages.txt +0 -112
  297. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/search-packages.txt +0 -124
  298. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/update.txt +0 -187
  299. oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source.txt +0 -34
  300. oci_cli/help_text_producer/data_files/text/cmdref/os-management/update-managed-instance-details/update-managed-instance.txt +0 -107
  301. oci_cli/help_text_producer/data_files/text/cmdref/os-management/update-managed-instance-details.txt +0 -14
  302. oci_cli/help_text_producer/data_files/text/cmdref/os-management/windows-update/list.txt +0 -129
  303. oci_cli/help_text_producer/data_files/text/cmdref/os-management/windows-update.txt +0 -16
  304. oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list-errors.txt +0 -128
  305. oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list-logs.txt +0 -128
  306. oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list.txt +0 -148
  307. oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request.txt +0 -20
  308. oci_cli/help_text_producer/data_files/text/cmdref/os-management.txt +0 -187
  309. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/change-compartment.txt +0 -143
  310. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/create.txt +0 -187
  311. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/delete.txt +0 -141
  312. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/get.txt +0 -103
  313. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/update.txt +0 -193
  314. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy.txt +0 -25
  315. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/debug/report.txt +0 -60
  316. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/debug.txt +0 -14
  317. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/change-compartment.txt +0 -143
  318. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/create.txt +0 -210
  319. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/delete.txt +0 -141
  320. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/get.txt +0 -103
  321. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/list.txt +0 -150
  322. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/update.txt +0 -215
  323. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/change-compartment.txt +0 -147
  324. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/create.txt +0 -197
  325. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/delete.txt +0 -145
  326. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/get.txt +0 -107
  327. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/list.txt +0 -150
  328. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/update.txt +0 -203
  329. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table.txt +0 -25
  330. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway.txt +0 -26
  331. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh/create.txt +0 -190
  332. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh/get.txt +0 -99
  333. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh.txt +0 -27
  334. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/proxy-details/get.txt +0 -79
  335. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/proxy-details.txt +0 -14
  336. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/change-compartment.txt +0 -143
  337. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create-virtual-deployment-disabled-service-discovery-configuration.txt +0 -204
  338. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create-virtual-deployment-dns-service-discovery-configuration.txt +0 -209
  339. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create.txt +0 -215
  340. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/delete.txt +0 -141
  341. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/get.txt +0 -103
  342. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/list.txt +0 -150
  343. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update-virtual-deployment-disabled-service-discovery-configuration.txt +0 -204
  344. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update-virtual-deployment-dns-service-discovery-configuration.txt +0 -209
  345. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update.txt +0 -215
  346. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment.txt +0 -33
  347. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/change-compartment.txt +0 -141
  348. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/delete.txt +0 -139
  349. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/get.txt +0 -101
  350. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/list.txt +0 -150
  351. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/update.txt +0 -211
  352. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/change-compartment.txt +0 -145
  353. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/create.txt +0 -195
  354. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/delete.txt +0 -143
  355. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/get.txt +0 -105
  356. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/list.txt +0 -150
  357. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/update.txt +0 -201
  358. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table.txt +0 -25
  359. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service.txt +0 -27
  360. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/work-request/list-work-request-errors.txt +0 -128
  361. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/work-request.txt +0 -22
  362. oci_cli/help_text_producer/data_files/text/cmdref/service-mesh.txt +0 -139
  363. services/ai_anomaly_detection/src/oci_cli_anomaly_detection/anomalydetection_cli_extended.py +0 -234
  364. services/ai_anomaly_detection/src/oci_cli_anomaly_detection/generated/anomalydetection_cli.py +0 -2665
  365. services/ai_anomaly_detection/src/oci_cli_anomaly_detection/generated/client_mappings.py +0 -14
  366. services/ai_anomaly_detection/tests/__init__.py +0 -4
  367. services/dts/__init__.py +0 -4
  368. services/dts/src/__init__.py +0 -4
  369. services/dts/src/oci_cli_appliance_export_job/__init__.py +0 -4
  370. services/dts/src/oci_cli_appliance_export_job/applianceexportjob_cli_extended.py +0 -582
  371. services/dts/src/oci_cli_appliance_export_job/applianceexportjob_constants.py +0 -11
  372. services/dts/src/oci_cli_appliance_export_job/generated/__init__.py +0 -4
  373. services/dts/src/oci_cli_appliance_export_job/generated/applianceexportjob_cli.py +0 -428
  374. services/dts/src/oci_cli_appliance_export_job/generated/client_mappings.py +0 -14
  375. services/dts/src/oci_cli_appliance_export_job/manifest/__init__.py +0 -3
  376. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_constants.py +0 -12
  377. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_iterator.py +0 -86
  378. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_line_item.py +0 -22
  379. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_stats.py +0 -93
  380. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_stats_consumer.py +0 -15
  381. services/dts/src/oci_cli_appliance_export_job/manifest/manifest_writer.py +0 -117
  382. services/dts/src/oci_cli_appliance_export_job/manifest/object_uploader.py +0 -124
  383. services/dts/src/oci_cli_dts/__init__.py +0 -4
  384. services/dts/src/oci_cli_dts/appliance_auth_manager.py +0 -59
  385. services/dts/src/oci_cli_dts/appliance_cert_manager.py +0 -51
  386. services/dts/src/oci_cli_dts/appliance_client_proxy.py +0 -57
  387. services/dts/src/oci_cli_dts/appliance_config.py +0 -34
  388. services/dts/src/oci_cli_dts/appliance_config_manager.py +0 -145
  389. services/dts/src/oci_cli_dts/appliance_config_spec.py +0 -38
  390. services/dts/src/oci_cli_dts/appliance_constants.py +0 -35
  391. services/dts/src/oci_cli_dts/appliance_init_auth.py +0 -81
  392. services/dts/src/oci_cli_dts/appliance_init_auth_spec.py +0 -32
  393. services/dts/src/oci_cli_dts/base_client.py +0 -102
  394. services/dts/src/oci_cli_dts/cli_utils.py +0 -131
  395. services/dts/src/oci_cli_dts/dts_service_cli_extended.py +0 -95
  396. services/dts/src/oci_cli_dts/dts_transform.py +0 -31
  397. services/dts/src/oci_cli_dts/generated/__init__.py +0 -4
  398. services/dts/src/oci_cli_dts/generated/dts_service_cli.py +0 -14
  399. services/dts/src/oci_cli_dts/nfs_dataset_client_proxy.py +0 -85
  400. services/dts/src/oci_cli_dts/nfsdataset_cli_extended.py +0 -371
  401. services/dts/src/oci_cli_dts/physical_appliance_control_plane/__init__.py +0 -3
  402. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/__init__.py +0 -16
  403. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/diagnose_tools_client.py +0 -163
  404. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/diagnose_tools_client_composite_operations.py +0 -24
  405. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/__init__.py +0 -28
  406. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/dataset_seal_status.py +0 -282
  407. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/details.py +0 -66
  408. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_dataset_info.py +0 -191
  409. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_dataset_spec.py +0 -93
  410. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_export_config.py +0 -174
  411. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_export_details.py +0 -66
  412. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/object_storage_upload_config.py +0 -201
  413. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/passphrase_details.py +0 -66
  414. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/physical_transfer_appliance.py +0 -214
  415. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/nfs_dataset_client.py +0 -835
  416. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/nfs_dataset_client_composite_operations.py +0 -24
  417. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/physical_transfer_appliance_client.py +0 -374
  418. services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/physical_transfer_appliance_client_composite_operations.py +0 -24
  419. services/dts/src/oci_cli_dts/physical_appliance_control_plane/service_endpoints.py +0 -9
  420. services/dts/src/oci_cli_dts/physicalappliance_cli_extended.py +0 -590
  421. services/dts/src/oci_cli_dts/verify_cli_extended.py +0 -494
  422. services/dts/src/oci_cli_shipping_vendors/__init__.py +0 -4
  423. services/dts/src/oci_cli_shipping_vendors/generated/__init__.py +0 -4
  424. services/dts/src/oci_cli_shipping_vendors/generated/client_mappings.py +0 -14
  425. services/dts/src/oci_cli_shipping_vendors/generated/shippingvendors_cli.py +0 -49
  426. services/dts/src/oci_cli_transfer_appliance/__init__.py +0 -4
  427. services/dts/src/oci_cli_transfer_appliance/generated/__init__.py +0 -4
  428. services/dts/src/oci_cli_transfer_appliance/generated/client_mappings.py +0 -14
  429. services/dts/src/oci_cli_transfer_appliance/generated/transferappliance_cli.py +0 -364
  430. services/dts/src/oci_cli_transfer_appliance/transferappliance_cli_extended.py +0 -362
  431. services/dts/src/oci_cli_transfer_appliance_entitlement/__init__.py +0 -4
  432. services/dts/src/oci_cli_transfer_appliance_entitlement/generated/__init__.py +0 -4
  433. services/dts/src/oci_cli_transfer_appliance_entitlement/generated/client_mappings.py +0 -14
  434. services/dts/src/oci_cli_transfer_appliance_entitlement/generated/transferapplianceentitlement_cli.py +0 -155
  435. services/dts/src/oci_cli_transfer_appliance_entitlement/transferapplianceentitlement_cli_extended.py +0 -66
  436. services/dts/src/oci_cli_transfer_device/__init__.py +0 -4
  437. services/dts/src/oci_cli_transfer_device/generated/__init__.py +0 -4
  438. services/dts/src/oci_cli_transfer_device/generated/client_mappings.py +0 -14
  439. services/dts/src/oci_cli_transfer_device/generated/transferdevice_cli.py +0 -209
  440. services/dts/src/oci_cli_transfer_job/__init__.py +0 -4
  441. services/dts/src/oci_cli_transfer_job/generated/__init__.py +0 -4
  442. services/dts/src/oci_cli_transfer_job/generated/client_mappings.py +0 -14
  443. services/dts/src/oci_cli_transfer_job/generated/transferjob_cli.py +0 -368
  444. services/dts/src/oci_cli_transfer_job/transferjob_cli_extended.py +0 -281
  445. services/dts/src/oci_cli_transfer_package/__init__.py +0 -4
  446. services/dts/src/oci_cli_transfer_package/generated/__init__.py +0 -4
  447. services/dts/src/oci_cli_transfer_package/generated/client_mappings.py +0 -14
  448. services/dts/src/oci_cli_transfer_package/generated/transferpackage_cli.py +0 -326
  449. services/dts/tests/__init__.py +0 -4
  450. services/os_management/__init__.py +0 -4
  451. services/os_management/src/__init__.py +0 -4
  452. services/os_management/src/oci_cli_event/__init__.py +0 -4
  453. services/os_management/src/oci_cli_event/event_cli_extended.py +0 -34
  454. services/os_management/src/oci_cli_event/generated/__init__.py +0 -4
  455. services/os_management/src/oci_cli_event/generated/client_mappings.py +0 -14
  456. services/os_management/src/oci_cli_event/generated/event_cli.py +0 -430
  457. services/os_management/src/oci_cli_os_management/__init__.py +0 -4
  458. services/os_management/src/oci_cli_os_management/generated/__init__.py +0 -4
  459. services/os_management/src/oci_cli_os_management/generated/os_management_service_cli.py +0 -15
  460. services/os_management/src/oci_cli_os_management/generated/osmanagement_cli.py +0 -4009
  461. services/os_management/src/oci_cli_os_management/osmanagement_cli_extended.py +0 -244
  462. services/os_management/tests/__init__.py +0 -4
  463. services/service_mesh/__init__.py +0 -4
  464. services/service_mesh/src/__init__.py +0 -4
  465. services/service_mesh/src/oci_cli_service_mesh/__init__.py +0 -4
  466. services/service_mesh/src/oci_cli_service_mesh/generated/__init__.py +0 -4
  467. services/service_mesh/src/oci_cli_service_mesh/generated/client_mappings.py +0 -14
  468. services/service_mesh/src/oci_cli_service_mesh/generated/servicemesh_cli.py +0 -3306
  469. services/service_mesh/src/oci_cli_service_mesh/service_mesh_cli_extended.py +0 -57
  470. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/__init__.py +0 -76
  471. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/aggregators/__init__.py +0 -3
  472. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/aggregators/aggregation_orchestrator.py +0 -88
  473. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/bundle_analyser.py +0 -163
  474. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/event.py +0 -43
  475. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/handlers/__init__.py +0 -3
  476. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/handlers/debug_handler.py +0 -209
  477. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/report_orchestrator.py +0 -82
  478. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/task_orchestrator.py +0 -76
  479. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/task_request.py +0 -232
  480. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/__init__.py +0 -3
  481. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/common_worker.py +0 -116
  482. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/csv_worker.py +0 -39
  483. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/file_worker.py +0 -33
  484. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/igd_worker.py +0 -48
  485. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/mesh_report_worker.py +0 -60
  486. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/mesh_resources_worker.py +0 -49
  487. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/namespaces_worker.py +0 -33
  488. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/oci_cli_version_worker.py +0 -34
  489. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/pod_worker.py +0 -112
  490. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/resource_worker.py +0 -75
  491. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/services_worker.py +0 -34
  492. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/task_worker.py +0 -33
  493. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/validate_crds_worker.py +0 -34
  494. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/vdb_worker.py +0 -51
  495. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/webhooks_worker.py +0 -34
  496. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/__init__.py +0 -3
  497. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/bundle_helper.py +0 -154
  498. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/constants.py +0 -137
  499. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/helper.py +0 -12
  500. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/kubectl_command_helper.py +0 -646
  501. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/messages.py +0 -16
  502. services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/summary.py +0 -222
  503. services/service_mesh/tests/__init__.py +0 -4
  504. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/LICENSE.txt +0 -0
  505. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
  506. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/WHEEL +0 -0
  507. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/entry_points.txt +0 -0
  508. {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/top_level.txt +0 -0
@@ -1,646 +0,0 @@
1
- # coding: utf-8
2
- # Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
3
- # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
- import concurrent.futures
5
- import json
6
- import os
7
- import re
8
- import subprocess
9
- from io import StringIO
10
-
11
- import click
12
- import sys
13
- import time
14
-
15
- from services.service_mesh.src.oci_cli_service_mesh.service_mesh_troubleshoot.utils.constants import \
16
- MESH_CUSTOM_RESOURCE_DICT, OCI_SM_PROXY, IGD_LABEL, MESH_CRD_DICT, ITEMS, METADATA, NAME, NAMESPACE, SPEC, \
17
- CONTAINERS, IMAGE, STATUS, CONTAINER_STATUSES, STATE, SIDECAR_INJECTION_LABEL_ENABLED, MESH_ID, VIRTUAL_SERVICE_ID, \
18
- INGRESS_GATEWAY_ID, VIRTUAL_DEPLOYMENT_ID, LABELS, ANNOTATIONS
19
- from services.service_mesh.src.oci_cli_service_mesh.service_mesh_troubleshoot.utils.messages import Messages
20
- from services.service_mesh.src.oci_cli_service_mesh.service_mesh_troubleshoot.utils.summary import BasicPodSummary, \
21
- PodSummary
22
- from services.service_mesh.src.oci_cli_service_mesh.service_mesh_troubleshoot.utils.summary import \
23
- CustomResourceSummary, MeshResources
24
-
25
-
26
- def construct_empty_pod_summary():
27
- name = 'Unavailable'
28
- namespace = 'Unavailable'
29
- labels = {}
30
- version = 'Unavailable'
31
- status = 'Unavailable'
32
- return BasicPodSummary(name=name,
33
- namespace=namespace,
34
- status=status,
35
- version=version,
36
- labels=labels)
37
-
38
-
39
- def get_name_namespace_labels_from_pod_json(pod):
40
- name, namespace, labels = None, None, None
41
- if pod is not None and METADATA in pod:
42
- if NAME in pod[METADATA]:
43
- name = pod[METADATA][NAME]
44
- if NAMESPACE in pod[METADATA]:
45
- namespace = pod[METADATA][NAMESPACE]
46
- if LABELS in pod[METADATA]:
47
- labels = pod[METADATA][LABELS]
48
- return name, namespace, labels
49
-
50
-
51
- def get_proxy_details_from_pod_json(pod):
52
- status, proxy_status, proxy_version = None, None, None
53
- if STATUS in pod:
54
- status = pod[STATUS]
55
- if CONTAINER_STATUSES in pod[STATUS] and len(pod[STATUS][CONTAINER_STATUSES]) > 0:
56
- for container_status in pod[STATUS][CONTAINER_STATUSES]:
57
- if NAME in container_status:
58
- if container_status[NAME] == OCI_SM_PROXY:
59
- if STATE in container_status:
60
- proxy_status = container_status[STATE]
61
- if IMAGE in container_status:
62
- proxy_version = container_status[IMAGE].split(':')[1]
63
- return status, proxy_status, proxy_version
64
-
65
-
66
- class KubeCommandHelper:
67
-
68
- def __init__(self, k8s_context=None):
69
- self.k8s_config, self.use_context = k8s_context
70
-
71
- def get_resource_filter_type_id(self, ocid):
72
- return MESH_CUSTOM_RESOURCE_DICT[ocid.split(".")[1]]
73
-
74
- def print_command(self, args):
75
- command_string = ' '.join([str(argument) for argument in args])
76
- print('\nExecuting: {}'.format(command_string))
77
-
78
- # Run the given command as a subprocess
79
- def run_command_as_subprocess(self, args, append_context_to_args=True, print_output=False):
80
-
81
- if append_context_to_args and self.k8s_config is not None:
82
- args.append('--kubeconfig')
83
- args.append(self.k8s_config)
84
- if append_context_to_args and self.use_context is not None:
85
- args.append('--context')
86
- args.append(self.use_context)
87
-
88
- if print_output:
89
- self.print_command(args)
90
- start_time = time.time()
91
- try:
92
- output = subprocess.run(args, capture_output=True, timeout=300)
93
- kubectl_command_summary = KubectlCommandSummary(output.returncode,
94
- output.stdout.decode('utf-8'),
95
- output.stderr.decode('utf-8'))
96
- except Exception as error:
97
- kubectl_command_summary = KubectlCommandSummary(-1, '', error)
98
-
99
- if kubectl_command_summary.return_code != 0:
100
- click.echo(format(args))
101
- click.echo('\nReturn Code: {}, Error: {}'.format(kubectl_command_summary.return_code,
102
- kubectl_command_summary.stderr))
103
- if print_output:
104
- click.echo('Time taken: {}'.format(time.time() - start_time))
105
-
106
- return kubectl_command_summary
107
-
108
- # Filter pod by label selector
109
- def get_pod_details_by_label_selector(self, label_selector):
110
- get_pods_by_filter_args = ['kubectl', 'get', 'pods', '--all-namespaces', '-l', label_selector, '-o', 'json']
111
- kubectl_command_summary = self.run_command_as_subprocess(get_pods_by_filter_args)
112
- pod_summary = construct_empty_pod_summary()
113
- if kubectl_command_summary.return_code == 0:
114
- pod_json = json.loads(kubectl_command_summary.stdout)
115
- if pod_json is not None and ITEMS in pod_json and len(pod_json[ITEMS]) > 0:
116
- pod = pod_json[ITEMS][0]
117
- if METADATA in pod and LABELS in pod[METADATA]:
118
- pod_summary.labels = pod[METADATA][LABELS]
119
- if METADATA in pod and NAME in pod[METADATA] and NAMESPACE in pod[METADATA]:
120
- pod_summary.name = pod[METADATA][NAME]
121
- pod_summary.namespace = pod[METADATA][NAMESPACE]
122
- if SPEC in pod and CONTAINERS in pod[SPEC] \
123
- and len(pod[SPEC][CONTAINERS]) > 0 and IMAGE in pod[SPEC][CONTAINERS][0]:
124
- pod_summary.version = pod[SPEC][CONTAINERS][0][IMAGE].split(':')[1]
125
- if STATUS in pod and CONTAINER_STATUSES in pod[STATUS] \
126
- and len(pod[STATUS][CONTAINER_STATUSES]) > 0 \
127
- and STATE in pod[STATUS][CONTAINER_STATUSES][0]:
128
- pod_summary.status = pod[STATUS][CONTAINER_STATUSES][0][STATE]
129
- return pod_summary
130
- else:
131
- return pod_summary
132
-
133
- # Filter operator pod
134
- def get_operator_pod_details(self, search_string):
135
- kubectl_get_pods_args = [
136
- 'kubectl', 'get', 'pods', '--no-headers', '--all-namespaces', '--template',
137
- '{{range .items}}{{.metadata.name}}{{" "}}{{.metadata.namespace}}{{"\\n"}}{{end}}']
138
- if self.k8s_config is not None:
139
- kubectl_get_pods_args.append('--kubeconfig')
140
- kubectl_get_pods_args.append(self.k8s_config)
141
- basic_pod_summary = construct_empty_pod_summary()
142
- try:
143
- kubectl_command_summary = self.run_command_as_subprocess(kubectl_get_pods_args)
144
- if kubectl_command_summary.return_code != 0:
145
- return basic_pod_summary
146
- pods_list = kubectl_command_summary.stdout.split('\n')
147
- operator_search_string = "oci-service-operator-controller-manager"
148
- operator_pod = [pod for pod in pods_list if operator_search_string in pod]
149
- if len(operator_pod) < 1:
150
- return basic_pod_summary
151
- operator_pod = operator_pod[0].strip("\'")
152
- pod_tokens = operator_pod.split(" ")
153
-
154
- if pod_tokens is None or len(pod_tokens) < 2:
155
- return basic_pod_summary
156
- name, namespace = pod_tokens[0].strip(), pod_tokens[1].strip()
157
- get_operator_pod_args = ['kubectl', 'get', 'pod', name, '-n', namespace, '-o', 'json']
158
- kubectl_command_summary = self.run_command_as_subprocess(get_operator_pod_args)
159
- if kubectl_command_summary.return_code == 0:
160
- pod_json = json.loads(kubectl_command_summary.stdout)
161
- if pod_json is not None:
162
- if METADATA in pod_json and LABELS in pod_json[METADATA]:
163
- basic_pod_summary.labels = pod_json[METADATA][LABELS]
164
- if METADATA in pod_json and NAME in pod_json[METADATA] and NAMESPACE in pod_json[METADATA]:
165
- basic_pod_summary.name = pod_json[METADATA][NAME]
166
- basic_pod_summary.namespace = pod_json[METADATA][NAMESPACE]
167
- if STATUS in pod_json:
168
- basic_pod_summary.status = pod_json[STATUS]
169
- if SPEC in pod_json and CONTAINERS in pod_json[SPEC] and len(pod_json[SPEC][CONTAINERS]) > 0:
170
- container = pod_json[SPEC][CONTAINERS][0]
171
- if IMAGE in container:
172
- basic_pod_summary.version = container[IMAGE].split(":")[1]
173
- return basic_pod_summary
174
- except Exception as error:
175
- click.echo(Messages.some_exception.format('fetching operator details', error), file=sys.stderr)
176
- return basic_pod_summary
177
-
178
- def get_csv(self, namespace):
179
- get_status_of_csv_args = ['kubectl', 'get', 'csv', '-n', namespace, '-o', 'json']
180
- kubectl_command_summary = self.run_command_as_subprocess(get_status_of_csv_args)
181
- csv = 'Unavailable'
182
- if kubectl_command_summary.return_code == 0:
183
- csv = json.loads(kubectl_command_summary.stdout)
184
- return csv
185
-
186
- def get_install_plan(self, namespace):
187
- get_status_of_installplan_args = ['kubectl', 'get', 'installplan', '-n', namespace, '-o', 'json']
188
- kubectl_command_summary = self.run_command_as_subprocess(get_status_of_installplan_args)
189
- install_plan = 'Unavailable'
190
- if kubectl_command_summary.return_code == 0:
191
- install_plan = json.loads(kubectl_command_summary.stdout)
192
-
193
- return install_plan
194
-
195
- def get_subscription(self, namespace):
196
- get_status_of_subscription_args = ['kubectl', 'get', 'subscription', '-n', namespace, '-o', 'json']
197
- kubectl_command_summary = self.run_command_as_subprocess(get_status_of_subscription_args)
198
- subscription = 'Unavailable'
199
-
200
- if kubectl_command_summary.return_code == 0:
201
- subscription = json.loads(kubectl_command_summary.stdout)
202
-
203
- return subscription
204
-
205
- def get_catalog_source(self, namespace):
206
- get_status_of_catalog_source_args = ['kubectl', 'get', 'catalogsource', '-n', namespace, '-o', 'json']
207
- kubectl_command_summary = self.run_command_as_subprocess(get_status_of_catalog_source_args)
208
- catalog_source = 'Unavailable'
209
-
210
- if kubectl_command_summary.return_code == 0:
211
- catalog_source = json.loads(kubectl_command_summary.stdout)
212
-
213
- return catalog_source
214
-
215
- # Get installed crds validated
216
- def get_crds_validated(self):
217
- get_crds_validated_args = ['kubectl', 'get', 'crds']
218
- kubectl_command_summary = self.run_command_as_subprocess(get_crds_validated_args)
219
- validated_crds_list = []
220
- if kubectl_command_summary.return_code == 0:
221
- crd_installed = kubectl_command_summary.stdout
222
- validated_crds_list = re.findall(r".*.servicemesh.*.com", crd_installed)
223
- return validated_crds_list
224
-
225
- # Get installed webhooks validated
226
- def get_webhooks_validated(self):
227
- get_webhooks_validated_args = ['kubectl', 'get', 'ValidatingWebhookConfiguration']
228
- kubectl_command_summary = self.run_command_as_subprocess(get_webhooks_validated_args)
229
- webhooks_list = []
230
- if kubectl_command_summary.return_code == 0:
231
- webhook_installed = kubectl_command_summary.stdout
232
- webhooks_list = re.findall(r".*.servicemesh.*.com", webhook_installed)
233
-
234
- get_mutating_webhook_args = ['kubectl', 'get', 'MutatingWebhookConfiguration']
235
- kubectl_command_summary = self.run_command_as_subprocess(get_mutating_webhook_args)
236
- mutating_webhooks_list = []
237
- if kubectl_command_summary.return_code == 0:
238
- mutating_webhooks = kubectl_command_summary.stdout
239
- mutating_webhooks_list = re.findall(r".*.servicemesh.*.com", mutating_webhooks)
240
-
241
- return webhooks_list + mutating_webhooks_list
242
-
243
- def get_operator_services(self):
244
- get_services_args = ['kubectl', 'get', 'services', '--all-namespaces']
245
- kubectl_command_summary = self.run_command_as_subprocess(get_services_args)
246
- services = ['oci-service-operator-controller-manager-service', 'oci-service-operator-webhook-service']
247
- service_list = []
248
- if kubectl_command_summary.return_code == 0:
249
- services_list = kubectl_command_summary.stdout
250
- for service in services:
251
- if re.search(service, services_list):
252
- service_list.append(service)
253
-
254
- return service_list
255
-
256
- # Get pod logs
257
- def get_pod_logs(self, name, namespace):
258
- log_command_args = ['kubectl', 'logs', name, '-n', namespace]
259
- kubectl_command_summary = self.run_command_as_subprocess(log_command_args)
260
- logs = None
261
- if kubectl_command_summary.return_code == 0:
262
- logs = kubectl_command_summary.stdout
263
- return logs
264
-
265
- # Get proxy logs
266
- def get_proxy_logs(self, name, namespace):
267
- pod_logs_args = ['kubectl', 'logs', name, '-n', namespace, '-c', OCI_SM_PROXY]
268
- kubectl_command_summary = self.run_command_as_subprocess(pod_logs_args)
269
- proxy_logs = None
270
- if kubectl_command_summary.return_code == 0:
271
- proxy_logs = kubectl_command_summary.stdout
272
- return proxy_logs
273
-
274
- # Get config dump
275
- def get_config_dump(self, name, namespace):
276
- if self.k8s_config is not None:
277
- config_dump_args = ['kubectl', 'exec', name, '-n', namespace, '-c', OCI_SM_PROXY, '--kubeconfig',
278
- self.k8s_config, '--', 'curl', '-s', 'localhost:9901/config_dump']
279
- else:
280
- config_dump_args = ['kubectl', 'exec', name, '-n', namespace, '-c', OCI_SM_PROXY,
281
- '--', 'curl', '-s', 'localhost:9901/config_dump']
282
- kubectl_command_summary = self.run_command_as_subprocess(args=config_dump_args, append_context_to_args=False)
283
- config_dump = None
284
- if kubectl_command_summary.return_code == 0:
285
- config_dump = json.loads(kubectl_command_summary.stdout)
286
- return config_dump
287
-
288
- # Get Proxy Stats
289
- def get_proxy_stats(self, name, namespace):
290
- if self.k8s_config is not None:
291
- proxy_stats_args = ['kubectl', 'exec', name, '-n', namespace, '-c', OCI_SM_PROXY, '--kubeconfig',
292
- self.k8s_config, '--', 'curl', '-s', 'localhost:9901/stats?format=json']
293
- else:
294
- proxy_stats_args = ['kubectl', 'exec', name, '-n', namespace, '-c', OCI_SM_PROXY,
295
- '--', 'curl', '-s', 'localhost:9901/stats?format=json']
296
- kubectl_command_summary = self.run_command_as_subprocess(args=proxy_stats_args, append_context_to_args=False)
297
- proxy_stats = None
298
- if kubectl_command_summary.return_code == 0:
299
- proxy_stats = json.loads(kubectl_command_summary.stdout)
300
- return proxy_stats
301
-
302
- # Filter namespaces with sidecar injection enabled
303
- def get_namespaces_with_sidecar_injection_enabled(self):
304
- get_namespace_args = ['kubectl', 'get', 'namespaces', '-l', SIDECAR_INJECTION_LABEL_ENABLED, '-o', 'json']
305
- kubectl_command_summary = self.run_command_as_subprocess(get_namespace_args)
306
- namespaces = []
307
- if kubectl_command_summary.return_code == 0:
308
- namespaces_json = json.loads(kubectl_command_summary.stdout)
309
- if namespaces_json is not None and ITEMS in namespaces_json:
310
- for item in namespaces_json[ITEMS]:
311
- if METADATA in item and NAME in item[METADATA]:
312
- namespaces.append(item[METADATA][NAME])
313
- return namespaces
314
-
315
- # Filter required vdbs
316
- def filter_vdbs_by_ocid(self, ocid):
317
- mesh_vdb_dict = {}
318
- filter_type = self.get_resource_filter_type_id(ocid)
319
- get_vdbs_args = ['kubectl', 'get', 'virtualdeploymentbindings', '--all-namespaces', '-o', 'json']
320
- kubectl_command_summary = self.run_command_as_subprocess(get_vdbs_args)
321
-
322
- if kubectl_command_summary.return_code != 0:
323
- return mesh_vdb_dict
324
-
325
- vdbs_string = kubectl_command_summary.stdout
326
- vdbs = json.loads(vdbs_string)
327
- if vdbs is not None and ITEMS in vdbs and len(vdbs[ITEMS]) > 0:
328
- for item in vdbs[ITEMS]:
329
- name, namespace = None, None
330
- mesh_id, vs_id, vd_id = None, None, None
331
- if STATUS not in item or filter_type not in item[STATUS] or \
332
- item[STATUS][filter_type] != ocid:
333
- continue
334
- if METADATA in item:
335
- if NAME in item[METADATA]:
336
- name = item[METADATA][NAME]
337
- if NAMESPACE in item[METADATA]:
338
- namespace = item[METADATA][NAMESPACE]
339
- if STATUS in item:
340
- if MESH_ID in item[STATUS]:
341
- mesh_id = item[STATUS][MESH_ID]
342
- if VIRTUAL_SERVICE_ID in item[STATUS]:
343
- vs_id = item[STATUS][VIRTUAL_SERVICE_ID]
344
- if MESH_ID in item[STATUS]:
345
- vd_id = item[STATUS][VIRTUAL_DEPLOYMENT_ID]
346
- vs_dict = mesh_vdb_dict.get(mesh_id, {})
347
- vd_dict = vs_dict.get(vs_id, {})
348
- vdb_list = vd_dict.get(vd_id, [])
349
- vdb_list.append(namespace + "/" + name)
350
- vd_dict[vd_id] = vdb_list
351
- vs_dict[vs_id] = vd_dict
352
- mesh_vdb_dict[mesh_id] = vs_dict
353
- return mesh_vdb_dict
354
-
355
- def get_all_services(self):
356
- services_dict = {}
357
- all_services_args = ['kubectl', 'get', 'services', '--all-namespaces', '-o', 'json']
358
- kubectl_command_summary = self.run_command_as_subprocess(all_services_args)
359
- if kubectl_command_summary.return_code != 0:
360
- return services_dict
361
-
362
- services_string = kubectl_command_summary.stdout
363
- services = json.loads(services_string)
364
- if services is not None and ITEMS in services:
365
- for service in services[ITEMS]:
366
- services_dict[service[NAME]] = service[LABELS]
367
- return services_dict
368
-
369
- # Filter all pods with VDB annotation
370
- def filter_all_pods_related_to_vdbs(self):
371
- pod_dict = {}
372
- filter_pods_by_vdbs_args = ['kubectl', 'get', 'pods', '--all-namespaces', '-o', 'json']
373
- kubectl_command_summary = self.run_command_as_subprocess(filter_pods_by_vdbs_args)
374
-
375
- if kubectl_command_summary.return_code != 0:
376
- return pod_dict
377
-
378
- pods_string = kubectl_command_summary.stdout
379
- pods = json.loads(pods_string)
380
- vdb_ref_key = 'servicemesh.oci.oracle.com/virtual-deployment-binding-ref'
381
-
382
- if pods is not None and ITEMS in pods:
383
- for pod in pods[ITEMS]:
384
-
385
- # Capture vdb_key
386
- vdb_key = None
387
- if METADATA in pod:
388
- if ANNOTATIONS in pod[METADATA]:
389
- if vdb_ref_key not in pod[METADATA][ANNOTATIONS]:
390
- continue
391
- vdb_key = pod[METADATA][ANNOTATIONS][vdb_ref_key]
392
-
393
- if vdb_key is None:
394
- continue
395
-
396
- # Capture name, namespace, labels
397
- name, namespace, labels = get_name_namespace_labels_from_pod_json(pod)
398
-
399
- # Capture status, proxy_status, proxy_version
400
- status, proxy_status, proxy_version = get_proxy_details_from_pod_json(pod)
401
-
402
- # VDB can have multiple pods
403
- vdb_pod_list = pod_dict.get(vdb_key, [])
404
- basic_pod_summary = BasicPodSummary(name=name,
405
- namespace=namespace,
406
- status=status,
407
- labels=labels)
408
- new_pod_summary = PodSummary(proxy_status=proxy_status,
409
- proxy_version=proxy_version,
410
- basic_pod_summary=basic_pod_summary,
411
- pod_json=pod)
412
-
413
- vdb_pod_list.append(new_pod_summary)
414
- pod_dict[vdb_key] = vdb_pod_list
415
-
416
- return pod_dict
417
-
418
- # Filter all pods related to IGDs
419
- def filter_all_pods_related_to_igds(self):
420
- pod_dict = {}
421
- filter_pods_by_igds_args = ['kubectl', 'get', 'pods', '--all-namespaces', '-l', IGD_LABEL, '-o', 'json']
422
- kubectl_command_summary = self.run_command_as_subprocess(filter_pods_by_igds_args)
423
-
424
- if kubectl_command_summary.return_code != 0:
425
- return pod_dict
426
-
427
- pods_string = kubectl_command_summary.stdout
428
- pods_json = json.loads(pods_string)
429
- if pods_json is not None and ITEMS in pods_json:
430
- for pod in pods_json[ITEMS]:
431
-
432
- # Capture name, namespace, labels
433
- name, namespace, labels = get_name_namespace_labels_from_pod_json(pod)
434
-
435
- # Capture igd_key
436
- igd_key = None
437
- if METADATA in pod and namespace is not None:
438
- if LABELS in pod[METADATA] and IGD_LABEL in pod[METADATA][LABELS]:
439
- igd_key = namespace + '/' + pod[METADATA][LABELS][IGD_LABEL]
440
-
441
- if igd_key is None:
442
- continue
443
-
444
- # Capture status, proxy_status, proxy_version
445
- status, proxy_status, proxy_version = get_proxy_details_from_pod_json(pod)
446
-
447
- # IGD can have multiple pods
448
- igd_pod_list = pod_dict.get(igd_key, [])
449
- basic_pod_summary = BasicPodSummary(name=name,
450
- namespace=namespace,
451
- status=status,
452
- labels=labels)
453
- new_pod_summary = PodSummary(proxy_status=proxy_status,
454
- proxy_version=proxy_version,
455
- basic_pod_summary=basic_pod_summary,
456
- pod_json=pod)
457
- igd_pod_list.append(new_pod_summary)
458
- pod_dict[igd_key] = igd_pod_list
459
-
460
- return pod_dict
461
-
462
- # Filter IGDs by OCID
463
- def filter_igds_by_ocid(self, ocid):
464
- mesh_igd_dict = {}
465
- filter_type = self.get_resource_filter_type_id(ocid)
466
- get_igds_args = ['kubectl', 'get', 'ingressgatewaydeployments', '--all-namespaces', '-o', 'json']
467
- kubectl_command_summary = self.run_command_as_subprocess(get_igds_args)
468
-
469
- if kubectl_command_summary.return_code != 0:
470
- return mesh_igd_dict
471
-
472
- igds_string = kubectl_command_summary.stdout
473
- igds = json.loads(igds_string)
474
- if igds is not None and ITEMS in igds:
475
- for item in igds[ITEMS]:
476
- name, namespace = None, None
477
- mesh_id, ig_id = None, None
478
- if STATUS not in item or filter_type not in item[STATUS] or \
479
- item[STATUS][filter_type] != ocid:
480
- continue
481
- if METADATA in item:
482
- if NAME in item[METADATA]:
483
- name = item[METADATA][NAME]
484
- if NAMESPACE in item[METADATA]:
485
- namespace = item[METADATA][NAMESPACE]
486
- if STATUS in item:
487
- if MESH_ID in item[STATUS]:
488
- mesh_id = item[STATUS][MESH_ID]
489
- if INGRESS_GATEWAY_ID in item[STATUS]:
490
- ig_id = item[STATUS][INGRESS_GATEWAY_ID]
491
- ig_dict = mesh_igd_dict.get(mesh_id, {})
492
- igd_list = ig_dict.get(ig_id, [])
493
- igd_list.append(namespace + "/" + name)
494
- ig_dict[ig_id] = igd_list
495
- mesh_igd_dict[mesh_id] = ig_dict
496
- return mesh_igd_dict
497
-
498
- # Filters vdb, igd, vsrt, igrt
499
- def filter_mesh_resources_helper_by_filtered_list(self, crd, filter_dict):
500
- filter_list = filter_dict.keys()
501
- crd_dict = {}
502
- get_all_crd_args = ['kubectl', 'get', MESH_CRD_DICT[crd], '--all-namespaces', '-o', 'json']
503
- kubectl_command_summary = self.run_command_as_subprocess(get_all_crd_args)
504
- if kubectl_command_summary.return_code != 0:
505
- return crd_dict
506
- resources_string = kubectl_command_summary.stdout
507
- resources = json.loads(resources_string)
508
- if resources is not None and ITEMS in resources:
509
- for resource in resources[ITEMS]:
510
- if STATUS in resource:
511
- ocid = None
512
- if crd in ['meshvirtualserviceroutetable', 'meshvirtualdeploymentbinding'] and \
513
- VIRTUAL_SERVICE_ID in resource[STATUS]:
514
- ocid = resource[STATUS][VIRTUAL_SERVICE_ID]
515
- elif crd in ['meshingressgatewayroutetable', 'meshingressgatewaydeployment'] and \
516
- INGRESS_GATEWAY_ID in resource[STATUS]:
517
- ocid = resource[STATUS][INGRESS_GATEWAY_ID]
518
- if ocid is not None and ocid in filter_list:
519
- custom_resource_summary = CustomResourceSummary(resource)
520
- crd_list = crd_dict.get(ocid, [])
521
- crd_list.append(custom_resource_summary)
522
- crd_dict[ocid] = crd_list
523
- return crd_dict
524
-
525
- # Filters mesh, vs, vd, ig, ap related to mesh_id
526
- def filter_mesh_resources_helper(self, mesh_id, crd):
527
- crd_dict = {}
528
- get_all_crd_args = ['kubectl', 'get', MESH_CRD_DICT[crd], '--all-namespaces', '-o', 'json']
529
- kubectl_command_summary = self.run_command_as_subprocess(get_all_crd_args)
530
- if kubectl_command_summary.return_code != 0:
531
- return crd_dict
532
- resources_string = kubectl_command_summary.stdout
533
- resources = json.loads(resources_string)
534
- if resources is not None and ITEMS in resources:
535
- for resource in resources[ITEMS]:
536
- if STATUS not in resource or MESH_CUSTOM_RESOURCE_DICT[crd] not in resource[STATUS]:
537
- continue
538
- ocid = resource[STATUS][MESH_CUSTOM_RESOURCE_DICT[crd]]
539
- if MESH_ID in resource[STATUS] and mesh_id == resource[STATUS][MESH_ID]:
540
- custom_resource_summary = CustomResourceSummary(resource)
541
- crd_list = crd_dict.get(ocid, [])
542
- crd_list.append(custom_resource_summary)
543
- crd_dict[ocid] = crd_list
544
- return crd_dict
545
-
546
- # Parallel filter mesh resources related to mesh_id
547
- def parallel_filter_mesh_resources(self, mesh_id):
548
- with concurrent.futures.ProcessPoolExecutor() as independent_executor:
549
- mesh_process = independent_executor.submit(self.filter_mesh_resources_helper, mesh_id, 'mesh')
550
- vs_process = independent_executor.submit(self.filter_mesh_resources_helper, mesh_id, 'meshvirtualservice')
551
- vd_process = independent_executor.submit(self.filter_mesh_resources_helper, mesh_id,
552
- 'meshvirtualdeployment')
553
- ap_process = independent_executor.submit(self.filter_mesh_resources_helper, mesh_id, 'meshaccesspolicy')
554
- ig_process = independent_executor.submit(self.filter_mesh_resources_helper, mesh_id, 'meshingressgateway')
555
-
556
- vd_dict = vd_process.result()
557
- ig_dict = ig_process.result()
558
-
559
- with concurrent.futures.ProcessPoolExecutor() as dependent_executor:
560
- vdb_process = dependent_executor.submit(self.filter_mesh_resources_helper_by_filtered_list,
561
- 'meshvirtualdeploymentbinding', vd_dict)
562
- vsrt_process = dependent_executor.submit(self.filter_mesh_resources_helper_by_filtered_list,
563
- 'meshvirtualserviceroutetable', vd_dict)
564
- igd_process = dependent_executor.submit(self.filter_mesh_resources_helper_by_filtered_list,
565
- 'meshingressgatewaydeployment', ig_dict)
566
- igrt_process = dependent_executor.submit(self.filter_mesh_resources_helper_by_filtered_list,
567
- 'meshingressgatewayroutetable', ig_dict)
568
-
569
- mesh_dict = mesh_process.result()
570
- vs_dict = vs_process.result()
571
- ap_dict = ap_process.result()
572
- vdb_dict = vdb_process.result()
573
- vsrt_dict = vsrt_process.result()
574
- igd_dict = igd_process.result()
575
- igrt_dict = igrt_process.result()
576
-
577
- return MeshResources(mesh_dict, vs_dict, vd_dict, vdb_dict, vsrt_dict, ig_dict, igd_dict, igrt_dict, ap_dict)
578
-
579
- # Calculate time difference
580
- def calculate_time(self, start_time, message):
581
- click.echo('\nTime taken for {} is: {}s'.format(message, time.time() - start_time))
582
-
583
- # Returns kubectl version if installed
584
- def get_kubectl_version(self):
585
- # Check if kubectl client is present
586
- kubectl_version_args = ['kubectl', 'version', '--short']
587
- return self.run_command_as_subprocess(kubectl_version_args)
588
-
589
- # Checks for kubectl installation
590
- def is_kubectl_installed(self):
591
- # Check if kubectl client is present
592
- return self.get_kubectl_version()
593
-
594
- # Gets all the contexts present in the given config file
595
- def get_command_context(self, kube_config_path=None, context_name=None):
596
- if context_name is None:
597
- context_args = ['kubectl', 'config', 'current-context']
598
- else:
599
- context_args = ['kubectl', 'config', 'get-contexts', '-o', 'name', context_name]
600
-
601
- if kube_config_path is not None:
602
- context_args.append('--kubeconfig')
603
- context_args.append(kube_config_path)
604
-
605
- return self.run_command_as_subprocess(context_args)
606
-
607
- def check_context(self, k8s_context):
608
- kube_config_path, use_context = k8s_context
609
- if kube_config_path is None:
610
- kube_command_summary = self.get_command_context(context_name=use_context)
611
- if kube_command_summary.return_code != 0:
612
- error = Messages.context_not_available + kube_command_summary.stderr
613
- return KubectlCommandSummary(return_code=1, stderr=error)
614
- else:
615
- click.echo(Messages.using_context.format(kube_command_summary.stdout),
616
- file=sys.stdout)
617
- return kube_command_summary
618
- else:
619
- if not os.path.exists(kube_config_path):
620
- error = 'Invalid path: {} provided for k8s_context. Please check if the path points to a valid config.' \
621
- .format(kube_config_path)
622
- return KubectlCommandSummary(return_code=1, stderr=error)
623
- else:
624
- kube_command_summary = self.get_command_context(kube_config_path=kube_config_path,
625
- context_name=use_context)
626
- if kube_command_summary.return_code != 0:
627
- error = 'Unable to load context from the provided k8s_context. ' + kube_command_summary.stderr
628
- return KubectlCommandSummary(return_code=1, stderr=error)
629
- else:
630
- click.echo(Messages.using_context.format(kube_command_summary.stdout), file=sys.stdout)
631
- return kube_command_summary
632
-
633
-
634
- class KubectlCommandSummary:
635
-
636
- def __init__(self, return_code, stdout=None, stderr=None):
637
- self.return_code = return_code
638
- self.stdout = stdout
639
- self.stderr = stderr
640
-
641
- def __str__(self):
642
- contents = StringIO()
643
- contents.write('\nReturn Code: {}'.format(self.return_code))
644
- contents.write('\nstdout: \n{}'.format(self.stdout))
645
- contents.write('\nstderr: \n{}'.format(self.stderr))
646
- return contents.getvalue()
@@ -1,16 +0,0 @@
1
- # coding: utf-8
2
- # Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
3
- # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
-
5
-
6
- class Messages:
7
- kubectl_client_not_found = 'kubectl client not found. Please install kubectl client to continue.'
8
- invalid_ocid = 'Invalid ocid. Please check the ocid format for the service-mesh resource.'
9
- invalid_mesh_resource_type = 'Invalid mesh resource type: {}. Please check the ocid format '
10
- 'for the service-mesh resource'
11
- using_context = 'Using the context: {}'
12
- context_not_available = 'k8s_context was not provided and there is no default context available.'
13
- context_reset = 'Context reset to {}'
14
- some_exception = 'Some exception while {}: {}.'
15
- is_none = '{} is None.'
16
- is_invalid = 'Invalid Resource Id. Please check the resource id'