DEV Community

Cover image for Transitioning from App Center to Bitrise: A Comprehensive Guide
Bitrise
Bitrise

Posted on

Transitioning from App Center to Bitrise: A Comprehensive Guide

Introduction

With the fast-paced demands of mobile application development, the tools and services developers and organizations rely on significantly impact your workflow, efficiency, and code quality. With Microsoft retiring its Visual Studio App Center, many developers are looking for robust, reliable alternatives that match and exceed the functionality previously offered. Enter Bitrise, the Mobile DevOps solution that stands out as a compelling choice for those ready to make the switch. This guide dives into why Bitrise is not just a replacement for Visual Studio App Center, but a comprehensive upgrade for your mobile app development needs.

Migrate today if you’re already a Bitrise user and benefit from our OTA and Release Management features. Sign up and get started.

Why migrate to Bitrise?

App Center was a good solution for developers due to its analytics and deployment capabilities. Transitioning to Bitrise, developers gain access to similar functionalities, such as Release Management, Bitrise Insights, alongside a public install page, amongst other things. Moreover, Bitrise offers a user-friendly interface, extensive iOS and Android app development support, over 400 ready-to-use build tasks, and a mobile-focused toolset designed specifically for mobile app development challenges. Here, we'll highlight our OTA and Release Management features, which are particularly relevant for those considering migration from Visual Studio App Center.

‍View upcoming features on our Public Roadmap, including a centralized artifact page and automated distribution to TestFlight testing groups and Google Play Console testing tracks.

“Visual Studio App Center is scheduled for retirement on March 31, 2025. After that date it will not be possible to sign in with your user account nor make API calls. App Center will continue to be supported until March 31, 2025, with critical bug fixes and technical support.” - Visual Studio App Center retirement announcement.

OTA App Deployment with Bitrise

Bitrise offers an integrated app deployment system tailored for Over-The-Air (OTA) distribution, allowing teams and stakeholders to easily access builds without needing a Bitrise account. This helps to efficiently archive and distribute apps and build artifacts, enhancing your DevOps processes. Some key features include:

  • Simplified distribution: Distribute your app OTA to team members or stakeholders effortlessly. Share the testable application with your testers and groups through the Bitrise Public Install page.
  • Platform-specific Steps: Bitrise supports various platforms, including iOS, Android, React Native, Ionic, Cordova, and MacOS, each with designated build and deploy steps to Bitrise.io for apps, logs, and artifacts.
  • Automatically register iOS Test Devices: Automatically register test devices with the Apple Portal and update provisioning profiles to include new devices, saving developers valuable time and hassle.
  • A centralized page for installable artifacts of a Bitrise app (coming soon): We're introducing a centralized location for all your downloadable files, including iOS IPA and Android APK/AAB, helping you to eliminate sifting through multiple CI builds. Our new feature will simplify the process, allowing you to effortlessly locate and install the exact version of your Bitrise app you need, all from one convenient spot.

Release Management

If you’re a Bitrise user, and are using App Center only for distribution, you can use our Deploy to Bitrise.io Step to easily (smoothly 🙂) enable the public install page for your App. What's more, you can test drive Release Management for free. Release Management helps fast-track deployment by doing away with the complicated, chaotic, and disparate tool stacks of mobile app releases. Here are some of its benefits and capabilities.

Benefits of Release Management

  • **One centralized app for release processes: **Release Management cuts through the complexity of tool management, simplifying your workflow and reducing human error.
  • Eliminate store confusion: A simple, user-friendly UI, makes the release process manageable and easy to navigate.
  • Free up dev time and boost productivity: Automating repetitive tasks results in faster app deployment and quicker time-to-market.
  • Crystal clear release ops: Teams get full visibility into their release operations as the app progresses to production. In addition, timely release information means everyone sees the right information at the right time.

Screenshot of Release Management’s configuration page, illustrating its user-friendly UI.

Capabilities of Release Management

Image description

Step-by-Step migration guide

The following guide is specific to non-Bitrise CI users. As mentioned above, Bitrise users can use our Deploy to Bitrise.io Step to enable the public install page for your app, alongside Release Management for deployments.

If you prefer a granular migration guide, please refer to Bitrise DOCS.

1. Setting up your Bitrise account

Sign up
Begin by signing up through email, GitHub, GitLab, or Bitbucket. This allows you to grant Bitrise access to your repositories.

Setting up your workspace
Post-signup, Bitrise automatically creates your first Workspace—a hub for managing apps and team members. You can have multiple Workspaces and invite your team to join your workspace, given they have a Bitrise account.

Adding your app
Adding an app connects a Git repository to Bitrise for cloning and building. This can be done via the web UI, where you'll define the app's privacy, repository source, and the branch to build. Bitrise scans your repository to auto-configure app settings, but manual setup is available if needed.

Adding a new app via the web UI.

Utilizing webhooks and triggers

