---
layout: docs
page_title: Integrating Waypoint with CircleCI
description: |-
  How to utilize Waypoint with CircleCI as the service to run
  Waypoint to build and deploy applications
---

# Integrating Waypoint with CircleCI

We can leverage CircleCI's [orb](https://circleci.com/orbs/) 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:

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

See the CircleCI [built-in environment variables](https://circleci.com/docs/2.0/env-vars/#built-in-environment-variables) page
for a full list of variables that could be utilized in this way.

## Example

```yaml
---
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](https://circleci.com/developer/orbs/orb/circleci/waypoint)
