LogoLogo
HomeAbout usSign up
  • Introduction
  • AttentionSet
    • AttentionSet Best Practices
    • How to View AttentionSet for Others
    • How to Manually Change Attention
    • AttentionSet Chrome extension
    • Attention reasons
    • AttentionSet Slack Home Page
  • Releases
    • Getting Started with Releases
    • Concepts for Releases
      • Terminology for Releases
      • Two-step delivery
      • Rollbacks
      • Cherry-picks
      • Dogfood, Canary and Rollout
      • Release notes
    • How-to Guides for Releases
      • How to Create a Release Project
      • How to Configure Environments
      • How to Create a Scheduled Release
      • Create Custom Workflow Parameters
      • How to Manage Cherry-Picks
      • How to Resolve a Cherry-Pick Failure
      • Working with your CI / CD
        • GitHub Actions workflow
        • Buildkite workflow
    • API Reference for Releases
  • FlexReview
    • Getting Started with FlexReview
    • How to Onboard a Large Org
    • Concepts for FlexReview
      • Read-Only Mode in FlexReview
      • Recursive Ownership in FlexReview
      • Reviewer suggestion and assignment
      • FlexReview Teams and SLO Management
      • Validation in FlexReview
    • How-to Guides for FlexReview
      • How to Get a Reviewer Suggestion
      • How to Exclude Reviewers
      • How to Set Up Team Rules
      • Whitelist Teams for Review Assignment
      • Troubleshoot Reviewer Assignment
      • PagerDuty Integration for Reviewers
      • How to Set Up FlexReview Validation
      • Recommended Slack Notification Settings
      • How to Exclude OOO Reviewers
    • FlexReview Reference
      • Configuration
      • Slash commands
      • Expert scoring algorithms
      • Slack Notifications
      • Out of Office User Exclusion
    • FlexReview Roadmap
  • MergeQueue
    • Getting Started with MergeQueue
    • Merge Rules
    • How-to Guides for MergeQueue
      • How to Configure Base Branches
      • How to Customize Required Checks
      • How to Set Up Fast-Forwarding
      • How to Set Up Pre-Queue Conditions
      • How to Queue / Dequeue via API
      • Pause / Unpause Queues via API
      • Slash Commands Using GitHub Comments
      • How to Customize Sticky Comments
      • Require an Aviator Status Check
      • Backport a PR
      • How to Configure ChangeSets
      • Custom Integrations
        • GitHub Integration
      • How to Create Personal Access Tokens
      • How to Set Up SAML Configuration
        • Microsoft Active Directory
      • How to Merge Stacked PRs
      • How to Block Pull Request Mergeing with Slash Commands
    • Concepts for MergeQueue
      • Queue Modes
      • Pull Request Lifecycle
      • Analytics
      • Parallel Mode
      • CI Status Requirements
      • MQ Created Branches
      • Batching
      • Managing flaky tests
      • Fast-forwarding
      • Pre-Queue Conditions
      • Sticky Comments
      • Backporting
      • Paused Queues
      • Affected Targets
        • Directory-Based Affected Targets
        • nx based affected targets
        • GitHub Actions based Affected Targets
      • ChangeSets
        • Global CI Validation
        • ChangeSets FAQs
      • Priority Merges
        • Instant Merges
      • Merge Rules Audit Trail
      • Timeline
      • Ready Hook
      • Reduce Queue Failures From Staleness
    • MergeQueue References
      • Configuration Schema
      • Configuration Reference MergeQueue
      • GitHub Slash Commands
      • Status Codes
  • Stacked PRs CLI
    • Quickstart for Stacked PRs CLI
    • CLI Installation
    • How-to Guides for Stacked PRs CLI
      • How to Create Stacked PRs in CLI
      • How to Navigate & Modify Stacked PRs
      • Add Commits in the Stack
      • How Split a Commit in CLI
      • How to Split and Fold Pull Requests
      • How to Rename a Branch in CLI
      • How to Adopt a Branch in CLI
      • Orphan a Branch with Aviator CLI
      • How to Do Git Subcommand Aliasing
      • How to Create an Access Token
      • How to Set Up Auto Completion in CLI
      • How to Use Editor Plugins in CLI
    • Concepts for StackedPRs CLI
    • How to Rebase and Sync with GitHub
    • Configuration for StackedPRs CLI
    • Stacked PRs FAQs and Troubleshooting
      • Working with Aviator CLI
      • Default Branch Update Master to Main
    • Manpages for Stacked PRs CLI
      • av(1)
      • av-adopt Command Guide
      • av-auth-status(1) in CLI
      • av-stack-branch(1) in CLI
      • av-commit-create(1) in CL
      • av-stack-diff(1) in CLI
      • av-fetch(1) in CLI
      • av-git-interaction Command Guide
      • av-init(1) in CLI
      • av-stack-next(1) in CLI
      • av-orphan Command Guide
      • av-pr-status(1) in CLI
      • av-pr-create(1) in CLI
      • av-stack-prev(1) in CLI
      • av-stack-reorder(1) in CLI
      • av-reparent Command Guide
      • av-restack Command Guide
      • av-commit-split(1) in CLI
      • av-switch Command Guide
      • av-stack-sync(1) in CLI
      • av-stack-tidy(1) in CLI
      • av-stack-tree(1) in CLI
    • Aviator CLI Major Releases
      • Aviator CLI v0.1.0 Release Notes
  • Aviator's Chrome Extension
  • Pilot Automated Actions
    • Scheduled Events
    • JavaScript Execution
    • Pilot Automated Actions Reference
      • GitHub Reference
      • MergeQueue Reference
      • Slack Reference
  • API and Integrations
    • Slack Integration Guide
    • GraphQL API Quickstart
    • Prometheus Metrics Setup for GCP
    • Reference
      • JSON API
      • GraphQL
      • Webhooks
      • Monitoring Metrics
  • Manage
    • Access Management
    • GitHub App Permissions
    • Security
      • Aviator Agents Data Usage & Retention Policy
    • On-Premise Installation
      • GitHub App for On-Prem
      • GitHub OAuth for On-Prem
      • Use Helm Instructions
      • Use Docker Compose Instructions
      • Prometheus endpoint
      • Slack Integration for On-Premise
      • Google SSO Login for On-Prem
    • FAQs
      • Troubleshooting GitHub app connection
      • MergeQueue FAQs
      • Billing FAQs
