oracle.oci.oci_database_migration_migration (5.0.0) — module

Manage a Migration resource in Oracle Cloud Infrastructure

| "added in version" 2.9.0 of oracle.oci"

Authors: Oracle (@oracle)

preview | supported by community

Install collection

Install with ansible-galaxy collection install oracle.oci:==5.0.0


Add to requirements.yml

  collections:
    - name: oracle.oci
      version: 5.0.0

Description

This module allows the user to create, update and delete a Migration resource in Oracle Cloud Infrastructure

For I(state=present), create a Migration resource that contains all the details to perform the database migration operation, such as source and destination database details, credentials, etc.

This resource has the following action operations in the M(oracle.oci.oci_database_migration_migration_actions) module: add_migration_objects, change_compartment, remove_migration_objects.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create migration
  oci_database_migration_migration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    type: ONLINE
    source_database_connection_id: "ocid1.sourcedatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    target_database_connection_id: "ocid1.targetdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    csv_text: csv_text_example
    display_name: display_name_example
    agent_id: "ocid1.agent.oc1..xxxxxxEXAMPLExxxxxx"
    source_container_database_connection_id: "ocid1.sourcecontainerdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    data_transfer_medium_details_v2:
      # required
      type: NFS
    data_transfer_medium_details:
      # optional
      database_link_details:
        # optional
        name: name_example
        wallet_bucket:
          # optional
          namespace_name: namespace_name_example
          bucket_name: bucket_name_example
      object_storage_details:
        # optional
        namespace_name: namespace_name_example
        bucket_name: bucket_name_example
      aws_s3_details:
        # optional
        name: name_example
        region: us-phoenix-1
        access_key_id: "ocid1.accesskey.oc1..xxxxxxEXAMPLExxxxxx"
        secret_access_key: secret_access_key_example
    dump_transfer_details:
      # optional
      source:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      target:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      shared_storage_mount_target_id: "ocid1.sharedstoragemounttarget.oc1..xxxxxxEXAMPLExxxxxx"
    datapump_settings:
      # optional
      job_mode: FULL
      data_pump_parameters:
        # optional
        is_cluster: true
        estimate: BLOCKS
        table_exists_action: TRUNCATE
        exclude_parameters: [ "exclude_parameters_example" ]
        import_parallelism_degree: 56
        export_parallelism_degree: 56
      metadata_remaps:
      - # required
        type: SCHEMA
        old_value: old_value_example
        new_value: new_value_example
      tablespace_details:
        # required
        target_type: NON_ADB_AUTOCREATE

        # optional
        is_auto_create: true
        is_big_file: true
        extend_size_in_mbs: 56
        block_size_in_kbs: SIZE_8K
      export_directory_object:
        # optional
        name: name_example
        path: path_example
      import_directory_object:
        # optional
        name: name_example
        path: path_example
    advisor_settings:
      # optional
      is_skip_advisor: true
      is_ignore_errors: true
    exclude_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    include_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    golden_gate_service_details:
      # optional
      source_db_credentials:
        # required
        username: username_example
        password: example-password
      source_container_db_credentials:
        # required
        username: username_example
        password: example-password
      target_db_credentials:
        # required
        username: username_example
        password: example-password
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    golden_gate_details:
      # optional
      hub:
        # optional
        rest_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_container_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        target_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        url: url_example
        source_microservices_deployment_name: source_microservices_deployment_name_example
        target_microservices_deployment_name: target_microservices_deployment_name_example
        compute_id: "ocid1.compute.oc1..xxxxxxEXAMPLExxxxxx"
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    vault_details:
      # optional
      compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
      vault_id: "ocid1.vault.oc1..xxxxxxEXAMPLExxxxxx"
      key_id: "ocid1.key.oc1..xxxxxxEXAMPLExxxxxx"
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Update migration
  oci_database_migration_migration:
    # required
    migration_id: "ocid1.migration.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    type: ONLINE
    display_name: display_name_example
    agent_id: "ocid1.agent.oc1..xxxxxxEXAMPLExxxxxx"
    source_database_connection_id: "ocid1.sourcedatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    source_container_database_connection_id: "ocid1.sourcecontainerdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    target_database_connection_id: "ocid1.targetdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    data_transfer_medium_details_v2:
      # required
      type: NFS
    data_transfer_medium_details:
      # optional
      database_link_details:
        # optional
        name: name_example
        wallet_bucket:
          # optional
          namespace_name: namespace_name_example
          bucket_name: bucket_name_example
      object_storage_details:
        # optional
        namespace_name: namespace_name_example
        bucket_name: bucket_name_example
      aws_s3_details:
        # optional
        name: name_example
        region: us-phoenix-1
        access_key_id: "ocid1.accesskey.oc1..xxxxxxEXAMPLExxxxxx"
        secret_access_key: secret_access_key_example
    dump_transfer_details:
      # optional
      source:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      target:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      shared_storage_mount_target_id: "ocid1.sharedstoragemounttarget.oc1..xxxxxxEXAMPLExxxxxx"
    datapump_settings:
      # optional
      job_mode: FULL
      data_pump_parameters:
        # optional
        is_cluster: true
        estimate: BLOCKS
        table_exists_action: TRUNCATE
        exclude_parameters: [ "exclude_parameters_example" ]
        import_parallelism_degree: 56
        export_parallelism_degree: 56
      metadata_remaps:
      - # required
        type: SCHEMA
        old_value: old_value_example
        new_value: new_value_example
      tablespace_details:
        # required
        target_type: NON_ADB_AUTOCREATE

        # optional
        is_auto_create: true
        is_big_file: true
        extend_size_in_mbs: 56
        block_size_in_kbs: SIZE_8K
      export_directory_object:
        # optional
        name: name_example
        path: path_example
      import_directory_object:
        # optional
        name: name_example
        path: path_example
    advisor_settings:
      # optional
      is_skip_advisor: true
      is_ignore_errors: true
    exclude_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    include_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    golden_gate_service_details:
      # optional
      source_db_credentials:
        # required
        username: username_example
        password: example-password
      source_container_db_credentials:
        # required
        username: username_example
        password: example-password
      target_db_credentials:
        # required
        username: username_example
        password: example-password
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    golden_gate_details:
      # optional
      hub:
        # optional
        rest_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_container_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        target_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        url: url_example
        source_microservices_deployment_name: source_microservices_deployment_name_example
        target_microservices_deployment_name: target_microservices_deployment_name_example
        compute_id: "ocid1.compute.oc1..xxxxxxEXAMPLExxxxxx"
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    vault_details:
      # optional
      compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
      vault_id: "ocid1.vault.oc1..xxxxxxEXAMPLExxxxxx"
      key_id: "ocid1.key.oc1..xxxxxxEXAMPLExxxxxx"
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Update migration using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_database_migration_migration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    display_name: display_name_example

    # optional
    type: ONLINE
    agent_id: "ocid1.agent.oc1..xxxxxxEXAMPLExxxxxx"
    source_database_connection_id: "ocid1.sourcedatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    source_container_database_connection_id: "ocid1.sourcecontainerdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    target_database_connection_id: "ocid1.targetdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx"
    data_transfer_medium_details_v2:
      # required
      type: NFS
    data_transfer_medium_details:
      # optional
      database_link_details:
        # optional
        name: name_example
        wallet_bucket:
          # optional
          namespace_name: namespace_name_example
          bucket_name: bucket_name_example
      object_storage_details:
        # optional
        namespace_name: namespace_name_example
        bucket_name: bucket_name_example
      aws_s3_details:
        # optional
        name: name_example
        region: us-phoenix-1
        access_key_id: "ocid1.accesskey.oc1..xxxxxxEXAMPLExxxxxx"
        secret_access_key: secret_access_key_example
    dump_transfer_details:
      # optional
      source:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      target:
        # required
        kind: OCI_CLI
        oci_home: oci_home_example

        # optional
        wallet_location: wallet_location_example
      shared_storage_mount_target_id: "ocid1.sharedstoragemounttarget.oc1..xxxxxxEXAMPLExxxxxx"
    datapump_settings:
      # optional
      job_mode: FULL
      data_pump_parameters:
        # optional
        is_cluster: true
        estimate: BLOCKS
        table_exists_action: TRUNCATE
        exclude_parameters: [ "exclude_parameters_example" ]
        import_parallelism_degree: 56
        export_parallelism_degree: 56
      metadata_remaps:
      - # required
        type: SCHEMA
        old_value: old_value_example
        new_value: new_value_example
      tablespace_details:
        # required
        target_type: NON_ADB_AUTOCREATE

        # optional
        is_auto_create: true
        is_big_file: true
        extend_size_in_mbs: 56
        block_size_in_kbs: SIZE_8K
      export_directory_object:
        # optional
        name: name_example
        path: path_example
      import_directory_object:
        # optional
        name: name_example
        path: path_example
    advisor_settings:
      # optional
      is_skip_advisor: true
      is_ignore_errors: true
    exclude_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    include_objects:
    - # required
      owner: owner_example
      object_name: object_name_example

      # optional
      type: type_example
      is_omit_excluded_table_from_replication: true
    golden_gate_service_details:
      # optional
      source_db_credentials:
        # required
        username: username_example
        password: example-password
      source_container_db_credentials:
        # required
        username: username_example
        password: example-password
      target_db_credentials:
        # required
        username: username_example
        password: example-password
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    golden_gate_details:
      # optional
      hub:
        # optional
        rest_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        source_container_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        target_db_admin_credentials:
          # optional
          username: username_example
          password: example-password
        url: url_example
        source_microservices_deployment_name: source_microservices_deployment_name_example
        target_microservices_deployment_name: target_microservices_deployment_name_example
        compute_id: "ocid1.compute.oc1..xxxxxxEXAMPLExxxxxx"
      settings:
        # optional
        extract:
          # optional
          performance_profile: LOW
          long_trans_duration: 56
        replicat:
          # optional
          performance_profile: LOW
          map_parallelism: 56
          min_apply_parallelism: 56
          max_apply_parallelism: 56
        acceptable_lag: 56
    vault_details:
      # optional
      compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
      vault_id: "ocid1.vault.oc1..xxxxxxEXAMPLExxxxxx"
      key_id: "ocid1.key.oc1..xxxxxxEXAMPLExxxxxx"
    freeform_tags: {'Department': 'Finance'}
    defined_tags: {'Operations': {'CostCenter': 'US'}}
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete migration
  oci_database_migration_migration:
    # required
    migration_id: "ocid1.migration.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete migration using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_database_migration_migration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    display_name: display_name_example
    state: absent

