oci 2.129.0__py3-none-any.whl → 2.129.2__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/access_governance_cp/access_governance_cp_client.py +8 -8
- oci/adm/application_dependency_management_client.py +36 -36
- oci/ai_anomaly_detection/anomaly_detection_client.py +36 -36
- oci/ai_document/ai_service_document_client.py +22 -22
- oci/ai_language/ai_service_language_client.py +44 -44
- oci/ai_speech/ai_service_speech_client.py +10 -10
- oci/ai_vision/ai_service_vision_client.py +25 -25
- oci/analytics/analytics_client.py +23 -23
- oci/announcements_service/announcement_client.py +4 -4
- oci/announcements_service/announcement_subscription_client.py +9 -9
- oci/announcements_service/announcements_preferences_client.py +4 -4
- oci/apigateway/api_gateway_client.py +21 -21
- oci/apigateway/deployment_client.py +6 -6
- oci/apigateway/gateway_client.py +6 -6
- oci/apigateway/subscribers_client.py +6 -6
- oci/apigateway/usage_plans_client.py +6 -6
- oci/apigateway/work_requests_client.py +5 -5
- oci/apm_config/config_client.py +9 -9
- oci/apm_control_plane/apm_domain_client.py +14 -14
- oci/apm_synthetics/apm_synthetic_client.py +28 -28
- oci/apm_traces/attributes_client.py +8 -8
- oci/apm_traces/query_client.py +2 -2
- oci/apm_traces/trace_client.py +4 -4
- oci/appmgmt_control/appmgmt_control_client.py +8 -8
- oci/artifacts/artifacts_client.py +32 -32
- oci/audit/audit_client.py +3 -3
- oci/autoscaling/auto_scaling_client.py +11 -11
- oci/bastion/bastion_client.py +15 -15
- oci/bds/bds_client.py +66 -66
- oci/blockchain/blockchain_platform_client.py +27 -27
- oci/budget/budget_client.py +10 -10
- oci/capacity_management/capacity_management_client.py +45 -45
- oci/certificates/certificates_client.py +5 -5
- oci/certificates_management/certificates_management_client.py +32 -32
- oci/cims/incident_client.py +8 -8
- oci/cims/user_client.py +1 -1
- oci/cloud_bridge/common_client.py +5 -5
- oci/cloud_bridge/discovery_client.py +14 -14
- oci/cloud_bridge/inventory_client.py +16 -16
- oci/cloud_bridge/ocb_agent_svc_client.py +23 -23
- oci/cloud_guard/cloud_guard_client.py +155 -155
- oci/cloud_migrations/migration_client.py +43 -43
- oci/cluster_placement_groups/cluster_placement_groups_cp_client.py +13 -13
- oci/compute_cloud_at_customer/compute_cloud_at_customer_client.py +12 -12
- oci/compute_instance_agent/compute_instance_agent_client.py +6 -6
- oci/compute_instance_agent/plugin_client.py +2 -2
- oci/compute_instance_agent/pluginconfig_client.py +1 -1
- oci/container_engine/container_engine_client.py +44 -44
- oci/container_instances/container_instance_client.py +18 -18
- oci/core/blockstorage_client.py +60 -60
- oci/core/compute_client.py +99 -99
- oci/core/compute_management_client.py +32 -32
- oci/core/virtual_network_client.py +247 -247
- oci/dashboard_service/dashboard_client.py +6 -6
- oci/dashboard_service/dashboard_group_client.py +6 -6
- oci/data_catalog/data_catalog_client.py +149 -149
- oci/data_flow/data_flow_client.py +42 -42
- oci/data_integration/data_integration_client.py +163 -163
- oci/data_labeling_service/data_labeling_management_client.py +17 -17
- oci/data_labeling_service_dataplane/data_labeling_client.py +15 -15
- oci/data_safe/data_safe_client.py +278 -278
- oci/data_science/data_science_client.py +91 -91
- oci/database/database_client.py +8268 -6013
- oci/database/database_client_composite_operations.py +620 -0
- oci/database/models/__init__.py +46 -0
- oci/database/models/autonomous_container_database.py +2 -2
- oci/database/models/autonomous_container_database_summary.py +2 -2
- oci/database/models/autonomous_database.py +14 -2
- oci/database/models/autonomous_database_summary.py +14 -2
- oci/database/models/change_exadb_vm_cluster_compartment_details.py +76 -0
- oci/database/models/change_exascale_db_storage_vault_compartment_details.py +76 -0
- oci/database/models/cloud_automation_apply_update_time_preference.py +103 -0
- oci/database/models/cloud_automation_freeze_period.py +103 -0
- oci/database/models/cloud_automation_update_details.py +157 -0
- oci/database/models/create_autonomous_database_base.py +4 -4
- oci/database/models/create_database_details.py +37 -2
- oci/database/models/create_database_software_image_details.py +7 -3
- oci/database/models/create_exadb_vm_cluster_details.py +956 -0
- oci/database/models/create_exascale_db_storage_vault_details.py +340 -0
- oci/database/models/create_pluggable_database_creation_type_details.py +4 -1
- oci/database/models/create_pluggable_database_from_local_clone_details.py +33 -2
- oci/database/models/create_pluggable_database_from_remote_clone_details.py +33 -2
- oci/database/models/database_software_image.py +7 -3
- oci/database/models/database_software_image_summary.py +7 -3
- oci/database/models/db_node.py +38 -3
- oci/database/models/db_node_details.py +76 -0
- oci/database/models/db_node_summary.py +38 -3
- oci/database/models/db_server.py +3 -3
- oci/database/models/db_server_summary.py +3 -3
- oci/database/models/exadb_vm_cluster.py +1592 -0
- oci/database/models/exadb_vm_cluster_storage_details.py +72 -0
- oci/database/models/exadb_vm_cluster_summary.py +1565 -0
- oci/database/models/exadb_vm_cluster_update.py +416 -0
- oci/database/models/exadb_vm_cluster_update_history_entry.py +392 -0
- oci/database/models/exadb_vm_cluster_update_history_entry_summary.py +392 -0
- oci/database/models/exadb_vm_cluster_update_summary.py +422 -0
- oci/database/models/exascale_db_storage_details.py +103 -0
- oci/database/models/exascale_db_storage_input_details.py +72 -0
- oci/database/models/exascale_db_storage_vault.py +605 -0
- oci/database/models/exascale_db_storage_vault_summary.py +536 -0
- oci/database/models/gi_minor_version_summary.py +107 -0
- oci/database/models/key_store.py +7 -3
- oci/database/models/key_store_summary.py +7 -3
- oci/database/models/maintenance_window.py +2 -4
- oci/database/models/remove_virtual_machine_from_exadb_vm_cluster_details.py +72 -0
- oci/database/models/update_exadb_vm_cluster_details.py +570 -0
- oci/database/models/update_exascale_db_storage_vault_details.py +239 -0
- oci/database_management/db_management_client.py +210 -210
- oci/database_management/diagnosability_client.py +4 -4
- oci/database_management/managed_my_sql_databases_client.py +7 -7
- oci/database_management/models/child_database.py +7 -3
- oci/database_management/models/database_usage_metrics.py +7 -3
- oci/database_management/models/fleet_status_by_category.py +7 -3
- oci/database_management/models/job_database.py +7 -3
- oci/database_management/models/job_execution.py +7 -3
- oci/database_management/models/job_execution_summary.py +7 -3
- oci/database_management/models/managed_database.py +7 -3
- oci/database_management/models/managed_database_summary.py +7 -3
- oci/database_management/models/optimizer_database.py +7 -3
- oci/database_management/perfhub_client.py +1 -1
- oci/database_management/sql_tuning_client.py +17 -17
- oci/database_migration/database_migration_client.py +192 -35
- oci/database_migration/models/__init__.py +8 -0
- oci/database_migration/models/create_oracle_migration_details.py +31 -0
- oci/database_migration/models/migration_parameter_base.py +127 -0
- oci/database_migration/models/migration_parameter_details.py +164 -0
- oci/database_migration/models/migration_parameter_summary.py +502 -0
- oci/database_migration/models/migration_parameter_summary_collection.py +72 -0
- oci/database_migration/models/oracle_migration.py +33 -2
- oci/database_migration/models/update_oracle_migration_details.py +31 -0
- oci/database_tools/database_tools_client.py +23 -23
- oci/demand_signal/occ_demand_signal_client.py +7 -7
- oci/desktops/desktop_service_client.py +21 -21
- oci/devops/devops_client.py +89 -89
- oci/disaster_recovery/disaster_recovery_client.py +29 -29
- oci/dns/dns_client.py +52 -52
- oci/dts/appliance_export_job_client.py +6 -6
- oci/dts/shipping_vendors_client.py +1 -1
- oci/dts/transfer_appliance_client.py +8 -8
- oci/dts/transfer_appliance_entitlement_client.py +3 -3
- oci/dts/transfer_device_client.py +5 -5
- oci/dts/transfer_job_client.py +6 -6
- oci/dts/transfer_package_client.py +7 -7
- oci/em_warehouse/em_data_lake_client.py +13 -13
- oci/em_warehouse/em_warehouse_client.py +13 -13
- oci/email/email_client.py +31 -31
- oci/email_data_plane/email_dp_client.py +1 -1
- oci/events/events_client.py +6 -6
- oci/exceptions.py +46 -7
- oci/file_storage/file_storage_client.py +185 -67
- oci/file_storage/models/create_export_details.py +14 -4
- oci/file_storage/models/create_file_system_details.py +51 -0
- oci/file_storage/models/file_system.py +89 -3
- oci/file_storage/models/file_system_summary.py +60 -5
- oci/file_storage/models/snapshot_schedule.py +8 -2
- oci/fleet_software_update/fleet_software_update_client.py +44 -44
- oci/functions/functions_invoke_client.py +1 -1
- oci/functions/functions_management_client.py +16 -16
- oci/fusion_apps/data_masking_activity_client.py +3 -3
- oci/fusion_apps/fusion_applications_client.py +41 -41
- oci/fusion_apps/fusion_environment_client.py +15 -15
- oci/fusion_apps/fusion_environment_family_client.py +8 -8
- oci/fusion_apps/refresh_activity_client.py +4 -4
- oci/fusion_apps/scheduled_activity_client.py +2 -2
- oci/fusion_apps/service_attachment_client.py +2 -2
- oci/generative_ai/generative_ai_client.py +22 -22
- oci/generative_ai_inference/generative_ai_inference_client.py +4 -4
- oci/generic_artifacts_content/generic_artifacts_content_client.py +3 -3
- oci/globally_distributed_database/sharded_database_service_client.py +30 -30
- oci/golden_gate/golden_gate_client.py +68 -68
- oci/governance_rules_control_plane/governance_rule_client.py +15 -15
- oci/governance_rules_control_plane/work_request_client.py +5 -5
- oci/healthchecks/health_checks_client.py +17 -17
- oci/identity/identity_client.py +145 -145
- oci/identity_data_plane/dataplane_client.py +2 -2
- oci/identity_domains/identity_domains_client.py +300 -300
- oci/integration/integration_instance_client.py +15 -15
- oci/jms/java_management_service_client.py +66 -66
- oci/jms_java_downloads/java_download_client.py +25 -25
- oci/key_management/ekm_client.py +5 -5
- oci/key_management/kms_crypto_client.py +6 -6
- oci/key_management/kms_hsm_cluster_client.py +12 -12
- oci/key_management/kms_management_client.py +21 -21
- oci/key_management/kms_vault_client.py +14 -14
- oci/license_manager/license_manager_client.py +18 -18
- oci/limits/limits_client.py +4 -4
- oci/limits/quotas_client.py +7 -7
- oci/load_balancer/load_balancer_client.py +61 -61
- oci/lockbox/lockbox_client.py +24 -24
- oci/log_analytics/log_analytics_client.py +193 -193
- oci/logging/logging_management_client.py +30 -30
- oci/loggingingestion/logging_client.py +1 -1
- oci/loggingsearch/log_search_client.py +1 -1
- oci/management_agent/management_agent_client.py +28 -28
- oci/management_dashboard/dashx_apis_client.py +14 -14
- oci/marketplace/account_client.py +2 -2
- oci/marketplace/marketplace_client.py +30 -30
- oci/marketplace_private_offer/attachment_client.py +5 -5
- oci/marketplace_private_offer/offer_client.py +6 -6
- oci/marketplace_publisher/attachment_client.py +5 -5
- oci/marketplace_publisher/marketplace_publisher_client.py +71 -71
- oci/marketplace_publisher/offer_client.py +6 -6
- oci/media_services/media_services_client.py +60 -60
- oci/media_services/media_stream_client.py +2 -2
- oci/monitoring/monitoring_client.py +18 -18
- oci/mysql/channels_client.py +7 -7
- oci/mysql/db_backups_client.py +7 -7
- oci/mysql/db_system_client.py +17 -17
- oci/mysql/mysqlaas_client.py +7 -7
- oci/mysql/replicas_client.py +5 -5
- oci/mysql/work_requests_client.py +4 -4
- oci/network_firewall/network_firewall_client.py +80 -80
- oci/network_load_balancer/network_load_balancer_client.py +34 -34
- oci/nosql/nosql_client.py +24 -24
- oci/object_storage/__init__.py +2 -1
- oci/object_storage/object_storage_client.py +50 -50
- oci/object_storage/transfer/internal/download/DownloadConfiguration.py +232 -0
- oci/object_storage/transfer/internal/download/DownloadManager.py +902 -0
- oci/object_storage/transfer/internal/download/DownloadThread.py +375 -0
- oci/object_storage/transfer/internal/download/__init__.py +5 -0
- oci/oce/oce_instance_client.py +10 -10
- oci/oci_control_center/occ_metrics_client.py +3 -3
- oci/ocvp/cluster_client.py +5 -5
- oci/ocvp/esxi_host_client.py +8 -8
- oci/ocvp/sddc_client.py +14 -14
- oci/ocvp/work_request_client.py +4 -4
- oci/oda/management_client.py +59 -59
- oci/oda/oda_client.py +17 -17
- oci/oda/odapackage_client.py +7 -7
- oci/onesubscription/billing_schedule_client.py +1 -1
- oci/onesubscription/commitment_client.py +2 -2
- oci/onesubscription/computed_usage_client.py +3 -3
- oci/onesubscription/invoice_summary_client.py +2 -2
- oci/onesubscription/organization_subscription_client.py +1 -1
- oci/onesubscription/ratecard_client.py +1 -1
- oci/onesubscription/subscribed_service_client.py +2 -2
- oci/onesubscription/subscription_client.py +1 -1
- oci/ons/notification_control_plane_client.py +6 -6
- oci/ons/notification_data_plane_client.py +10 -10
- oci/opa/opa_instance_client.py +13 -13
- oci/opensearch/opensearch_cluster_backup_client.py +4 -4
- oci/opensearch/opensearch_cluster_client.py +14 -14
- oci/operator_access_control/access_requests_client.py +10 -10
- oci/operator_access_control/operator_actions_client.py +2 -2
- oci/operator_access_control/operator_control_assignment_client.py +8 -8
- oci/operator_access_control/operator_control_client.py +6 -6
- oci/opsi/models/__init__.py +12 -0
- oci/opsi/models/basic_configuration_item_summary.py +3 -3
- oci/opsi/models/create_operations_insights_private_endpoint_details.py +4 -2
- oci/opsi/models/create_operations_insights_warehouse_details.py +2 -2
- oci/opsi/models/create_operations_insights_warehouse_user_details.py +4 -4
- oci/opsi/models/credential_details.py +1 -1
- oci/opsi/models/database_configuration_summary.py +2 -2
- oci/opsi/models/database_details.py +2 -2
- oci/opsi/models/database_insight.py +2 -2
- oci/opsi/models/database_insight_summary.py +2 -2
- oci/opsi/models/download_operations_insights_warehouse_wallet_details.py +2 -2
- oci/opsi/models/enterprise_manager_bridges.py +1 -1
- oci/opsi/models/host_configuration_metric_group.py +11 -3
- oci/opsi/models/host_cpu_hardware_configuration.py +1 -1
- oci/opsi/models/host_cpu_recommendations.py +118 -5
- oci/opsi/models/host_cpu_usage.py +1 -1
- oci/opsi/models/host_entities.py +1 -1
- oci/opsi/models/host_filesystem_configuration.py +1 -1
- oci/opsi/models/host_filesystem_usage.py +1 -1
- oci/opsi/models/host_gpu_configuration.py +492 -0
- oci/opsi/models/host_gpu_processes.py +213 -0
- oci/opsi/models/host_gpu_usage.py +678 -0
- oci/opsi/models/host_hardware_configuration.py +1 -1
- oci/opsi/models/host_insight.py +2 -2
- oci/opsi/models/host_insight_host_recommendations.py +27 -3
- oci/opsi/models/host_insight_summary.py +4 -4
- oci/opsi/models/host_memory_configuration.py +1 -1
- oci/opsi/models/host_memory_recommendations.py +165 -0
- oci/opsi/models/host_memory_usage.py +1 -1
- oci/opsi/models/host_network_activity_summary.py +1 -1
- oci/opsi/models/host_network_configuration.py +1 -1
- oci/opsi/models/host_network_recommendations.py +134 -0
- oci/opsi/models/host_performance_metric_group.py +19 -3
- oci/opsi/models/host_product.py +1 -1
- oci/opsi/models/host_resource_allocation.py +1 -1
- oci/opsi/models/host_storage_recommendations.py +134 -0
- oci/opsi/models/host_top_processes.py +34 -3
- oci/opsi/models/importable_enterprise_manager_entity.py +2 -2
- oci/opsi/models/news_report.py +2 -2
- oci/opsi/models/news_report_summary.py +2 -2
- oci/opsi/models/operations_insights_private_endpoint.py +2 -2
- oci/opsi/models/operations_insights_private_endpoint_summary.py +2 -2
- oci/opsi/models/operations_insights_warehouse.py +6 -6
- oci/opsi/models/operations_insights_warehouse_summary.py +6 -6
- oci/opsi/models/operations_insights_warehouse_user.py +4 -4
- oci/opsi/models/operations_insights_warehouse_user_summary.py +4 -4
- oci/opsi/models/operations_insights_warehouses.py +3 -3
- oci/opsi/models/opsi_configuration_basic_configuration_item_summary.py +1 -1
- oci/opsi/models/resource_filters.py +56 -2
- oci/opsi/models/sql_bucket.py +2 -2
- oci/opsi/models/sql_search_summary.py +2 -2
- oci/opsi/models/top_processes_usage.py +31 -0
- oci/opsi/models/top_processes_usage_trend.py +31 -0
- oci/opsi/models/update_operations_insights_warehouse_details.py +2 -2
- oci/opsi/models/update_operations_insights_warehouse_user_details.py +2 -2
- oci/opsi/models/work_requests.py +1 -1
- oci/opsi/operations_insights_client.py +604 -409
- oci/opsi/operations_insights_client_composite_operations.py +8 -8
- oci/optimizer/optimizer_client.py +26 -26
- oci/os_management/event_client.py +8 -8
- oci/os_management/os_management_client.py +69 -69
- oci/os_management_hub/event_client.py +8 -8
- oci/os_management_hub/lifecycle_environment_client.py +12 -12
- oci/os_management_hub/managed_instance_client.py +31 -31
- oci/os_management_hub/managed_instance_group_client.py +25 -25
- oci/os_management_hub/management_station_client.py +10 -10
- oci/os_management_hub/onboarding_client.py +6 -6
- oci/os_management_hub/reporting_managed_instance_client.py +3 -3
- oci/os_management_hub/scheduled_job_client.py +7 -7
- oci/os_management_hub/software_source_client.py +27 -27
- oci/os_management_hub/work_request_client.py +4 -4
- oci/osp_gateway/address_rule_service_client.py +1 -1
- oci/osp_gateway/address_service_client.py +2 -2
- oci/osp_gateway/invoice_service_client.py +5 -5
- oci/osp_gateway/subscription_service_client.py +5 -5
- oci/osub_billing_schedule/billing_schedule_client.py +1 -1
- oci/osub_organization_subscription/organization_subscription_client.py +1 -1
- oci/osub_subscription/commitment_client.py +2 -2
- oci/osub_subscription/ratecard_client.py +1 -1
- oci/osub_subscription/subscription_client.py +1 -1
- oci/osub_usage/computed_usage_client.py +3 -3
- oci/psql/postgresql_client.py +33 -33
- oci/queue/queue_admin_client.py +11 -11
- oci/queue/queue_client.py +8 -8
- oci/recovery/database_recovery_client.py +25 -25
- oci/redis/redis_cluster_client.py +11 -11
- oci/regions_definitions.py +3 -0
- oci/resource_manager/resource_manager_client.py +52 -52
- oci/resource_scheduler/schedule_client.py +13 -13
- oci/resource_search/resource_search_client.py +3 -3
- oci/rover/rover_bundle_client.py +8 -8
- oci/rover/rover_cluster_client.py +8 -8
- oci/rover/rover_entitlement_client.py +6 -6
- oci/rover/rover_node_client.py +15 -15
- oci/rover/shape_client.py +1 -1
- oci/rover/work_requests_client.py +5 -5
- oci/sch/connector_plugins_client.py +2 -2
- oci/sch/service_connector_client.py +12 -12
- oci/secrets/secrets_client.py +3 -3
- oci/service_catalog/service_catalog_client.py +26 -26
- oci/service_manager_proxy/service_manager_proxy_client.py +2 -2
- oci/service_mesh/service_mesh_client.py +48 -48
- oci/stack_monitoring/stack_monitoring_client.py +64 -64
- oci/streaming/stream_admin_client.py +18 -18
- oci/streaming/stream_client.py +8 -8
- oci/tenant_manager_control_plane/domain_client.py +5 -5
- oci/tenant_manager_control_plane/domain_governance_client.py +5 -5
- oci/tenant_manager_control_plane/governance_client.py +2 -2
- oci/tenant_manager_control_plane/link_client.py +3 -3
- oci/tenant_manager_control_plane/orders_client.py +2 -2
- oci/tenant_manager_control_plane/organization_client.py +10 -10
- oci/tenant_manager_control_plane/recipient_invitation_client.py +5 -5
- oci/tenant_manager_control_plane/sender_invitation_client.py +5 -5
- oci/tenant_manager_control_plane/subscription_client.py +11 -11
- oci/tenant_manager_control_plane/work_request_client.py +4 -4
- oci/threat_intelligence/threatintel_client.py +5 -5
- oci/usage/resources_client.py +2 -2
- oci/usage/rewards_client.py +6 -6
- oci/usage/usagelimits_client.py +1 -1
- oci/usage_api/models/usage_summary.py +62 -0
- oci/usage_api/usageapi_client.py +33 -33
- oci/vault/vaults_client.py +13 -13
- oci/vbs_inst/vbs_instance_client.py +10 -10
- oci/version.py +1 -1
- oci/visual_builder/vb_instance_client.py +13 -13
- oci/vn_monitoring/vn_monitoring_client.py +12 -12
- oci/vulnerability_scanning/vulnerability_scanning_client.py +58 -58
- oci/waa/waa_client.py +13 -13
- oci/waa/work_request_client.py +4 -4
- oci/waas/redirect_client.py +6 -6
- oci/waas/waas_client.py +66 -66
- oci/waf/waf_client.py +24 -24
- oci/work_requests/work_request_client.py +4 -4
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/METADATA +1 -1
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/RECORD +385 -348
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/LICENSE.txt +0 -0
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/WHEEL +0 -0
- {oci-2.129.0.dist-info → oci-2.129.2.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,375 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
# Copyright (c) 2016, 2024, 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
|
+
import six
|
6
|
+
import time
|
7
|
+
import multiprocessing
|
8
|
+
from enum import Enum
|
9
|
+
from oci.exceptions import DownloadTerminated, DownloadFailedIncorrectDownloadSize
|
10
|
+
|
11
|
+
|
12
|
+
class DownloadState(Enum):
|
13
|
+
DOWNLOADING = 0
|
14
|
+
PAUSED = 1
|
15
|
+
TERMINATED = 2
|
16
|
+
|
17
|
+
|
18
|
+
class DownloadThread(object):
|
19
|
+
"""
|
20
|
+
The main class whose methods the threads use to perform the downloads and write to the stream.
|
21
|
+
|
22
|
+
:param: DownloadManager download_manager: The download manger object
|
23
|
+
|
24
|
+
:param: DownloadConfiguration download_configuration: The download configuration object
|
25
|
+
|
26
|
+
:param: ObjectStorageClient object_storage_client: The object storage client
|
27
|
+
|
28
|
+
:param: str namespace_name: The namespace name
|
29
|
+
|
30
|
+
:param: str bucket_name: The bucket name
|
31
|
+
|
32
|
+
:param: str object_name: The object name
|
33
|
+
|
34
|
+
:param: bytestream stream: The stream to write into
|
35
|
+
|
36
|
+
:param: int bytes_downloaded: The bytes downloaded so far before invoking this.
|
37
|
+
|
38
|
+
:param: int object_size: The total size of the download in bytes, including the bytes already downloaded
|
39
|
+
|
40
|
+
:param function progress_callback: (optional)
|
41
|
+
This function is used to update the progress bar of the download operation.
|
42
|
+
The arguments that it takes are (total_bytes_downloaded_so_far, total_bytes_to_download)
|
43
|
+
|
44
|
+
:param any start_byte: (optional)
|
45
|
+
The byte in the content of the object from which to start the download. The default value is 0
|
46
|
+
|
47
|
+
:param any end_byte: (optional)
|
48
|
+
The byte in the content of the object from which to stop the download. The default value is the last byte of the
|
49
|
+
object.
|
50
|
+
Note: Both the start_byte and end_byte are included in the download.
|
51
|
+
|
52
|
+
:param: bool did_some_parts_fail: True if some parts fail to download.
|
53
|
+
|
54
|
+
:param: dict failed_parts: A dictionary filled with all the failed parts. Key: Failed part, Value: Error
|
55
|
+
{(start_byte, end_byte) : error, (start_byte, end_byte): error,...}
|
56
|
+
|
57
|
+
:param str version_id: (optional)
|
58
|
+
VersionId used to identify a particular version of the object
|
59
|
+
|
60
|
+
:param str if_match: (optional)
|
61
|
+
The entity tag (ETag) to match with the ETag of an existing resource. If the specified ETag matches
|
62
|
+
the ETag of the existing resource, GET and HEAD requests will return the resource and PUT and POST
|
63
|
+
requests will upload the resource.
|
64
|
+
|
65
|
+
:param str if_none_match: (optional)
|
66
|
+
The entity tag (ETag) to avoid matching. Wildcards ('*') are not allowed. If the specified ETag does
|
67
|
+
not match the ETag of the existing resource, the request returns the expected response. If the ETag
|
68
|
+
matches the ETag of the existing resource, the request returns an HTTP 304 status without a response
|
69
|
+
body.
|
70
|
+
|
71
|
+
:param str opc_client_request_id: (optional)
|
72
|
+
The client request ID for tracing.
|
73
|
+
|
74
|
+
|
75
|
+
:param str opc_sse_customer_algorithm: (optional)
|
76
|
+
The optional header that specifies \"AES256\" as the encryption algorithm. For more information, see
|
77
|
+
`Using Your Own Keys for Server-Side Encryption`__.
|
78
|
+
|
79
|
+
__ https://docs.cloud.oracle.com/Content/Object/Tasks/usingyourencryptionkeys.htm
|
80
|
+
|
81
|
+
:param str opc_sse_customer_key: (optional)
|
82
|
+
The optional header that specifies the base64-encoded 256-bit encryption key to use to encrypt or
|
83
|
+
decrypt the data. For more information, see
|
84
|
+
`Using Your Own Keys for Server-Side Encryption`__.
|
85
|
+
|
86
|
+
__ https://docs.cloud.oracle.com/Content/Object/Tasks/usingyourencryptionkeys.htm
|
87
|
+
|
88
|
+
:param str opc_sse_customer_key_sha256: (optional)
|
89
|
+
The optional header that specifies the base64-encoded SHA256 hash of the encryption key. This
|
90
|
+
value is used to check the integrity of the encryption key. For more information, see
|
91
|
+
`Using Your Own Keys for Server-Side Encryption`__.
|
92
|
+
|
93
|
+
__ https://docs.cloud.oracle.com/Content/Object/Tasks/usingyourencryptionkeys.htm
|
94
|
+
|
95
|
+
:param str http_response_content_disposition: (optional)
|
96
|
+
Specify this query parameter to override the value of the Content-Disposition response header in the
|
97
|
+
GetObject response.
|
98
|
+
|
99
|
+
:param str http_response_cache_control: (optional)
|
100
|
+
Specify this query parameter to override the Cache-Control response header in the GetObject
|
101
|
+
response.
|
102
|
+
|
103
|
+
:param str http_response_content_type: (optional)
|
104
|
+
Specify this query parameter to override the Content-Type response header in the GetObject response.
|
105
|
+
|
106
|
+
:param str http_response_content_language: (optional)
|
107
|
+
Specify this query parameter to override the Content-Language response header in the GetObject
|
108
|
+
response.
|
109
|
+
|
110
|
+
:param str http_response_content_encoding: (optional)
|
111
|
+
Specify this query parameter to override the Content-Encoding response header in the GetObject
|
112
|
+
response.
|
113
|
+
|
114
|
+
:param str http_response_expires: (optional)
|
115
|
+
Specify this query parameter to override the Expires response header in the GetObject response.
|
116
|
+
|
117
|
+
:param obj retry_strategy: (optional)
|
118
|
+
A retry strategy to apply to this specific operation/call. This will override any retry strategy
|
119
|
+
set at the client-level.
|
120
|
+
|
121
|
+
This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation
|
122
|
+
uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
|
123
|
+
The specifics of the default retry strategy are described
|
124
|
+
`here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
|
125
|
+
|
126
|
+
To have this operation explicitly not perform any retries, pass an instance of
|
127
|
+
:py:class:`~oci.retry.NoneRetryStrategy`.
|
128
|
+
|
129
|
+
:param bool allow_control_chars: (optional)
|
130
|
+
allow_control_chars is a boolean to indicate whether or not this request should allow control
|
131
|
+
characters in the response object.
|
132
|
+
By default, the response will not allow control characters in strings
|
133
|
+
"""
|
134
|
+
def __init__(self,
|
135
|
+
download_manager,
|
136
|
+
download_config,
|
137
|
+
object_storage_client,
|
138
|
+
namespace_name,
|
139
|
+
bucket_name,
|
140
|
+
object_name,
|
141
|
+
stream,
|
142
|
+
bytes_downloaded,
|
143
|
+
object_size,
|
144
|
+
progress_callback=None,
|
145
|
+
start_byte=0,
|
146
|
+
end_byte=None,
|
147
|
+
**kwargs
|
148
|
+
):
|
149
|
+
self.download_manager = download_manager
|
150
|
+
self.download_config = download_config
|
151
|
+
self.object_storage_client = object_storage_client
|
152
|
+
self.namespace_name = namespace_name
|
153
|
+
self.bucket_name = bucket_name
|
154
|
+
self.object_name = object_name
|
155
|
+
self.stream = stream
|
156
|
+
self.stream_original_start = self.stream.tell()
|
157
|
+
self.bytes_downloaded = bytes_downloaded
|
158
|
+
self.object_size = object_size
|
159
|
+
self.progress_callback = progress_callback
|
160
|
+
self.start_byte = start_byte
|
161
|
+
self.end_byte = end_byte
|
162
|
+
self.did_some_parts_fail = False
|
163
|
+
self.failed_parts = {}
|
164
|
+
|
165
|
+
# Don't accept unknown kwargs
|
166
|
+
expected_kwargs = [
|
167
|
+
"allow_control_chars",
|
168
|
+
"retry_strategy",
|
169
|
+
"version_id",
|
170
|
+
"if_match",
|
171
|
+
"if_none_match",
|
172
|
+
"opc_client_request_id",
|
173
|
+
"opc_sse_customer_algorithm",
|
174
|
+
"opc_sse_customer_key",
|
175
|
+
"opc_sse_customer_key_sha256",
|
176
|
+
"http_response_content_disposition",
|
177
|
+
"http_response_cache_control",
|
178
|
+
"http_response_content_type",
|
179
|
+
"http_response_content_language",
|
180
|
+
"http_response_content_encoding",
|
181
|
+
"http_response_expires"
|
182
|
+
]
|
183
|
+
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
|
184
|
+
if extra_kwargs:
|
185
|
+
raise ValueError(
|
186
|
+
f"get_object got unknown kwargs: {extra_kwargs!r}")
|
187
|
+
|
188
|
+
self.header_args = kwargs
|
189
|
+
|
190
|
+
def get_start_bytes(self):
|
191
|
+
# Get the start bytes of the parts
|
192
|
+
start_byte = self.start_byte
|
193
|
+
while start_byte <= self.end_byte:
|
194
|
+
yield start_byte
|
195
|
+
start_byte += self.download_config.part_size_in_bytes
|
196
|
+
|
197
|
+
def get_response(self):
|
198
|
+
# Get the response from the multipart get operation
|
199
|
+
if self.did_some_parts_fail:
|
200
|
+
return -1
|
201
|
+
|
202
|
+
return self.bytes_downloaded
|
203
|
+
|
204
|
+
def get_part_with_start_byte(self, part_start_byte):
|
205
|
+
# This is overwritten by the SequentialDownloader and ParallelDownloader.
|
206
|
+
# This performs the get operation for the specific part.
|
207
|
+
pass
|
208
|
+
|
209
|
+
def write_part_to_stream(self, part_content, part_start_byte):
|
210
|
+
# This is overwritten by the SequentialDownloader and ParallelDownloader.
|
211
|
+
# This writes the content for the response of the get operation of the part into the stream.
|
212
|
+
pass
|
213
|
+
|
214
|
+
|
215
|
+
class SequentialDownloader(DownloadThread):
|
216
|
+
|
217
|
+
def __init__(self,
|
218
|
+
download_manager,
|
219
|
+
download_config,
|
220
|
+
object_storage_client,
|
221
|
+
namespace_name,
|
222
|
+
bucket_name,
|
223
|
+
object_name,
|
224
|
+
stream,
|
225
|
+
bytes_downloaded,
|
226
|
+
object_size,
|
227
|
+
progress_callback=None,
|
228
|
+
start_byte=0,
|
229
|
+
end_byte=None,
|
230
|
+
**kwargs
|
231
|
+
):
|
232
|
+
super(SequentialDownloader, self).__init__(download_manager, download_config, object_storage_client,
|
233
|
+
namespace_name, bucket_name, object_name, stream, bytes_downloaded,
|
234
|
+
object_size, progress_callback, start_byte,
|
235
|
+
end_byte, **kwargs)
|
236
|
+
|
237
|
+
def write_part_to_stream(self, part_content, part_start_byte):
|
238
|
+
stream_start = self.stream_original_start + part_start_byte - self.start_byte
|
239
|
+
self.stream.seek(stream_start)
|
240
|
+
self.stream.write(part_content)
|
241
|
+
stream_end = self.stream.tell()
|
242
|
+
self.callback(stream_end - stream_start)
|
243
|
+
return stream_end - stream_start
|
244
|
+
|
245
|
+
def callback(self, downloaded_bytes):
|
246
|
+
self.bytes_downloaded += downloaded_bytes
|
247
|
+
total_bytes_downloaded = self.bytes_downloaded
|
248
|
+
|
249
|
+
if self.progress_callback:
|
250
|
+
self.progress_callback(total_bytes_downloaded, self.object_size)
|
251
|
+
|
252
|
+
def get_part_with_start_byte(self, part_start_byte):
|
253
|
+
|
254
|
+
while self.download_manager.state == DownloadState.PAUSED:
|
255
|
+
time.sleep(self.download_config.pause_wait_in_seconds)
|
256
|
+
|
257
|
+
if self.download_manager.state == DownloadState.TERMINATED:
|
258
|
+
self.stream.seek(0)
|
259
|
+
self.stream.truncate()
|
260
|
+
self.stream.close()
|
261
|
+
|
262
|
+
raise DownloadTerminated("Download canceled, Thread Stopped")
|
263
|
+
|
264
|
+
if self.end_byte:
|
265
|
+
part_end_byte = min(self.end_byte, part_start_byte + self.download_config.part_size_in_bytes - 1)
|
266
|
+
else:
|
267
|
+
part_end_byte = part_start_byte + self.download_config.part_size_in_bytes - 1
|
268
|
+
|
269
|
+
object_storage_client = self.object_storage_client
|
270
|
+
range_header = f"bytes={part_start_byte}-{part_end_byte}"
|
271
|
+
|
272
|
+
if 'retry_strategy' not in self.header_args:
|
273
|
+
self.header_args['retry_strategy'] = self.download_config.make_retry_strategy()
|
274
|
+
|
275
|
+
try:
|
276
|
+
response = object_storage_client.get_object(self.namespace_name, self.bucket_name, self.object_name,
|
277
|
+
range=range_header, **self.header_args)
|
278
|
+
part_content = response.data.content
|
279
|
+
response.data.close()
|
280
|
+
part_size_in_bytes = part_end_byte - part_start_byte + 1
|
281
|
+
if part_size_in_bytes > 0:
|
282
|
+
bytes_written = self.write_part_to_stream(part_content, part_start_byte)
|
283
|
+
if bytes_written != part_size_in_bytes:
|
284
|
+
self.did_some_parts_fail = True
|
285
|
+
self.failed_parts[(part_start_byte, part_end_byte)] = DownloadFailedIncorrectDownloadSize(
|
286
|
+
bytes_written, part_size_in_bytes
|
287
|
+
)
|
288
|
+
|
289
|
+
except Exception as e:
|
290
|
+
self.did_some_parts_fail = True
|
291
|
+
self.failed_parts[(part_start_byte, part_end_byte)] = e
|
292
|
+
|
293
|
+
|
294
|
+
class ParallelDownloader(DownloadThread):
|
295
|
+
def __init__(self,
|
296
|
+
download_manager,
|
297
|
+
download_config,
|
298
|
+
object_storage_client,
|
299
|
+
namespace_name,
|
300
|
+
bucket_name,
|
301
|
+
object_name,
|
302
|
+
stream,
|
303
|
+
bytes_downloaded,
|
304
|
+
object_size,
|
305
|
+
progress_callback=None,
|
306
|
+
start_byte=0,
|
307
|
+
end_byte=None,
|
308
|
+
**kwargs
|
309
|
+
):
|
310
|
+
super(ParallelDownloader, self).__init__(download_manager, download_config, object_storage_client,
|
311
|
+
namespace_name, bucket_name, object_name, stream, bytes_downloaded,
|
312
|
+
object_size, progress_callback,
|
313
|
+
start_byte, end_byte, **kwargs)
|
314
|
+
|
315
|
+
self.stream_lock = multiprocessing.Lock()
|
316
|
+
self.callback_lock = multiprocessing.Lock()
|
317
|
+
self.failed_parts_lock = multiprocessing.Lock()
|
318
|
+
|
319
|
+
def write_part_to_stream(self, part_content, part_start_byte):
|
320
|
+
with self.stream_lock:
|
321
|
+
stream_start = self.stream_original_start + part_start_byte - self.start_byte
|
322
|
+
self.stream.seek(stream_start)
|
323
|
+
self.stream.write(part_content)
|
324
|
+
stream_end = self.stream.tell()
|
325
|
+
self.callback(stream_end - stream_start)
|
326
|
+
return stream_end - stream_start
|
327
|
+
|
328
|
+
def callback(self, downloaded_bytes):
|
329
|
+
with self.callback_lock:
|
330
|
+
self.bytes_downloaded += downloaded_bytes
|
331
|
+
total_bytes_downloaded = self.bytes_downloaded
|
332
|
+
|
333
|
+
if self.progress_callback:
|
334
|
+
self.progress_callback(total_bytes_downloaded, self.object_size)
|
335
|
+
|
336
|
+
def get_part_with_start_byte(self, part_start_byte):
|
337
|
+
while self.download_manager.state == DownloadState.PAUSED:
|
338
|
+
time.sleep(self.download_config.pause_wait_in_seconds)
|
339
|
+
if self.download_manager.state == DownloadState.TERMINATED:
|
340
|
+
self.stream.seek(0)
|
341
|
+
self.stream.truncate()
|
342
|
+
self.stream.close()
|
343
|
+
raise DownloadTerminated("Download canceled, Thread Stopped")
|
344
|
+
|
345
|
+
if self.end_byte:
|
346
|
+
part_end_byte = min(self.end_byte, part_start_byte + self.download_config.part_size_in_bytes - 1)
|
347
|
+
else:
|
348
|
+
part_end_byte = part_start_byte + self.download_config.part_size_in_bytes - 1
|
349
|
+
|
350
|
+
object_storage_client = self.object_storage_client
|
351
|
+
range_header = f"bytes={part_start_byte}-{part_end_byte}"
|
352
|
+
|
353
|
+
if 'retry_strategy' not in self.header_args:
|
354
|
+
self.header_args['retry_strategy'] = self.download_config.make_retry_strategy()
|
355
|
+
|
356
|
+
try:
|
357
|
+
response = object_storage_client.get_object(self.namespace_name, self.bucket_name, self.object_name,
|
358
|
+
range=range_header, **self.header_args)
|
359
|
+
part_content = response.data.content
|
360
|
+
response.data.close()
|
361
|
+
part_size_in_bytes = part_end_byte - part_start_byte + 1
|
362
|
+
if part_size_in_bytes > 0:
|
363
|
+
bytes_written = self.write_part_to_stream(part_content, part_start_byte)
|
364
|
+
if bytes_written != part_size_in_bytes:
|
365
|
+
with self.failed_parts_lock:
|
366
|
+
self.did_some_parts_fail = True
|
367
|
+
self.failed_parts[(part_start_byte, part_end_byte)] = DownloadFailedIncorrectDownloadSize(
|
368
|
+
bytes_written, part_size_in_bytes
|
369
|
+
)
|
370
|
+
|
371
|
+
except Exception as e:
|
372
|
+
|
373
|
+
with self.failed_parts_lock:
|
374
|
+
self.did_some_parts_fail = True
|
375
|
+
self.failed_parts[(part_start_byte, part_end_byte)] = e
|
@@ -0,0 +1,5 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
# Copyright (c) 2016, 2024, 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
|
+
# noqa: W391, W292
|
oci/oce/oce_instance_client.py
CHANGED
@@ -160,7 +160,7 @@ class OceInstanceClient(object):
|
|
160
160
|
:rtype: :class:`~oci.response.Response`
|
161
161
|
|
162
162
|
:example:
|
163
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
163
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/change_oce_instance_compartment.py.html>`__ to see an example of how to use change_oce_instance_compartment API.
|
164
164
|
"""
|
165
165
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
166
166
|
required_arguments = ['oceInstanceId']
|
@@ -270,7 +270,7 @@ class OceInstanceClient(object):
|
|
270
270
|
:rtype: :class:`~oci.response.Response`
|
271
271
|
|
272
272
|
:example:
|
273
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
273
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/create_oce_instance.py.html>`__ to see an example of how to use create_oce_instance API.
|
274
274
|
"""
|
275
275
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
276
276
|
required_arguments = []
|
@@ -366,7 +366,7 @@ class OceInstanceClient(object):
|
|
366
366
|
:rtype: :class:`~oci.response.Response`
|
367
367
|
|
368
368
|
:example:
|
369
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
369
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/delete_oce_instance.py.html>`__ to see an example of how to use delete_oce_instance API.
|
370
370
|
"""
|
371
371
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
372
372
|
required_arguments = ['oceInstanceId']
|
@@ -464,7 +464,7 @@ class OceInstanceClient(object):
|
|
464
464
|
:rtype: :class:`~oci.response.Response`
|
465
465
|
|
466
466
|
:example:
|
467
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
467
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/get_oce_instance.py.html>`__ to see an example of how to use get_oce_instance API.
|
468
468
|
"""
|
469
469
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
470
470
|
required_arguments = ['oceInstanceId']
|
@@ -562,7 +562,7 @@ class OceInstanceClient(object):
|
|
562
562
|
:rtype: :class:`~oci.response.Response`
|
563
563
|
|
564
564
|
:example:
|
565
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
565
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/get_work_request.py.html>`__ to see an example of how to use get_work_request API.
|
566
566
|
"""
|
567
567
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
568
568
|
required_arguments = ['workRequestId']
|
@@ -689,7 +689,7 @@ class OceInstanceClient(object):
|
|
689
689
|
:rtype: :class:`~oci.response.Response`
|
690
690
|
|
691
691
|
:example:
|
692
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
692
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/list_oce_instances.py.html>`__ to see an example of how to use list_oce_instances API.
|
693
693
|
"""
|
694
694
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
695
695
|
required_arguments = ['compartmentId']
|
@@ -823,7 +823,7 @@ class OceInstanceClient(object):
|
|
823
823
|
:rtype: :class:`~oci.response.Response`
|
824
824
|
|
825
825
|
:example:
|
826
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
826
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/list_work_request_errors.py.html>`__ to see an example of how to use list_work_request_errors API.
|
827
827
|
"""
|
828
828
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
829
829
|
required_arguments = ['workRequestId']
|
@@ -937,7 +937,7 @@ class OceInstanceClient(object):
|
|
937
937
|
:rtype: :class:`~oci.response.Response`
|
938
938
|
|
939
939
|
:example:
|
940
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
940
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/list_work_request_logs.py.html>`__ to see an example of how to use list_work_request_logs API.
|
941
941
|
"""
|
942
942
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
943
943
|
required_arguments = ['workRequestId']
|
@@ -1054,7 +1054,7 @@ class OceInstanceClient(object):
|
|
1054
1054
|
:rtype: :class:`~oci.response.Response`
|
1055
1055
|
|
1056
1056
|
:example:
|
1057
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
1057
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/list_work_requests.py.html>`__ to see an example of how to use list_work_requests API.
|
1058
1058
|
"""
|
1059
1059
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
1060
1060
|
required_arguments = ['compartmentId']
|
@@ -1163,7 +1163,7 @@ class OceInstanceClient(object):
|
|
1163
1163
|
:rtype: :class:`~oci.response.Response`
|
1164
1164
|
|
1165
1165
|
:example:
|
1166
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
1166
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/oce/update_oce_instance.py.html>`__ to see an example of how to use update_oce_instance API.
|
1167
1167
|
"""
|
1168
1168
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
1169
1169
|
required_arguments = ['oceInstanceId']
|
@@ -153,7 +153,7 @@ class OccMetricsClient(object):
|
|
153
153
|
:rtype: :class:`~oci.response.Response`
|
154
154
|
|
155
155
|
:example:
|
156
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
156
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocicontrolcenter/list_metric_properties.py.html>`__ to see an example of how to use list_metric_properties API.
|
157
157
|
"""
|
158
158
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
159
159
|
required_arguments = ['namespaceName', 'compartmentId']
|
@@ -269,7 +269,7 @@ class OccMetricsClient(object):
|
|
269
269
|
:rtype: :class:`~oci.response.Response`
|
270
270
|
|
271
271
|
:example:
|
272
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
272
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocicontrolcenter/list_namespaces.py.html>`__ to see an example of how to use list_namespaces API.
|
273
273
|
"""
|
274
274
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
275
275
|
required_arguments = ['compartmentId']
|
@@ -375,7 +375,7 @@ class OccMetricsClient(object):
|
|
375
375
|
:rtype: :class:`~oci.response.Response`
|
376
376
|
|
377
377
|
:example:
|
378
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
378
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocicontrolcenter/request_summarized_metric_data.py.html>`__ to see an example of how to use request_summarized_metric_data API.
|
379
379
|
"""
|
380
380
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
381
381
|
required_arguments = []
|
oci/ocvp/cluster_client.py
CHANGED
@@ -159,7 +159,7 @@ class ClusterClient(object):
|
|
159
159
|
:rtype: :class:`~oci.response.Response`
|
160
160
|
|
161
161
|
:example:
|
162
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
162
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/create_cluster.py.html>`__ to see an example of how to use create_cluster API.
|
163
163
|
"""
|
164
164
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
165
165
|
required_arguments = []
|
@@ -263,7 +263,7 @@ class ClusterClient(object):
|
|
263
263
|
:rtype: :class:`~oci.response.Response`
|
264
264
|
|
265
265
|
:example:
|
266
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
266
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/delete_cluster.py.html>`__ to see an example of how to use delete_cluster API.
|
267
267
|
"""
|
268
268
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
269
269
|
required_arguments = ['clusterId']
|
@@ -364,7 +364,7 @@ class ClusterClient(object):
|
|
364
364
|
:rtype: :class:`~oci.response.Response`
|
365
365
|
|
366
366
|
:example:
|
367
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
367
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/get_cluster.py.html>`__ to see an example of how to use get_cluster API.
|
368
368
|
"""
|
369
369
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
370
370
|
required_arguments = ['clusterId']
|
@@ -510,7 +510,7 @@ class ClusterClient(object):
|
|
510
510
|
:rtype: :class:`~oci.response.Response`
|
511
511
|
|
512
512
|
:example:
|
513
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
513
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/list_clusters.py.html>`__ to see an example of how to use list_clusters API.
|
514
514
|
"""
|
515
515
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
516
516
|
required_arguments = []
|
@@ -656,7 +656,7 @@ class ClusterClient(object):
|
|
656
656
|
:rtype: :class:`~oci.response.Response`
|
657
657
|
|
658
658
|
:example:
|
659
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
659
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/update_cluster.py.html>`__ to see an example of how to use update_cluster API.
|
660
660
|
"""
|
661
661
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
662
662
|
required_arguments = ['clusterId']
|
oci/ocvp/esxi_host_client.py
CHANGED
@@ -157,7 +157,7 @@ class EsxiHostClient(object):
|
|
157
157
|
:rtype: :class:`~oci.response.Response`
|
158
158
|
|
159
159
|
:example:
|
160
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
160
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/create_esxi_host.py.html>`__ to see an example of how to use create_esxi_host API.
|
161
161
|
"""
|
162
162
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
163
163
|
required_arguments = []
|
@@ -269,7 +269,7 @@ class EsxiHostClient(object):
|
|
269
269
|
:rtype: :class:`~oci.response.Response`
|
270
270
|
|
271
271
|
:example:
|
272
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
272
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/delete_esxi_host.py.html>`__ to see an example of how to use delete_esxi_host API.
|
273
273
|
"""
|
274
274
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
275
275
|
required_arguments = ['esxiHostId']
|
@@ -370,7 +370,7 @@ class EsxiHostClient(object):
|
|
370
370
|
:rtype: :class:`~oci.response.Response`
|
371
371
|
|
372
372
|
:example:
|
373
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
373
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/get_esxi_host.py.html>`__ to see an example of how to use get_esxi_host API.
|
374
374
|
"""
|
375
375
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
376
376
|
required_arguments = ['esxiHostId']
|
@@ -485,7 +485,7 @@ class EsxiHostClient(object):
|
|
485
485
|
:rtype: :class:`~oci.response.Response`
|
486
486
|
|
487
487
|
:example:
|
488
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
488
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/inplace_upgrade.py.html>`__ to see an example of how to use inplace_upgrade API.
|
489
489
|
"""
|
490
490
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
491
491
|
required_arguments = ['esxiHostId']
|
@@ -658,7 +658,7 @@ class EsxiHostClient(object):
|
|
658
658
|
:rtype: :class:`~oci.response.Response`
|
659
659
|
|
660
660
|
:example:
|
661
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
661
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/list_esxi_hosts.py.html>`__ to see an example of how to use list_esxi_hosts API.
|
662
662
|
"""
|
663
663
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
664
664
|
required_arguments = []
|
@@ -815,7 +815,7 @@ class EsxiHostClient(object):
|
|
815
815
|
:rtype: :class:`~oci.response.Response`
|
816
816
|
|
817
817
|
:example:
|
818
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
818
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/replace_host.py.html>`__ to see an example of how to use replace_host API.
|
819
819
|
"""
|
820
820
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
821
821
|
required_arguments = ['esxiHostId']
|
@@ -940,7 +940,7 @@ class EsxiHostClient(object):
|
|
940
940
|
:rtype: :class:`~oci.response.Response`
|
941
941
|
|
942
942
|
:example:
|
943
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
943
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/swap_billing.py.html>`__ to see an example of how to use swap_billing API.
|
944
944
|
"""
|
945
945
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
946
946
|
required_arguments = ['esxiHostId', 'swapBillingHostId']
|
@@ -1061,7 +1061,7 @@ class EsxiHostClient(object):
|
|
1061
1061
|
:rtype: :class:`~oci.response.Response`
|
1062
1062
|
|
1063
1063
|
:example:
|
1064
|
-
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.
|
1064
|
+
Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.129.2/ocvp/update_esxi_host.py.html>`__ to see an example of how to use update_esxi_host API.
|
1065
1065
|
"""
|
1066
1066
|
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
|
1067
1067
|
required_arguments = ['esxiHostId']
|