New Interested in participating in the HCP Waypoint Private Beta Program? Apply here
  • Infrastructure
    • terraform
    • packer
  • Networking
    • consul
  • Security
    • vault
    • boundary
  • Applications
    • nomad
    • waypoint
    • vagrant
  • HashiCorp Cloud Platform

    A fully managed platform to automate infrastructure on any cloud with HashiCorp products.

    • consul
    • terraform
    • vault
    • packerbeta
    Visit cloud.hashicorp.com
  • Overview
  • Tutorials
  • Docs
  • CLI
  • Plugins
  • Community
GitHub
Download
    • v0.8.x (latest)
    • v0.7.x
    • v0.6.x
    • v0.5.x
    • v0.4.x
    • v0.3.x
    • v0.2.x
    • v0.1.x
    • Overview
      • Overview
      • Helm
      • Heroku, Vercel, etc.
      • Kubernetes
  • Getting Started
    • Overview
    • Compatibility Promise
    • Protocol Version Table
    • Release Notifications
      • Overview
      • Upgrade to 0.2.0
      • Upgrade to 0.3.0
      • Upgrade to 0.4.0
      • Upgrade to 0.5.0
      • Upgrade to 0.6.0
      • Upgrade to 0.7.0
      • Upgrade to 0.8.0

    • Install
    • Externally Built Images
    • Building Container Images
    • Helm Deployment
    • YAML-Free Deployment
    • YAML Directory Deployment
    • Resource Status
    • ConfigMaps and Secrets

    • Overview
    • Git Integration
    • Remote Operations
    • Overview
    • Build
    • Deploy
    • Release
    • Hooks
    • Labels
    • Workspace and Label Scoping
    • Overview
      • Overview
      • Input Variables
      • External Data
      • artifact
      • deploy
      • entrypoint
      • labels
      • path
      • workspace
      • Overview
      • Full Reference
      • Templating
      • Overview
      • Expressions
      • JSON Syntax
    • app
    • build
    • config
    • deploy
    • hook
    • plugin
    • registry
    • release
    • runner
    • url
    • use
    • variable
  • URL Service
  • Logs
  • Exec
    • Overview
    • Dynamic Values
    • Files
    • Internal Values
    • Workspace and Label Scoping
    • Overview
      • Overview
      • OIDC
      • Overview
      • Maintenance
      • Production
      • Security
    • Express Server Install
    • Overview
    • Configuration
    • Profiles
    • On-Demand Runner
    • Additional Runners
  • Workspaces
  • Plugins
  • Triggers

    • Overview
      • Overview
      • Registering Plugin Components
      • Handling Configuration
      • Implementing the Builder Interface
      • Compiling the Plugin
      • Creating an Example Application
      • Testing the Plugin
    • Initializing the SDK
    • Passing Values Between Components
      • Overview
      • Authenticator
      • ConfigSourcer
      • Configurable
      • ConfigurableNotify
      • Builder
      • Registry
      • Platform
      • ReleaseManager
      • Destroy
      • Status
      • Default Parameters
      • Overview
    • Overview
    • Disable
    • Overview
    • GitHub Actions
    • GitLab CI/CD
    • CircleCI
    • Jenkins
  • Troubleshooting
  • Glossary

    • Overview
    • Architecture
    • Operation Execution
  • Roadmap

The Waypoint website is being redesigned to help you find what you are looking for more effectively.

Type '/' to Search

»runner Stanza

Placementrunner

The runner stanza configures a project for remote operations, including configuring how to source a project's source code from Git and configuring polling.

The settings in this stanza only take effect when waypoint init -update is called.

The runner stanza is completely optional. The settings specified in the runner stanza can also be specified using the waypoint project apply command or via the UI by creating or modifying a project.

runner {
  enabled = true

  data_source "git" {
    url  = "https://github.com/hashicorp/waypoint-examples.git"
    path = "docker/nodejs"
  }
}
runner {
  enabled = true

  data_source "git" {
    url  = "https://github.com/hashicorp/waypoint-examples.git"
    path = "docker/nodejs"
  }
}

