雾和dyn摧毁记录

时间:2012-06-24 17:06:36

标签: ruby dns fog

我目前正在使用Fog来管理Dyn DNS提供商。根据文档,DNS记录对象上有一个destroy方法。但是,当我在记录上调用destroy时,没有任何反应......该方法只返回true,但它永远不会被删除。这是我正在使用的代码:

@dynect = Fog::DNS.new(
  :provider => "dynect",
  :dynect_customer => "CUSTOMER",
  :dynect_username => "USERNAME",
  :dynect_password => 'PASSWORD'
)

@zone = @dynect.zones.get('zone.example.com')
@record = @zone.records.find{|r| r.name == 'master.zone.example.com' && r.type == 'CNAME'}
@record.destroy
@zone.save

这将返回true,但什么都不会发生--DST记录仍然存在于Dyn上。

如何使用Fog和Dyn删除记录?

1 个答案:

答案 0 :(得分:0)

原则上你需要发布(而不是保存)区域......这并不明显,因为像AWS这样的其他提供者不需要。这是一个更新的代码段:

@dynect = Fog::DNS.new(
  :provider => "dynect",
  :dynect_customer => "CUSTOMER",
  :dynect_username => "USERNAME",
  :dynect_password => 'PASSWORD'
)

@zone = @dynect.zones.get('zone.example.com')
@record = @zone.records.find{|r| r.name == 'master.zone.example.com' && r.type == 'CNAME'}
@record.destroy
@zone.publish # changed this