Jenkins is the way to faster and safer shipping to clients

Automate and Send Artifacts

Submitted By Jenkins User Jorge Uztariz
Colombia-based DevOps team leans on Jenkins automation for speed and safe delivery of client artifacts.
Organization: Consis Internacional, https://www.consisint.com/
Team Members: Derwin Oropeza, DBA & DevOps Manager, Juan Conde / DevOps Analyst, Orlenis Nieres / DevOps Analyst, Consis Internacional
Industries: All development services
Programming Languages: Java, PHP
Version Control Systems: Bitbucket Server
Community Support: Jenkins.io websites & blogs

Less time and more safety when shipping artifacts to the customer, with no worries about database backups.

Background: Consis Internacional helps insurance carriers around the world achieve strategic results through IT. We design intelligent core business systems, robust front-end web tools, component solutions, and innovative frameworks by combining cutting-edge tech with the best standard practices. 

We expect to obtain an unattended compilation of our git repository running Maven both for development environment updates and for sending artifacts to clients, which can be scheduled to run at specific times or on-demand from a telegram bot when required. 

Additionally, we expect to run SQL scripts on remote databases and perform scheduled backups for both development and test environments where artifacts and scripts are tested before being sent to the client.Goals:  To ship artifacts to the customer faster and safer.

"Jenkins made everything easier and faster. It gave me the free time to study new technologies."
image— Jorge Uztariz, Devops Lead, Consis Internacional

Solution & Results: We configured the Git repository that we use with BitBucket and set the parameters for Maven compilation. We then set schedules for the process to run automatically, scheduling bash scripts according to the client with the help of Jenkins variables. We also configured the telegram plugin to send notifications and used the Jenkins API to configure the telegram bot for remote execution. Finally, we configured the sending of emails for sending artifacts to the client and telegram notifications for updating the development environments. 

For the update of the development environments after the automatic compilation, we were able to use some scripts that were already programmed previously to perform the update of artifacts and restart the application server, in this case, WebSphere Liberty. 

Additionally, the database was configured with triggers for backup tasks — this way, every time a task was finished, the next one started even if the previous one failed. The security of access to Jenkins was configured through the BitBucket OAuth to obtain greater control of those who could access Jenkins and their permissions.

We are very happy with the results:

  • compilation time reduced from 1 hour to 20 minutes 

  • safety when shipping artifacts to the customer 

  • development environment update time reduced from over 1 hour to 25 minutes 

  • no worries about database backups