class CfnVpn::Acm

Public Class Methods

new(region,cert_dir) click to toggle source
# File lib/cfnvpn/acm.rb, line 7
def initialize(region,cert_dir)
  @client = Aws::ACM::Client.new(region: region)
  @cert_dir = cert_dir
end

Public Instance Methods

certificate_exists?(name) click to toggle source
# File lib/cfnvpn/acm.rb, line 40
def certificate_exists?(name)
  return true
end
get_certificate(name) click to toggle source
# File lib/cfnvpn/acm.rb, line 44
def get_certificate(name)
  return 'arn'
end
import_certificate(cert,key,ca) click to toggle source
# File lib/cfnvpn/acm.rb, line 12
def import_certificate(cert,key,ca)
  cert_body = load_certificate(cert)
  key_body = load_certificate(key)
  ca_body = load_certificate(ca)

  resp = @client.import_certificate({
    certificate: cert_body,
    private_key: key_body,
    certificate_chain: ca_body
  })
  return resp.certificate_arn
end
load_certificate(cert) click to toggle source
# File lib/cfnvpn/acm.rb, line 36
def load_certificate(cert)
  File.read("#{@cert_dir}/#{cert}")
end
tag_certificate(arn,name,type,cfnvpn_name) click to toggle source
# File lib/cfnvpn/acm.rb, line 25
def tag_certificate(arn,name,type,cfnvpn_name)
  @client.add_tags_to_certificate({
    certificate_arn: arn,
    tags: [
      { key: "Name", value: name },
      { key: "cfnvpn:name", value: cfnvpn_name },
      { key: "cfnvpn:certificate:type", value: type }
    ]
  })
end