Inputs

    
type:
    choices:
    - ONLINE
    - OFFLINE
    description:
    - Migration type.
    - Required for create using I(state=present).
    - This parameter is updatable.
    type: str

wait:
    default: true
    description: Whether to wait for create or delete operation to complete.
    type: bool

state:
    choices:
    - present
    - absent
    default: present
    description:
    - The state of the Migration.
    - Use I(state=present) to create or update a Migration.
    - Use I(state=absent) to delete a Migration.
    required: false
    type: str

key_by:
    description: The list of attributes of this resource which should be used to uniquely
      identify an instance of the resource. By default, all the attributes of a resource
      are used to uniquely identify a resource.
    elements: str
    type: list

region:
    description:
    - The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set,
      then the value of the OCI_REGION variable, if any, is used. This option is required
      if the region is not specified through a configuration file (See C(config_file_location)).
      Please refer to U(https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm)
      for more information on OCI regions.
    type: str

tenancy:
    description:
    - OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if
      any, is used. This option is required if the tenancy OCID is not specified through
      a configuration file (See C(config_file_location)). To get the tenancy OCID, please
      refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm)
    type: str

agent_id:
    description:
    - The OCID of the registered ODMS Agent. Only valid for Offline Logical Migrations.
    - This parameter is updatable.
    type: str

api_user:
    description:
    - The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the
      value of the OCI_USER_ID environment variable, if any, is used. This option is required
      if the user is not specified through a configuration file (See C(config_file_location)).
      To get the user's OCID, please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

csv_text:
    description:
    - Database objects to exclude/include from migration in CSV format. The excludeObjects
      and includeObjects fields will be ignored if this field is not null.
    type: str

auth_type:
    choices:
    - api_key
    - instance_principal
    - instance_obo_user
    - resource_principal
    - security_token
    default: api_key
    description:
    - The type of authentication to use for making API requests. By default C(auth_type="api_key")
      based authentication is performed and the API key (see I(api_user_key_file)) in
      your config file will be used. If this 'auth_type' module option is not specified,
      the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use C(auth_type="instance_principal")
      to use instance principal based authentication when running ansible playbooks within
      an OCI compute instance.
    type: str

cert_bundle:
    description:
    - The full path to a CA certificate bundle to be used for SSL verification. This will
      override the default CA certificate bundle. If not set, then the value of the OCI_ANSIBLE_CERT_BUNDLE
      variable, if any, is used.
    type: str

auth_purpose:
    choices:
    - service_principal
    description:
    - The auth purpose which can be used in conjunction with 'auth_type=instance_principal'.
      The default auth_purpose for instance_principal is None.
    type: str

defined_tags:
    description:
    - 'Defined tags for this resource. Each key is predefined and scoped to a namespace.
      Example: `{"foo-namespace": {"bar-key": "value"}}`'
    - This parameter is updatable.
    type: dict

display_name:
    aliases:
    - name
    description:
    - Migration Display Name
    - Required for create, update, delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is set.
    - This parameter is updatable when C(OCI_USE_NAME_AS_IDENTIFIER) is not set.
    type: str

