def __init__(self, *args, **kwargs):
     super(InstanceConfigurationHelperCustom,
           self).__init__(*args, **kwargs)
     self.compute_client = oci_config_utils.create_service_client(
         self.module, ComputeClient)
     self.virtual_network_client = oci_config_utils.create_service_client(
         self.module, VirtualNetworkClient)
     self.blockstorage_client = oci_config_utils.create_service_client(
         self.module, BlockstorageClient)
    def __init__(self, module, resource_type, service_client_class, namespace):
        self.work_request_client = oci_config_utils.create_service_client(
            module, WorkRequestsClient)

        super(MysqlDbSystemHelperCustom,
              self).__init__(module, resource_type, service_client_class,
                             namespace)
    def __init__(self, module, resource_type, service_client_class, namespace):
        self.work_request_client = oci_config_utils.create_service_client(
            module, WorkRequestsClient)

        super(ApigatewayCertificateActionsHelperCustom,
              self).__init__(module, resource_type, service_client_class,
                             namespace)
 def invoke(self):
     if not self.module.params.get("dest"):
         self.module.fail_json(
             msg="dest parameter required for invoke action")
     dest = self.module.params["dest"]
     function = self.get_resource().data
     self.module.params["service_endpoint"] = function.invoke_endpoint
     functions_invoke_client = oci_config_utils.create_service_client(
         self.module, FunctionsInvokeClient)
     try:
         # Temporarily change self.client in the context of this method. Preferring this over overriding the
         # self.client to use FunctionsInvokeClient since there might be other actions (for ex: change_compartment)
         # in the future which need the client generated by the generated module.
         functions_management_client = self.client
         self.client = functions_invoke_client
         invoke_function_response = super(FunctionActionsHelperCustom,
                                          self).invoke()
         # Read 1MB at a time
         chunk_size = 1024 * 1024
         with open(to_bytes(dest), "wb") as dest_file:
             for chunk in invoke_function_response.raw.stream(
                     chunk_size, decode_content=True):
                 dest_file.write(chunk)
         return function
     finally:
         self.client = functions_management_client
 def __init__(self, module, resource_type, service_client_class, namespace):
     self.module = module
     self.resource_type = resource_type
     self.service_client_class = service_client_class
     self.client = oci_config_utils.create_service_client(
         self.module, self.service_client_class)
     self.namespace = namespace
예제 #6
0
 def perform_copy(self):
     obj = get_object(
         self.client,
         self.module.params.get("namespace_name"),
         self.module.params.get("bucket_name"),
         self.module.params.get("source_object_name"),
     )
     if not obj:
         self.module.fail_json(
             msg="Could not find the object {0} in bucket {1}".format(
                 self.module.params.get("source_object_name"),
                 self.module.params.get("bucket_name"),
             )
         )
     is_action_necessary = self.is_action_necessary(self.COPY_ACTION, obj)
     if not is_action_necessary:
         return self.prepare_result(
             changed=False, resource_type=self.resource_type, resource=to_dict(obj)
         )
     if self.check_mode:
         return self.prepare_result(
             changed=True, resource_type=self.resource_type, resource=to_dict(obj)
         )
     try:
         self.copy()
     except MaximumWaitTimeExceeded as mwtex:
         self.module.fail_json(msg=str(mwtex))
     except ServiceError as se:
         self.module.fail_json(
             msg="Performing action failed with exception: {0}".format(se.message)
         )
     else:
         destination_region_client = oci_config_utils.create_service_client(
             self.module,
             ObjectStorageClient,
             dict(
                 oci_config_utils.get_oci_config(self.module),
                 region=self.module.params.get("destination_region"),
             ),
         )
         copied_obj = get_object(
             destination_region_client,
             self.module.params.get("destination_namespace"),
             self.module.params.get("destination_bucket"),
             self.module.params.get("destination_object_name"),
         )
         if not copied_obj:
             self.module.fail_json(
                 msg="Could not find the copied object {0} in bucket {1} and namespace {2}".format(
                     self.module.params.get("destination_object_name"),
                     self.module.params.get("destination_bucket"),
                     self.module.params.get("destination_namespace"),
                 )
             )
         return self.prepare_result(
             changed=True,
             resource_type=self.resource_type,
             resource=to_dict(copied_obj),
         )
    def __init__(self, *args, **kwargs):
        super(MetricDataHelperCustom, self).__init__(*args, **kwargs)
        service_endpoint = str(self.client.base_client.endpoint)
        self.module.params["service_endpoint"] = service_endpoint.replace(
            "telemetry", "telemetry-ingestion")

        self.client = oci_config_utils.create_service_client(
            self.module, MonitoringClient)
