Architecture
This topic provides an overview of the HCP Waypoint architecture. Some features enabled by the architectural components are not available in HCP Waypoint. Refer Constraints and Limitations for additional information.
Overview
The following diagram shows a basic overview of core Waypoint architecture.
- Developers perform tasks, such as scheduling jobs, by using the CLI or UI to call API endpoints on the Waypoint server.
- The server responds to API requests and stores data. It queues information so that other components in the Waypoint architecture can perform tasks.
- Runners wait for instructions from the server and execute operations, such as build and deploy applications to target platforms.
- Entrypoints are binaries injected into deployments that enable features, such as application configuration and log collection.
Server
The Waypoint server is fully-managed by HashiCorp in HCP. Developers interact with HCP Waypoint server, but do not maintain or configure it.
Interfaces
The Waypoint UI is built-into HCP. You can inspect the different builds, deployments, releases, and perform other operations in the HCP Waypoint UI.
You can also use the command line interface by setting up a context in your local console. The context includes the server address, credentials, and other information that enable you to connect to the server.
Refer to Usage for additional information.
Runners
Runners accept build, deploy, and release jobs and execute plugins that perform actions in the infrastructure. There are three types of runners in HCP Waypoint:
- CLI runners operate alongside the CLI and serve as the default runner.
- Remote runners (also referred to as static runners) are persistent runners installed on a platform with its associated plugin. You can target remote runners with a runner profile during task execution. Refer to Requirements for information about supported platforms.
- On-demand runners are single-use ephemeral runners created by remote runners on the platform.
Refer to Runners Overview in the Waypoint documentation for additional information.
Entrypoints
Waypoint can add a custom entrypoint to the containers it builds. Entrypoints launch your application process and communicate with the Waypoint server to source configurations and environment variables, transmit logs, and report on health.
Refer to the Waypoint Entrypoint in the Waypoint documentation for additional information.