Class: Cecha::Client
- Inherits:
-
Object
- Object
- Cecha::Client
- Defined in:
- lib/cecha/client.rb
Defined Under Namespace
Classes: ElbCert
Instance Attribute Summary collapse
-
#logger ⇒ Object
readonly
Returns the value of attribute logger.
Instance Method Summary collapse
-
#initialize(cli_options = {}, aws_configuration = {}) ⇒ Client
constructor
A new instance of Client.
- #list ⇒ Object
Constructor Details
#initialize(cli_options = {}, aws_configuration = {}) ⇒ Client
Returns a new instance of Client.
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/cecha/client.rb', line 23 def initialize( = {}, aws_configuration = {}) = @logger ||= Logger.new STDOUT aws_configuration[:logger] = Logger.new STDOUT if [:verbose] @elasticloadbalancing = Aws::ElasticLoadBalancing::Resource.new aws_configuration @iam = Aws::IAM::Resource.new aws_configuration @region = aws_configuration[:region] end |
Instance Attribute Details
#logger ⇒ Object (readonly)
Returns the value of attribute logger.
6 7 8 |
# File 'lib/cecha/client.rb', line 6 def logger @logger end |
Instance Method Details
#list ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/cecha/client.rb', line 34 def list certlist = [] begin resp = @elasticloadbalancing.client.describe_load_balancers resp.load_balancer_descriptions.each do |elb| elb.listener_descriptions.each do |desc| p desc cert = ssl_certificate(desc.listener.ssl_certificate_id) if cert elbcert = ElbCert.new elbcert.aws_account_number = aws_account_number(desc.listener.ssl_certificate_id) elbcert.region = @region elbcert.elb_name = elb.load_balancer_name elbcert.elb_port = desc.listener.load_balancer_port elbcert.policy_names = desc.policy_names.join(',') elbcert.ssl_certificate_name = cert.name elbcert.signature_algorithm = OpenSSL::X509::Certificate.new(cert.certificate_body).signature_algorithm certlist << elbcert end end end rescue Aws::ElasticLoadBalancing::Errors::ServiceError => e @logger.err e end certlist end |