in src/main/scala/com/gu/ssm/Logic.scala [78:91]
def getClients(profile: Option[String], region: Region, useDefaultCredentialsProvider: Boolean): AWSClients = {
val credentialsProvider = profile match {
case _ if useDefaultCredentialsProvider => DefaultAWSCredentialsProviderChain.getInstance()
case Some(profile) => new ProfileCredentialsProvider(profile)
// In this case it's set using the AWS_PROFILE environment variable
case _ => new ProfileCredentialsProvider()
}
val ssmClient: AWSSimpleSystemsManagementAsync = SSM.client(credentialsProvider, region)
val stsClient: AWSSecurityTokenServiceAsync = STS.client(credentialsProvider, region)
val ec2Client: AmazonEC2Async = EC2.client(credentialsProvider, region)
val rdsClient: AmazonRDSAsync = RDS.client(credentialsProvider, region)
AWSClients(ssmClient, stsClient, ec2Client, rdsClient)
}