Pioneering Big Data & AI
Submitted By Jenkins User Luís Felipe Teixeira
Jenkins is the backbone for the development of an innovative freight management app.
Organization: Sincrovia, https://sincrovia.com.br/
Programming Language: Java,
Platform: Android, iOS, Embedded, Docker or Kubernetes, Linux
Version Control System: GitHub
Team Member: Diogo Almeida, Co-CEO, Sincrovia
Community Support: Jenkins.io websites & blogs
Automation is the ticket for an app that manages logistics.
Background: Our company, Sincrovia, offers a fleet management system in which clients from small to midsize freight companies can manage their entire operation with a single software solution. With our app, clients can control a fleet of trucks, manage their drivers and the trips that they make, as well track their expenses. For that, we need to provide an error-free platform.
Our methodology is to only update or create microservices or our monoliths after the user acceptance phase. Since we have multiple development environments, automation was critical. We also wanted to remove any chance of human error.
Goals: Automation and security for our development environment.
Solution & Results: With Jenkins, we knew it would be possible to segregate multiple areas of development while ensuring safer deployment versions of microservices, monoliths, web applications or mobile applications. To achieve this, we set out to automate our dev processes and streamline user access and controls.
As we were migrating to Azure DevOps, automation of our platform included ensuring that all developers could view a Pipeline screen on which they could only select the branches they had clearance to build. This enabled us to streamline user access and ensure security. In this way, the developers still have access to Jenkins, but only to check the status of their builds.
For the release phase, developers can select only their specific environment and the build version, automating the release. By limiting human interaction to selecting the build version and environment, we have the confidence of knowing our releases are more reliable.
Core capabilities we employed: AWS Lambda, Amazon Web Services SDK, Docker, GitHub Integration, Azure Credentials, Azure Commons, Mailer, Credentials, JUnit, and Jackson 2 API.
With the help of Jenkins, our DevOps processes enable us to:
- automate secure and reliable releases
- manage deployment status and deployment dates easier
- provide our directors with an increased feeling of security
- build parallelization and version management of the images created