Skip to main content

A small utility to help do start, stop and tag actions in an IaC stack for cost optimization purpose.

Project description

A small utility to help do start, stop and tag actions in an IaC stack for cost optimization purpose.
Stackoperator now support CloudFormation,Terraform stack,as well Resource Group.
It's a great idea to use stackoperator with Instance Scheduler on AWS solution by tagging stoppable resources created by IaC stack.

Use cases:

  • During the POC testing process of solutions deployed using CloudFormation or Terraform, toggle related resources with one click to save testing costs.
  • For solutions deployed using CloudFormation or Terraform, save operation costs by tagging toggleable resources and controlling their runtime using the Instance Scheduler on AWS solution.
  • Batch Start,Stop and Tag toggleable resources in a resource group.

Prerequisites:

Before using stackoperator script, please make sure correct AWS credential in envs, using aws-vault to store and switch AWS credentials is recommend.

Install

pip install stackoperator

Upgrade

pip install --upgrade stackoperator

Usage

Start stopped resources in a given CloudFormation Stack

startcfnstack --stackname <CloudFormation_Stack_Name>  

Stop stoppable running resources in a given CloudFormation Stack

stopcfnstack --stackname <CloudFormation_Stack_Name>  

Tag stoppable running resources in a given CloudFormation Stack

tagcfnstack --tags "Key1=Value1,Key2=Value2" --stackname <CloudFormation_Stack_Name>  

Start stopped resources in Terraform Stack (at current path)

starttfstack [--statefile <Terraform_Stack_StateFile>]  

Stop stoppable running resources in Terraform Stack (at current path)

stoptfstack [--statefile <Terraform_Stack_StateFile>]  

Tag stoppable running resources in Terraform Stack (at current path)

tagtfstack --tags "Key1=Value1,Key2=Value2" [--statefile <Terraform_Stack_StateFile>]  

Start stopped resources in Resrouce Group

startresourcegroup --groupname <Resource_Group_Name>   

Stop stoppable running resources in Resource Group

startresourcegroup --groupname <Resource_Group_Name>    

Tag stoppable running resources in Resource Group

tagresourcegroup --tags "Key1=Value1,Key2=Value2" --groupname <Resource_Group_Name>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stackoperator-0.2.0.tar.gz (6.9 kB view hashes)

Uploaded Source

Built Distribution

stackoperator-0.2.0-py3-none-any.whl (8.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page