class CloudflareClient::Zone::KeylessSSL

Public Instance Methods

create(host:, port:, certificate:, name: nil, bundle_method: 'ubiquitous') click to toggle source

create a keyless ssl config

# File lib/cloudflare_client/zone/keyless_ssl.rb, line 7
def create(host:, port:, certificate:, name: nil, bundle_method: 'ubiquitous')
  raise 'host required' if host.nil?
  raise 'certificate required' if certificate.nil?
  bundle_method_check(bundle_method)

  data        = {host: host, port: port, certificate: certificate, bundle_method: bundle_method}
  data[:name] = name ? name : "#{host} Keyless SSL"

  cf_post(path: "/zones/#{zone_id}/keyless_certificates", data: data)
end
delete(id:) click to toggle source

delete a custom_ssl_config

# File lib/cloudflare_client/zone/keyless_ssl.rb, line 51
def delete(id:)
  id_check('id', id)

  cf_delete(path: "/zones/#{zone_id}/keyless_certificates/#{id}")
end
list() click to toggle source

list all the keyless ssl configs

# File lib/cloudflare_client/zone/keyless_ssl.rb, line 20
def list
  cf_get(path: "/zones/#{zone_id}/keyless_certificates")
end
show(id:) click to toggle source

details of a keyless_ssl_config

# File lib/cloudflare_client/zone/keyless_ssl.rb, line 26
def show(id:)
  id_check('id', id)

  cf_get(path: "/zones/#{zone_id}/keyless_certificates/#{id}")
end
update(id:, host: nil, name: nil, port: nil, enabled: nil) click to toggle source

updates a keyless ssl config

# File lib/cloudflare_client/zone/keyless_ssl.rb, line 34
def update(id:, host: nil, name: nil, port: nil, enabled: nil)
  id_check('id', id)
  unless enabled.nil?
    raise 'enabled must be true||false' unless enabled == true || enabled == false
  end

  data           = {}
  data[:host]    = host unless host.nil?
  data[:name]    = name ? name : "#{host} Keyless SSL"
  data[:port]    = port unless port.nil?
  data[:enabled] = enabled unless enabled.nil?

  cf_patch(path: "/zones/#{zone_id}/keyless_certificates/#{id}", data: data)
end