Impiger's Extra Mile Best Practice For Software Delivery
At Impiger, we drill ourselves to focus on our commitment to quality of the applications we develop and constantly try to find innovative ways to do it quicker. Here is a small but significant best practice that enables all our teams to ship software faster to our clients.
Continuous Delivery is a major aspect of DevOps that makes updating applications in the production environment easy and risk-free. Impiger's preferred code repository for Continuous Delivery is Bitbucket.
Bitbucket Pipeline is a Continuous Integration Build platform, using which we can point the pipeline to a master branch of our development line. The pipeline gets auto triggered whenever a new commit happens in the branch. In Android development perspective pipeline can auto build the source with new commits and generate the .APK file.
How it works
The directory structure for the .yml and related scripts
Pipeline .yml structure
Steps to configure for Android development
The pipeline can be enabled only if you have admin rights for the repo.
Select Java(Gradle) for Android
Bitbucket will automatically generate script file for you based on the language choice.
Committing the file
Modifying the .yml file to create a build with following properties
- APK Name
- Version Name
- Build time
- Different APK file for develop, staging and production
- Upload the APK file to bitbucket download directory
Refer sample bitbucket-pipeline.yml.
The above script results build will be triggered automatically on every push into 'develop' and 'master' branch. As a result, there are three apk'files generated for different flavors (server configuration) such as 'develop', 'staging' and 'production' and uploaded to downloads directory.
This almost trivial 'last mile' automation of our DevOps frees us from using separate servers for Continuous Development and our developers from using multiple tools. The money and time saved by us is eventually passed on to you, our clients.