Skip to content

Commit f3667c9

Browse files
authored
Merge pull request #58 from kbst/updatereadme
Improve README
2 parents 292addd + 753110e commit f3667c9

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

README.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,27 @@
1-
# Terraform Kubestack
1+
# Kubestack Gitops Framework
22

3-
Terraform modules that implement the [Kubestack, fast path to production on Kubernetes](https://www.kubestack.com).
3+
[Kubestack is a Gitops framework](https://www.kubestack.com) for managed Kubernetes services based on Terraform and Kustomize. It is designed to:
44

5-
For the easiest way to get started with Kubestack, [try the quickstart](https://www.kubestack.com/infrastructure/documentation/quickstart).
5+
* provide full testability by clearly separating infrastructure and application environments through the ops- and apps-cluster pair
6+
* ensure K8s cluster config, surrounding infrastructure (e.g. DNS, IPs) and cluster services (e.g. Ingress) are maintained together
7+
* unify application environments across cloud providers
8+
* enable a sustainable and fully automated Gitops workflow
9+
10+
For the easiest way to get started with Kubestack, [visit the quickstart](https://www.kubestack.com/infrastructure/documentation/quickstart). The quickstart will bootstrap a user repository and a first cluster pair. See the `tests` for an example of how to extend this towards multi-cluster and/or multi-cloud.
11+
12+
## Repository Layout
13+
14+
This repository holds Terraform modules in directories matching the respective provider name, e.g. `aws`, `azurerm`, `google`. Additionally `common` holds the modules that are used for all providers. Most notably the `metadata` module that ensures a consistent naming scheme and the `cluster_services` module which integrates Kustomize into the Terraform apply.
15+
16+
Each cloud provider specific module directory always has a `cluster` and a `_modules` directory. The cluster module is user facing and once Kubestack is out of beta the goal is to not change the module interface unless the major version changes. The cluster module then internally uses the module in `_modules` that holds the actual implementation.
17+
18+
The `quickstart` directory is home to the source for the zip files that are used to bootstrap the user repositories when following the quickstart documentation.
19+
20+
`tests` holds a set of happy path tests that also act as a example of how to do multiple cluster pairs across multiple clouds from one repository.
621

722
## Development Workflow
823

9-
1. Push your branch to trigger CI/CD or install `cloud-build-local` using e.g. `gcloud components install cloud-build-local` and run:
24+
To build a set of quickstart zip files push your branch to trigger CI/CD or install `cloud-build-local` using e.g. `gcloud components install cloud-build-local` and run:
1025

1126
```
1227
rm -rf _build && cloud-build-local \

0 commit comments

Comments
 (0)