This project provides common utilities for working with the Amazon AWS SDK.
Through the AmazonClientProvider, callers can get supply an Edda host as a String pattern in the form that formats to a hostname that includes a region and environment name (in that order) in the URL, which formats to a URL that maps to an Edda host. For example: http://edda.%s.%s.netflix.com will be formatted to http://edda.us-east-1.test.netflix.com when I am requesting a client in "us-east-1" with an AmazonCredentials object that uses "test" as its environment.
From Gradle:
repositories {
mavenCentral()
}
dependencies {
compile 'com.amazonaws:aws-java-sdk:1.7.9'
compile 'com.netflix.amazoncomponents:amazoncomponents:0.8'
}
... and then ...
import com.netflix.amazoncomponents.security.*
import com.amazonaws.auth.BasicAWSCredentials
def credentials = new AmazonCredentials(new BasicAWSCredentials("accessId", "secretKey"), "test")
def eddaFormat = "http://edda.%s.%s.netflix.com" // will get translated to http://edda.us-east-1.test.netflix.com
def provider = new AmazonClientProvider(eddaFormat)
def amazonEC2 = provider.getAmazonEC2(credentials, "us-east-1")
// This call will go through Edda
amazonEC2.describeSecurityGroups()There sometimes is the need to draw an internal correlation of a given account to an arbitrarily named environment. To facilitate that relationship, this project projects an AmazonCredentials class, which provides that relationship to the AmazonClientProvider.
Dan Woods
This project is licensed under the Apache Software License. See LICENSE for futher information. This project is Copyright (C) 2014 Netflix, Inc.