Class: Vcert::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/vcert.rb

Instance Method Summary collapse

Constructor Details

#initialize(url: nil, user: nil, password: nil, cloud_token: nil, trust_bundle: nil, fake: false) ⇒ Connection

Returns a new instance of Connection.



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/vcert.rb', line 14

def initialize(url: nil, user: nil, password: nil, cloud_token: nil, trust_bundle:nil, fake: false)
  if fake
    @conn = FakeConnection.new
  elsif cloud_token != nil
    @conn = CloudConnection.new url, cloud_token
  elsif user != nil && password != nil && url != nil then
    @conn = TPPConnection.new url, user, password, trust_bundle:trust_bundle
  else
    raise ClientBadDataError, "Invalid credentials list"
  end
end

Instance Method Details

#policy(zone) ⇒ Policy

Parameters:

  • zone (String)

Returns:



51
52
53
# File 'lib/vcert.rb', line 51

def policy(zone)
  @conn.policy(zone)
end

#renew(*args) ⇒ Object



55
56
57
# File 'lib/vcert.rb', line 55

def renew(*args)
  @conn.renew(*args)
end

#request(zone, request) ⇒ Object

Parameters:



29
30
31
# File 'lib/vcert.rb', line 29

def request(zone, request)
  @conn.request(zone, request)
end

#request_and_retrieve(req, zone, timeout: TIMEOUT) ⇒ Certificate

Parameters:

  • req (Request)
  • zone (String)
  • timeout (Integer) (defaults to: TIMEOUT)

Returns:



63
64
65
66
67
# File 'lib/vcert.rb', line 63

def request_and_retrieve(req, zone, timeout: TIMEOUT)
  request zone, req
  cert = retrieve_loop(req, timeout: timeout)
  return cert
end

#retrieve(request) ⇒ Certificate

Parameters:

Returns:



35
36
37
# File 'lib/vcert.rb', line 35

def retrieve(request)
  @conn.retrieve(request)
end

#retrieve_loop(req, timeout: TIMEOUT) ⇒ Object



69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/vcert.rb', line 69

def retrieve_loop(req, timeout: TIMEOUT)
  t = Time.new() + timeout
  loop do
    if Time.new() > t
      LOG.info("Waiting certificate #{req.id}")
      break
    end
    certificate = @conn.retrieve(req)
    if certificate != nil
      return certificate
    end
    sleep 10
  end
  return nil
end

#revoke(*args) ⇒ Object



39
40
41
# File 'lib/vcert.rb', line 39

def revoke(*args)
  @conn.revoke(*args)
end

#zone_configuration(zone) ⇒ ZoneConfiguration

Parameters:

  • zone (String)

Returns:



45
46
47
# File 'lib/vcert.rb', line 45

def zone_configuration(zone)
  @conn.zone_configuration(zone)
end