Getting Started Pull Request Integration Maestro Cloud also provides support for native pull request integration. This is useful if you'd like to run your Flows asynchronously but still block pull requests from landing if flow failures are detected.
Maestro Cloud currently supports Pull Request Integration for GitHub and GitHub Enterprise only. Support for other platforms coming soon.
✅ GitHub Enterprise Support
Note that you can trigger automatic uploads from any CI platform .
1. (Optional) Configure your Baseline Branch
For certain types of issues (eg: Performance Regressions), Meastro Cloud needs to compare pull request results against a Baseline Branch (typically your main or master branch).
Specify your Baseline Branch using the config.yaml
file. Create the following file under the .maestro/
directory (or wherever your Flows are if you are using a custom directory). Update main
to the branch you'd like to use as your baseline.
<repo-root>/.maestro/config.yaml
Copy baselineBranch : main
2. Trigger uploads on every pull request
GitHub Actions Maestro CLI API
Follow the steps described here
Ensure your workflow is triggered on every pull request made against your Baseline Branch.
Copy on :
push :
branches : [ main ]
pull_request :
branches : [ main ]
Ensure that uploads to Maestro Cloud are triggered on every pull request. Exactly how this is accomplished depends on your CI setup.
Add the following options to your maestro cloud
command:
Copy maestro cloud \
--async \
--apiKey <apiKey> \
--branch <branch> \
--repoOwner <repoOwner> \
--repoName <repoName> \
--pullRequestId <pullRequestId> \
--commitSha <commitSha> \
<appFile> .maestro/
Set to the name of the git branch the app was built on and the pull request is based on (i.e. feature-foo)
Set to the owner of the repository (i.e. "mobile-dev-inc")
Set to the name of the repository (i.e. "fenix")
Set to the unique identifier of the pull request. Only set when triggered by a Pull Request. (i.e. 1234)
Set to the commit hash. Only set when triggered by a Pull Request. (i.e. 586e1c690891d20568976c78f06fbec9b94a3b32)
Ensure that uploads are triggered on every pull request. Exactly how this is accomplished depends on your CI setup.
Add the following values to the JSON data in the upload API request:
Set to the owner of the repository (i.e. "mobile-dev-inc")
Set to the name of the repository (i.e. "fenix")
Set to the name of the git branch the app was built on and the pull request is based on (i.e. feature-foo)
Set to the unique identifier of the pull request. Only set when triggered by a pull request. (i.e. 1234)
Set to the commit hash. Only set when triggered by a Pull Request. (i.e. 586e1c690891d20568976c78f06fbec9b94a3b32)
3. Grant access to pull requests
In order to update the status of pull requests, you'll need to grant Maestro Cloud permissions to do so.
GitHub GitHub Enterprise
Navigate to the URL below to install the Maestro Cloud GitHub App:
Copy https://<domain>/organizations/<owner>/settings/apps/<app-slug>/installations
4. Test the integration
Lastly, open a pull request and ensure that the Maestro Cloud check shows up on your pull request.
GitHub / GitHub Enterprise
Last updated 5 months ago