Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/daggerok/spring-cloud-stream-protobuf-rabbitmq

This repository contains RabbitMQ Protobuf starters with its usage samples for spring-rabbit and spring-cloud-starter-stream-rabbit modules
https://github.com/daggerok/spring-cloud-stream-protobuf-rabbitmq

maven proto protobuf protobuf-java protoc-jar-maven-plugin protocol-buffers rabbit rabbitmq spring-boot-autoconfigure spring-boot-starter-amqp spring-cloud-starter-stream-rabbit spring-cloud-stream stream-bridge streambridge

Last synced: 2 days ago
JSON representation

This repository contains RabbitMQ Protobuf starters with its usage samples for spring-rabbit and spring-cloud-starter-stream-rabbit modules

Awesome Lists containing this project

README

        

# Spring cloud stream + RabbitMQ + Protobuf [![CI](https://github.com/daggerok/spring-cloud-stream-protobuf-rabbitmq/actions/workflows/ci.yaml/badge.svg)](https://github.com/daggerok/spring-cloud-stream-protobuf-rabbitmq/actions/workflows/ci.yaml)
This repository contains RabbitMQ Protobuf starters with its usage
samples for `spring-rabbit` and
`spring-cloud-starter-stream-rabbit` modules

## Quickstart

```bash
git clone --depth=0 https://github.com/daggerok/spring-cloud-stream-protobuf-rabbitmq.git my-app && cd $_
```

```bash
./mvnw -f rabbitmq docker:start
./mvnw clean test
./mvnw -f rabbitmq docker:stop docker:remove
```

## Integration testing

```bash
./mvnw -f rabbitmq docker:start
rm -rf ~/.m2/repository/com/github/daggerok
./mvnw install -DskipTests
./mvnw -f consumer spring-boot:start # to create durable queue
./mvnw -f consumer spring-boot:stop # to simulate downtime
./mvnw -f producer spring-boot:start # and post message in a queue:
#http :8080 message="Hello, World"
curl -sSv 0:8080 -H'Content-Type: application/json' -d'{"message": "Hello, World" }'
./mvnw -f producer spring-boot:stop # and check logs that message has been received:
./mvnw -f consumer spring-boot:start
./mvnw -f consumer spring-boot:stop
./mvnw -f rabbitmq docker:stop docker:remove
```