Method: Certman::Client#check_resource

Defined in:
lib/certman/client.rb

#check_resource(check_acm: true) ⇒ Object



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
# File 'lib/certman/client.rb', line 122

def check_resource(check_acm: true)
  pastel = Pastel.new

  if check_acm
    s = spinner('[ACM] Check Certificate')
    if certificate_exist?
      s.error
      puts pastel.yellow("\nCertificate already exists!\n")
      puts "certificate_arn: #{pastel.cyan(@cert_arn)}"
      exit
    end
    s.success
  end

  s = spinner('[Route53] Check Hosted Zone')
  unless hosted_zone_exist?
    s.error
    puts pastel.red("\nHosted Zone #{hosted_zone_domain} does not exist")
    exit
  end
  s.success

  s = spinner('[Route53] Check TXT Record')
  if txt_rset_exist?
    s.error
    puts pastel.red("\n_amazonses.#{email_domain} TXT already exists")
    exit
  end
  s.success

  enforce_region_by_hash do
    s = spinner('[Route53] Check MX Record')
    if mx_rset_exist?
      s.error
      puts pastel.red("\n#{email_domain} MX already exist")
      exit
    end
    if cname_rset_exist?
      puts pastel.cyan("\n#{email_domain} CNAME already exists. Use #{hosted_zone_domain}")
      @cname_exists = true
      check_resource
    end
    s.success

    s = spinner('[SES] Check Active Rule Set')
    if active_rule_set_exist?
      puts pastel.cyan("\nActive Rule Set already exist. Use #{@current_active_rule_set_name}")
    end
    s.success
  end

  true
end