force_create:
    default: false
    description: Whether to attempt non-idempotent creation of a resource. By default,
      create resource is an idempotent operation, and doesn't create the resource if it
      already exists. Setting this option to true, forcefully creates a copy of the resource,
      even if it already exists.This option is mutually exclusive with I(key_by).
    type: bool

migration_id:
    aliases:
    - id
    description:
    - The OCID of the migration
    - Required for update using I(state=present) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is not set.
    - Required for delete using I(state=absent) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is not set.
    type: str

wait_timeout:
    description: Time, in seconds, to wait when I(wait=yes). Defaults to 1200 for most
      of the services but some services might have a longer wait timeout.
    type: int

freeform_tags:
    description:
    - 'Simple key-value pair that is applied without any predefined name, type or scope.
      Exists for cross-compatibility only. Example: `{"bar-key": "value"}`'
    - This parameter is updatable.
    type: dict

vault_details:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      compartment_id:
        description:
        - OCID of the compartment where the secret containing the credentials will be
          created.
        - This parameter is updatable.
        type: str
      key_id:
        description:
        - OCID of the vault encryption key
        - This parameter is updatable.
        type: str
      vault_id:
        description:
        - OCID of the vault
        - This parameter is updatable.
        type: str
    type: dict

compartment_id:
    description:
    - OCID of the compartment
    - Required for create using I(state=present).
    - Required for update when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set.
    - Required for delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set.
    type: str

exclude_objects:
    description:
    - Database objects to exclude from migration, cannot be specified alongside 'includeObjects'
    - This parameter is updatable.
    elements: dict
    suboptions:
      is_omit_excluded_table_from_replication:
        description:
        - Whether an excluded table should be omitted from replication. Only valid for
          database objects that have are of type TABLE and that are included in the exludeObjects.
        type: bool
      object_name:
        description:
        - Name of the object (regular expression is allowed)
        required: true
        type: str
      owner:
        description:
        - Owner of the object (regular expression is allowed)
        required: true
        type: str
      type:
        description:
        - Type of object to exclude. If not specified, matching owners and object names
          of type TABLE would be excluded.
        type: str
    type: list

include_objects:
    description:
    - Database objects to include from migration, cannot be specified alongside 'excludeObjects'
    - This parameter is updatable.
    elements: dict
    suboptions:
      is_omit_excluded_table_from_replication:
        description:
        - Whether an excluded table should be omitted from replication. Only valid for
          database objects that have are of type TABLE and that are included in the exludeObjects.
        type: bool
      object_name:
        description:
        - Name of the object (regular expression is allowed)
        required: true
        type: str
      owner:
        description:
        - Owner of the object (regular expression is allowed)
        required: true
        type: str
      type:
        description:
        - Type of object to exclude. If not specified, matching owners and object names
          of type TABLE would be excluded.
        type: str
    type: list

advisor_settings:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      is_ignore_errors:
        description:
        - True to not interrupt migration execution due to Pre-Migration Advisor errors.
          Default is false.
        - This parameter is updatable.
        type: bool
      is_skip_advisor:
        description:
        - True to skip the Pre-Migration Advisor execution. Default is false.
        - This parameter is updatable.
        type: bool
    type: dict

api_user_key_file:
    description:
    - Full path and filename of the private key (in PEM format). If not set, then the
      value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required
      if the private key is not specified through a configuration file (See C(config_file_location)).
      If the key is encrypted with a pass-phrase, the C(api_user_key_pass_phrase) option
      must also be provided.
    type: str

