The seiton (整頓) tidies up your AWS Resources.
Installation
Add this line to your application's Gemfile:
gem 'seiton'And then execute:
$ bundleOr install it yourself as:
$ gem install seitonUsage
help
$ bundle exec seiton --help
Commands:
seiton ami # Delete the EC2 AMI.
seiton ebs_snapshot # Delete the EC2 Snapshot.
seiton eip # Delete the Elastic IP.
seiton help [COMMAND] # Describe available commands or one specific command
seiton init # Initialize seiton.
seiton instance # Delete the EC2 Instance.
seiton rds_snapshot # Delete the RDS Snapshot.
seiton sqs_queue # Delete the SQS Queue.
seiton version # Print the version number.
Options:
-b, [--before-datetime=BEFORE_DATETIME] # Specify the date and time for deletion (delete resources before the specified date and time.)
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
[--ignores-file=IGNORES_FILE] # Specify file name for resources list to be undeleted.
-c, [--check], [--no-check] # Check the resources to be deleted.Init
help
$ bundle exec seiton --help init
Usage:
seiton init
Initialize seiton.init
$ bundle exec seiton init- Create a
checkdirectory in the current directory - Create a spec_helper.rb in the
checkdirectory - Create a Rakefile in the current directory
Delete EC2 AMI
help
$ bundle exec seiton --help ami
Usage:
seiton ami
Options:
-b, [--before-datetime=BEFORE_DATETIME] # Specify the date and time for deletion (delete resources before the specified date and time.)
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the EC2 AMI.check
bundle exec seiton ami --before-datetime=2020/01/01 --checkdelete
bundle exec seiton ami --before-datetime=2020/01/01ignore
bundle exec seiton ami --before-datetime=2020/01/01 --ignores=xxxx yyyy zzzzTesting for delete complete
bundle exec rake check:ec2_images # AMI
bundle exec rake check:ebs_snapshots # SnapshotDelete EIP
help
$ bundle exec seiton --help eip
Usage:
seiton eip
Options:
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the Elastic IP.check
bundle exec seiton eip --checkdelete
bundle exec seiton eipignore
bundle exec seiton eip --ignores=xxx.xxx.xxx.xxx yyy.yyy.yyy.yyyTesting for delete complete
bundle exec rake check:ec2_eips # Elastic IPDelete EC2 Instance
help
$ bundle exec seiton --help instance
Usage:
seiton instance
Options:
-b, [--before-datetime=BEFORE_DATETIME] # Specify the date and time for deletion (delete resources before the specified date and time.)
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the EC2 Instance.check
bundle exec seiton instance --before-datetime=2020/01/01 --checkdelete
bundle exec seiton instance --before-datetime=2020/01/01ignore
bundle exec seiton instance --before-datetime=2020/01/01 --ignores=tag_name instance_idTesting for delete complete
bundle exec rake check:ec2_instances # EC2 Instance
bundle exec rake check:ec2_volumes # EC2 VolumeDelete RDS Snapshot
help
$ bundle exec seiton --help rds_snapshot
Usage:
seiton rds_snapshot
Options:
-b, [--before-datetime=BEFORE_DATETIME] # Specify the date and time for deletion (delete resources before the specified date and time.)
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the RDS Snapshot.check
bundle exec seiton rds_snapshot --before-datetime=2020/01/01 --checkdelete
bundle exec seiton rds_snapshot --before-datetime=2020/01/01ignore
bundle exec seiton rds_snapshot --before-datetime=2020/01/01 --ignores=xxxx yyyy zzzzTesting for delete complete
bundle exec rake check:db_snapshots # RDS SnapshotDelete EC2 Snapshot
help
$ bundle exec seiton --help ebs_snapshot
Usage:
seiton ebs_snapshot
Options:
-b, [--before-datetime=BEFORE_DATETIME] # Specify the date and time for deletion (delete resources before the specified date and time.)
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the EC2 Snapshot.check
bundle exec seiton ebs_snapshot --before-datetime=2020/01/01 --checkdelete
bundle exec seiton ebs_snapshot --before-datetime=2020/01/01ignore
bundle exec seiton ebs_snapshot --before-datetime=2020/01/01 --ignores=xxxx yyyy zzzzTesting for delete complete
bundle exec rake check:ebs_snapshots # EC2 SnapshotDelete SQS Queue
help
$ bundle exec seiton help sqs_queue
Usage:
seiton sqs_queue
Options:
-i, [--ignores=one two three] # Specify resources to be undeleted (you can specify multiple resources).
-c, [--check], [--no-check] # Check the resources to be deleted.
Delete the SQS Queue.check
bundle exec seiton sqs_queue --checkdelete
bundle exec seiton sqs_queueignore
bundle exec seiton sqs_queue --ignores=xxxx yyyy zzzzTesting for delete complete
bundle exec rake check:sqs_queue # SQS QueueDevelopment
After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment. Run bundle exec seiton to use the gem in this directory, ignoring other installed copies of this gem.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/seiton.