{"id":16766976,"url":"https://github.com/olimpias/rijn","last_synced_at":"2026-02-01T03:01:24.227Z","repository":{"id":43096518,"uuid":"463316337","full_name":"olimpias/rijn","owner":"olimpias","description":"CLI tool for moving message from a deadletter queue to a topic for pubsub","archived":false,"fork":false,"pushed_at":"2022-03-18T14:20:01.000Z","size":41,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-14T06:03:04.397Z","etag":null,"topics":["deadletter","gcd","golang-cli","pubsub"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/olimpias.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-24T22:08:01.000Z","updated_at":"2022-03-18T15:48:04.000Z","dependencies_parsed_at":"2022-09-13T16:51:24.129Z","dependency_job_id":null,"html_url":"https://github.com/olimpias/rijn","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/olimpias/rijn","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olimpias%2Frijn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olimpias%2Frijn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olimpias%2Frijn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olimpias%2Frijn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/olimpias","download_url":"https://codeload.github.com/olimpias/rijn/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olimpias%2Frijn/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28965436,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T02:14:24.993Z","status":"ssl_error","status_checked_at":"2026-02-01T02:13:55.706Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deadletter","gcd","golang-cli","pubsub"],"created_at":"2024-10-13T06:08:08.629Z","updated_at":"2026-02-01T03:01:24.211Z","avatar_url":"https://github.com/olimpias.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rijn\n\nRijn is a cli tool that allows you to move a message from one message broker's subscription to another message broker's topic. \n\nCurrently its only support pubsub. It could be quite handy when you want to move from especially from dead letter subscription into actual topic.\n\nRijn 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. \n\n## Installation\n\n1. [Install](https://go.dev/doc/install) go (golang 1.17 or later)\n2. `go get github.com/olimpias/rijn`\n3. you can now run rijn (from your gopath bin/ directory)\n\n## Command line arguments\n\n### Login-Gcd\n\nAllows 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\n\nUse the following command to run it.\n\n``\nrijn login-gcd\n``\n\n### Pubsub\n\nAllows 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\n\n| Flag                       | Description, example                                 |\n|----------------------------|------------------------------------------------------|\n| `-c subscriptionProjectId` | Project ID value for your subscription               |\n| `-p topicProjectId`        | Project ID value for your topic                      |\n| `-s subscription`          | Source of the messages that you want to move from    |\n| `-t topic`                 | Destination of the messages that you want to move to |\n\n##### Example\n\nBelow examples consume messages from `projects/testing1/subscriptions/source-subscription` and pushes them to `projects/testing2/topics/destination-topic`\n\n```\nrijn pubsub --subscriptionProjectId testing1 --topicProjectId testing2  -s source-subscription -t destination-topic\n```\n\n### Future Plans\n- [X] Support different projectIds for subscription and topic\n- [ ] Add more configuration option for pubsub\n- [ ] Add `brew` support\n- [ ] Add support for AWS SQS\n- [ ] Support moving from one specific cloud broker into another cloud broker\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folimpias%2Frijn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Folimpias%2Frijn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folimpias%2Frijn/lists"}