Route53 HostedZoneをfogのdestroyで消してみる
以前vagrant-cloudstackとvagrant-awsの同居ができず、
fogのバージョン依存エラーで困ったことがあったのですが
改めてfogとはなんだったのだろうと簡単ですが調べてみました。
fogは様々なクラウドサービスのAPI(Provider)を扱うためのRubyライブラリです。終わり。
LANG=jaの私にはこれが精一杯でした。
どのような操作やProviderをサポートしているかはソース眺めてみるとわかる気がしてきます。
AWS, OpenstackやXenserver, vsphereの操作もできそうです。
とても素敵なライブラリです。
試しにRoute53に誤って作成した空のHosted Zoneを削除したいと思います。
fogはRoute53のどのような操作をサポートしているかソースを眺めて確かめます。
#!/usr/bin/env ruby require 'fog' dns = Fog::DNS.new( :provider => 'AWS', :aws_access_key_id => '<access_key>', :aws_secret_access_key => '<secret_access_key>' ) hosted_zone = dns.list_hosted_zones hosted_zone.body["HostedZones"].each do |zonedata| puts zonedata["Id"] + "," + zonedata["Name"] zone = dns.zones.get(zonedata["Id"]) begin zone.destroy rescue puts "おっとっと" + zonedata["Name"] + "(" + zonedata["Id"] + ")は消せないぜ" end end hosted_zone.body["HostedZones"].each do |zone| puts zone["Id"] + "," + zone["Name"] end
Hosted Zone内にレコードが残ってていても問答無用で消したいなって思ったのですが
ソースコードの読解力がなくてもう深夜・・・基礎が足りない。
これがExcel方眼紙erの実力だぜ