qaz

qaz—A CLI tool for Templating & Managing stacks in AWS Cloudformation

View the Project on GitHub daidokoro/qaz

GitHub stars Build Status Go Report Card

Qaz is a cloud native AWS Cloudformation Template Management CLI tool that focuses on simplifying the process of deploying infrastructure on AWS via Cloudformation by utilising the Go Templates Library and custom functions to generate diverse and configurable templates.

For Qaz, being cloud native means having no explicit local dependencies and utilising resources within the AWS Ecosystem to extend functionality. As a result Qaz supports various methods for dynamically generating infrastructure via Cloudformation.

Qaz emphasizes minimal abstraction from the underlying AWS Cloudformation Platform. It instead enhances customisability and re-usability of templates through dynamic template creation and logic.

Features:

Installation

If you have Golang installed:

go get github.com/daidokoro/qaz

On Mac or Linux:

curl https://raw.githubusercontent.com/daidokoro/qaz/master/install.sh | sh

Or, you may need sudo:

curl https://raw.githubusercontent.com/daidokoro/qaz/master/install.sh | sudo sh

Requirements

qaz requires:

Quickstart

asciicast

Checkout the Wiki for more on how Qaz works!

Content_

See examples folder for more examples of usage. More examples to come.

$ qaz

Usage:
  qaz [flags]
  qaz [command]

Available Commands:
  change      Change-Set management for AWS Stacks
  check       Validates Cloudformation Templates
  completion  Output shell completion code for the specified shell (bash or zsh)
  deploy      Deploys stack(s) to AWS
  exports     Prints stack exports
  generate    Generates template from configuration values
  git-deploy  Deploy project from Git repository
  git-status  Check status of deployment via files stored in Git repository
  help        Help about any command
  init        Creates an initial Qaz config file
  invoke      Invoke AWS Lambda Functions
  lint        Validates stack by calling cfn-lint
  outputs     Prints stack outputs
  protect     Enables stack termination protection
  set-policy  Set Stack Policies based on configured value
  shell       Qaz interactive shell - loads the specified config into an interactive shell
  status      Prints status of deployed/un-deployed stacks
  terminate   Terminates stacks
  update      Updates a given stack
  values      Print stack values from config in YAML format

Flags:
      --debug            Run in debug mode...
  -h, --help             help for qaz
      --no-colors        disable colors in outputs
  -p, --profile string   configured aws profile (default "default")
      --version          print current/running version

Use "qaz [command] --help" for more information about a command.

Roadmap and status

Qaz is now in beta, no more breaking changes to come. The focus from this point on is stability.

TODO:

Credits

Contributing

Fork -> Patch -> Push -> Pull Request

Pull requests welcomed….