Avinash
Avinash

Reputation: 47

Continuous integration/deployment iOS Android app

We have developed Xamarin.iOS and Xamarin.Android app using Visual studio. and we want a way to automate deployment as we have repository on bitbucket

On search we found there are Jenkins, and MacinCloud, Bitrise. What will be best option to execute following process. 1. Get code from repository . 2. Build ipa,apk for both android and iOS platform. 3. Deploy to Appstore/Testflight.

Do any of above provide facility to configure and deploy app for multiple environment(DEV/ST/PROD).

Thanks

Upvotes: 0

Views: 678

Answers (1)

Wesley Rolnick
Wesley Rolnick

Reputation: 891

To address your goals 1-by-1:

  1. Get code from repository

You will want a CI/CD tool: Jenkins, Azure Pipelines, Bamboo will help you automate the build process. The first step in most of these tools will be to grab the source code from the repository.

  1. Build ipa,apk for both android and iOS platform

You will need a Mac computer for the .ipa. There is no easy way around this requirement as you need XCode and an Apple developer account in order to build the signed .ipa for iOS deployments. The android apk can be built on pretty much any platform though. Because you will need a Mac, you may end up having to setup a remote agent for your CI/CD service in order to build on that machine.

  1. Deploy to Appstore/Testflight

You can either script this part, use a plugin with your CI/CD tool, or use a 3rd party entirely. Some popular 3rd party options are Microsoft's Appcenter (formally HockeyApp) or Fastlane.

  1. Do any of above provide facility to configure and deploy app for multiple environment(DEV/ST/PROD)?

Yes. All of the CI/CD tools mentioned above support this. Additionally, the Google Play store supports different release tracks, and you can setup different deployment strategies with iOS depending on the tooling you end up selecting.

Upvotes: 1

Related Questions