blog series on FlexDeploy and Oracle Fusion Middleware

This is the sixth article in our series on what makes FlexDeploy a seamless fit for Oracle Fusion Middleware users. In this blog article I will walk through the core components of FlexDeploy, which enable the basics of continuous integration and issue tracking. I will demonstrate how to build a SOA composite based on code commits to a SCM repository and update the status of a task within an issue tracking (Jira) system. This article will extend the setup that was completed in the previous blogs of the series to enable an effective continuous delivery solution. All of these concepts apply to any FlexDeploy project type such as the WebLogic configuration, MDS, and Service Bus projects.

In this post, I will show how continuous integration and Issue Tracking is configured in FlexDeploy.

Setup

Continuous Integration

Continuous integration provides the ability to poll a repository for changes committed to a project. When a change is detected, the configured build workflow is automatically executed.

The ValidateOrderProcess project that was used in the SOA Setup article can be configured for continuous integration as follows.

  • Poll SCM Trigger: Use this trigger type to poll a source code management system at a defined interval and build automatically if any change is found.
  • Scheduled Build: Use this trigger type to schedule builds at a certain time.
  • Scheduled Deploy: Use this trigger type to schedule deployments to an environment at a certain time(s).
  • Post Build Trigger: Use this trigger type to trigger a deployment after any successful Build of this project.

In this case, we are configuring a Poll SCM Trigger option.

  1. Environment – select the environment where the build will occur
  2. Release – select the release that will be executed on a successful build
  3. Stream Name – select the stream to use for the build
  4. Interval Minutes – select the polling interval for this project

The outcome of this trigger, is that the configured SCM will be polled every 5 minutes and the project will be built automatically if changes are found.

Issue Tracking

Configuration of issue tracking allows automatic status updates for a Jira ticket when a successful build or deploy happens. If the developer adds the Jira ticket to the commit message, the ticket will be updated on a successful build and/or deploy with the status that is configured below. This reduces the amount of extra work that a developer is required to perform to keep tickets up to date. Check out this blog for addition information on Jira configuration.

The first thing is to configure a Jira issue tracking instance.

Now the ValidateOrderProcess project can be configured to provide status updates in Jira.

Execution

Now that everything is set up, let’s see how this works in practice. We’ll perform a commit on the ValidateOrderProcess to illustrate the automation.

First, a Jira ticket (DEMO-12) was created for the developer.

 

Linking FlexDeploy to a Jira ticket allows automatic updates.

Next, the developer committed a change via the commit log, with the Jira ticket added in the commit message.

When you commit a change your Jira ticket is automatically updated.

Now the CI configured above detects the code change and starts the build process. You can see that the Requested By column indicates cipoller (Continuous Integration Poller) as the requester. In addition, the execution shows that the build/deploy will be associated to the WebinarRelease. The release configuration will be covered in another post in this series.

 

Once configured, FlexDeploy supports Continuous Integration.

Upon successful build, the Jira ticket (DEMO-12) was updated to a status of IN PROGRESS.

Jira tickets are automatically updated with FlexDeploy.

Upon successful deployment, the Jira ticket (DEMO-12) was updated to a status of IN REVIEW.

The status of a Jira ticket is automatically updated via FlexDeploy.

Conclusion

In this blog article, the steps were shown on how to configure FlexDeploy as an automation solution for automatically building and deploying of an Oracle SOA composite across various environments. In addition, we configured FlexDeploy to automatically update the Jira ticket based on progress through the delivery life cycle.

The next blog in the series will cover test automation configuration.

Previous Blog                                Next Blog
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 *