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