The above example enables remote operations and configures the project to clone data from a GitHub repository.

Note: these settings are usually configured via the CLI or UI. We recommend configuring things such as data sources in the CLI or UI to avoid tying your waypoint.hcl to a specific repository or putting secrets such as Git auth information in your waypoint.hcl file. See CLI or UI configuration for more details.

»CLI or UI Configuration

All of the settings in the runner stanza can be specified via the CLI using waypoint project apply or via the UI in the project create or modify screens. This approach is preferable since it avoids having to put secrets in your waypoint.hcl file and makes your waypoint.hcl more portable since it doesn't specify a repository.

An example using the CLI is shown below. The example is admittedly a bit unwieldy and not very user-friendly. The recommended approach is to use the web UI.

$ waypoint project apply \
   -data-source=git \
   -git-auth-type=ssh \
   -git-private-key-path=$HOME/.ssh/id_ed25519 \
   -git-url=git@github.com:hashicorp/waypoint-examples.git \
   -waypoint-hcl=waypoint.hcl \
   my-project
$ waypoint project apply \
   -data-source=git \
   -git-auth-type=ssh \
   -git-private-key-path=$HOME/.ssh/id_ed25519 \
   -git-url=git@github.com:hashicorp/waypoint-examples.git \
   -waypoint-hcl=waypoint.hcl \
   my-project

»runner Parameters

»Required

The runner stanza has no required parameters.

»Optional

  • enabled (boolean: false) - This must be set to true to enable remote operations from the CLI. This only affects the CLI. Remote operations triggered via Git polling or directly via the API are still allowed.

  • data_source (data_source: nil) - Configuration for how to fetch the source for this project, such as from Git.

  • poll (poll: nil) - Settings for polling the data source for changes and automatically running waypoint up. By default polling is disabled.

»data_source Parameters

»Label

The data_source stanza takes a label, which is "git" in the example above. The label of the stanza is the data source type to use. Currently, the only supported value is "git", but this could be extended in the future to support other data source types.

»Required Parameters

»Git

  • url (string) - The URL for the Git repository. This can be any URL supported by git clone. For example: https://github.com/hashicorp/waypoint-examples.git or git@github.com:hashicorp/waypoint-examples.git.

»Optional Parameters

»Git

  • path (string: "") - A relative path within the Git repository where the application is. This is used to determine the path to look for a waypoint.hcl and sets the working directory when executing commands. This defaults to the repository root.

  • username (string: "git") - Username for basic auth or SSH. The default value is "git". For GitHub basic auth, this value can be any non-empty value. GitHub basic auth only uses the password.

  • password (password: "git") - Password for basic auth. For GitHub, this is typically a personal access token.

  • key (string: "") - A PEM-encoded SSH private key to use for SSH authentication. A valid value usually starts with -----BEGIN RSA PRIVATE KEY----- or something similar.

  • key_password (string: "") - The password for the SSH private key if it is encrypted. This is only required if the private key is encrypted.

  • ref (string: "HEAD") - The Git ref that is pulled for operations on this project. This can be a branch name, tag name, or a fully qualified Git ref such as refs/pulls/1234. This defaults to pulling HEAD, the latest commit on the default branch.

  • recurse_submodules (int: 0) - The maximum depth to recursively clone submodules. A value of zero disable submodule cloning. This defaults to zero.

»poll Parameters

»Optional Parameters

  • enabled (boolean: false) - True to enable polling. Polling requires that a valid datasource is configured.

  • interval (string: "30s") - The interval between polling for changes. This defaults to 30 seconds.

github logoEdit this page

Using Waypoint

The best way to understand what Waypoint can enable for your projects is to give it a try.

Waypoint tutorials
Waypoint documentation
Tutorial

Get Started - Kubernetes

Build, deploy, and release applications to a Kubernetes cluster.

View
Tutorial

Introduction to Waypoint

Waypoint enables you to publish any application to any platform with a single file and a single command.

View

Waypoint is maintained by HashiCorp, Inc.

View Code of Conduct
DocumentationCLI ReferenceTutorialsIntegrations
All systems normal