Mobile Workflows

Mobile Workflows

Create and manage mobile CI/CD pipelines in Immerse — the reusable GitHub Actions workflows that drive Bitrise builds for MCOE applications.

Enterprise Pipelines in Immerse provide a self-service way to create fully configured CI/CD pipelines for your mobile applications. When you create a pipeline, Immerse handles provisioning the Bitrise project, committing shared workflow files to your repository, and connecting everything together.

Pipeline Types

Immerse supports creating pipelines for the following project types:

TypeDescription
MobileReact Native, iOS Native, or Android Native applications — triggers Bitrise builds
JavaJava/Spring applications
NodeNode.js applications
PythonPython applications
Docker ImageContainer-based applications
GoGo applications
.NET.NET applications
image-place-holder.png

The Create Pipeline page in Immerse showing available project types

This guide focuses on mobile pipelines. For other pipeline types, the process is similar but uses different workflow templates.

Creating a Mobile Pipeline

  1. Navigate to Pipelines in Immerse

    Go to Pipelines from the Immerse navigation. You’ll see the pipeline list or an option to create your first pipeline.

  2. Click Create and select Mobile

    Click Create and select Mobile as the pipeline type.

    image-place-holder.png

    Selecting the Mobile pipeline type

  3. Select your ASK ID

    Use the Select AskId dropdown to choose your application. This links the pipeline to your registered application in Immerse.

  4. Enter the Repository URL

    Provide the GitHub repository URL for your mobile project (e.g., https://github.com/uhg-digital-experiences/your-app).

  5. Enter a Pipeline Name

    Give your pipeline a descriptive name. This will be used to identify the pipeline in Immerse and in the generated workflow files.

  6. Configure inputs

    Provide the required inputs:

    InputDescription
    JFrog Project KeyYour JFrog project key for artifact storage. Falls back to the immerse_jfrog_project_key custom property on your repository if not provided.

    Toggle Show advanced inputs for additional configuration options.

    image-place-holder.png

    The Create Pipeline form with ASK ID, repository URL, pipeline name, and JFrog inputs

  7. Click Create Pipeline

    Click Create Pipeline to provision your pipeline.

What Happens Behind the Scenes

When you create a mobile pipeline, the system follows this flow:

image-place-holder.png

Pipeline creation flow — checking for existing Bitrise projects and provisioning as needed

  1. Check for an existing Bitrise project

    The system checks whether a Bitrise project already exists for your application’s ASK ID.

  2. Create a Bitrise project (if needed)

    If no Bitrise project exists, one is automatically created and linked to your ASK ID. The new project receives:

    {
      "slug": "string",
      "status": "string"
    }
  3. Create a Mobile Workflow PR

    A pull request is created against your GitHub repository containing the shared workflow configuration. This PR adds the reusable CI workflow that connects your GitHub Actions to Bitrise.

    The workflow configuration includes:

    {
      "_id": "string",
      "bitriseProjectId": "string",
      "bitriseApplicationSlug": "string",
      "askId": "string",
      "applicationName": "string"
    }

You’ll need to review and merge the workflow PR into your repository before the CI pipeline will be active.

Pipeline Architecture

Once your pipeline is created, three systems work together on every commit:

SystemRole
GitHub ActionsRuns code quality checks — dependency install, tests, SonarQube
BitriseBuilds signed mobile artifacts (iOS .ipa, Android .aab)
JFrogStores build artifacts and runs dependency audits

The React Native CI workflow orchestrates this entire process as a single reusable GitHub Actions workflow.

Managing Pipelines

Once created, your pipeline runs automatically on push and pull request events. You can:

  • View pipeline status in the Immerse Pipelines section
  • Modify workflow configuration by editing the workflow files in your repository
  • Update Bitrise workflows by modifying your bitrise.yml configuration
  • Connect to Release Management by creating a Rollout linked to your Bitrise project

What’s Next