We use docker images to support easy installation of Aviator on any cloud provider or privately hosted network. There are two ways to setup: using a docker compose file or using a k8 helm configuration.
- 4 CPU
- 8 GB memory
- 25 GB storage
- 1.Ubuntu or Debian installation on the box.
- 3.You have SSH access to the box.
- 4.A user with sudo permissions on the box.
- 5.You have access to the secrets file provided by Aviator.
- 6.You have the privilege to create a Github app and authorize the app for a repository.
- Google Oauth login does not work in on-prem setup
github_url: Hostname where Github is hosted
av_hostname: Hostname where Aviator is hosted (e.g.
github_app_id: ID generated when a Github app is created
mergequeue.pem: Private key generated by Github for Aviator
av_box: Represents the linux box where Aviator server will be set up
Assign a valid <
av_hostname> to the
av_boxon your DNS server. Depending on your DNS, this may take some time to propagate. Make sure the hostname resolves before moving on.
Go to Github Developer settings and Click “New Github App”. The developer settings can be found through your user settings or url of the format:
Use the following settings to create the app:
GitHub App name: Aviator
Description: Automate merge workflows for Github, manage queues in teams and improve code quality.
User authorization callback URL: https://<av_hostname>/api/setup/complete
Expire user authorization tokens: YES
Request user oauth: NO
Setup URL: https://<av_hostname>/api/setup/complete
Redirect on update: YES
Webhook URL: https://<av_hostname>/api/webhook
Webhook Secret: Optional. If you setup Webhook secret, you should also define set that at
GITHUB_WEBHOOK_SECRETto validate webhook signature.
Enable SSL verification: YES
Administrator: Read only
Checks: Read & Write
Commit statuses: Read & Write
Contents: Read & Write
Issues: Read & Write
Metadata: Read only
Pull requests: Read & Write
Workflows: Read & Write
Members: Read only
Subscribe to events:
Branch Protection rules
Pull request review
Pull request review comment
Where can Github App be installed: Any account
After creating the Github app, you can add a logo. Find a copy of Aviator Logo in the attached assets.
From the Github app page for Aviator, take a note of the App ID specified on the top. This is your github_app_id.
Additionally, you should generate a private key from the bottom of the page. This is your mergequeue.pem. Copy this file on the
av-box. Also copy the
aviator.zipfile provided by the Aviator team.
Create /opt/mergequeue/keys directory and copy the mergequeue.pem file there.
$ sudo mkdir -p /opt/mergequeue/keys
$ sudo mv mergequeue.pem /opt/mergequeue/keys/
$ sudo chmod 0644 /opt/mergequeue/keys/mergequeue.pem
Extract the mergequeue.zip file, and open enterprise/install.sh in your favorite editor. You will need to insert the secrets on lines 5 to 25. Here are some details for each secret value:
Save the file.
Once the configurations above are set, run the install script. This will pull, build and start all the docker containers required for the Aviator service.
At the end of that script, it will run docker-compose up -d to start the containers as detached. You can verify that the containers are running by:
$ sudo docker-compose ps
At this point, you should be able to open
av-hostnamein the browser.
Once the page loads, you can go and register a new account and follow the instructions. It will guide you to connect the Github Repository with the Github app you created. Once authorized, you should see the connected repositories on your Repository page.
Use the same account for all purposes. You can invite other team members to this account from the Users and Roles section.
If the setup above fails, or docker fails to start containers, please reach out to the Aviator team. And share the output of install script along with logs from docker-compose:
$ sudo docker-compose logs
k8 configuration can be setup using similar steps. This is setup still in beta, contact us if you want to use k8 help charts for setup.