Greyhound
Greyhound makes deploying cloud environments for your applications easy. Tell greyhound what your application needs using greyhound config files, and greyhound will handle all the scary Kubernetes stuff for you.
Current Use cases
The long term goal for greyhound is to create a self-serve platform anyone can use to provision a fully-functioning cloud environment for their product. That's an ambitious goal, so we are focusing on these use cases right now.
- creating ephemeral environments for pull requests that developers can use to validate changes before merging
- creating static environments — long-lived, explicitly managed environments for staging, QA, or greenfield PoC applications
How do I configure greyhound for my repository?
Greyhound uses config files embedded in repositories to define how deployments for that repository should be executed. The core of every greyhound environment is defined in a .greyhound/config.yaml that describes the following:
| Component | Purpose |
|---|---|
| Services | Long-running workloads (web servers, APIs, workers) |
| Jobs | One-shot tasks (migrations, seed scripts) |
| Builds | Container image builds from source repos |
| Rules | Traffic routing (Ingress, HTTPRoute, GRPCRoute) |
| ConfigMaps | Non-sensitive configuration data |
| Secrets | Kubernetes secrets for sensitive data |
| SecretProviders | CSI mounts for AWS Secrets Manager |
| Infrastructure | AWS resources (IAM roles, security groups) |
Multi-App Environments
For environments composed of multiple repositories, define an applications.yaml to compose apps into a single environment.
Getting Started
- Build Your First App - go from an empty repository to a working greyhound app with a build, service, ingress, and secrets
- Pull Request Environments - learn how to create ephemeral environments for your pull requests
- Static Environments - learn how to create and manage long-lived environments
- Greyhound Configuration - learn how to create a greyhound configuration for your repository
- Real-World Example Configuration: UD1 — a real, complex example you can reference for more advanced use cases
- Greyhound Terminology - learn about all the terms and concepts greyhound uses
- Config Schema - the definitive schema reference for greyhound config