README
¶
Waypoint
- Website: https://www.waypointproject.io
- Tutorials: HashiCorp Learn
- Forum: Discuss
Waypoint allows developers to define their application build, deploy, and release lifecycle as code, reducing the time to deliver deployments through a consistent and repeatable workflow.
Waypoint supports a number of build methods and target platforms out of the box and more can be easily added via plugins:
- Cloud Native Buildpacks
- Docker
- Kubernetes
- AWS EC2 and ECS
- Azure Container Instances
- Google Cloud Run
- Netlify
- And many more...
Waypoint runs on Linux, Mac OS X, and Windows.
Please note: We take Waypoint's security and our users' trust very seriously. If you believe you have found a security issue in Waypoint, please responsibly disclose by contacting us at security@hashicorp.com.
Quick Start
A few quick start guides are available on the Waypoint website and on HashiCorp Learn:
- Getting Started
- Introduction
- Installation
- Docker
- Kubernetes
- Nomad
- Waypoint UI
- AWS ECS
- Azure Container Instance
- Google Cloud Run
Documentation
Full, comprehensive documentation is available on the Waypoint website:
https://www.waypointproject.io/docs
Contributing
Thank you for your interest in contributing! Please refer to CONTRIBUTING.md for guidance.
Installing Dependencies
This repository contains a couple of different ways to automate installing the
required Golang packages needed to build Waypoint locally. You can either use
NixOS, or run make tools
to setup the
required packages.
Running the unit tests
To run the entire test suite, you'll want to ensure that you've brought up
all the required containers used for testing. You can do this by leveraging
the existing docker-compose.yml
file that's in the root directory of this
project:
$ docker-compose up
After running this, you should have a local Horizon container along with a few other services needed for running the tests:
$ make test
Running individual tests
If you don't want to run the entire test suite, you can just run a singe test with go. For example, if you wanted to run the tests ListInstances, you would run:
$ go test -run ListInstances -v ./internal/server/singleprocess
Directories
¶
Path | Synopsis |
---|---|
builtin
|
|
aws/lambda
Package lambda contains components for deploying to AWS Lambda
|
Package lambda contains components for deploying to AWS Lambda |
aws/ssm
Package ssm contains components for syncing configuration with AWS SSM.
|
Package ssm contains components for syncing configuration with AWS SSM. |
azure/aci
Package aci contains components for deploying to Azure ACI.
|
Package aci contains components for deploying to Azure ACI. |
files
Package files contains a component for validating local files.
|
Package files contains a component for validating local files. |
google/cloudrun
Package cloudrun contains components for deploying to Google Cloud Run.
|
Package cloudrun contains components for deploying to Google Cloud Run. |
k8s
Package k8s contains components for deploying to Kubernetes.
|
Package k8s contains components for deploying to Kubernetes. |
netlify
Package netlify contains components for deploying to Netlify.
|
Package netlify contains components for deploying to Netlify. |
tfc
Package tfc contains components for syncing outputs of states from Terraform Cloud
|
Package tfc contains components for syncing outputs of states from Terraform Cloud |
vault
Package vault contains components for syncing secrets with Vault.
|
Package vault contains components for syncing secrets with Vault. |
vault/freeport
Package freeport provides a helper for allocating free ports across multiple processes on the same machine.
|
Package freeport provides a helper for allocating free ports across multiple processes on the same machine. |
vault/testvault
Package testvault contains helpers for working with Vault in a test environment.
|
Package testvault contains helpers for working with Vault in a test environment. |
cmd
|
|
internal
|
|
test-apps
|
|
aci
Module
|
|
tools
|
|
x
|
|