예제 #8
0
 def __init__(self, module, resource_type, service_client_class, namespace):
     super(AnnouncementsPreferencesHelperCustom, self).__init__(
         module, resource_type, service_client_class, namespace
     )
     self.client = oci_config_utils.create_service_client(
         module,
         AnnouncementsPreferencesClient,
         client_kwargs={"skip_deserialization": True},
     )
 def launch(self):
     instance = super(InstanceConfigurationActionsHelperCustom,
                      self).launch()
     compute_client = oci_config_utils.create_service_client(
         self.module, ComputeClient)
     wait_response = oci.wait_until(
         self.client,
         compute_client.get_instance(instance_id=instance.id),
         evaluate_response=lambda response: response.data.lifecycle_state in
         oci_common_utils.DEFAULT_READY_STATES,
         max_wait_seconds=self.module.params.get(
             "wait_timeout", oci_common_utils.MAX_WAIT_TIMEOUT_IN_SECONDS),
     )
     return wait_response.data
예제 #10
0
 def get_resource_from_wait_response(self, wait_response):
     if not (hasattr(wait_response.data, "resources")
             and wait_response.data.resources):
         self.resource_helper.module.fail_json(
             msg="Could not get instance id from work request response {data}"
             .format(data=wait_response.data))
     instance_id = None
     for resource in wait_response.data.resources:
         if resource.entity_type.lower() == "instance":
             instance_id = resource.identifier
     if not instance_id:
         self.resource_helper.module.fail_json(
             msg="Could not get instance id from work request response {data}"
             .format(data=wait_response.data))
     compute_client = oci_config_utils.create_service_client(
         self.resource_helper.module, ComputeClient)
     return compute_client.get_instance(instance_id=instance_id).data
 def get_existing_resource_dict_for_idempotence_check(
         self, existing_resource):
     existing_resource_dict = super(
         VnicAttachmentHelperCustom,
         self).get_existing_resource_dict_for_idempotence_check(
             existing_resource)
     if existing_resource_dict.get("vnic_id"):
         # The information provided in create_vnic_details attr of create model does not exist directly in the
         # get model but have to be fetched from the vnic details. Fetch and add the information to the existing
         # resource so that the idempotence logic can compare the vnic details.
         virtual_network_client = oci_config_utils.create_service_client(
             self.module, VirtualNetworkClient)
         existing_vnic = to_dict(
             virtual_network_client.get_vnic(
                 vnic_id=existing_resource_dict.get("vnic_id")).data)
         existing_resource_dict["vnic"] = existing_vnic
     return existing_resource_dict
예제 #12
0
 def get_waiter_client(self):
     # http_redirect resource has a separate client class but still uses WaasClient for work requests. Override
     # waiter client to use WaasClient.
     return oci_config_utils.create_service_client(self.module,
                                                   oci.waas.WaasClient)
예제 #13
0
 def get_waiter_client(self):
     return oci_config_utils.create_service_client(self.module,
                                                   WorkRequestClient)
예제 #14
0
 def __init__(self, *args, **kwargs):
     super(DbNodeFactsHelperCustom, self).__init__(*args, **kwargs)
     self.network_client = oci_config_utils.create_service_client(
         self.module, VirtualNetworkClient)
 def __init__(self, *args, **kwargs):
     super(GenericArtifactContentHelperCustom, self).__init__(*args, **kwargs)
     self.artifacts_client = oci_config_utils.create_service_client(
         self.module, ArtifactsClient
     )