»Integrating Waypoint with CircleCI

We can leverage CircleCI's orb concept to simplify configuring the deployment of applications.

The example demonstrates the main steps:

  1. Set-up the dependencies Waypoint might use. This could be a Kubernetes context for a more advanced application, or in the below example, a Docker daemon to run applications on.
  2. Install and Initalize Waypoint with waypoint/init. This command will install the waypoint CLI, start up a remote docker instance and run waypoint init.
  3. Run the build, deploy, and release. We can leverage the orb's up command to do so

»Workspaces

This example assumes the use of a single default workspace. If this was in a job triggered by a GitHub commit or pull request and may be an ephemeral development environment, you may want to interpolate the relevant Git ref for the workspace parameter, as demonstrated below:

steps:
  - waypoint/up:
      workspace: $CIRCLE_BRANCH
steps:  - waypoint/up:      workspace: $CIRCLE_BRANCH

See the CircleCI built-in environment variables page for a full list of variables that could be utilized in this way.

»Example

---
version: 2.1

orbs:
  waypoint: circleci/waypoint@1.0.0

jobs:
  build:
    executor: waypoint/default
    environment:
      WAYPOINT_SERVER_ADDR: ''
      WAYPOINT_SERVER_TOKEN: ''
      WAYPOINT_SERVER_TLS: '1'
      WAYPOINT_SERVER_TLS_SKIP_VERIFY: '1'
    steps:
      - checkout
      - waypoint/init
      - waypoint/up
---version: 2.1
orbs:  waypoint: circleci/waypoint@1.0.0
jobs:  build:    executor: waypoint/default    environment:      WAYPOINT_SERVER_ADDR: ''      WAYPOINT_SERVER_TOKEN: ''      WAYPOINT_SERVER_TLS: '1'      WAYPOINT_SERVER_TLS_SKIP_VERIFY: '1'    steps:      - checkout      - waypoint/init      - waypoint/up

Orb registry page