Migrate Oracle Integration Cloud Service Design-Time Metadata into Oracle Integration

You can export your Oracle Integration Cloud Service design-time metadata as an archive and import that archive into Oracle Integration. For activated integrations in Oracle Integration Cloud Service, you do not need to manually configure connection endpoints and passwords and then activate the exported integrations in Oracle Integration. Integration activations can occur automatically.

Export the Oracle Integration Cloud Service Design-Time Metadata

You must export the Oracle Integration Cloud Service design-time metadata.

  1. For the Oracle Integration Cloud Service instance to export to Oracle Integration, invoke the REST API. This action asynchronously creates an archive that includes the design-time metadata.
    Headers
    Authorization : Basic
    Content-Type : application/json
    payload
    {
     "storageInfo": {
           "storageUrl": "https://swiftobjectstorage.us-region-1.oraclecloud.com/v1/
    paasdevoic/cloneRepo",
           "storageUser":"myemail@company.com",                
           "storagePassword":"generated_token"
                    }
    } 
    
    For example, use a postman or curl (as shown below) command to export all Oracle Integration Cloud Service design-time metadata to an Oracle Storage Cloud Service instance that you specify:
    curl -k -v -H "Content-Type: application/json" -X POST -d '
    {"storageInfo":{"storageUrl":" https://swiftobjectstorage.us-region-1.oraclecloud.com/v1/
    paasdevoic/cloneRepo","storageUser":"myemail@company.com",
    "storagePassword":"generated_token"}}' -u admin:password
    https://host/icsapis/v2/clonepod/exportArtifacts
    where:
    • storageInfo: Is the URL of the storage container.
    • storageUser: Is the storage user name.
    • storagePassword: Is the storage password.
    Possible sample output from this command is as follows:
    {
     "archiveFilename": "archive_Local_Suite_Instance-d1e4295f-e17a-498a-a96e-44dcb417dfb4.zip",
     "jobID": "d1e4295f-e17a-498a-a96e-44dcb417dfb4",
     "location": "https://swiftobjectstorage.us-region-1.oraclecloud.com/v1/paasdevoic/cloneRepo",
     "status": "Starting"
    
    
  2. Check the status of the export operation using a postman or curl (as shown below) command:
    curl -k -v  -X GET -u admin:password https://host/icsapis/v2/clonepod/exportStatus
    Possible sample output from this command is as follows:
    {
     "status": "COMPLETED"
    }
    

    The archive is created in the Oracle Storage Cloud Service instance of Oracle Integration.

  3. If the status is completed, you are now ready to import the archive.

Import Design-Time Metadata into Oracle Integration

When imported into Oracle Integration, the archive is referenced in the payload.

{
  "archiveFile": "archive_file_name",
  "importActivateMode": "ImportActivate", 
    // options are "ImportOnly" || "ActivateOnly" || "ImportActivate"  
  "storageInfo": {    // storageUrl points to the storage container
  "storageUrl":"https://swiftobjectstorage.us-region-1.oraclecloud.com/v1/paasdevoic/
cloneRepo", 
                   "storageUser":"myemail@company.com",
                   "storagePassword":"generated_token"
                 }
}
  1. To import the archive, go to the Oracle Integration instance and invoke the REST API. This action retrieves the archive from the Oracle Storage Cloud Service instance where the archive was created.

    Headers
    Authorization : Basic
    Content-Type : application/json
    payload
    {
      "archiveFile": "archive_Local_Suite_Instance-67e7358b-077b-420f-9e04-e9b9e8374b68.zip
    ",
      "importActivateMode": "ImportActivate", 
        // options are "ImportOnly" || "ActivateOnly" || "ImportActivate" 
      "storageInfo": {
                     "storageUrl":"https://swiftobjectstorage.us-region-1.oraclecloud.com/
    v1/paasdevoic/cloneRepo",
          "storageUser":"myemail@company.com",
          "storagePassword":"generated_token"
      }
    }
    For example, use a postman or curl (as shown below) command to import the archive of design time objects into Oracle Integration. You can set importActivateMode to the following values:
    • ImportOnly: Imports, but does not activate, integrations.

    • ActivateOnly: Activates previously imported integrations. This enables you to update connection parameters before activating integrations.

    • ImportActivate: Imports and activates integrations.

    curl -k -v -H "Content-Type: application/json" -X POST -d '{"archiveFile": 
    "archive_Local_Suite_Instance-67e7358b-077b-420f-9e04-e9b9e8374b68.zip", 
    "importActivateMode": "ImportOnly", "storageInfo": { "storageUrl":"https://
    swiftobjectstorage.us-region-1.oraclecloud.com/v1/paasdevoic/cloneRepo","storageUser"
    :"myemail@company.com", "storagePassword":"generated_token"}}' -u admin:password
    https://host/ic/api/common/v1/importServiceInstanceArchive
    Possible sample output from this command is as follows:
    {
    "jobId":"554",
    "status":"NOT_STARTED"
    }

Check the Design-Time Metadata Import Status

Verify the design-time metadata import status after completing the import task.

  1. Check the status of the import operation using a postman or curl (as shown below) command:

    curl -k -v  -X GET -u admin:password https://host/ic/api/common/v1/
    importServiceInstanceArchive/554
    Possible sample output from this command is as follows. Other potential output includes RUNNING , COMPLETED, and FAILED.
    {
       "jobId":"5108",
       "overallStatus":"RUNNING",
       "componentStatus":[
        {
          "component":"Integration",
          "status":"RUNNING"
        }
      ]
    }
    {
       "jobId":"5108",
       "overall Status":"COMPLETED",
       "componentStatus":[
        {
          "component":"Integration",
          "status":"COMPLETED",
          "percentage":100
        }
      ]
    } 
  2. Log in to your Oracle Integration instance.

  3. Browse the pages and note that the design-time metadata you exported from Oracle Integration Cloud Service (for example, integrations, connections, lookups, and more) is now visible.