Skip to content

Instantly share code, notes, and snippets.

View masaomoc's full-sized avatar

Masao Mochizuki masaomoc

View GitHub Profile
def make_parent_path(variables, prefix='')
h = {}
variables.each do |k,v|
key = "#{prefix}#{k.to_s}"
if v.is_a? Hash
h.merge!(make_parent_path(v, "#{key}."))
else
h[key] = v
end
end
@masaomoc
masaomoc / tmpec2.rb
Last active August 29, 2015 14:08
Launch AmonLinux from cli and terminate automatically
#!/usr/bin/env ruby
# Quickly launch Amazon Linux EC2 instance in Default VPC.
# Launched EC2 automatically terminates itself after 1 day.
# Required to be set the below environment variables
# - AWS_DEFAULT_REGION
# - AWS_ACCESS_KEY
# - AWS_SECRET_KEY
#
# Usage : ruby launch.rb
@masaomoc
masaomoc / collect_event.rb
Last active August 29, 2015 14:06
Collect All EC2 Scheduled events
#!/usr/bin/env ruby
# EC2のイベント通知を検出するスクリプト
require 'aws-sdk-v1'
require 'credential_traverser'
require 'thread'
#AWS.config(logger: Logger.new($stdout), log_level: :debug)
CredentialTraverser.traverse do |profile|
@masaomoc
masaomoc / arn.rb
Last active August 29, 2015 14:06
get RDS ARN for tags API
require 'aws-sdk'
# return 12 digits account number
# if failed, raise RuntimeError
def get_account_id
iam = AWS::IAM::Client.new
begin
iam.get_user.user.arn =~ /arn:aws:iam::(\d{12}):user\/.*/
rescue => e
e.message =~ /arn:aws:iam::(\d{12}):user\/.*/
@masaomoc
masaomoc / launch.rb
Last active August 29, 2015 14:05
Quick Launch Amazon Linux
#!/usr/bin/env ruby
# Quickly launch Amazon Linux EC2 instance in Default VPC.
# Required to be set the below environment variables
# - AWS_DEFAULT_REGION
# - AWS_ACCESS_KEY
# - AWS_SECRET_KEY
#
# Usage : ruby launch.rb
require 'aws-sdk'
@masaomoc
masaomoc / activate.rb
Last active January 25, 2017 03:21
Activate Cloudtrail in all regions.
#!/usr/bin/env ruby
# Activate Cloudtrail and create S3 Bucket in each region.
# Usage: ./activate.rb --profile <profile_name>
# or
# Usage: ./activate.rb -k <access_key> -s <secret_key>
require 'aws-sdk-v1'
require 'optparse'
begin