Skip to content

[Bug]: localstack 3.0.2 does not work properlyΒ #7904

@zeldigas

Description

@zeldigas

Module

LocalStack

Testcontainers version

1.19.3

Using the latest Testcontainers version?

Yes

Host OS

Windows

Host Arch

x86

Docker version

Client:
 Cloud integration: v1.0.29
 Version:           20.10.21
 API version:       1.41
 Go version:        go1.18.7
 Git commit:        baeda1f
 Built:             Tue Oct 25 18:08:16 2022
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Desktop 4.15.0 (93002)
 Engine:
  Version:          20.10.21
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.7
  Git commit:       3056208
  Built:            Tue Oct 25 18:00:19 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.10
  GitCommit:        770bd0108c32f3fb5c73ae1264f7e503fe7b2661
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

What happened?

After updating localstack image from 2.3,2 to 3.0.2, SQS service started to return invalid links, that are not available from localhost.

In 2.3.2 created queue url: http://127.0.0.1:56508/000000000000/test-delayed-handling-event-queue

After updating localstack to 3.0.2: http://sqs.us-east-1.localhost:4566/000000000000/test-delayed-handling-event-queue

Relevant log output

No response

Additional Information

Snippet that creates queue:

private static final String QUEUE_NAME = "test-delayed-handling-event-queue";
protected static String queueUrl;

@Container
static LocalStackContainer localStack =
        new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.0.2")) //or 2.3.2
                .withServices(SQS);

@BeforeAll
static void beforeAll() {
    var client = AmazonSQSClient.builder()
            .withCredentials(new AWSStaticCredentialsProvider(new BasicAWSCredentials(
                    localStack.getAccessKey(), localStack.getSecretKey()
            )))
            .withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(
                    localStack.getEndpointOverride(SQS).toString(), localStack.getRegion()
            ))
            .build();
    var result = client.createQueue(new CreateQueueRequest(QUEUE_NAME)
            .withAttributes(Map.of(QueueAttributeName.VisibilityTimeout.toString(), "1")));
    queueUrl = result.getQueueUrl();
    System.out.println("Queue url: " + queueUrl);
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions