You can build and test Mule Applications or APIs using Anypoint Studio very easily. But when it comes to automating deployments to your environments, with complete visibility, rich property management, and fully automated options, you need a good enterprise DevOps tool. FlexDeploy’s solution for MuleSoft bridges all these gaps and provides a complete DevOps solution. FlexDeploy also provides a solution for many of the key challenges developers face during development and maintenance of their Mule applications. Here are the challenges we face every day when we develop and deploy Mule APIs.

  • How and what do I need to change when we move to CloudHub from an on-premises installation or vice-versa?
  • How do I manage properties for third-party applications/databases, and how do I identify all the Mule APIs that use these properties so I can update them when the third-party application changes these properties?
  • Are my secure properties really secured?
  • How can I easily manage dependencies with other Mule applications and other enterprise applications?

FlexDeploy helps automate all your Mule development needs with simple configurations. No scripting needed. It is one tool that helps end to end.

Source Control Management

FlexDeploy integrates with your SCM tools like GIT, SNV, TFS, Perforce, Clear Case etc. and helps with establishing the branching strategy that suites your needs. The screen below shows how you can configure your SCM in FlexDeploy.

You can easily configure FlexDeploy to poll a SCM to perform a build or schedule the build to implement continuous integration on the CI tab of FlexDeploy.

Build Automation

You can build all your Mule applications/domains with FlexDeploy with one click. FlexDeploy supports both mavenized projects and non-mavenized projects. During the build, your MUnit and JUnit test cases will be executed to ensure quality of the Mule application.

You can view the complete execution details, by clicking on the execution id.

Execution details will display the details including who initiated the request, when, and what are the steps executed during the build as shown below.

You can also view the Change Log with who made the code change, the affected files, and the commit message or ticket references.

Deploy Automation

Developers can submit a request  for deployment manually with one click or automate the deployment to execute without manual intervention. To request a deployment, just click on the Deploy button and select the environment you would like to deploy and click Submit Request as shown below.

You can view the Execution details by clicking on the Execution ID as we saw in Build execution. FlexDeploy automates deployments to any Mule installations – CloudHub, Standalone servers, clusters with or without Anypoint Runtime Manager. FlexDeploy monitors your deployment until it succeeds or fails and reports back the status. You can view Log Data in the execution details to see a detailed execution log. In the below screen, you can see the logs for a deployment to CloudHub.

Test Automation

With simple configurations in FlexDeploy, you can execute automated test cases during deployment to an environment and view the test results. You can also use results to determine if this build should be promoted to next environments.

Here are the test types supported as part of the FlexDeploy Test Framework.

  • Unit Testing – MUnit/JUnit.
  • Integration Testing – MUnit, SOAP UI testing
  • Smoke Testing – SOAP UI, Selenium, HP, OATS
  • System Testing – Selenium, TestNG, HP, OATS
  • Performance Testing – HP LoadRunner, JMeter, OATS

Environment Management

The operations team can easily manage environments and Mule instances. Managing environment level properties like DB user name, password right in the FlexDeploy UI makes it incredibly easy. There is no need to keep these values within your Mule applications. FlexDeploy adds these properties while deploying to each environment. Secure properties can be defined as Encrypted in FlexDeploy and these properties will be secured during the plugin operation.

FlexDeploy supports hierarchical properties. You can define properties at Environment level, Project level etc. Below screen shows the environment properties for Mule instances. It is easy to switch one Mule type to another, for example, moving from Standalone to CloudHub is simple and easy.  

Leverage FlexDeploy to manage your Mule build and deploys and get the following benefits:

  • Fully automated Mule builds and deployments to various on-prem, cloud or hybrid installation models with a few clicks.
  • Provides ease of use and helps implement best practices at every stage to improve the quality of your builds and deployments.
  • Supports Continuous Integration and Deployment for all your software development along with Mule.
  • Provides built-in integrations with Jira, Service Now etc to eliminate a lot of manual and tedious work.
Rama Rimmalapudi

I have been working as a Integration Architect for the past 10 years, with over 17 years of experience in software Architecture, Design, Development, Performance Tuning and production support of Java/J2EE based applications. I have 8+ years of experience designing enterprise applications using Oracle Fusion Middleware, building custom applications using ADF and System Integrations using SOA Suite & MuleSoft. I have extensive knowledge with DevOps, Release Automation, Application Integrations, WebLogic and Coherence in high volume and highly available deployment configurations.

More posts by Rama Rimmalapudi

Leave a Reply

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