datapump_settings:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      data_pump_parameters:
        description:
        - ''
        suboptions:
          estimate:
            choices:
            - BLOCKS
            - STATISTICS
            description:
            - Estimate size of dumps that will be generated.
            - This parameter is updatable.
            type: str
          exclude_parameters:
            description:
            - Exclude paratemers for Export and Import.
            - This parameter is updatable.
            elements: str
            type: list
          export_parallelism_degree:
            description:
            - Maximum number of worker processes that can be used for a Data Pump Export
              job.
            - This parameter is updatable.
            type: int
          import_parallelism_degree:
            description:
            - Maximum number of worker processes that can be used for a Data Pump Import
              job. For an Autonomous Database, ODMS will automatically query its CPU core
              count and set this property.
            - This parameter is updatable.
            type: int
          is_cluster:
            description:
            - Set to false to force Data Pump worker process to run on one instance.
            - This parameter is updatable.
            type: bool
          table_exists_action:
            choices:
            - TRUNCATE
            - REPLACE
            - APPEND
            - SKIP
            description:
            - 'IMPORT: Specifies the action to be performed when data is loaded into a
              preexisting table.'
            - This parameter is updatable.
            type: str
        type: dict
      export_directory_object:
        description:
        - ''
        suboptions:
          name:
            description:
            - Name of directory object in database
            - This parameter is updatable.
            type: str
          path:
            description:
            - Absolute path of directory on database server
            - This parameter is updatable.
            type: str
        type: dict
      import_directory_object:
        description:
        - ''
        suboptions:
          name:
            description:
            - Name of directory object in database
            - This parameter is updatable.
            type: str
          path:
            description:
            - Absolute path of directory on database server
            - This parameter is updatable.
            type: str
        type: dict
      job_mode:
        choices:
        - FULL
        - SCHEMA
        - TABLE
        - TABLESPACE
        - TRANSPORTABLE
        description:
        - Data Pump job mode. Refer to L(link text,https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-export-
          utility.html#GUID-8E497131-6B9B-4CC8-AA50-35F480CAC2C4)
        - This parameter is updatable.
        type: str
      metadata_remaps:
        description:
        - Defines remapping to be applied to objects as they are processed. Refer to L(DATA_REMAP,https://docs.oracle.com/en/database/oracle/oracle-
          database/19/arpls/DBMS_DATAPUMP.html#GUID-E75AAE6F-4EA6-4737-A752-6B62F5E9D460)
        elements: dict
        suboptions:
          new_value:
            description:
            - Specifies the new value that oldValue should be translated into.
            required: true
            type: str
          old_value:
            description:
            - Specifies the value which needs to be reset.
            required: true
            type: str
          type:
            choices:
            - SCHEMA
            - TABLESPACE
            - DATAFILE
            - TABLE
            description:
            - Type of remap. Refer to L(METADATA_REMAP Procedure ,https://docs.oracle.com/en/database/oracle/oracle-
              database/19/arpls/DBMS_DATAPUMP.html#GUID-0FC32790-91E6-4781-87A3-229DE024CB3D)
            required: true
            type: str
        type: list
      tablespace_details:
        description:
        - ''
        suboptions:
          block_size_in_kbs:
            choices:
            - SIZE_8K
            - SIZE_16K
            description:
            - Size of Oracle database blocks in KB.
            - This parameter is updatable.
            - Applicable when target_type is one of ['ADB_D_AUTOCREATE', 'NON_ADB_AUTOCREATE']
            type: str
          extend_size_in_mbs:
            description:
            - Size of extend in MB. Can only be specified if 'isBigFile' property is set
              to true.
            - This parameter is updatable.
            - Applicable when target_type is one of ['ADB_D_AUTOCREATE', 'NON_ADB_AUTOCREATE']
            type: int
          is_auto_create:
            description:
            - True to auto-create tablespace in the target Database.
            - This parameter is updatable.
            - Applicable when target_type is one of ['ADB_D_AUTOCREATE', 'NON_ADB_AUTOCREATE']
            type: bool
          is_big_file:
            description:
            - True set tablespace to big file.
            - This parameter is updatable.
            - Applicable when target_type is one of ['ADB_D_AUTOCREATE', 'NON_ADB_AUTOCREATE']
            type: bool
          remap_target:
            description:
            - Name of tablespace at target to which the source database tablespace need
              to be remapped.
            - This parameter is updatable.
            - Applicable when target_type is one of ['ADB_D_REMAP', 'NON_ADB_REMAP']
            type: str
          target_type:
            choices:
            - NON_ADB_AUTOCREATE
            - NON_ADB_REMAP
            - ADB_D_REMAP
            - ADB_S_REMAP
            - ADB_D_AUTOCREATE
            - TARGET_DEFAULTS_REMAP
            - TARGET_DEFAULTS_AUTOCREATE
            description:
            - Type of Database Base Migration Target.
            - This parameter is updatable.
            required: true
            type: str
        type: dict
    type: dict

config_profile_name:
    description:
    - The profile to load from the config file referenced by C(config_file_location).
      If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any,
      is used. Otherwise, defaults to the "DEFAULT" profile in C(config_file_location).
    type: str

golden_gate_details:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      hub:
        description:
        - ''
        suboptions:
          compute_id:
            description:
            - OCID of GoldenGate Microservices compute instance.
            - This parameter is updatable.
            type: str
          rest_admin_credentials:
            description:
            - ''
            suboptions:
              password:
                description:
                - Administrator password
                - This parameter is updatable.
                type: str
              username:
                description:
                - Administrator username
                - This parameter is updatable.
                type: str
            type: dict
          source_container_db_admin_credentials:
            description:
            - ''
            suboptions:
              password:
                description:
                - Administrator password
                - This parameter is updatable.
                type: str
              username:
                description:
                - Administrator username
                - This parameter is updatable.
                type: str
            type: dict
          source_db_admin_credentials:
            description:
            - ''
            suboptions:
              password:
                description:
                - Administrator password
                - This parameter is updatable.
                type: str
              username:
                description:
                - Administrator username
                - This parameter is updatable.
                type: str
            type: dict
          source_microservices_deployment_name:
            description:
            - Name of GoldenGate Microservices deployment to operate on source database
            - This parameter is updatable.
            type: str
          target_db_admin_credentials:
            description:
            - ''
            suboptions:
              password:
                description:
                - Administrator password
                - This parameter is updatable.
                type: str
              username:
                description:
                - Administrator username
                - This parameter is updatable.
                type: str
            type: dict
          target_microservices_deployment_name:
            description:
            - Name of GoldenGate Microservices deployment to operate on target database
            - This parameter is updatable.
            type: str
          url:
            description:
            - Oracle GoldenGate Microservices hub's REST endpoint. Refer to https://docs.oracle.com/en/middleware/goldengate/core/19.1/securing/network.html#GUID-A709DA55-111D-455E-8942-C9BDD1E38CAA
            - This parameter is updatable.
            type: str
        type: dict
      settings:
        description:
        - ''
        suboptions:
          acceptable_lag:
            description:
            - ODMS will monitor GoldenGate end-to-end latency until the lag time is lower
              than the specified value in seconds.
            - This parameter is updatable.
            type: int
          extract:
            description:
            - ''
            suboptions:
              long_trans_duration:
                description:
                - Length of time (in seconds) that a transaction can be open before Extract
                  generates a warning message that the transaction is long-running. If
                  not specified, Extract will not generate a warning on long-running transactions.
                - This parameter is updatable.
                type: int
              performance_profile:
                choices:
                - LOW
                - MEDIUM
                - HIGH
                description:
                - Extract performance.
                - This parameter is updatable.
                type: str
            type: dict
          replicat:
            description:
            - ''
            suboptions:
              map_parallelism:
                description:
                - Number of threads used to read trail files (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              max_apply_parallelism:
                description:
                - Defines the range in which the Replicat automatically adjusts its apply
                  parallelism (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              min_apply_parallelism:
                description:
                - Defines the range in which the Replicat automatically adjusts its apply
                  parallelism (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              performance_profile:
                choices:
                - LOW
                - HIGH
                description:
                - Replicat performance.
                - This parameter is updatable.
                type: str
            type: dict
        type: dict
    type: dict

api_user_fingerprint:
    description:
    - Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT
      environment variable, if any, is used. This option is required if the key fingerprint
      is not specified through a configuration file (See C(config_file_location)). To
      get the key pair's fingerprint value please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

config_file_location:
    description:
    - Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment
      variable, if any, is used. Otherwise, defaults to ~/.oci/config.
    type: str

dump_transfer_details:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      shared_storage_mount_target_id:
        description:
        - OCID of the shared storage mount target
        - This parameter is updatable.
        type: str
      source:
        description:
        - ''
        suboptions:
          kind:
            choices:
            - OCI_CLI
            - CURL
            description:
            - Type of dump transfer to use during migration in source or target host.
              Default kind is CURL
            - This parameter is updatable.
            type: str
          oci_home:
            description:
            - Path to the OCI CLI installation in the node.
            - This parameter is updatable.
            - Required when kind is 'OCI_CLI'
            type: str
          wallet_location:
            description:
            - Directory path to OCI SSL wallet location on Db server node.
            - This parameter is updatable.
            type: str
        type: dict
      target:
        description:
        - ''
        suboptions:
          kind:
            choices:
            - OCI_CLI
            - CURL
            description:
            - Type of dump transfer to use during migration in source or target host.
              Default kind is CURL
            - This parameter is updatable.
            type: str
          oci_home:
            description:
            - Path to the OCI CLI installation in the node.
            - This parameter is updatable.
            - Required when kind is 'OCI_CLI'
            type: str
          wallet_location:
            description:
            - Directory path to OCI SSL wallet location on Db server node.
            - This parameter is updatable.
            type: str
        type: dict
    type: dict

api_user_key_pass_phrase:
    description:
    - Passphrase used by the key referenced in C(api_user_key_file), if it is encrypted.
      If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is
      used. This option is required if the key passphrase is not specified through a configuration
      file (See C(config_file_location)).
    type: str

golden_gate_service_details:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      settings:
        description:
        - ''
        suboptions:
          acceptable_lag:
            description:
            - ODMS will monitor GoldenGate end-to-end latency until the lag time is lower
              than the specified value in seconds.
            - This parameter is updatable.
            type: int
          extract:
            description:
            - ''
            suboptions:
              long_trans_duration:
                description:
                - Length of time (in seconds) that a transaction can be open before Extract
                  generates a warning message that the transaction is long-running. If
                  not specified, Extract will not generate a warning on long-running transactions.
                - This parameter is updatable.
                type: int
              performance_profile:
                choices:
                - LOW
                - MEDIUM
                - HIGH
                description:
                - Extract performance.
                - This parameter is updatable.
                type: str
            type: dict
          replicat:
            description:
            - ''
            suboptions:
              map_parallelism:
                description:
                - Number of threads used to read trail files (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              max_apply_parallelism:
                description:
                - Defines the range in which the Replicat automatically adjusts its apply
                  parallelism (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              min_apply_parallelism:
                description:
                - Defines the range in which the Replicat automatically adjusts its apply
                  parallelism (valid for Parallel Replicat)
                - This parameter is updatable.
                type: int
              performance_profile:
                choices:
                - LOW
                - HIGH
                description:
                - Replicat performance.
                - This parameter is updatable.
                type: str
            type: dict
        type: dict
      source_container_db_credentials:
        description:
        - ''
        suboptions:
          password:
            description:
            - Database  password
            required: true
            type: str
          username:
            description:
            - Database username
            required: true
            type: str
        type: dict
      source_db_credentials:
        description:
        - ''
        suboptions:
          password:
            description:
            - Database  password
            required: true
            type: str
          username:
            description:
            - Database username
            required: true
            type: str
        type: dict
      target_db_credentials:
        description:
        - ''
        suboptions:
          password:
            description:
            - Database  password
            required: true
            type: str
          username:
            description:
            - Database username
            required: true
            type: str
        type: dict
    type: dict

data_transfer_medium_details:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      aws_s3_details:
        description:
        - ''
        suboptions:
          access_key_id:
            description:
            - 'AWS access key credentials identifier Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
            - This parameter is updatable.
            type: str
          name:
            description:
            - S3 bucket name.
            - This parameter is updatable.
            type: str
          region:
            description:
            - 'AWS region code where the S3 bucket is located. Region code should match
              the documented available regions: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions'
            - This parameter is updatable.
            type: str
          secret_access_key:
            description:
            - 'AWS secret access key credentials Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
            - This parameter is updatable.
            type: str
        type: dict
      database_link_details:
        description:
        - ''
        suboptions:
          name:
            description:
            - Name of database link from OCI database to on-premise database. ODMS will
              create link, if the link does not already exist.
            - This parameter is updatable.
            type: str
          wallet_bucket:
            description:
            - ''
            suboptions:
              bucket_name:
                description:
                - Bucket name.
                - This parameter is updatable.
                type: str
              namespace_name:
                description:
                - Namespace name of the object store bucket.
                - This parameter is updatable.
                type: str
            type: dict
        type: dict
      object_storage_details:
        description:
        - ''
        suboptions:
          bucket_name:
            description:
            - Bucket name.
            - This parameter is updatable.
            type: str
          namespace_name:
            description:
            - Namespace name of the object store bucket.
            - This parameter is updatable.
            type: str
        type: dict
    type: dict

source_database_connection_id:
    description:
    - The OCID of the Source Database Connection.
    - Required for create using I(state=present).
    - This parameter is updatable.
    type: str

target_database_connection_id:
    description:
    - The OCID of the Target Database Connection.
    - Required for create using I(state=present).
    - This parameter is updatable.
    type: str

data_transfer_medium_details_v2:
    description:
    - ''
    - This parameter is updatable.
    suboptions:
      access_key_id:
        description:
        - 'AWS access key credentials identifier Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
        - Applicable when type is 'AWS_S3'
        type: str
      name:
        description:
        - Name of database link from OCI database to on-premise database. ODMS will create
          link, if the link does not already exist.
        - Applicable when type is one of ['DBLINK', 'AWS_S3']
        type: str
      object_storage_bucket:
        description:
        - ''
        - Applicable when type is one of ['OBJECT_STORAGE', 'DBLINK']
        suboptions:
          bucket_name:
            description:
            - Bucket name.
            - Required when type is 'OBJECT_STORAGE'
            required: true
            type: str
          namespace_name:
            description:
            - Namespace name of the object store bucket.
            - Required when type is 'OBJECT_STORAGE'
            required: true
            type: str
        type: dict
      region:
        description:
        - 'AWS region code where the S3 bucket is located. Region code should match the
          documented available regions: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions'
        - Applicable when type is 'AWS_S3'
        type: str
      secret_access_key:
        description:
        - 'AWS secret access key credentials Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
        - Applicable when type is 'AWS_S3'
        type: str
      type:
        choices:
        - NFS
        - OBJECT_STORAGE
        - DBLINK
        - AWS_S3
        description:
        - Type of the data transfer medium to use for the datapump
        required: true
        type: str
    type: dict

source_container_database_connection_id:
    description:
    - The OCID of the Source Container Database Connection. Only used for Online migrations.
      Only Connections of type Non-Autonomous can be used as source container databases.
    - This parameter is updatable.
    type: str

realm_specific_endpoint_template_enabled:
    description:
    - Enable/Disable realm specific endpoint template for service client. By Default,
      realm specific endpoint template is disabled. If not set, then the value of the
      OCI_REALM_SPECIFIC_SERVICE_ENDPOINT_TEMPLATE_ENABLED variable, if any, is used.
    type: bool

Outputs

migration:
  contains:
    advisor_settings:
      contains:
        is_ignore_errors:
          description:
          - True to not interrupt migration execution due to Pre-Migration Advisor
            errors. Default is false.
          returned: on success
          sample: true
          type: bool
        is_skip_advisor:
          description:
          - True to skip the Pre-Migration Advisor execution. Default is false.
          returned: on success
          sample: true
          type: bool
      description:
      - ''
      returned: on success
      type: complex
    agent_id:
      description:
      - The OCID of the registered on-premises ODMS Agent. Only valid for Offline
        Migrations.
      returned: on success
      sample: ocid1.agent.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    compartment_id:
      description:
      - OCID of the compartment
      returned: on success
      sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    credentials_secret_id:
      description:
      - OCID of the Secret in the OCI vault containing the Migration credentials.
        Used to store GoldenGate administrator user credentials.
      returned: on success
      sample: ocid1.credentialssecret.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    data_transfer_medium_details:
      contains:
        aws_s3_details:
          contains:
            name:
              description:
              - S3 bucket name.
              returned: on success
              sample: name_example
              type: str
            region:
              description:
              - 'AWS region code where the S3 bucket is located. Region code should
                match the documented available regions: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions'
              returned: on success
              sample: us-phoenix-1
              type: str
          description:
          - ''
          returned: on success
          type: complex
        database_link_details:
          contains:
            name:
              description:
              - Name of database link from OCI database to on-premise database. ODMS
                will create link, if the link does not already exist.
              returned: on success
              sample: name_example
              type: str
            wallet_bucket:
              contains:
                bucket_name:
                  description:
                  - Bucket name.
                  returned: on success
                  sample: bucket_name_example
                  type: str
                namespace_name:
                  description:
                  - Namespace name of the object store bucket.
                  returned: on success
                  sample: namespace_name_example
                  type: str
              description:
              - ''
              returned: on success
              type: complex
          description:
          - ''
          returned: on success
          type: complex
        object_storage_details:
          contains:
            bucket_name:
              description:
              - Bucket name.
              returned: on success
              sample: bucket_name_example
              type: str
            namespace_name:
              description:
              - Namespace name of the object store bucket.
              returned: on success
              sample: namespace_name_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
      description:
      - ''
      returned: on success
      type: complex
    data_transfer_medium_details_v2:
      contains:
        access_key_id:
          description:
          - 'AWS access key credentials identifier Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
          returned: on success
          sample: ocid1.accesskey.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        name:
          description:
          - S3 bucket name.
          returned: on success
          sample: name_example
          type: str
        object_storage_bucket:
          contains:
            bucket_name:
              description:
              - Bucket name.
              returned: on success
              sample: bucket_name_example
              type: str
            namespace_name:
              description:
              - Namespace name of the object store bucket.
              returned: on success
              sample: namespace_name_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
        region:
          description:
          - 'AWS region code where the S3 bucket is located. Region code should match
            the documented available regions: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions'
          returned: on success
          sample: us-phoenix-1
          type: str
        secret_access_key:
          description:
          - 'AWS secret access key credentials Details: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys'
          returned: on success
          sample: secret_access_key_example
          type: str
        type:
          description:
          - Type of the data transfer medium to use for the datapump
          returned: on success
          sample: DBLINK
          type: str
      description:
      - ''
      returned: on success
      type: complex
    datapump_settings:
      contains:
        data_pump_parameters:
          contains:
            estimate:
              description:
              - Estimate size of dumps that will be generated.
              returned: on success
              sample: BLOCKS
              type: str
            exclude_parameters:
              description:
              - Exclude paratemers for Export and Import.
              returned: on success
              sample: []
              type: list
            export_parallelism_degree:
              description:
              - Maximum number of worker processes that can be used for a Data Pump
                Export job.
              returned: on success
              sample: 56
              type: int
            import_parallelism_degree:
              description:
              - Maximum number of worker processes that can be used for a Data Pump
                Import job. For an Autonomous Database, ODMS will automatically query
                its CPU core count and set this property.
              returned: on success
              sample: 56
              type: int
            is_cluster:
              description:
              - Set to false to force Data Pump worker processes to run on one instance.
              returned: on success
              sample: true
              type: bool
            table_exists_action:
              description:
              - 'IMPORT: Specifies the action to be performed when data is loaded
                into a preexisting table.'
              returned: on success
              sample: TRUNCATE
              type: str
          description:
          - ''
          returned: on success
          type: complex
        export_directory_object:
          contains:
            name:
              description:
              - Name of directory object in database
              returned: on success
              sample: name_example
              type: str
            path:
              description:
              - Absolute path of directory on database server
              returned: on success
              sample: path_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
        import_directory_object:
          contains:
            name:
              description:
              - Name of directory object in database
              returned: on success
              sample: name_example
              type: str
            path:
              description:
              - Absolute path of directory on database server
              returned: on success
              sample: path_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
        job_mode:
          description:
          - Data Pump job mode. Refer to L(Data Pump Export Modes ,https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-export-
            utility.html#GUID-8E497131-6B9B-4CC8-AA50-35F480CAC2C4)
          returned: on success
          sample: FULL
          type: str
        metadata_remaps:
          contains:
            new_value:
              description:
              - Specifies the new value that oldValue should be translated into.
              returned: on success
              sample: new_value_example
              type: str
            old_value:
              description:
              - Specifies the value which needs to be reset.
              returned: on success
              sample: old_value_example
              type: str
            type:
              description:
              - Type of remap. Refer to L(METADATA_REMAP Procedure ,https://docs.oracle.com/en/database/oracle/oracle-
                database/19/arpls/DBMS_DATAPUMP.html#GUID-0FC32790-91E6-4781-87A3-229DE024CB3D)
              returned: on success
              sample: SCHEMA
              type: str
          description:
          - Defines remapping to be applied to objects as they are processed. Refer
            to L(METADATA_REMAP Procedure ,https://docs.oracle.com/en/database/oracle/oracle-
            database/19/arpls/DBMS_DATAPUMP.html#GUID-0FC32790-91E6-4781-87A3-229DE024CB3D)
          returned: on success
          type: complex
        tablespace_details:
          contains:
            block_size_in_kbs:
              description:
              - Size of Oracle database blocks in KB.
              returned: on success
              sample: SIZE_8K
              type: str
            extend_size_in_mbs:
              description:
              - Size of extend in MB. Can only be specified if 'isBigFile' property
                is set to true.
              returned: on success
              sample: 56
              type: int
            is_auto_create:
              description:
              - True to auto-create tablespace in the target Database.
              returned: on success
              sample: true
              type: bool
            is_big_file:
              description:
              - True set tablespace to big file.
              returned: on success
              sample: true
              type: bool
            remap_target:
              description:
              - Name of tablespace at target to which the source database tablespace
                need to be remapped.
              returned: on success
              sample: remap_target_example
              type: str
            target_type:
              description:
              - Type of Database Base Migration Target.
              returned: on success
              sample: ADB_S_REMAP
              type: str
          description:
          - ''
          returned: on success
          type: complex
      description:
      - ''
      returned: on success
      type: complex
    defined_tags:
      description:
      - 'Defined tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`'
      returned: on success
      sample:
        Operations:
          CostCenter: US
      type: dict
    display_name:
      description:
      - Migration Display Name
      returned: on success
      sample: display_name_example
      type: str
    dump_transfer_details:
      contains:
        shared_storage_mount_target_id:
          description:
          - OCID of the shared storage mount target
          returned: on success
          sample: ocid1.sharedstoragemounttarget.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        source:
          contains:
            kind:
              description:
              - Type of dump transfer to use during migration in source or target
                host. Default kind is CURL
              returned: on success
              sample: CURL
              type: str
            oci_home:
              description:
              - Path to the OCI CLI installation in the node.
              returned: on success
              sample: oci_home_example
              type: str
            wallet_location:
              description:
              - Directory path to OCI SSL wallet location on Db server node.
              returned: on success
              sample: wallet_location_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
        target:
          contains:
            kind:
              description:
              - Type of dump transfer to use during migration in source or target
                host. Default kind is CURL
              returned: on success
              sample: CURL
              type: str
            oci_home:
              description:
              - Path to the OCI CLI installation in the node.
              returned: on success
              sample: oci_home_example
              type: str
            wallet_location:
              description:
              - Directory path to OCI SSL wallet location on Db server node.
              returned: on success
              sample: wallet_location_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
      description:
      - ''
      returned: on success
      type: complex
    exclude_objects:
      contains:
        is_omit_excluded_table_from_replication:
          description:
          - Whether an excluded table should be omitted from replication. Only valid
            for database objects that have are of type TABLE and that are included
            in the exludeObjects.
          returned: on success
          sample: true
          type: bool
        object_name:
          description:
          - Name of the object (regular expression is allowed)
          returned: on success
          sample: object_name_example
          type: str
        owner:
          description:
          - Owner of the object (regular expression is allowed)
          returned: on success
          sample: owner_example
          type: str
        type:
          description:
          - Type of object to exclude. If not specified, matching owners and object
            names of type TABLE would be excluded.
          returned: on success
          sample: type_example
          type: str
      description:
      - Database objects to exclude from migration. If 'includeObjects' are specified,
        only exclude object types can be specified with general wildcards (.*) for
        owner and objectName.
      returned: on success
      type: complex
    executing_job_id:
      description:
      - OCID of the current ODMS Job in execution for the Migration, if any.
      returned: on success
      sample: ocid1.executingjob.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    freeform_tags:
      description:
      - 'Simple key-value pair that is applied without any predefined name, type or
        scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`'
      returned: on success
      sample:
        Department: Finance
      type: dict
    golden_gate_details:
      contains:
        hub:
          contains:
            compute_id:
              description:
              - OCID of GoldenGate compute instance.
              returned: on success
              sample: ocid1.compute.oc1..xxxxxxEXAMPLExxxxxx
              type: str
            rest_admin_credentials:
              contains:
                username:
                  description:
                  - Administrator username
                  returned: on success
                  sample: username_example
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            source_container_db_admin_credentials:
              contains:
                username:
                  description:
                  - Administrator username
                  returned: on success
                  sample: username_example
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            source_db_admin_credentials:
              contains:
                username:
                  description:
                  - Administrator username
                  returned: on success
                  sample: username_example
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            source_microservices_deployment_name:
              description:
              - Name of GoldenGate deployment to operate on source database
              returned: on success
              sample: source_microservices_deployment_name_example
              type: str
            target_db_admin_credentials:
              contains:
                username:
                  description:
                  - Administrator username
                  returned: on success
                  sample: username_example
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            target_microservices_deployment_name:
              description:
              - Name of GoldenGate deployment to operate on target database
              returned: on success
              sample: target_microservices_deployment_name_example
              type: str
            url:
              description:
              - Oracle GoldenGate hub's REST endpoint. Refer to https://docs.oracle.com/en/middleware/goldengate/core/19.1/securing/network.html#GUID-A709DA55-111D-455E-8942-C9BDD1E38CAA
              returned: on success
              sample: url_example
              type: str
          description:
          - ''
          returned: on success
          type: complex
        settings:
          contains:
            acceptable_lag:
              description:
              - ODMS will monitor GoldenGate end-to-end latency until the lag time
                is lower than the specified value in seconds.
              returned: on success
              sample: 56
              type: int
            extract:
              contains:
                long_trans_duration:
                  description:
                  - Length of time (in seconds) that a transaction can be open before
                    Extract generates a warning message that the transaction is long-running.
                    If not specified, Extract will not generate a warning on long-running
                    transactions.
                  returned: on success
                  sample: 56
                  type: int
                performance_profile:
                  description:
                  - Extract performance.
                  returned: on success
                  sample: LOW
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            replicat:
              contains:
                map_parallelism:
                  description:
                  - Number of threads used to read trail files (valid for Parallel
                    Replicat)
                  returned: on success
                  sample: 56
                  type: int
                max_apply_parallelism:
                  description:
                  - Defines the range in which Replicat automatically adjusts its
                    apply parallelism (valid for Parallel Replicat)
                  returned: on success
                  sample: 56
                  type: int
                min_apply_parallelism:
                  description:
                  - Defines the range in which Replicat automatically adjusts its
                    apply parallelism (valid for Parallel Replicat)
                  returned: on success
                  sample: 56
                  type: int
                performance_profile:
                  description:
                  - Replicat performance.
                  returned: on success
                  sample: LOW
                  type: str
              description:
              - ''
              returned: on success
              type: complex
          description:
          - ''
          returned: on success
          type: complex
      description:
      - ''
      returned: on success
      type: complex
    golden_gate_service_details:
      contains:
        ggs_deployment:
          contains:
            deployment_id:
              description:
              - OCID of a GoldenGate Deployment
              returned: on success
              sample: ocid1.deployment.oc1..xxxxxxEXAMPLExxxxxx
              type: str
            ggs_admin_credentials_secret_id:
              description:
              - OCID of a VaultSecret containing the Admin Credentials for the GGS
                Deployment
              returned: on success
              sample: ocid1.ggsadmincredentialssecret.oc1..xxxxxxEXAMPLExxxxxx
              type: str
          description:
          - ''
          returned: on success
          type: complex
        settings:
          contains:
            acceptable_lag:
              description:
              - ODMS will monitor GoldenGate end-to-end latency until the lag time
                is lower than the specified value in seconds.
              returned: on success
              sample: 56
              type: int
            extract:
              contains:
                long_trans_duration:
                  description:
                  - Length of time (in seconds) that a transaction can be open before
                    Extract generates a warning message that the transaction is long-running.
                    If not specified, Extract will not generate a warning on long-running
                    transactions.
                  returned: on success
                  sample: 56
                  type: int
                performance_profile:
                  description:
                  - Extract performance.
                  returned: on success
                  sample: LOW
                  type: str
              description:
              - ''
              returned: on success
              type: complex
            replicat:
              contains:
                map_parallelism:
                  description:
                  - Number of threads used to read trail files (valid for Parallel
                    Replicat)
                  returned: on success
                  sample: 56
                  type: int
                max_apply_parallelism:
                  description:
                  - Defines the range in which Replicat automatically adjusts its
                    apply parallelism (valid for Parallel Replicat)
                  returned: on success
                  sample: 56
                  type: int
                min_apply_parallelism:
                  description:
                  - Defines the range in which Replicat automatically adjusts its
                    apply parallelism (valid for Parallel Replicat)
                  returned: on success
                  sample: 56
                  type: int
                performance_profile:
                  description:
                  - Replicat performance.
                  returned: on success
                  sample: LOW
                  type: str
              description:
              - ''
              returned: on success
              type: complex
          description:
          - ''
          returned: on success
          type: complex
      description:
      - ''
      returned: on success
      type: complex
    id:
      description:
      - The OCID of the resource
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    include_objects:
      contains:
        is_omit_excluded_table_from_replication:
          description:
          - Whether an excluded table should be omitted from replication. Only valid
            for database objects that have are of type TABLE and that are included
            in the exludeObjects.
          returned: on success
          sample: true
          type: bool
        object_name:
          description:
          - Name of the object (regular expression is allowed)
          returned: on success
          sample: object_name_example
          type: str
        owner:
          description:
          - Owner of the object (regular expression is allowed)
          returned: on success
          sample: owner_example
          type: str
        type:
          description:
          - Type of object to exclude. If not specified, matching owners and object
            names of type TABLE would be excluded.
          returned: on success
          sample: type_example
          type: str
      description:
      - Database objects to include from migration.
      returned: on success
      type: complex
    lifecycle_details:
      description:
      - Additional status related to the execution and current state of the Migration.
      returned: on success
      sample: READY
      type: str
    lifecycle_state:
      description:
      - The current state of the Migration resource.
      returned: on success
      sample: CREATING
      type: str
    source_container_database_connection_id:
      description:
      - The OCID of the Source Container Database Connection.
      returned: on success
      sample: ocid1.sourcecontainerdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    source_database_connection_id:
      description:
      - The OCID of the Source Database Connection.
      returned: on success
      sample: ocid1.sourcedatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    system_tags:
      description:
      - 'Usage of system tag keys. These predefined keys are scoped to namespaces.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`'
      returned: on success
      sample: {}
      type: dict
    target_database_connection_id:
      description:
      - The OCID of the Target Database Connection.
      returned: on success
      sample: ocid1.targetdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    time_created:
      description:
      - The time the Migration was created. An RFC3339 formatted datetime string.
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    time_last_migration:
      description:
      - The time of last Migration. An RFC3339 formatted datetime string.
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    time_updated:
      description:
      - The time of the last Migration details update. An RFC3339 formatted datetime
        string.
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    type:
      description:
      - Migration type.
      returned: on success
      sample: ONLINE
      type: str
    vault_details:
      contains:
        compartment_id:
          description:
          - OCID of the compartment where the secret containing the credentials will
            be created.
          returned: on success
          sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        key_id:
          description:
          - OCID of the vault encryption key
          returned: on success
          sample: ocid1.key.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        vault_id:
          description:
          - OCID of the vault
          returned: on success
          sample: ocid1.vault.oc1..xxxxxxEXAMPLExxxxxx
          type: str
      description:
      - ''
      returned: on success
      type: complex
    wait_after:
      description:
      - Name of a migration phase. The Job will wait after executing this phase until
        the Resume Job endpoint is called.
      returned: on success
      sample: ODMS_VALIDATE_TGT
      type: str
  description:
  - Details of the Migration resource acted upon by the current operation
  returned: on success
  sample:
    advisor_settings:
      is_ignore_errors: true
      is_skip_advisor: true
    agent_id: ocid1.agent.oc1..xxxxxxEXAMPLExxxxxx
    compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
    credentials_secret_id: ocid1.credentialssecret.oc1..xxxxxxEXAMPLExxxxxx
    data_transfer_medium_details:
      aws_s3_details:
        name: name_example
        region: us-phoenix-1
      database_link_details:
        name: name_example
        wallet_bucket:
          bucket_name: bucket_name_example
          namespace_name: namespace_name_example
      object_storage_details:
        bucket_name: bucket_name_example
        namespace_name: namespace_name_example
    data_transfer_medium_details_v2:
      access_key_id: ocid1.accesskey.oc1..xxxxxxEXAMPLExxxxxx
      name: name_example
      object_storage_bucket:
        bucket_name: bucket_name_example
        namespace_name: namespace_name_example
      region: us-phoenix-1
      secret_access_key: secret_access_key_example
      type: DBLINK
    datapump_settings:
      data_pump_parameters:
        estimate: BLOCKS
        exclude_parameters: []
        export_parallelism_degree: 56
        import_parallelism_degree: 56
        is_cluster: true
        table_exists_action: TRUNCATE
      export_directory_object:
        name: name_example
        path: path_example
      import_directory_object:
        name: name_example
        path: path_example
      job_mode: FULL
      metadata_remaps:
      - new_value: new_value_example
        old_value: old_value_example
        type: SCHEMA
      tablespace_details:
        block_size_in_kbs: SIZE_8K
        extend_size_in_mbs: 56
        is_auto_create: true
        is_big_file: true
        remap_target: remap_target_example
        target_type: ADB_S_REMAP
    defined_tags:
      Operations:
        CostCenter: US
    display_name: display_name_example
    dump_transfer_details:
      shared_storage_mount_target_id: ocid1.sharedstoragemounttarget.oc1..xxxxxxEXAMPLExxxxxx
      source:
        kind: CURL
        oci_home: oci_home_example
        wallet_location: wallet_location_example
      target:
        kind: CURL
        oci_home: oci_home_example
        wallet_location: wallet_location_example
    exclude_objects:
    - is_omit_excluded_table_from_replication: true
      object_name: object_name_example
      owner: owner_example
      type: type_example
    executing_job_id: ocid1.executingjob.oc1..xxxxxxEXAMPLExxxxxx
    freeform_tags:
      Department: Finance
    golden_gate_details:
      hub:
        compute_id: ocid1.compute.oc1..xxxxxxEXAMPLExxxxxx
        rest_admin_credentials:
          username: username_example
        source_container_db_admin_credentials:
          username: username_example
        source_db_admin_credentials:
          username: username_example
        source_microservices_deployment_name: source_microservices_deployment_name_example
        target_db_admin_credentials:
          username: username_example
        target_microservices_deployment_name: target_microservices_deployment_name_example
        url: url_example
      settings:
        acceptable_lag: 56
        extract:
          long_trans_duration: 56
          performance_profile: LOW
        replicat:
          map_parallelism: 56
          max_apply_parallelism: 56
          min_apply_parallelism: 56
          performance_profile: LOW
    golden_gate_service_details:
      ggs_deployment:
        deployment_id: ocid1.deployment.oc1..xxxxxxEXAMPLExxxxxx
        ggs_admin_credentials_secret_id: ocid1.ggsadmincredentialssecret.oc1..xxxxxxEXAMPLExxxxxx
      settings:
        acceptable_lag: 56
        extract:
          long_trans_duration: 56
          performance_profile: LOW
        replicat:
          map_parallelism: 56
          max_apply_parallelism: 56
          min_apply_parallelism: 56
          performance_profile: LOW
    id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
    include_objects:
    - is_omit_excluded_table_from_replication: true
      object_name: object_name_example
      owner: owner_example
      type: type_example
    lifecycle_details: READY
    lifecycle_state: CREATING
    source_container_database_connection_id: ocid1.sourcecontainerdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
    source_database_connection_id: ocid1.sourcedatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
    system_tags: {}
    target_database_connection_id: ocid1.targetdatabaseconnection.oc1..xxxxxxEXAMPLExxxxxx
    time_created: '2013-10-20T19:20:30+01:00'
    time_last_migration: '2013-10-20T19:20:30+01:00'
    time_updated: '2013-10-20T19:20:30+01:00'
    type: ONLINE
    vault_details:
      compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      key_id: ocid1.key.oc1..xxxxxxEXAMPLExxxxxx
      vault_id: ocid1.vault.oc1..xxxxxxEXAMPLExxxxxx
    wait_after: ODMS_VALIDATE_TGT
  type: complex