in magenta-lib/src/main/scala/magenta/tasks/AWS.scala [223:275]
def withLambdaClient[T](
keyRing: KeyRing,
region: Region,
resources: DeploymentResources
)(block: LambdaClient => T): T =
withResource(
LambdaClient
.builder()
.credentialsProvider(AWS.provider(keyRing, resources))
.overrideConfiguration(AWS.clientConfiguration)
.region(region.awsRegion)
.build()
)(block)
def lambdaUpdateFunctionCodeRequest(
functionName: String,
buffer: ByteBuffer
): UpdateFunctionCodeRequest =
UpdateFunctionCodeRequest
.builder()
.functionName(functionName)
.zipFile(SdkBytes.fromByteBuffer(buffer))
.build()
def lambdaUpdateFunctionCodeRequest(
functionName: String,
s3Bucket: String,
s3Key: String
): UpdateFunctionCodeRequest =
UpdateFunctionCodeRequest
.builder()
.functionName(functionName)
.s3Bucket(s3Bucket)
.s3Key(s3Key)
.build()
def lambdaPublishLayerVersionRequest(
layerName: String,
s3Bucket: String,
s3Key: String
): PublishLayerVersionRequest = {
val layerContent = LayerVersionContentInput
.builder()
.s3Bucket(s3Bucket)
.s3Key(s3Key)
.build()
PublishLayerVersionRequest
.builder()
.layerName(layerName)
.content(layerContent)
.build()
}