- Build
- Deploy
- Release
Build
Waypoint builds applications for any language or framework. You can use Buildpacks for automatically building common frameworks or custom Dockerfiles or other build tools for more fine-grained control.
The build step is where your application and assets are compiled, validated, and an artifact is created.
This artifact can be published to a remote registry or simply passed to the deploy step.
Deploy
Waypoint deploys artifacts created by the build step to a variety of platforms, from Kubernetes to EC2 to static site hosts.
It configures your target platform and prepares the new application version to be publicly accessible. Deployments are accessible via a preview URL prior to release.
Release
Waypoint releases your staged deployments and makes them accessible to the public. This works by updating load balancers, configuring DNS, etc. The exact behavior depends on your target platform.
The release step is pluggable, enabling you to drop in custom release logic such as blue/green, service mesh usage, and more.
$ waypoint up
Features
$ waypoint logs
[11] Puma starting in cluster mode...
[11] * Version 3.11.2 (ruby 2.6.6-p146), codename: Love Song
[11] * Min threads: 5, max threads: 5
[11] * Environment: production
[11] * Process workers: 2
[11] * Preloading application
[11] * Listening on tcp://0.0.0.0:3000
I, [2020-09-23T19:38:59.250971 #17] INFO -- : [936a952c-76b1-41f0-a4fe-ae2b77afc398] Started GET "/" for 10.36.5.1 at 2020-09-23 19:38:59 +0000
Why Waypoint
Consistency of workflows
Consistent workflow for build, deploy, and release across platforms
Confidence in deployments
Validate deployments across environments with common tooling
Extensibility with the ecosystem
Extend workflows via built-in plugins and an extensible interface