class Acmesmith::ChallengeResponders::ManualDns

Public Class Methods

new(options={}) click to toggle source
# File lib/acmesmith/challenge_responders/manual_dns.rb, line 14
def initialize(options={})
end

Public Instance Methods

cleanup(domain, challenge) click to toggle source
# File lib/acmesmith/challenge_responders/manual_dns.rb, line 32
def cleanup(domain, challenge)
  domain = canonical_fqdn(domain)
  record_name = "#{challenge.record_name}.#{domain}"
  puts "=> It's now okay to delete DNS record for #{record_name}"
end
respond(domain, challenge) click to toggle source
# File lib/acmesmith/challenge_responders/manual_dns.rb, line 17
def respond(domain, challenge)
  puts "=> Responding challenge dns-01 for #{domain}"
  puts

  domain = canonical_fqdn(domain)
  record_name = "#{challenge.record_name}.#{domain}"
  record_type = challenge.record_type
  record_content = "\"#{challenge.record_content}\""

  puts "#{record_name}. 5 IN #{record_type} #{record_content}"

  puts "(Hit enter when DNS record get ready)"
  $stdin.gets
end
support?(type) click to toggle source
# File lib/acmesmith/challenge_responders/manual_dns.rb, line 9
def support?(type)
  # Acme::Client::Resources::Challenges::DNS01
  type == 'dns-01'
end

Private Instance Methods

canonical_fqdn(domain) click to toggle source
# File lib/acmesmith/challenge_responders/manual_dns.rb, line 40
def canonical_fqdn(domain)
  "#{domain}.".sub(/\.+$/, '')
end