All Projects → rapid7 → convection

rapid7 / convection

Licence: MIT License
A fully generic, modular DSL for AWS CloudFormation

Programming Languages

ruby
36898 projects - #4 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to convection

private-chain
⛓An Ethereum PoA private-chain environment on AWS.
Stars: ✭ 23 (-43.9%)
Mutual labels:  cloudformation
stackit
Cross-platform CloudFormation CLI tool for easy synchronous and idempotent stack updates
Stars: ✭ 37 (-9.76%)
Mutual labels:  cloudformation
AWS-Transit-Gateway-Demo-MultiAccount
Cloudformation template to set up AWS Transit Gateway with Multi Accounts in Organizations
Stars: ✭ 20 (-51.22%)
Mutual labels:  cloudformation
cdkgoat
CdkGoat is Bridgecrew's "Vulnerable by Design" AWS CDK repository. CdkGoat is a learning and training project that demonstrates how common configuration errors can find their way into production cloud environments.
Stars: ✭ 27 (-34.15%)
Mutual labels:  cloudformation
aem-aws-stack-builder
Adobe Experience Manager (AEM) infrastructure builder on AWS using CloudFormation stacks
Stars: ✭ 36 (-12.2%)
Mutual labels:  cloudformation
iidy
iidy (Is it done yet?) -- CloudFormation with Confidence
Stars: ✭ 46 (+12.2%)
Mutual labels:  cloudformation
cloudformation-operator
A Kubernetes operator for managing CloudFormation stacks via a CustomResource
Stars: ✭ 98 (+139.02%)
Mutual labels:  cloudformation
CloudWatch2S3
Logging infrastructure for exporting all CloudWatch logs from multiple accounts to a single S3 bucket
Stars: ✭ 31 (-24.39%)
Mutual labels:  cloudformation
cfngoat
Cfngoat is Bridgecrew's "Vulnerable by Design" Cloudformation repository. Cfngoat is a learning and training project that demonstrates how common configuration errors can find their way into production cloud environments.
Stars: ✭ 70 (+70.73%)
Mutual labels:  cloudformation
serverless-dynamodb-ttl
⚡️ Serverless Plugin to set DynamoDB TTL
Stars: ✭ 16 (-60.98%)
Mutual labels:  cloudformation
cloudformation-coverage-roadmap
The AWS CloudFormation Public Coverage Roadmap
Stars: ✭ 993 (+2321.95%)
Mutual labels:  cloudformation
cim
CIM takes the pain out of Infrastructure as Code and CloudFormation
Stars: ✭ 51 (+24.39%)
Mutual labels:  cloudformation
SecretsManagerwithCloudFormation
Implements a Lambda-backed CloudFormation Custom Resource for AWS Secrets Manager
Stars: ✭ 20 (-51.22%)
Mutual labels:  cloudformation
cfsec
Static analysis for CloudFormation templates to identify common misconfiguration
Stars: ✭ 53 (+29.27%)
Mutual labels:  cloudformation
amazon-ivs-simple-chat-web-demo
⚠️ IMPORTANT ⚠️ This repository is no longer actively maintained and will be archived at the end of 2022. A basic live chat implementation built with WebSockets, that can be used in conjunction with Amazon IVS to build compelling customer experiences for live video streams with chat use cases.
Stars: ✭ 53 (+29.27%)
Mutual labels:  cloudformation
kubernetes-ami
A simple AMI and CloudFormation for launching Kubernetes on AWS
Stars: ✭ 41 (+0%)
Mutual labels:  cloudformation
AutoSpotting
Saves up to 90% of AWS EC2 costs by automating the use of spot instances on existing AutoScaling groups. Installs in minutes using CloudFormation or Terraform. Convenient to deploy at scale using StackSets. Uses tagging to avoid launch configuration changes. Automated spot termination handling. Reliable fallback to on-demand instances.
Stars: ✭ 2,058 (+4919.51%)
Mutual labels:  cloudformation
terraform-aws-cloudformation-stack
Terraform module to provision CloudFormation Stack
Stars: ✭ 24 (-41.46%)
Mutual labels:  cloudformation
taskcat
Test all the CloudFormation things! (with TaskCat)
Stars: ✭ 974 (+2275.61%)
Mutual labels:  cloudformation
monitoring-jump-start
Monitor AWS resources with ease
Stars: ✭ 67 (+63.41%)
Mutual labels:  cloudformation

Convection Build Status

A fully generic, modular DSL for AWS CloudFormation

This gem aims to provide a reusable model for AWS CloudFormation in Ruby. It exposes a DSL for template definition, and a simple, decoupled abstraction of a CloudFormation Stack to compile and apply templates.

Contributing

Please read our Contributing guidelines for more information on contributing to Convection.

Installation

Add this line to your application's Gemfile:

gem 'convection'

And then execute:

$ bundle

Or install it yourself as:

$ gem install convection

##CLI Commands

Converging
  • To converge all stacks in your cloudfile run convection converge in the same directory as your cloudfile or use --cloudfiles and specify the path to the cloudfile. If you provide the name of your stack as a additional argument such as convection converge my-stack-name then all stacks above and including the stack you specified will be converged.
  • To converge a stack group run convection converge --stack_group YOUR_STACK_GROUP_NAME
  • To converge a specific stack or a list of stacks run convection converge --stacks stackA stackB ...
  • To converge multiple cloudfiles at the same time run use the --cloudfiles option providing the path to the cloudfiles. Example bundle exec convection converge --cloudfiles us-east-1/Cloudfile eu-central-1/Cloudfile
Diff
  • To display a diff between your local changes and the version of your stack in cloud formation of your changes run convection diff.
  • To diff the changes in a stack group run convection diff --stack_group YOUR_STACK_GROUP_NAME
  • To diff the changes for a specific stack or a list of stacks run convection diff --stacks stackA stackB ...
Help
  • To print out a list of available cli options with their descriptions run convection help.
Print
  • To print out the cloud formation template for a specific stack run convection print-template my-stack-name.
Validate
  • To validate your stack is not missing a required resource run convection validate my-stack-name.

Documentation

We highly recommend consulting the getting started guide for a in depth walk through on how to to set up your project and create and deploy a stack. Example stacks and resources are available in the convection/example folder

Additionally you can generate the Ruby API documentation by executing bundle exec rake yard.

TODO: Script to automatically create new AWS resources

Amazon publishes a spec for Cloudformation: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-resource-specification.html

We should create a tool that uses that to create convection resource code.

License

Convection is distributed under the MIT license - please refer to the LICENSE for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].