cosmos / relayer-archive

An example of a server side IBC relayer to be used for Game of Zones and beyond
56 stars 31 forks source link

Query and Transaction command stubs #14

Closed jackzampolin closed 4 years ago

jackzampolin commented 4 years ago

This PR continues the refactor work started in https://github.com/cosmos/relayer/pull/13 as well as begins to add commands for querying the configured chains for the various IBC related data: clients, connections, channels. It also stubs out the relayer transaction command tree that will contain commands to create clients, connections and channels as well as perform individual relay operations once the ICS 20 implementation is complete.

The logic from those commands in the relayer package will then be modular pieces that can be constructed into more complex relay strategies, and simplify the implementation of the currently unwieldy NaiveRelayStrategy.

cmwaters commented 4 years ago

// QUESTION: Why do we need this store abstration here and not in other lite functions?

When making changes to the database we use the lite client but when we want to read such as HeaderAtHeight or GetLatestLiteHeight then we can bypass the lite client and use the db directly so there we only need the store interface.

NB: Initialisation of the lite client also creates the store abstraction