githubEdit

CircleCI

Set up Maestro Cloud tests on CircleCI. Store API keys, commit flows in .maestro/, and add a maestro-upload job to run Android and iOS tests.

circle-info

πŸš€ Cloud Plan required - get started for free at maestro.devarrow-up-right

The following guide will help you setup Maestro cloud testing in CircleCI.

Save API key and project ID in your repository

First, you'll need to add the API key and Project DI as a secret ENV in your Project Settings

  1. Go to your Project -> Project Settings -> Environment Variables

  2. Save your API Key and Project ID

Commit your Maestro Flows to your repository

Create a .maestro/ directory at the root of your repository and commit your Flows there:

It’s common to have some Flow files that are only meant to be executed as part of another Flow via the runFlow command. These "subflows" can be nested under a subdirectory to prevent them from running as a top-level Flow.

Add Maestro Upload Job

Once everything is setup you can integrate maestro by adding another job in your .circleci/config.yml

Note: Maestro needs access to your flows and app binary, so make sure to either use persist_to_workspacearrow-up-right or download the assets when running the upload job.

Configure

You can configure the upload parameters by modifying the maestro cloud command. For example:

You can find all available options by running the Maestro CLI command locally

Example: Android

The following config.yml will:

  • Build an android app

  • Save the workspace and output apk

  • Upload your flows and apk

Example: iOS

The following config.yml will:

  • Build an iOS app

  • Save the workspace and output your_ios_app.app

  • Upload your flows and .app binary

That's it!

If everything was setup correctly, you should be seeing results in your workflow jobs

Last updated

Was this helpful?