Entradas

Mostrando las entradas de noviembre, 2021

Testcontainers + Localstack +AWS Java SDK 2.x

Al usar localstack en las pruebas y el sdk 2.x de AWS para Java no es tan simple como sacar el endpoint y el credential provider de localstack y pasarlo al cliente de aws, hay que constuir primeros los objetos del sdk 2 para pasarlos al cliente con datos que entrega localstack: private static LocalStackContainer ls = null; @BeforeAll public static void before() { ls = new LocalStackContainer(DockerImageName.parse("localstack/localstack")) .withServices(DYNAMODB); ls.start(); final var credentials = ls.getDefaultCredentialsProvider().getCredentials(); final var ddbc = DynamoDbClient.builder() .endpointOverride(ls.getEndpointOverride(DYNAMODB)) .credentialsProvider( StaticCredentialsProvider.create(AwsBasicCredentials.create( credentials.getAWSAccessKeyId(), credentials.getAWSSecretKey()))).build(); } ese el código para construir el cliente de dynamo usan...