class AwsClients
AwsClients
contains a list of aws-clients for use The main reason for their central management is their initialisation testing and stubbing
Public Class Methods
alb(provider = nil)
click to toggle source
Clients
# File lib/geoengineer/utils/aws_clients.rb, line 29 def self.alb(provider = nil) self.client_cache( provider, Aws::ElasticLoadBalancingV2::Client ) end
api_gateway(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 36 def self.api_gateway(provider = nil) self.client_cache( provider, Aws::APIGateway::Client ) end
client_cache(provider, client)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 21 def self.client_cache(provider, client) @client_cache ||= {} key = "#{client.name}_" + (provider&.terraform_id || GeoEngineer::Resource::DEFAULT_PROVIDER) @client_cache[key] ||= client.new(client_params(provider)) end
client_params(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 14 def self.client_params(provider = nil) client_params = { stub_responses: stubbed? } client_params[:region] = provider.region if provider client_params[:retry_limit] = Integer(ENV['AWS_RETRY_LIMIT']) if ENV['AWS_RETRY_LIMIT'] client_params end
cloudfront(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 43 def self.cloudfront(provider = nil) self.client_cache( provider, Aws::CloudFront::Client ) end
cloudtrail(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 169 def self.cloudtrail(provider = nil) self.client_cache( provider, Aws::CloudTrail::Client ) end
cloudwatch(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 50 def self.cloudwatch(provider = nil) self.client_cache( provider, Aws::CloudWatch::Client ) end
cloudwatchevents(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 57 def self.cloudwatchevents(provider = nil) self.client_cache( provider, Aws::CloudWatchEvents::Client ) end
dynamo(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 64 def self.dynamo(provider = nil) self.client_cache( provider, Aws::DynamoDB::Client ) end
ec2(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 71 def self.ec2(provider = nil) self.client_cache( provider, Aws::EC2::Client ) end
elasticache(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 78 def self.elasticache(provider = nil) self.client_cache( provider, Aws::ElastiCache::Client ) end
elasticsearch(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 85 def self.elasticsearch(provider = nil) self.client_cache( provider, Aws::ElasticsearchService::Client ) end
elb(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 92 def self.elb(provider = nil) self.client_cache( provider, Aws::ElasticLoadBalancing::Client ) end
emr(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 190 def self.emr(provider = nil) self.client_cache( provider, Aws::EMR::Client ) end
iam(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 99 def self.iam(provider = nil) self.client_cache( provider, Aws::IAM::Client ) end
kinesis(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 106 def self.kinesis(provider = nil) self.client_cache( provider, Aws::Kinesis::Client ) end
kms(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 176 def self.kms(provider = nil) self.client_cache( provider, Aws::KMS::Client ) end
lambda(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 113 def self.lambda(provider = nil) self.client_cache( provider, Aws::Lambda::Client ) end
rds(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 120 def self.rds(provider = nil) self.client_cache( provider, Aws::RDS::Client ) end
redshift(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 127 def self.redshift(provider = nil) self.client_cache( provider, Aws::Redshift::Client ) end
route53(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 134 def self.route53(provider = nil) self.client_cache( provider, Aws::Route53::Client ) end
s3(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 141 def self.s3(provider = nil) self.client_cache( provider, Aws::S3::Client ) end
ses(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 148 def self.ses(provider = nil) self.client_cache( provider, Aws::SES::Client ) end
sns(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 155 def self.sns(provider = nil) self.client_cache( provider, Aws::SNS::Client ) end
sqs(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 162 def self.sqs(provider = nil) self.client_cache( provider, Aws::SQS::Client ) end
stub!()
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 6 def self.stub! @stub_aws = true end
stubbed?()
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 10 def self.stubbed? @stub_aws || false end
waf(provider = nil)
click to toggle source
# File lib/geoengineer/utils/aws_clients.rb, line 183 def self.waf(provider = nil) self.client_cache( provider, Aws::WAF::Client ) end