This project aims to be the structure and runtime for a fully automated hosting of moov.io services.
To get started working on this project, pull down (
git clone email@example.com:moov-io/infra) the source code and setup some tools: Golang, Terraform, kubectl, etc. The following list consists of all tools used and expected by the infra repository.
- Terraform 0.12+ | Download | Intro
- kubectl | Download | Intro
- Blackbox (Installed at
./lib/blackbox/bin, add this to
- gcloud CLI
- Docker for either Linux or macOS.
On macOS these tools can be installed with the following homebrew command:
$ brew install gpg2 jq make terraform go
The project has the following directories:
cmd/- Various command line utilities used in this project and as tests
docs/- Human readable documentation.
images/- Docker images we create and manage
lib/- Shared (Kubernetes) resources across environments
We support a local development environment to allow anyone the ability to run Moov's application stack locally on a machine. This currently requires a few tools to be installed, such as:
- Tilt - Install Guide
Once these tools are setup run the following commands from the root of this repository.
$ cd envs/dev $ tilt up
This brings up a prompt that looks like the following image. Use the arrow keys to move between containers and
<enter> to pull up a specific container's log.
We run several kinds of tests against this repository. Linters/validators (over Kubernetes, Terraform, Prometheus configs) as well as Docker image builds. To run all these:
$ make test
Note: To run these tests you need Docker installed.
- Google Cloud (GKE)
- In-repo Secrets (Blackbox)
- Load balancing / Routing (Traefik)
- Downloading fuzz data
|Google Group moov-users||The Moov users Google group is for contributors other people contributing to the Moov project. You can join them without a google account by sending an email to firstname.lastname@example.org. After receiving the join-request message, you can simply reply to that to confirm the subscription.|
|Twitter @moov_io||You can follow Moov.IO's Twitter feed to get updates on our project(s). You can also tweet us questions or just share blogs or stories.|
|GitHub Issue||If you are able to reproduce an problem please open a GitHub Issue under the specific project that caused the error.|
|moov-io slack||Join our slack channel to have an interactive discussion about the development of the project.|
Apache License 2.0 See LICENSE for details.