Maestro is compatible with all CI systems and provides native integrations with a number of common providers including Bitbucket Pipelines.
You can start running your Flows in CI with just a few lines of configuration using the Maestro Cloud Bitbucket Pipe.
Create a Maestro Cloud account
This doesnβt cost anything up front and youβll have $10 of free credit each month to play around with the platform.
If you havenβt already, start by creating a Maestro Cloud account: Create a Maestro Cloud Account
Get your API key
Once you create your account, youβll be able to access your api key.
- Log in to Maestro Cloud Console, click on your username in bottom left corner and click on View API Key
- Copy your API Key.
Save API key in your repository
In order to use the Maestro Cloud Pipe, youβll need to add the API key as a secret ENV in your Bitbucket repository.
- Go to your Repository -> Repository settings -> Repository Variables
- Save your API Key as a secured env variable
Commit your Maestro Flows to your repository
Create a .maestro/
directory at the root of your repository and commit your Flows there:
<root>
βββ .maestro/
β βββ Login.yaml
β βββ Add to Cart.yaml
β βββ Search.yaml
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.
<root>
βββ .maestro/
β βββ subflows/
β β βββ MySubflow.yaml
β βββ Login.yaml
β βββ Add to Cart.yaml
β βββ Search.yaml
Add Maestro Cloud Pipe
Once everything is setup, you can integrate the Maestro Cloud Upload Pipe in your Pipeline build process.
Edit your bitbucket-pipelines.yml
and add an extra step after your app has finished building.
Note: All file paths are relative to the repository source root.
Android
script:
- pipe: mobiledevinc/maestro-cloud-upload:1.0.0
variables:
MDEV_API_KEY: $MDEV_API_KEY
MDEV_APP_FILE: app/build/outputs/apk/debug/app-debug.apk
iOS
script:
- pipe: mobiledevinc/maestro-cloud-upload:1.0.0
variables:
MDEV_API_KEY: $MDEV_API_KEY
MDEV_APP_FILE: <app_name>.app
The pipe will:
- Upload your app and flows to Maestro Cloud
- Wait for flows to complete (can be configured)
- Complete with fail/pass depending on flow results
Thatβs it!
For more information and configurations, checkout Maestro Cloud Upload Pipe.