Integrating Mule application build with Jenkins

Just ran across this bit of information for integrating Mule application builds with Jenkins as part of a continuous integration.  The reference is from the Mulesoft Knowledge Center. Note that the variables (ie: ${var_name} are all standard Jenkins values.  Here is what the knowledge center post says:

When leveraging continuous integration, we might want to publish the newly built applications to MMC so they can get easily deployed.
This can be done using the MMC REST API. Jenkins as well provides a useful set of information that can be leveraged to achieve this goal.

Configuration Steps:

 

1) Configure a new Maven process with your source code repository and adapt it to your preferences.

2) Add a new command line ‘Post Step’ that runs only upon successful builds, the contents of the post-step would be the following:
 
curl –basic -u admin:admin -F file=@${WORKSPACE}/target/${POM_ARTIFACTID}-${POM_VERSION}.zip -F name=${POM_ARTIFACTID} -F version=1.0 –header ‘Content-Type: multipart/form-data’ http://localhost:8080/mmc/api/repository
This way the resulting application will be published to the MMC repository and it will be ready for you to create a deployment. Please note that you would need to adapt the MMC URL to match your infrastructure.
For more information about the options you have, please visit the MMC REST API documentation page:
Advertisements