Using DevOps and CI technologies with Convertigo
Back to post list ...
Using DevOps and CI (Continuous Integration) technologies with Convertigo
Using Low Code and DevOps technologies leads to the best mobile & web application production cycle (SDLC). See here how Convertigo can be combined with classic DevOps and Continuous Integration (CI) technologies to deliver the best agility processes for application development and production
Convertigo is using Gradle technologies to build apps
Convertigo Low Code can be used with classic build technologies such as Gradle. This is why you can add a simple build.gradle file in your Convertigo projects to enable automatic build, test, deploy to server and even APK / IPA application generation.You must add this file in the root of your project in the "Project Explorer" view. Download the file from :https://github.com/convertigo/convertigo/blob/release/7.8.0/convertigo-templates/common/build.gradleYou must also add the gradle wrapper to your project download the files. To do this :
Your project is now Gradle enabled and ready for CI !Note : Depending of your Convertigo Studio version, this may be already done automatically by the Studio.
Understanding the build.gradle file
If you have a look at the build.gradle file, you will see a list of tasks such as 'load' , 'car', 'deploy' etc .. For each task you will find some configuration options. You have two possibilities to configure a task:
- Uncomment a configuration option in the build.gradle file, for example: projectVersion '1.0.0-release'
- Or use a -P option in the CI command that will launch the gradle build. for example: $ gradle --refresh-dependencies --info -Pconvertigo.load.projectVersion=1.0.0-release car
You will find many options there, all are documented in the build.gradle file.
When the CI server will launch the gradle build, the Convertigo gradle plugin will automatically perform all the build tasks depending on the gradle build command issued. For example for a 'deploy ' task$ gradle --full-stacktrace --refresh-dependencies --info -Pconvertigo.deploy.server=https://myserver/convertigo -Pconvertigo.deploy.user=admin -Pconvertigo.deploy.password=mypassword deployWill automatically :
- Load the project and modify any of the properties configured in the 'load' task
- Then export the project. if the project contains some Low Code front end (MobileBuilder) objects, then a dependency to the 'compileMobileBuilder' task will automatically be declared, resulting by a 'compileMobileBuilder' task to be executed before the 'export' task
- The 'compileMobileBuilder' task depends on the 'generateMobile builder' task responsible for generating the Angular Code of the Low Code Front end.
- The 'car' task will be executed to generate the .CAR file holding the project.
- And finally the project will be deployed on the target server https://myserver/convertigo using the 'deploy' task'
Using gradle builds in common CI servers
So far Convertigo gradle builds has been tested in Microsoft TFS pipes and Circle CI. But, nothing prevents using gradle builds in other CI servers such as jenkins as long as the CI server supports gradle.