Powered by GitBook
On this page
  • Authentication
  • 2. Setup Buildkite Webhook
  • Build workflow
  • Option A - Using Two-step workflow
  • Option B - Skipping build step
  • Deploy workflow

Was this helpful?

  1. Releases
  2. How-to Guides for Releases
  3. Working with your CI / CD

Buildkite workflow

Use our guide to set up Buildkite build and deploy steps to manage releases in Aviator. Authentication and Buildkite Webhook configuration instructions.

PreviousGitHub Actions workflowNextAPI Reference for Releases

Last updated 10 months ago

Was this helpful?

Use this guide to configure Buildkite build and deploy steps to manage releases in Aviator. To use Aviator Releases, we recommend having for the build and deploy workflows. You may still use it as a single step, in which case the creation of Release (the build part) will be a no-op.

Authentication

Buildkite doesn’t have a concept of Apps or bot accounts. Because of this, we need to take an access token for a user.

Step 1: Go to “Personal Settings” from the top-right corner

Step 2: Click “API Access Tokens”

Step 3: Click “New API Access Token”

Name the token and pick your organization

Choose “Read Builds”, “Write Builds”, and “Read Pipelines”.

Click “Create New API Access Token”

2. Setup Buildkite Webhook

Go to your Buildkite organization’s settings from the top bar.

Go to “Notification Services”

Add “Webhook”

Choose “build.schedules”, “build.running”, “build.failing”, and “build.finished”.

Click “Add Webhook Notification”.

Build workflow

Option A - Using Two-step workflow

Connecting with Aviator

On Buildkite pipeline page, copy the pipeline’s URL

Go to the release project config for the build pipeline configuration. Choose Buildkite and paste the organization and pipeline names as shown in the copied URL.

Click “SAVE”.

Using Environment variables

Aviator sends the following parameters to Buildkite as environment variables when triggering the workflow:

AVIATOR_RELEASE_CUT_ID - Aviator’s internal database ID associated with the Release.

AVIATOR_RELEASE_CANDIDATE_VERSION - A unique version string tied to the Release Candidate. This can be used to tag the built artifacts.

AVIATOR_RELEASE_CUT_COMMIT_HASH - commit SHA associated with the release candidate version. You should checkout this commit SHA in the build pipeline to trigger the workflow.

Option B - Skipping build step

If you want to skip the Build step entirely, select “Not Configured” in the Build step:

In this configuration mode, as soon as a Release is cut, the build is marked as completed. Then you can set up deployment as a separate step.

Deploy workflow

Connecting with Aviator

Similar to the Build step, copy the Organization Slug and Pipeline slug in the Deploy environment configuration:

Using Environment variables

Aviator sends the following parameters to Buildkite as environment variables when triggering the workflow:

AVIATOR_RELEASE_CUT_COMMIT_HASH - commit SHA associated with the release candidate version. You should checkout this commit SHA in the build pipeline to trigger the workflow.

Now you should be ready to use Aviator Release Management!

Step 4: Copy the created access token, and go to , paste the created access token to the Buildkite integration.

Name this webhook and put to the webhook URL.

AVIATOR_DEPLOYMENT_ID - Aviator’s internal database ID associated with the .

AVIATOR_RELEASE_CANDIDATE_VERSION - A unique version string tied to the . This can be used to tag the built artifacts.

https://app.aviator.co/settings/workspace/integrations
https://app.aviator.co/api/buildkite/webhook
separate steps
Deployment
Release Candidate
Buildkite Organization and Pipeline slug
Skip the build step
Deployment configuration for Buildkite