Webhooks enable automatic build triggers upon code changes, while Git Insights offers collaboration metrics. You can define specific events and branches to initiate builds, enhancing automation. Read more on:

Screenshot of the Bitrise UI utilizing webhooks and adding triggers.

Managing builds and workflows
Your first build starts automatically upon adding an app. Workflows, composed of Steps (script execution blocks), define the build process. Customize workflows using the Workflow Editor for tasks like cloning your repo, building your app, running tests, notifying developers, and more. Bitrise also offers Workflow recipes for common scenarios across different platforms. Read more:

Image description

Download our Masters of Efficiency cookbook: 50+ Workflow Recipes for peak performance.

Testing and deployment

Bitrise supports various testing methods, including unit and UI testing on real devices. After testing and building, deploy your app to stores like Google Play or the App Store, or use Release Management for a streamlined deployment process. Read more:

2. Connecting to your code repositories

Connecting your GitHub, GitLab, or Bitbucket account with Bitrise enables seamless integration, granting Bitrise access to your repositories. This integration facilitates listing available repositories for new app additions, automating webhook registration for build triggers and Git Insights, and setting up SSH keys automatically. You can link accounts from all three Git providers to your Bitrise account either during the new app addition process or via your Profile settings. Note that Bitrise supports connecting one account per Git provider, but changing linked accounts is possible anytime. This guide covers both methods of connecting a Git provider account to Bitrise and outlines necessary disconnecting steps if needed.

3. Configuring your CI/CD Pipelines

Configuring a Bitrise Pipeline is currently achieved by editing the bitrise.yml file directly. While Workflows can be created and modified through the graphical Workflow Editor, Pipelines and Stages* need to be defined in YAML format. For detailed guidance with examples of configuration, refer to our Bitrise DOCS.

*Stage: Stages are the top-level building blocks of Pipelines in Bitrise.

Key configuration steps

  • Defining Pipelines, Steps, and Workflows: The bitrise.yml file is where you define the entire configuration of your Pipelines, including Steps (individual tasks) and Workflows (collections of Steps).
  • **Configuring Pipeline triggers: **Set up triggers in the bitrise.yml file to automate build processes based on specific code events like pushes or pull requests. This can also be managed via the Workflow Editor's Triggers tab.

Screenshot of the successful configuration of Pipeline trigger.

  • Stage configuration: You can configure Stages to always run, regardless of previous failures, by setting should_always_run to true. Alternatively, set abort_on_fail to true to stop all Workflows in a Stage if any fail.
  • Using artifacts across stages: Leverage the Deploy to Bitrise.io - Apps, Logs, Artifacts Step to share files between Stages, ensuring subsequent Workflows have access to necessary build artifacts.
  • Sharing environment variables: Utilize the Share Pipeline variables Step to reuse environment variables across Stages, enabling seamless transitions between different phases of the Pipeline.

Optimizing workflows for better performance

Optimizing workflows can lead to significant time savings, especially for teams frequently running workflows. Antoine van der Lee, Lead iOS Engineer at WeTransfer, shared the following insights on making your Bitrise workflows more efficient. Read his full take.

  • Run the minimum necessary: Only execute steps that are essential for the specific workflow to reduce execution time. View our Enabling or disabling a Step conditionally page.
  • Enable rolling builds: Turn on rolling builds to cancel outdated builds automatically when a new commit is pushed. This approach ensures only the latest commit is built, saving time and resources.

Image description

  • Leverage caching: Utilize caching to speed up workflows by avoiding redundant dependency installations. In some cases, using the default caching provided by Bitrise will yield the best results. View Bitrise DOCS for a full breakdown.
  • Caching for pull requests (PRs): By default, caching doesn't work for PR builds in Bitrise. Adjusting the cache-push step to run unconditionally allows caching for PRs, speeding up these builds significantly.
  • Selective test execution: Run tests only for changed files to avoid unnecessary execution. WeTransfer implemented checks in their Fastlane setup to test only frameworks that had changes in a PR, considerably reducing build times.

Bitrise vs. the competition: Being mobile-first

Building for mobile apps poses distinct challenges, differing from web development. Developers must address fragmentation (device diversity), performance optimization within resource-constrained mobile environments, platform-specific features and APIs, UI design, app distribution, and lifecycle management—to name a few—to create top-notch, efficient apps. Here’s how Bitrise’s mobile-focus approach sets us apart.

Conclusion

The shift from Visual Studio App Center to Bitrise represents a significant upgrade in your mobile app development process. With Bitrise, developers gain access to a more comprehensive, mobile-first DevOps environment designed to enhance workflow efficiency, improve code quality, and facilitate a smoother release management process. Visual Studio App Center users will specifically benefit from OTA app deployment and Release Management.

Migrate today if you’re already a Bitrise user. Not a user yet? Sign up and get started.

Additional resources

Top comments (0)