module Certman::Resource::SES
Constants
- REGIONS
- RULE_SET_NAME_BY_CERTMAN
Public Instance Methods
active_rule_set_exist?()
click to toggle source
# File lib/certman/resource/ses.rb, line 17 def active_rule_set_exist? @current_active_rule_set_name = nil res = ses.describe_active_receipt_rule_set @current_active_rule_set_name = res.metadata.name if res.metadata end
check_domain_identity_verified()
click to toggle source
# File lib/certman/resource/ses.rb, line 23 def check_domain_identity_verified is_break = false 100.times do res = ses.get_identity_verification_attributes( identities: [ email_domain ] ) if res.verification_attributes[email_domain].verification_status == 'Success' # success is_break = true break end break if @do_rollback sleep 5 end raise 'Can not check verified' unless is_break end
create_and_active_rule_set()
click to toggle source
# File lib/certman/resource/ses.rb, line 46 def create_and_active_rule_set ses.create_receipt_rule_set(rule_set_name: rule_set_name) ses.set_active_receipt_rule_set(rule_set_name: rule_set_name) end
create_domain_identity()
click to toggle source
# File lib/certman/resource/ses.rb, line 12 def create_domain_identity res = ses.verify_domain_identity(domain: email_domain) @token = res.verification_token end
create_rule()
click to toggle source
# File lib/certman/resource/ses.rb, line 51 def create_rule ses.create_receipt_rule( rule: { recipients: ["admin@#{email_domain}"], actions: [ { s3_action: { bucket_name: bucket_name } } ], enabled: true, name: rule_name, scan_enabled: true, tls_policy: 'Optional' }, rule_set_name: rule_set_name ) end
delete_domain_identity()
click to toggle source
# File lib/certman/resource/ses.rb, line 42 def delete_domain_identity ses.delete_identity(identity: email_domain) end
delete_rule()
click to toggle source
# File lib/certman/resource/ses.rb, line 83 def delete_rule ses.delete_receipt_rule( rule_name: rule_name, rule_set_name: rule_set_name ) end
delete_rule_set()
click to toggle source
# File lib/certman/resource/ses.rb, line 76 def delete_rule_set res = ses.describe_active_receipt_rule_set return if res.rules && res.rules.length > 1 ses.set_active_receipt_rule_set(rule_set_name: nil) ses.delete_receipt_rule_set(rule_set_name: rule_set_name) end
region_by_hash()
click to toggle source
# File lib/certman/resource/ses.rb, line 7 def region_by_hash key = Digest::SHA1.hexdigest(@domain).to_i(16) % REGIONS.length REGIONS[key] end
rule_exist?()
click to toggle source
# File lib/certman/resource/ses.rb, line 71 def rule_exist? res = ses.describe_active_receipt_rule_set res.rules && !res.rules.empty? end
ses()
click to toggle source
# File lib/certman/resource/ses.rb, line 90 def ses @ses ||= Aws::SES::Client.new end