Jenkins is the way to automate development tasks

Automating MuleSoft Job Creation and Deployment

Submitted By Jenkins User Bilal Bailey
Jenkins community thanked for supporting this developer’s task.
Industries: Manufacturing
Programming Languages: Java, Groovy
Version Control Systems: GitHub
Community Support: Jenkins.io websites & blogs, Spoke with colleagues and peers

Jenkins pipeline and robust community support helps streamline application deployment.

Background:   I’m an IT developer at a large manufacturing company focused on network infrastructure and industrial electrical wiring solutions. I was tasked with simplifying the migration process from Mulesoft 3 to 4. For that, I needed to preconfigure the GitHub repository and create the Jenkins job with all the necessary configurations. In doing so, the developer could focus on development tasks specific to the code migration. 

Goals: Simplifying project creation and streamlining application deployment.

"Jenkins made a difference due to the community support and documentation that is available to help with development tasks."
image— Bilal Bailey, IT Developer

Solution & Results:  To meet my objective, I created a Jenkins Declarative Pipeline to perform a variety of tasks. For example, the Declarative Pipeline script automates the process of creating a standard folder structure within GitHub. It also supplies the necessary files utilized in new jobs created later in the pipeline. It will then deprecate the old Maven Jenkins job and create new Pipeline jobs supplied with a Jenkinsfile. 

The pipeline includes conditions which are leveraged to determine in which environment each new job is created. Ultimately, the developer can create as many new projects as needed with little effort. I really enjoyed using shared libraries for my Groovy scripts and the ease of managing credentials. 

I am thankful for the Jenkins community. It has great support and documentation to help with development tasks. I also want to thank Jenkins for helping me deliver great results for the entire development team, including: 

  • shorter build times

  • faster deployments 

  • ease of maintenance