Getting started
This document guides you to the set up for setting up Aviator Releases using GitHub actions.
Prerequisite
This guide requires using GitHub Action for your build and deploy workflows. Look up your CI / CD guide If you are using other tool.
[For existing MergeQueue users only] If you have set up Aviator for MergeQueue before, make sure you have approved the new permission request for
Actions
, so that Aviator is able to fetch and trigger the GitHub actions for you.
Separate Build and Deploy Steps
To use Aviator Releases, we recommend separating out the build and deploy process if you run them together. This ensures a simpler and meaningful process for rollbacks. You may still use it with a single step, in which case the creation of Release will be a no-op.
Set up instructions
Set up an Aviator account, and walk through the initial onboarding to connect your GitHub repository. Select Releases as the capability.
If you have trouble connecting the GitHub app, please read the troubleshooting doc.
Now, click on Releases tab in the menu and navigate to creating your first project.
In this release project, create new deploy environments and specify the workflows to be triggered
The dropdown for workflows should auto-populate with your GitHub actions workflows.
GitHub Actions set up
Generate an Aviator API token at https://app.aviator.co/settings/workspace/integrations
Set up environment variables and secrets for your GitHub repo at
Settings > Secrets and Variables > Actions
Add a repository secret
AVIATOR_API_TOKEN
as the API token generated above
Build workflow
While setting up Aviator Releases, we recommend duplicating your existing workflow files in GitHub for a smoother transition.
NOTE: The new workflows need to be merged to your default branch in order to take effect
Aviator triggers GitHub using workflow dispatch REST API. This workflow requires specifying the following params in your workflow file:
Add a workflow job at the beginning of the build workflow to sync the workflow run ID with Aviator. This helps Aviator track the CI action that’s running your build.
After this you can keep your regular builds steps as is. Make sure to tag the build artifacts with the release version using
${{inputs.version}}
so that you can refer to them in the deployment step.
Deploy workflow
Similar to the Build step, duplicate the Deploy step as well and apply the following parameters in your workflow file. Note that these are different than the build params:
Add a workflow job at the beginning of the deploy workflow to sync the workflow run ID with Aviator. Note that the API URL is different from the build workflow.
After this you can keep your regular deploys steps as is. Make sure to use the same build artifacts with the release version using
${{inputs.version}}
so that you can refer to them in the deployment step.
Now you should be ready to use Aviator Release Management!
Last updated