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.
- oci_cli/help_text_producer/data_files/text/cmdref/data-safe/security-assessment/list-finding-analytics.txt +14 -0
- oci_cli/help_text_producer/data_files/text/cmdref/data-safe/security-assessment/list-findings.txt +8 -0
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/db/autonomous-container-database/create.txt +3 -3
- oci_cli/help_text_producer/data_files/text/cmdref/db/autonomous-container-database-backup/list.txt +2 -2
- oci_cli/help_text_producer/data_files/text/cmdref/db/data-guard-association/create/with-new-db-system.txt +15 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-from-backup.txt +10 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-standby-database.txt +14 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/database/create.txt +10 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/database/update.txt +11 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/exadb-vm-cluster/create.txt +9 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/exascale-db-storage-vault/list.txt +21 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/gi-version/list.txt +5 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database/create-local-clone.txt +4 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database/create-remote-clone.txt +4 -0
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project/create.txt → db/pluggable-database/create-snapshot.txt} +30 -25
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/{os-management/work-request/get.txt → db/pluggable-database/get-snapshot.txt} +9 -8
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/access-policy/list.txt → db/pluggable-database/list-snapshots.txt} +32 -37
- oci_cli/help_text_producer/data_files/text/cmdref/db/pluggable-database.txt +8 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-backup.txt +42 -27
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-database.txt +42 -27
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch-from-db-system.txt +42 -27
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/launch.txt +42 -27
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/list-db-system-storage-performances.txt +4 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/system/update.txt +15 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/system-shape/list.txt +5 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db/version/list.txt +5 -0
- oci_cli/help_text_producer/data_files/text/cmdref/db.txt +8 -0
- oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error/{list.txt → list-errors.txt} +5 -5
- oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error.txt +1 -1
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection → delegate-access-control/work-request}/work-request-log-entry.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request.txt +3 -3
- oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control.txt +3 -3
- oci_cli/help_text_producer/data_files/text/cmdref/generative-ai-inference/chat-result/chat-cohere-chat-request.txt +3 -1
- oci_cli/help_text_producer/data_files/text/cmdref/generative-ai-inference/chat-result/chat-generic-chat-request.txt +83 -3
- oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/create.txt +12 -0
- oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/list.txt +9 -0
- oci_cli/help_text_producer/data_files/text/cmdref/goldengate/deployment/update.txt +12 -0
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-error.txt +1 -1
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-log-entry.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request.txt +2 -2
- oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane.txt +2 -2
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh/delete.txt → kafka/cluster/change-compartment.txt} +15 -20
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/virtual-service → kafka/cluster}/create.txt +78 -66
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster}/delete.txt +7 -12
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh/change-compartment.txt → kafka/cluster/enable-superuser.txt} +17 -18
- oci_cli/help_text_producer/data_files/text/cmdref/{os-management/erratum → kafka/cluster}/get.txt +6 -6
- oci_cli/help_text_producer/data_files/text/cmdref/{dts/export → kafka/cluster}/list.txt +36 -23
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh → kafka/cluster}/update.txt +68 -45
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster-config}/change-compartment.txt +10 -10
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/data-asset → kafka/cluster-config}/create.txt +30 -33
- oci_cli/help_text_producer/data_files/text/cmdref/{os-management/managed-instance-group → kafka/cluster-config}/delete.txt +7 -10
- oci_cli/help_text_producer/data_files/text/cmdref/{os-management/windows-update → kafka/cluster-config}/get.txt +6 -6
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh/mesh → kafka/cluster-config}/list.txt +25 -30
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/data-asset → kafka/cluster-config}/update.txt +40 -30
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/work-request/cancel.txt → kafka/cluster-config-version/delete.txt} +12 -7
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection/project → kafka/cluster-config-version}/get.txt +11 -8
- oci_cli/help_text_producer/data_files/text/cmdref/{dts/job → kafka/cluster-config-version}/list.txt +25 -23
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster-config-version.txt +18 -0
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster-config.txt +29 -0
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/cluster.txt +33 -0
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/cancel.txt +5 -5
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/get.txt +5 -5
- oci_cli/help_text_producer/data_files/text/cmdref/{service-mesh → kafka}/work-request/list.txt +26 -31
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request-error/list.txt +131 -0
- oci_cli/help_text_producer/data_files/text/cmdref/{anomaly-detection → kafka}/work-request-error.txt +2 -1
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request-log-entry.txt +15 -0
- oci_cli/help_text_producer/data_files/text/cmdref/kafka/work-request.txt +23 -0
- oci_cli/help_text_producer/data_files/text/cmdref/kafka.txt +69 -0
- oci_cli/help_text_producer/data_files/text/cmdref/lfs/lustre-file-system.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/lfs.txt +2 -1
- oci_cli/help_text_producer/data_files/text/cmdref/network/ipv6/create.txt +4 -0
- oci_cli/help_text_producer/data_files/text/cmdref/network/vnic/assign-ipv6.txt +4 -0
- oci_cli/help_text_producer/data_files/text/cmdref/ocvs/work-request-error/{list.txt → list-errors.txt} +5 -5
- oci_cli/help_text_producer/data_files/text/cmdref/ocvs/work-request-error.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/ocvs.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error/{list.txt → list-errors.txt} +5 -5
- oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/organizations.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/support/incident/create.txt +6 -6
- oci_cli/help_text_producer/data_files/text/cmdref/support/incident/get.txt +2 -2
- oci_cli/help_text_producer/data_files/text/cmdref/support/incident/list.txt +1 -1
- oci_cli/help_text_producer/data_files/text/cmdref/support/incident/update.txt +4 -4
- oci_cli/help_text_producer/data_files/text/cmdref/support/incident-resource-type/list.txt +3 -3
- oci_cli/help_text_producer/data_files/text/cmdref/support/validation-response/validate-user.txt +1 -1
- oci_cli/help_text_producer/data_files/text/index.txt +2 -8
- oci_cli/service_mapping.py +5 -20
- oci_cli/version.py +1 -1
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/METADATA +2 -2
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/RECORD +117 -498
- services/cims/src/oci_cli_incident/cims_cli_extended.py +1 -1
- services/core/src/oci_cli_virtual_network/generated/virtualnetwork_cli.py +5 -1
- services/core/src/oci_cli_virtual_network/virtualnetwork_cli_extended.py +5 -1
- services/data_safe/src/oci_cli_data_safe/generated/datasafe_cli.py +12 -2
- services/database/src/oci_cli_database/database_cli_extended.py +109 -3
- services/database/src/oci_cli_database/generated/database_cli.py +381 -63
- services/generative_ai_inference/src/oci_cli_generative_ai_inference/generated/generativeaiinference_cli.py +39 -5
- services/golden_gate/src/oci_cli_golden_gate/generated/goldengate_cli.py +22 -3
- services/{ai_anomaly_detection → managed_kafka}/__init__.py +1 -1
- services/{ai_anomaly_detection → managed_kafka}/src/__init__.py +1 -1
- services/{ai_anomaly_detection/src/oci_cli_anomaly_detection → managed_kafka/src/oci_cli_kafka_cluster}/__init__.py +1 -1
- services/{ai_anomaly_detection/src/oci_cli_anomaly_detection → managed_kafka/src/oci_cli_kafka_cluster}/generated/__init__.py +1 -1
- services/{os_management/src/oci_cli_os_management → managed_kafka/src/oci_cli_kafka_cluster}/generated/client_mappings.py +6 -6
- services/managed_kafka/src/oci_cli_kafka_cluster/generated/kafkacluster_cli.py +1254 -0
- services/managed_kafka/src/oci_cli_kafka_cluster/kafkacluster_cli_extended.py +46 -0
- services/managed_kafka/tests/__init__.py +4 -0
- oci_cli/bin/dts.psm1 +0 -147
- oci_cli/bin/os-management.psm1 +0 -140
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/change-compartment.txt +0 -138
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-atp.txt +0 -207
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-influx.txt +0 -198
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/create-data-source-os.txt +0 -174
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/delete.txt +0 -138
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/get.txt +0 -100
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset/list.txt +0 -146
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/data-asset.txt +0 -30
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/change-compartment.txt +0 -119
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-embedded-input-details.txt +0 -144
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create-detect-anomaly-job-inline-input-details.txt +0 -185
- 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
- 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
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/create.txt +0 -173
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/delete.txt +0 -143
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/get.txt +0 -105
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job/update.txt +0 -147
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job-collection/list-detect-anomaly-jobs.txt +0 -155
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job-collection.txt +0 -15
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/detect-anomaly-job.txt +0 -31
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/change-compartment.txt +0 -113
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/create.txt +0 -174
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/delete.txt +0 -140
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies-embedded.txt +0 -124
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies-inline.txt +0 -139
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/detect-anomalies.txt +0 -125
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/get.txt +0 -100
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/list.txt +0 -148
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model/update.txt +0 -173
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/model.txt +0 -30
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/change-compartment.txt +0 -138
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/create.txt +0 -170
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/delete.txt +0 -137
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/get.txt +0 -99
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/list.txt +0 -147
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe/update.txt +0 -180
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/pe.txt +0 -25
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project/list.txt +0 -144
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project/update.txt +0 -166
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/project.txt +0 -24
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request/get.txt +0 -91
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request/list.txt +0 -114
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request-error/list.txt +0 -110
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request-log-entry/list-work-request-logs.txt +0 -110
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection/work-request.txt +0 -18
- oci_cli/help_text_producer/data_files/text/cmdref/anomaly-detection.txt +0 -125
- oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-log.txt +0 -14
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/cancel.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/delete.txt +0 -105
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/get-passphrase.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/list.txt +0 -100
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/never-receive.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request-entitlement.txt +0 -189
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request-return-label.txt +0 -249
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/request.txt +0 -188
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/setup-notifications.txt +0 -63
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/show-entitlement.txt +0 -113
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/show.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/update-minimum-storage-capacity.txt +0 -107
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance/update-shipping-address.txt +0 -154
- oci_cli/help_text_producer/data_files/text/cmdref/dts/appliance.txt +0 -38
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/change-compartment.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/configure-physical-appliance.txt +0 -114
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/create-policy.txt +0 -68
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/create.txt +0 -226
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/delete.txt +0 -132
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/generate-manifest.txt +0 -97
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/get-passphrase.txt +0 -68
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/request-appliance.txt +0 -68
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/request-return-label.txt +0 -245
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/setup-notifications.txt +0 -51
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/show.txt +0 -96
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export/update.txt +0 -265
- oci_cli/help_text_producer/data_files/text/cmdref/dts/export.txt +0 -38
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/change-compartment.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/close.txt +0 -96
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/create.txt +0 -192
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/delete.txt +0 -100
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/detach-devices-details/change-compartment.txt +0 -102
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/detach-devices-details.txt +0 -12
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/setup-notifications.txt +0 -68
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/show.txt +0 -96
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/update.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job/verify-upload-user-credentials.txt +0 -91
- oci_cli/help_text_producer/data_files/text/cmdref/dts/job.txt +0 -34
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/activate.txt +0 -93
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/create.txt +0 -93
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/deactivate.txt +0 -77
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/delete.txt +0 -77
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/get-seal-manifest.txt +0 -81
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/list.txt +0 -67
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/reopen.txt +0 -77
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/seal-status.txt +0 -77
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/seal.txt +0 -75
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/set-export.txt +0 -93
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset/show.txt +0 -77
- oci_cli/help_text_producer/data_files/text/cmdref/dts/nfs-dataset.txt +0 -34
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/configure-encryption.txt +0 -81
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/finalize.txt +0 -89
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/initialize-authentication.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/list.txt +0 -63
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/show.txt +0 -67
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/unlock.txt +0 -75
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance/unregister.txt +0 -67
- oci_cli/help_text_producer/data_files/text/cmdref/dts/physical-appliance.txt +0 -26
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/configured.txt +0 -111
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/copied.txt +0 -105
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/monitored.txt +0 -102
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/prepared.txt +0 -104
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify/shipped.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/dts/verify.txt +0 -22
- oci_cli/help_text_producer/data_files/text/cmdref/dts.txt +0 -144
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum-summary/list-errata.txt +0 -310
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum-summary.txt +0 -15
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/erratum.txt +0 -14
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/delete-content.txt +0 -113
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/get-content.txt +0 -108
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/get-report.txt +0 -270
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/list-related-events.txt +0 -307
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/list.txt +0 -319
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/update.txt +0 -139
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event/upload-content.txt +0 -110
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/event.txt +0 -27
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/attach-child.txt +0 -102
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/attach-parent.txt +0 -104
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/detach-child.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/detach-parent.txt +0 -102
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/disable-module-stream.txt +0 -138
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/enable-module-stream.txt +0 -139
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/get.txt +0 -91
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-module-profile.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-package.txt +0 -123
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-update.txt +0 -123
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/install-windows-update.txt +0 -124
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-packages.txt +0 -142
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-software-sources.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-updates.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-available-windows-updates.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-installed-packages.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-installed-windows-updates.txt +0 -142
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-managed-instance-errata.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-module-profiles.txt +0 -210
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list-module-streams.txt +0 -210
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/list.txt +0 -144
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/remove-module-profile.txt +0 -142
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/remove-package.txt +0 -123
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance/switch-module-stream.txt +0 -138
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/attach.txt +0 -102
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/change-compartment.txt +0 -107
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/create.txt +0 -163
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/detach.txt +0 -99
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/get.txt +0 -94
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/install-all-updates.txt +0 -128
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/list.txt +0 -152
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group/update.txt +0 -166
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance-group.txt +0 -30
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/managed-instance.txt +0 -64
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile/get.txt +0 -137
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile/list.txt +0 -189
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-profile.txt +0 -16
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream/get.txt +0 -132
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream/list.txt +0 -188
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/module-stream.txt +0 -16
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/change-compartment.txt +0 -110
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/create.txt +0 -357
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/delete.txt +0 -135
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/get.txt +0 -97
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/list-upcoming.txt +0 -251
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/list.txt +0 -174
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/run-now.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/skip-next-execution.txt +0 -106
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job/update.txt +0 -323
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/scheduled-job.txt +0 -30
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/add-packages.txt +0 -111
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/change-compartment.txt +0 -108
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/create.txt +0 -187
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/delete.txt +0 -133
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/get-package.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/get.txt +0 -95
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/list-packages.txt +0 -145
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/list.txt +0 -144
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/remove-packages.txt +0 -112
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/search-packages.txt +0 -124
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source/update.txt +0 -187
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/software-source.txt +0 -34
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/update-managed-instance-details/update-managed-instance.txt +0 -107
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/update-managed-instance-details.txt +0 -14
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/windows-update/list.txt +0 -129
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/windows-update.txt +0 -16
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list-errors.txt +0 -128
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list-logs.txt +0 -128
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request/list.txt +0 -148
- oci_cli/help_text_producer/data_files/text/cmdref/os-management/work-request.txt +0 -20
- oci_cli/help_text_producer/data_files/text/cmdref/os-management.txt +0 -187
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/change-compartment.txt +0 -143
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/create.txt +0 -187
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/delete.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/get.txt +0 -103
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy/update.txt +0 -193
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/access-policy.txt +0 -25
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/debug/report.txt +0 -60
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/debug.txt +0 -14
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/change-compartment.txt +0 -143
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/create.txt +0 -210
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/delete.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/get.txt +0 -103
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/list.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway/update.txt +0 -215
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/change-compartment.txt +0 -147
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/create.txt +0 -197
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/delete.txt +0 -145
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/get.txt +0 -107
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/list.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table/update.txt +0 -203
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway-route-table.txt +0 -25
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/ingress-gateway.txt +0 -26
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh/create.txt +0 -190
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh/get.txt +0 -99
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/mesh.txt +0 -27
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/proxy-details/get.txt +0 -79
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/proxy-details.txt +0 -14
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/change-compartment.txt +0 -143
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create-virtual-deployment-disabled-service-discovery-configuration.txt +0 -204
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create-virtual-deployment-dns-service-discovery-configuration.txt +0 -209
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/create.txt +0 -215
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/delete.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/get.txt +0 -103
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/list.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update-virtual-deployment-disabled-service-discovery-configuration.txt +0 -204
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update-virtual-deployment-dns-service-discovery-configuration.txt +0 -209
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment/update.txt +0 -215
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-deployment.txt +0 -33
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/change-compartment.txt +0 -141
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/delete.txt +0 -139
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/get.txt +0 -101
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/list.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service/update.txt +0 -211
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/change-compartment.txt +0 -145
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/create.txt +0 -195
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/delete.txt +0 -143
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/get.txt +0 -105
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/list.txt +0 -150
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table/update.txt +0 -201
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service-route-table.txt +0 -25
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/virtual-service.txt +0 -27
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/work-request/list-work-request-errors.txt +0 -128
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh/work-request.txt +0 -22
- oci_cli/help_text_producer/data_files/text/cmdref/service-mesh.txt +0 -139
- services/ai_anomaly_detection/src/oci_cli_anomaly_detection/anomalydetection_cli_extended.py +0 -234
- services/ai_anomaly_detection/src/oci_cli_anomaly_detection/generated/anomalydetection_cli.py +0 -2665
- services/ai_anomaly_detection/src/oci_cli_anomaly_detection/generated/client_mappings.py +0 -14
- services/ai_anomaly_detection/tests/__init__.py +0 -4
- services/dts/__init__.py +0 -4
- services/dts/src/__init__.py +0 -4
- services/dts/src/oci_cli_appliance_export_job/__init__.py +0 -4
- services/dts/src/oci_cli_appliance_export_job/applianceexportjob_cli_extended.py +0 -582
- services/dts/src/oci_cli_appliance_export_job/applianceexportjob_constants.py +0 -11
- services/dts/src/oci_cli_appliance_export_job/generated/__init__.py +0 -4
- services/dts/src/oci_cli_appliance_export_job/generated/applianceexportjob_cli.py +0 -428
- services/dts/src/oci_cli_appliance_export_job/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_appliance_export_job/manifest/__init__.py +0 -3
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_constants.py +0 -12
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_iterator.py +0 -86
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_line_item.py +0 -22
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_stats.py +0 -93
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_stats_consumer.py +0 -15
- services/dts/src/oci_cli_appliance_export_job/manifest/manifest_writer.py +0 -117
- services/dts/src/oci_cli_appliance_export_job/manifest/object_uploader.py +0 -124
- services/dts/src/oci_cli_dts/__init__.py +0 -4
- services/dts/src/oci_cli_dts/appliance_auth_manager.py +0 -59
- services/dts/src/oci_cli_dts/appliance_cert_manager.py +0 -51
- services/dts/src/oci_cli_dts/appliance_client_proxy.py +0 -57
- services/dts/src/oci_cli_dts/appliance_config.py +0 -34
- services/dts/src/oci_cli_dts/appliance_config_manager.py +0 -145
- services/dts/src/oci_cli_dts/appliance_config_spec.py +0 -38
- services/dts/src/oci_cli_dts/appliance_constants.py +0 -35
- services/dts/src/oci_cli_dts/appliance_init_auth.py +0 -81
- services/dts/src/oci_cli_dts/appliance_init_auth_spec.py +0 -32
- services/dts/src/oci_cli_dts/base_client.py +0 -102
- services/dts/src/oci_cli_dts/cli_utils.py +0 -131
- services/dts/src/oci_cli_dts/dts_service_cli_extended.py +0 -95
- services/dts/src/oci_cli_dts/dts_transform.py +0 -31
- services/dts/src/oci_cli_dts/generated/__init__.py +0 -4
- services/dts/src/oci_cli_dts/generated/dts_service_cli.py +0 -14
- services/dts/src/oci_cli_dts/nfs_dataset_client_proxy.py +0 -85
- services/dts/src/oci_cli_dts/nfsdataset_cli_extended.py +0 -371
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/__init__.py +0 -3
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/__init__.py +0 -16
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/diagnose_tools_client.py +0 -163
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/diagnose_tools_client_composite_operations.py +0 -24
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/__init__.py +0 -28
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/dataset_seal_status.py +0 -282
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/details.py +0 -66
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_dataset_info.py +0 -191
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_dataset_spec.py +0 -93
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_export_config.py +0 -174
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/nfs_export_details.py +0 -66
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/object_storage_upload_config.py +0 -201
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/passphrase_details.py +0 -66
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/models/physical_transfer_appliance.py +0 -214
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/nfs_dataset_client.py +0 -835
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/nfs_dataset_client_composite_operations.py +0 -24
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/physical_transfer_appliance_client.py +0 -374
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/client/physical_transfer_appliance_client_composite_operations.py +0 -24
- services/dts/src/oci_cli_dts/physical_appliance_control_plane/service_endpoints.py +0 -9
- services/dts/src/oci_cli_dts/physicalappliance_cli_extended.py +0 -590
- services/dts/src/oci_cli_dts/verify_cli_extended.py +0 -494
- services/dts/src/oci_cli_shipping_vendors/__init__.py +0 -4
- services/dts/src/oci_cli_shipping_vendors/generated/__init__.py +0 -4
- services/dts/src/oci_cli_shipping_vendors/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_shipping_vendors/generated/shippingvendors_cli.py +0 -49
- services/dts/src/oci_cli_transfer_appliance/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_appliance/generated/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_appliance/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_transfer_appliance/generated/transferappliance_cli.py +0 -364
- services/dts/src/oci_cli_transfer_appliance/transferappliance_cli_extended.py +0 -362
- services/dts/src/oci_cli_transfer_appliance_entitlement/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_appliance_entitlement/generated/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_appliance_entitlement/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_transfer_appliance_entitlement/generated/transferapplianceentitlement_cli.py +0 -155
- services/dts/src/oci_cli_transfer_appliance_entitlement/transferapplianceentitlement_cli_extended.py +0 -66
- services/dts/src/oci_cli_transfer_device/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_device/generated/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_device/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_transfer_device/generated/transferdevice_cli.py +0 -209
- services/dts/src/oci_cli_transfer_job/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_job/generated/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_job/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_transfer_job/generated/transferjob_cli.py +0 -368
- services/dts/src/oci_cli_transfer_job/transferjob_cli_extended.py +0 -281
- services/dts/src/oci_cli_transfer_package/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_package/generated/__init__.py +0 -4
- services/dts/src/oci_cli_transfer_package/generated/client_mappings.py +0 -14
- services/dts/src/oci_cli_transfer_package/generated/transferpackage_cli.py +0 -326
- services/dts/tests/__init__.py +0 -4
- services/os_management/__init__.py +0 -4
- services/os_management/src/__init__.py +0 -4
- services/os_management/src/oci_cli_event/__init__.py +0 -4
- services/os_management/src/oci_cli_event/event_cli_extended.py +0 -34
- services/os_management/src/oci_cli_event/generated/__init__.py +0 -4
- services/os_management/src/oci_cli_event/generated/client_mappings.py +0 -14
- services/os_management/src/oci_cli_event/generated/event_cli.py +0 -430
- services/os_management/src/oci_cli_os_management/__init__.py +0 -4
- services/os_management/src/oci_cli_os_management/generated/__init__.py +0 -4
- services/os_management/src/oci_cli_os_management/generated/os_management_service_cli.py +0 -15
- services/os_management/src/oci_cli_os_management/generated/osmanagement_cli.py +0 -4009
- services/os_management/src/oci_cli_os_management/osmanagement_cli_extended.py +0 -244
- services/os_management/tests/__init__.py +0 -4
- services/service_mesh/__init__.py +0 -4
- services/service_mesh/src/__init__.py +0 -4
- services/service_mesh/src/oci_cli_service_mesh/__init__.py +0 -4
- services/service_mesh/src/oci_cli_service_mesh/generated/__init__.py +0 -4
- services/service_mesh/src/oci_cli_service_mesh/generated/client_mappings.py +0 -14
- services/service_mesh/src/oci_cli_service_mesh/generated/servicemesh_cli.py +0 -3306
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_cli_extended.py +0 -57
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/__init__.py +0 -76
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/aggregators/__init__.py +0 -3
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/aggregators/aggregation_orchestrator.py +0 -88
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/bundle_analyser.py +0 -163
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/event.py +0 -43
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/handlers/__init__.py +0 -3
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/handlers/debug_handler.py +0 -209
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/report_orchestrator.py +0 -82
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/task_orchestrator.py +0 -76
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/task_request.py +0 -232
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/__init__.py +0 -3
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/common_worker.py +0 -116
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/csv_worker.py +0 -39
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/file_worker.py +0 -33
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/igd_worker.py +0 -48
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/mesh_report_worker.py +0 -60
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/mesh_resources_worker.py +0 -49
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/namespaces_worker.py +0 -33
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/oci_cli_version_worker.py +0 -34
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/pod_worker.py +0 -112
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/resource_worker.py +0 -75
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/services_worker.py +0 -34
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/task_worker.py +0 -33
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/validate_crds_worker.py +0 -34
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/vdb_worker.py +0 -51
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/tasks/webhooks_worker.py +0 -34
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/__init__.py +0 -3
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/bundle_helper.py +0 -154
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/constants.py +0 -137
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/helper.py +0 -12
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/kubectl_command_helper.py +0 -646
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/messages.py +0 -16
- services/service_mesh/src/oci_cli_service_mesh/service_mesh_troubleshoot/utils/summary.py +0 -222
- services/service_mesh/tests/__init__.py +0 -4
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/LICENSE.txt +0 -0
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/WHEEL +0 -0
- {oci_cli-3.64.0.dist-info → oci_cli-3.65.0.dist-info}/entry_points.txt +0 -0
- {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'
|