README.md in kite-0.2.0 vs README.md in kite-1.0.0
- old
+ new
@@ -5,11 +5,11 @@
[![codecov](https://codecov.io/gh/helios-technologies/kite/branch/master/graph/badge.svg)](https://codecov.io/gh/helios-technologies/kite)
Kite is a CLI for scaffolding and managing devops modules
The main purpose is templating of various tools for devops around terraform, bosh, ansible
-Currently Kite support one Stack on both AWS and GCP.
+Currently Kite supports modular stacks(Kite modules) on both AWS and GCP.
We plan in adding community stack using a simple template repository structure.
## Installation
@@ -28,37 +28,61 @@
$ gem install kite
## Usage
To start using kite for bootstraping your infrastructure
-follow the steps below :
+follow the steps below.
+[Note] Most kite commands can be referred by their first letter(for example kite generate environment test == kite g e test)
### Create your Infrastructure as Code base repository
Create a new kite project using:
```
$ kite new PROJECT_NAME
```
-### Configure your cloud and credentials
+### Generate an environment(e.g. development/test/production)
-- Fill out the `config/cloud.yml` file with your credentials.
-- For BOSH you'll need an SSH key, to generate one, use `ssh-keygen -f *path_to_key*`
+Kite environments are separated workspaces with their own credentials, variables and modules.
-### Generate your infrastructure using terraform
+Generate an environment
-Generate the cloud IaC needed with
+```
+$ kite generate environment *env_name* --provider=aws|gcp
+```
+If you want to change the credentials for an environment, edit `config/cloud.yml` and regenerate environment with the same command.
+
+Now the environment should be generated at `config/environments/*env_name*`
+
+### Add a module to your environment
+
+To add a Kite module to your environment, you should first initialize it:
+
```
-$ kite generate cloud --provider=aws|gcp
+ kite module init https://url.for/your/module --env *env_name*
```
-you can now review and apply your terraform files.
+This should clone module's source files into `modules/*module_name*` and create a `vars.*module_name*.yml` file with all variables needed by the module.
-### Deploy the default stack (BOSH / Concourse / Vault / Kubernetes)
+Fill in `vars.*module_name*.yml` with correct values and render the module:
-Continue with instructions from newly generated README.md
+```
+ kite module render modules/*module_name* --env *env_name*
+```
+
+### Apply Terraform configuration from the environment
+
+Set your default gcloud credentials using
+
+```
+ gcloud auth application-default login
+```
+
+```
+ kite terraform apply --env *env_name*
+```
## Getting help
To list all Kite commands, use