icon

Upload to Maestro Cloud

Upload your app binary to Maestro Cloud and run your flows

Run your flows on Maestro Cloud.

Configuration

The minimum required configuration is to provide an API key, Project ID and an app binary (an x86 compatible APK for Android, or a Simulator build packaged in a zip archive for iOS).

If your tests are anywhere but the default .maestro folder in the root of your project, you should set the Flow Workspace.

Full list of step options:

Name Key Required Description
API Key api_key Yes Maestro Cloud API key, available in Maestro Cloud
Maestro Cloud Project ID project_id Yes Which project to run the tests against
App File app_file No Path to the app file to upload. This, or App Binary ID, must be provided.
App Binary ID app_binary_id. No The unique identifier of the app binary in Maestro Cloud. This, or App File, must be provided.
Flow workspace workspace No Path to Maestro flows (default: .maestro)
Upload Name upload_name No Friendly name of the run
Async Mode async No Whether to start the flow and exit the action (defaults to false)
Environment variables env No Environment variables to pass to the run
Android API level android_api_level No The Android API level to use when running the flows
Device OS device_os No The device OS to use when running iOS flows (eg iOS-16-2)
Device model device_model No The device model (eg iPhone-11)
Device locale device_locale No The device locale to use when running the flows (eg en_US)
Include tags include_tags No Comma-separated list of tags to include in the run
Exclude tags exclude_tags No Comma-separated list of tags to exclude from the run
Export test report (JUnit) export_test_report No Generate test suite report (JUnit)
Export test output export_output No Export test file output (Default: report.xml)
Mapping File mapping_file No Path to the ProGuard map (Android) or dSYM (iOS)
Build branch branch No The branch this upload originated from
Repository name repo_name No Repository name (ie: GitHub repo slug)
Repository owner repo_owner No Repository owner (ie: GitHub organization or user slug)
Pull request ID pull_request_id No The ID of the pull request this upload originated from
Maestro CLI version maestro_cli_version No Maestro CLI version to be downloaded in your CI (Default: latest)
Timeout timeout No How long to wait for the run to complete when not async (defaults to 30 minutes)
Debug Mode debug_mode No Prints shell commands as they execute. Set to any non-blank value to enable.

Outputs

Name Key Description
Maestro Cloud App Binary ID MAESTRO_CLOUD_APP_BINARY_ID The unique identifier of the uploaded app binary — can be reused in future uploads to skip re-uploading.
Maestro Cloud Run URL MAESTRO_CLOUD_RUN_URL The URL to view this test run in Maestro Cloud.

See the Changelog for recent updates.

Similar steps

Uses devicecloud.dev to execute Maestro mobile tests

Upload an IPA/APK file to TestProject

Uploads your build to Waldo.

The Step uploads files to a Google Cloud Storage bucket.