Skip to content

Instantly share code, notes, and snippets.

@mechamogera
Last active December 14, 2015 15:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mechamogera/5105463 to your computer and use it in GitHub Desktop.
Save mechamogera/5105463 to your computer and use it in GitHub Desktop.
ELBのSSL証明書の削除用rubyスクリプト
require 'rubygems'
require 'aws-sdk'
require 'ostruct'
require 'optparse'
options = OpenStruct.new
options.action_options = OpenStruct.new
subparsers = Hash.new do |h, k|
$stderr.puts "no such subcommand: #{k}"
exit
end
subparsers['list'] = OptionParser.new do |list|
end
subparsers['delete'] = OptionParser.new do |delete|
end
parser = OptionParser.new do |opt|
opt.banner = <<-EOB
Usage: #{File.basename(__FILE__)} <subcommand>
EOB
opt.separator ""
opt.separator "Subcommands:"
subparsers.keys.sort.each do |k|
opt.separator "#{opt.summary_indent} #{k}"
end
opt.on('-a', '--access-key-id=VAL') { |v| options.access_key_id = v }
opt.on('-s', '--secret-access-key=VAL') { |v| options.secret_access_key = v }
end
parser.order!(ARGV)
options.action = ARGV.shift
subparsers[options.action].parse!(ARGV) unless ARGV.empty?
iam = AWS::IAM.new(:access_key_id => options.access_key_id,
:secret_access_key => options.secret_access_key,
:proxy_uri => ENV['HTTP_PROXY'] || ENV['http_proxy'])
case options.action
when "list"
iam.server_certificates.each do |x|
puts x.name
end
when "delete"
p iam.server_certificates[ARGV.shift].delete
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment