Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/olimpias/rijn
CLI tool for moving message from a deadletter queue to a topic for pubsub
https://github.com/olimpias/rijn
deadletter gcd golang-cli pubsub
Last synced: about 1 month ago
JSON representation
CLI tool for moving message from a deadletter queue to a topic for pubsub
- Host: GitHub
- URL: https://github.com/olimpias/rijn
- Owner: olimpias
- License: mit
- Created: 2022-02-24T22:08:01.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-03-18T14:20:01.000Z (almost 3 years ago)
- Last Synced: 2024-10-14T06:08:01.799Z (2 months ago)
- Topics: deadletter, gcd, golang-cli, pubsub
- Language: Go
- Homepage:
- Size: 40 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Rijn
Rijn is a cli tool that allows you to move a message from one message broker's subscription to another message broker's topic.
Currently its only support pubsub. It could be quite handy when you want to move from especially from dead letter subscription into actual topic.
Rijn comes from the name of the [Rhine](https://en.wikipedia.org/wiki/Rhine). The purpose of this tool to move a message from one place to another, like the actually Rhine that carries water from The Nederlands to Switzerland.
## Installation
1. [Install](https://go.dev/doc/install) go (golang 1.17 or later)
2. `go get github.com/olimpias/rijn`
3. you can now run rijn (from your gopath bin/ directory)## Command line arguments
### Login-Gcd
Allows you to auth login into gcd. It will pop up web browser and once you log in, it will save your credentials into application default path
Use the following command to run it.
``
rijn login-gcd
``### Pubsub
Allows you to moves a pubsub message from one subscription to another subscription in the same projectID. Before using this command, its mandatory to log in either using `rijn login-gcd` or default terminal `gcloud` command. The credential must be in application default path
| Flag | Description, example |
|----------------------------|------------------------------------------------------|
| `-c subscriptionProjectId` | Project ID value for your subscription |
| `-p topicProjectId` | Project ID value for your topic |
| `-s subscription` | Source of the messages that you want to move from |
| `-t topic` | Destination of the messages that you want to move to |##### Example
Below examples consume messages from `projects/testing1/subscriptions/source-subscription` and pushes them to `projects/testing2/topics/destination-topic`
```
rijn pubsub --subscriptionProjectId testing1 --topicProjectId testing2 -s source-subscription -t destination-topic
```### Future Plans
- [X] Support different projectIds for subscription and topic
- [ ] Add more configuration option for pubsub
- [ ] Add `brew` support
- [ ] Add support for AWS SQS
- [ ] Support moving from one specific cloud broker into another cloud broker