Advanced configuration
Customize Maestro Cloud runs with advanced settings for custom workspaces, upload naming, async mode, environment variables, and tag filtering.
Once you have the basics running, you can customize how Maestro Cloud executes your Flows using the options below.
Custom workspace location
By default, the action looks for a .maestro folder in the root of your repository. If your Flows are located elsewhere, use the workspace argument.
- uses: mobile-dev-inc/action-maestro-cloud@v2.0.2
with:
api-key: ${{ secrets.MAESTRO_CLOUD_API_KEY }}
project-id: 'proj_01example0example1example2'
app-file: app.zip
workspace: myFlows/Custom upload name
Maestro Cloud automatically names your upload based on the context:
Pull Request: Uses the PR title.
Push: Uses the commit message.
Fallback: Uses the commit SHA.
To override this manually, use the name argument:
- uses: mobile-dev-inc/action-maestro-cloud@v2.0.2
with:
api-key: ${{ secrets.MAESTRO_CLOUD_API_KEY }}
project-id: 'proj_01example0example1example2'
app-file: app.zip
name: My UploadAsync mode and timeouts
If you don't want the GitHub Action to wait for the tests to finish (e.g., "fire and forget"), set async to true.
If you want to wait for results but need more time than the default 30 minutes, use the timeout argument (in minutes).
Environment variables
You can pass environment variables to your Maestro Flows (accessible via ${env.VARIABLE_NAME} in your YAML flows) using the env argument. Use a multiline string for multiple variables.
Filtering with Tags
You can use Tags to include or exclude specific Flows from the run.
include-tags: Only run Flows with these tags.exclude-tags: Skip Flows with these tags.
Values can be single tags or comma-separated lists.
Reusing uploaded binaries
If you have a workflow where you want to run multiple distinct test suites against the same app binary without re-uploading it, you can capture the app-binary-id output from a previous step.
Access the Reuse app binary guide for more information.
Device Locale
To run your tests on a device with a specific locale (default is en_US), use the device-locale argument. The value is a combination of:
The following code snippet displays an example:
Access the App locales and device timezones guide for more information.
Next steps
Outputs and triggers: Learn how to access build results and configure CI triggers.
Last updated