laconicd/x/onboarding/module/autocli.go
Prathamesh Musale 7a88c82816 Add queries to get participant by laconic or nitro address (#44)
Part of [laconicd testnet validator enrollment](https://www.notion.so/laconicd-testnet-validator-enrollment-6fc1d3cafcc64fef8c5ed3affa27c675)

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: cerc-io/laconicd#44
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-07-29 10:28:30 +00:00

58 lines
1.7 KiB
Go

package module
import (
autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
onboardingv1 "git.vdb.to/cerc-io/laconicd/api/cerc/onboarding/v1"
)
// AutoCLIOptions implements the autocli.HasAutoCLIConfig interface.
func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
return &autocliv1.ModuleOptions{
Query: &autocliv1.ServiceCommandDescriptor{
Service: onboardingv1.Query_ServiceDesc.ServiceName,
RpcCommandOptions: []*autocliv1.RpcCommandOptions{
{
RpcMethod: "Participants",
Use: "list",
Short: "List participants",
PositionalArgs: []*autocliv1.PositionalArgDescriptor{},
},
{
RpcMethod: "GetParticipantByAddress",
Use: "get-by-address [address]",
Short: "Get participant by address",
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
{ProtoField: "address"},
},
},
{
RpcMethod: "GetParticipantByNitroAddress",
Use: "get-by-nitro-address [nitro_address]",
Short: "Get participant by nitro address",
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
{ProtoField: "nitro_address"},
},
},
},
},
// TODO: Use JSON file for input
Tx: &autocliv1.ServiceCommandDescriptor{
Service: onboardingv1.Msg_ServiceDesc.ServiceName,
RpcCommandOptions: []*autocliv1.RpcCommandOptions{
{
RpcMethod: "OnboardParticipant",
Use: "enroll [eth_payload] [eth_signature] [role] [kyc_id]",
Short: "Enroll a testnet validator",
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
{ProtoField: "eth_payload"},
{ProtoField: "eth_signature"},
{ProtoField: "role"},
{ProtoField: "kyc_id"},
},
},
},
},
}
}