BDJuno (shorthand for BigDipper Juno) is the Juno implementation for BigDipper.
It extends the custom Juno behavior by adding different handlers and custom operations to make it easier for BigDipper showing the data inside the UI.
All the chains' data that are queried from the RPC and gRPC endpoints are stored inside a PostgreSQL database on top of which GraphQL APIs can then be created using Hasura.
To know how to setup and run BDJuno, please refer to the docs website.
TODO: Add LINK to cudosbuilder init
If you want to test the code, you can do so by running
$ make test-unit
Note: Requires Docker.
This will:
- Create a Docker container running a PostgreSQL database.
- Run all the tests using that database as support.
- There are 3 configs that have to be set up:
- Inside the BDJuno folder you have:
- config.yaml - this is the config for the BDJuno - https://docs.bigdipper.live/cosmos-based/parser/config/config
- ip address of node, db name and password for it are set here
- genesis.json - this is the genesis file that is going to be parsed before BDJuno starts. It gets by the docker BDJuno docker file
- config.yaml - this is the config for the BDJuno - https://docs.bigdipper.live/cosmos-based/parser/config/config
- .env-bdjuno - this is the env variables for the BDJuno docker (only the ones relevant are listed, leave others as is)
- HASURA_GRAPHQL_DATABASE_URL - THE URL of the DB for hasura to read from
- HASURA_GRAPHQL_ADMIN_SECRET - the password of the HASURA
- HASURA_GRAPHQL_ENDPOINT_URL - the DNS(IP):PORT of the machine where hasura is hosted
- HASURA_ACTIONS_GRPC - the IP:9090 of the node that hasura is reading from
- HASURA_ACTIONS_RPC - the IP:26657 of the node that hasura is reading from
- HASURA_ACTIONS_PORT - the port of which hasura actions will run
- Inside the BDJuno folder you have: