Skip to content

Latest commit

 

History

History
63 lines (52 loc) · 2.32 KB

File metadata and controls

63 lines (52 loc) · 2.32 KB

embedded-rabbitmq

Maven dependency

pom.xml
<dependency>
    <groupId>com.playtika.testcontainers</groupId>
    <artifactId>embedded-rabbitmq</artifactId>
    <scope>test</scope>
</dependency>

Consumes (via bootstrap.properties)

  • embedded.rabbitmq.enabled (true|false, default is true)

  • embedded.rabbitmq.reuseContainer (true|false, default is false)

  • embedded.rabbitmq.password (default is 'rabbitmq')

  • embedded.rabbitmq.vhost (virtual host, default is '/')

  • embedded.rabbitmq.dockerImage (default is 'rabbitmq:4.2-alpine')

  • embedded.rabbitmq.waitTimeoutInSeconds (default is 60 seconds)

  • embedded.rabbitmq.enabledPlugins (list of strings, e.g. rabbitmq_consistent_hash_exchange; defaults to an empty list)`

  • embedded.toxiproxy.proxies.rabbitmq.enabled Enables both creation of the container with ToxiProxy TCP proxy and a proxy to the embedded-rabbitmq container.

  • embedded.rabbitmq.additionalPorts (list of integers to expose from the container, e.g. 5552; defaults to an empty list)`

Produces

  • embedded.rabbitmq.host

  • embedded.rabbitmq.port

  • embedded.rabbitmq.user

  • embedded.rabbitmq.password

  • embedded.rabbitmq.vhost

  • embedded.rabbitmq.httpPort

  • embedded.rabbitmq.toxiproxy.host

  • embedded.rabbitmq.toxiproxy.port

  • embedded.rabbitmq.networkAlias

  • embedded.rabbitmq.internalPort

  • embedded.rabbitmq.internalHttpPort

  • Bean ToxiproxyClientProxy rabbitmqContainerProxy

  • embedded.rabbitmq.additionalPorts.x (where x is the port from the container, e.g. 5552; the value is the mapped port within the Docker container)

Example

RabbitMQ Streams

To enable the RabbitMQ streams plugin and expose port 5552 (the Streams default protocol port) set:

/src/test/resources/bootstrap.properties
embedded.rabbitmq.enabled-plugins[0]=rabbitmq_stream
embedded.rabbitmq.additionalPorts[0]=5552
/src/test/resources/application.properties
spring.rabbitmq.stream.host=${embedded.rabbitmq.host}
spring.rabbitmq.stream.port=${embedded.rabbitmq.additionalPorts.5552}
spring.rabbitmq.stream.username=${embedded.rabbitmq.user}
spring.rabbitmq.stream.password=${embedded.rabbitmq.password}
spring.rabbitmq.stream.virtual-host=${embedded.rabbitmq.vhost}