DEV Community

Cover image for Automate your Mobile App building, testing, code styling, code analysis and your distribution
Mohamed Elsharkawy
Mohamed Elsharkawy

Posted on • Edited on

Automate your Mobile App building, testing, code styling, code analysis and your distribution

My Workflow

If you are stuck how to automate your building, testing, code styling, code analysis or distribute your building with firebase.

I'll share with you an awesome and documented readme for the workflows. So let's go into the process of building the those amazing jobs with this awesome service Github Action

Submission Category:

Phone Friendly

Yaml File or Link to Code

You can have a look for the repository which built with github actions

GitHub logo MohamedGElsharkawy / Android-CICD

This repo demonstrates how to work on CI/CD for Mobile Apps πŸ“± using Github Actions πŸ’Š + Firebase Distribution πŸŽ‰

Android-CICD

This repo demonstrates how to work on CI/CD for Mobile Apps πŸ“± using Github Actions πŸ’Š + Firebase Distribution πŸŽ‰

Getting Started

We are here setup a continious integration pipelines using Github Actions and a continious delivery using Firebase Distribution ⚑ ⚑

If you want to know a brief definition for the two terms CI/CD πŸ™†β€β™‚οΈ, Checkout out the quotes :

  • Continuous Integration

    Is the practice of merging all developers' working copies to a shared mainline several times a day.

  • Continuous Delivery

    Is a software engineering approach in which teams produce software in short cycles ensuring that the software can be reliably released at any time and, when releasing the software, without doing so manually.

CI/CD

Workflows

  • πŸš€ pre_check.yaml : This workflow have to check for lint, testing and static code analyzer
  • πŸš€ build.yaml : This workflow have to build and deploy to firebase distribution

Getting Started With CI

…

pre_check YML file for how to run and work with every pushing on master branch

  • Check code styling then upload artifact report to github actions
  • Run your unit tests then upload artifact report to github actions
  • Build code analysis for security and bug issues then upload it to sonarcloud

Don't worry for integration with sonarcloud, I've documented How to integrate sonarcloud

Are you curious, how to share build APK with your testers group, here is you can check out build this YML file which runs with every pull request on master branch
* Build APK then upload the artifact to github actions
* Upload the artifact APK to firebase distributions

Additional Resources / Info

Checkout This action checks-out your repository

Setup Java JDK This action to set up the java version

Setup Java JDK This action to set up the java version

Upload Artifact This action to upload artifacts from your workflow allowing you to share data between jobs and store data once a workflow is complete.

SonarCloud To automate your analysis for code quality and security

Upload to firebase distribution This action uploads artifacts (.apk,.aab or .ipa) to Firebase App Distribution

firebase distribution makes distributing your apps to trusted testers painless. By getting your apps onto testers' devices quickly, you can get feedback early and often

I'm interested to get your feedback, feel free to contribute with changes, issues, or improves.

Top comments (0)