Giter VIP home page Giter VIP logo

lono's Introduction

Lono

ReadmeCI Gem Version CircleCI Code Climate Dependency Status Coverage Status

Lono is a tool to help you easily manage your CloudFormation templates. Lono handles the entire CloudFormation lifecyle. It starts with helping you craft of the templates and helps you all the way to end when you provision of the infrastructure.

  • Lono generates CloudFormation templates based on ERB ruby templates in either yaml or json format.
  • Lono takes simple env-like files to and generates the CloudFormation parameter files.
  • Lono wraps the CloudFormation api calls in a simple interface using the generated files to launch the CloudFormation stacks.

See lono.cloud for full lono documentation.

These blog posts also cover lono:

Quick Usage

It only takes a couple of commands to start using lono.

brew cask install boltopslabs/software/bolts
lono new infra
cd infra
lono generate # not needed but showing for explanation
lono cfn create example

This sets up a starter lono project called infra with example templates. You cd into the folder and call lono cfn create which automatically generates the CloudFormation template and parameter files to output and output/params and launches the stack.

Lono flowchart

lono cfn summary

Lono also provides a lono cfn management command that allows you to launch stacks from the lono templates. The lono cfn tool automatically runs lono generate internally and then launches the CloudFormation stack all in one command. Provided that you are in a lono project and have a my-stack lono template definition. To create a stack you can simply run:

$ lono cfn create my-stack

The above command will generate files to output/my-stack.json and output/params/my-stack.txt and use them to create a CloudFormation stack. Here are some more examples of cfn commands:

$ lono cfn create mystack-$(date +%Y%m%d%H%M%S) --template mystack --params mystack
$ lono cfn create mystack-$(date +%Y%m%d%H%M%S) # shorthand if template and params file matches.
$ lono cfn diff mystack-1493859659
$ lono cfn preview mystack-1493859659
$ lono cfn update mystack-1493859659
$ lono cfn delete mystack-1493859659
$ lono cfn create -h # getting help

See lono.cloud for full lono documentation.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Developing

There is a submodule in this project, so when you check out remember to sync the submodule.

$ git clone [email protected]:yourfork/lono.git
$ git submodule sync
$ git submodule update --init

lono's People

Contributors

calavera avatar elijahchancey avatar mikelorant avatar ozbillwang avatar tongueroo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.