This blog is the sixth, and last, in the FlexDeploy Loves OIC blog series

Oracle Integration Cloud (OIC) provides the ability to develop an integration in the cloud.  The integration can connect cloud and/or on-premise applications; now that we have worked through Continuous Integration and Continuous Delivery with OIC integrations, we need to cover the management of shared resources.  Shared resources include lookups, libraries and connections.

I will walk you through setting up a workflow and project for each of the shared resources that will provide lifecycle management over these resources.  We will also adjust the release/pipeline to accommodate the deployment of these shared resources.

FlexDeploy Configuration

We will start by creating a build and deploy workflow for each of the resources.  Each of the workflows will be a simple single plugin operation.  Select the Workflow page and click on the plus button to create a new workflow.  Make sure to make each of the workflows active.  Create the following workflows:

Workflow Name: exportOICConnections

  • Workflow Type: Build
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: exportConnections
  • No additional configuration required

Workflow Name: importOICConnections

  • Workflow Type: Deploy
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: updateConnections
  • OIC Connection Plan File: /home/oracle/connectionPlan.properties (this is the same configuraton from the initial integration blog)

Workflow Name: exportOICLookups

  • Workflow Type: Build
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: exportLookup
  • No additional configuration required

Workflow Name: importOICLookups

  • Workflow Type: Deploy
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: importLookup
  • No additional configuration required

Workflow Name: exportOICLibraries

  • Workflow Type: Build
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: exportLibrary
  • No additional configuration required

Workflow Name: importOICLibraries

  • Workflow Type: Deploy
  • Workflow Group: Oracle Integration Middleware
  • Workflow Subgroup: OIC
  • Plugin: Oracle Integration Cloud
  • Operation: importLibrary
  • No additional configuration required

Now we need to create a project for each of the resources.  Select the Projects page, find the HR OIC application folder and right click and create a new project name OICConnections.  Click on the configuration tab.  No other configuration needed as the only project property limits the connections that are exported, we want it to be blank for all connections.

Create another project by either right clicking on the last project and use the copy project option or create the project in the same manner as the first one.  Click on the configuration tab.  No other configuration needed as the only project property limits the lookups that are exported, we want it to be blank for all lookups.

Create one more project by either right clicking on the last project and use the copy project option or create the project in the same manner as the first one.  Library projects should be named after the library name as they are managed independently.  No other configuration needed as the only project property is defaulted to the project name.

Now that we have the projects/workflows created, we need to add the projects to the release.  Select the Release page and open up the BlogRelease release.  Search for the three newly created projects and add them to the release.  Once added, change the Project Group to Services to match the DeployAll step in the pipeline.  Make sure to save the release.

Execution

Now that we have everything configured for the shared resources, we can start the execution.  Each project build will be updated in a snapshot (project version) and only new project versions will be deployed.  There are several ways to initiate a new build, we will utilize the create snapshot option within the release.  Open up the BlogRelease release and select the Create Snapshot button.  In the Derived From Snapshot drop down, select the latest snapshot that was created.  This will populate the new snapshot with the latest project versions for already deployed projects.  Since the three new projects haven’t been built yet, they will show that a build is needed.  Once the builds are complete, then the pipeline will start.  Click on Submit Request to start the builds.

After the successful builds of the three projects, the pipeline will be executed.  The Development stage steps will execute since there are no gates.  With the successful execution of the Development stage, the pipeline will wait on the QA gates.

Clicking on the Deploy Services link in the Development stage will show that the PROCESS_HR_REQUEST was skipped since it was already deployed and the three new projects were deployed.

Clicking on the Approval gate in the QA stage, will start the step execution and then proceed onto the Production stage.  Once again, projects will only be deployed if needed.

Final deployment to Production requires an external approval through ServiceNow.  The ticket in ServiceNow needs to be entered on the release through the paperclip at the top of the stage.  Once the ticket number is entered, the gate will periodically check the status of the ticket in ServiceNow and hold the gate execution until the ticket is approved.  Once the ticket is approved, the gate will complete and the execution in the Production stage will begin.

After completion of the deployment to the Production server, the completed release will look like this.

Conclusion

This was the sixth and final blog for the FlexDeploy Loves OIC series and covered how to configure FlexDeploy for shared OIC resources and adding them to the existing release to enhance the release automation for OIC integrations. With the completion of this blog, we have shown how to:

  • Create projects and workflows that are used throughout the Release Automation capabilities of FlexDeploy
  • Utilize Continuous Integration capabilities within FlexDeploy for a non-SCM based OIC application
  • Utilize Continuous Delivery capabilities within FlexDeploy to deploy OIC integration artifacts
  • Utilize Test Automation capabilities within FlexDeploy to test deployed services
  • Manage shared resources: lookups, connections and libraries

We’re here if you have any questions!

Previous Post: FlexDeploy Loves OIC: Continuous Delivery with pipelines/releases

Dan Reynebeau

I have been working with Oracle and IBM integration technologies, along with custom development, for over 20 years providing solutions to the customer. While working with the different platforms, I have developed deployment scripts along with utilizing 3rd party deployment products to automate the deployment process. As a Principal architect at Flexagon I work with customers to enable DevOps/CI solutions using FlexDeploy, as well as primary development of FlexDeploy.

More posts by Dan Reynebeau

Leave a Reply

Your email address will not be published. Required fields are marked *