https://github.com/mapofzones/cosmos-watcher
https://github.com/mapofzones/cosmos-watcher
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/mapofzones/cosmos-watcher
- Owner: mapofzones
- License: apache-2.0
- Created: 2020-03-30T16:14:30.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-07-05T11:19:55.000Z (about 2 years ago)
- Last Synced: 2025-04-03T21:35:09.832Z (over 1 year ago)
- Language: Go
- Size: 82.9 MB
- Stars: 19
- Watchers: 4
- Forks: 6
- Open Issues: 31
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ccamel - mapofzones/cosmos-watcher - (Go)
README
# cosmos-watcher
Status of Last Deployment:

# General
The cosmos-watcher is a standalone process that takes
2 env var running via docker:
* chain_id - blockchain network_id,
* graphql - connection string to graphql hasura api,
* rabbitmq - connection string to rabbitMQ message broker,
* queue - queue name for rabbitMQ message broker,
5 env var running directly & without run.sh script:
* rpc - a zone RPC address,
* height - a starting block number,
* rabbitmq - connection string to rabbitMQ message broker,
* queue - queue name for rabbitMQ message broker,
* chain_id - blockchain network_id to validate rpc address,
and listens to the given zone starting from the given block number.
## Usage
Running in a container:
* `docker build -t cosmos-watcher:v1 .`
* `docker run --env chain_id= --env graphql= --env rabbitmq=amqp://:@: --env queue= -it --network="host" cosmos-watcher:v1`
# Responsibilies
The watcher listens to the new blocks, parses them, and assembly the information into the zone-neutral data structures.
```
block {
chain_id: , the zone chain id
block_time:
block_num:
txs: array [transaction]
}
transaction {
hash:
sender:
accepted:
msgs: array [message]
}
message {
type: (transfer | ibc_transfer | create_channel | create_connection | create_client | open_channel | close_channel)
}
```
the newly created object of the ```block``` type is sent to the queue.
# Supported blockchains
| Repository Branch | Supported zone | Workflow status |
| ---: | :---: | :--- |
| master, cosmoshub | `cosmoshub-4 (cosmoshub)` |
|
| irishub | `irishub-1 (irishub)` |
|
| akash | `akashnet-2 (akash.network)` |
|
| sentinelhub | `sentinelhub-2 (sentinel)` |
|
| persistence | `core-1 (persistence)` |
|
| regen | `regen-1 (regen-network)` |
|
| osmosis | `osmosis-1 (osmosis)` |
|
| crypto-org | `crypto-org-chain-mainnet-1 (crypto.org)` |
|
| starname | `iov-mainnet-ibc (starname)` |
|
| sifchain | `sifchain-1 (sifchain)` |
|
| konstellation | `darchub (konstellation)` |
|
| stargaze | `stargaze-1 (stargaze)` |
|
| cronos | `cronosmainnet_25-1 (cronos)` |
|
| injective | `injective-1 (injective)` |
|
| dig | `dig-1 (dig)` |
|
| bitsong | `bitsong-2b (bitsong)` |
|
| juno | `juno-1 (juno)` |
|
| chihuahua | `chihuahua-1 (chihuahua)` |
|
| alteredcarbon | `alteredcarbon (alteredcarbon)` |
|
| cheqd | `cheqd-mainnet-1 (cheqd)` |
|
| bitcanna | `bitcanna-1 (bitcanna)` |
|
| desmos | `desmos-mainnet (desmos)` |
|
| likecoin | `likecoin-mainnet-2 (likecoin)` |
|
| fetchai | `fetchhub-3 (fetchhub)` |
|
| gravity-bridge | `gravity-bridge-3 (gravity-bridge)` |
|
| sommelier | `sommelier-3 (sommelier)` |
|
| impacthub | `impacthub-3 (impacthub)` |
|
| vidulum | `vidulum-1 (vidulum)` |
|
| comdex | `comdex-1 (comdex)` |
|
| panacea | `panacea-3 (panacea)` |
|
| secret | `secret-4 (secret)` |
|
| kichain | `kichain-2 (ki)` |
|
| certik | `shentu-2.2 (shentu)` |
|
| terra | `columbus-5 (terra)` |
|
| band | `laozi-mainnet (band)` |
|
| kava | `kava-9 (kava)` |
|
| cyber | `bostrom (bostrom)` |
|
| microtick | `microtick-1 (microtick)` |
|
| axelar | `axelar-dojo-1 (axelar)` |
|
| emoney | `emoney-3 (emoney)` |
|