github.com/cosmos/cosmos-sdk@v0.50.10/x/distribution/autocli.go (about) 1 package distribution 2 3 import ( 4 "fmt" 5 6 autocliv1 "cosmossdk.io/api/cosmos/autocli/v1" 7 distirbuitonv1beta1 "cosmossdk.io/api/cosmos/distribution/v1beta1" 8 9 "github.com/cosmos/cosmos-sdk/version" 10 ) 11 12 // AutoCLIOptions implements the autocli.HasAutoCLIConfig interface. 13 func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions { 14 return &autocliv1.ModuleOptions{ 15 Query: &autocliv1.ServiceCommandDescriptor{ 16 Service: distirbuitonv1beta1.Query_ServiceDesc.ServiceName, 17 RpcCommandOptions: []*autocliv1.RpcCommandOptions{ 18 { 19 RpcMethod: "Params", 20 Use: "params", 21 Short: "Query the current distribution parameters.", 22 }, 23 { 24 RpcMethod: "ValidatorDistributionInfo", 25 Use: "validator-distribution-info [validator]", 26 Short: "Query validator distribution info", 27 Example: fmt.Sprintf(`Example: $ %s query distribution validator-distribution-info [validator-address]`, version.AppName), 28 29 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 30 {ProtoField: "validator_address"}, 31 }, 32 }, 33 { 34 RpcMethod: "ValidatorOutstandingRewards", 35 Use: "validator-outstanding-rewards [validator]", 36 Short: "Query distribution outstanding (un-withdrawn) rewards for a validator and all their delegations", 37 Example: fmt.Sprintf(`$ %s query distribution validator-outstanding-rewards [validator-address]`, version.AppName), 38 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 39 {ProtoField: "validator_address"}, 40 }, 41 }, 42 { 43 RpcMethod: "ValidatorCommission", 44 Use: "commission [validator]", 45 Short: "Query distribution validator commission", 46 Example: fmt.Sprintf(`$ %s query distribution commission [validator-address]`, version.AppName), 47 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 48 {ProtoField: "validator_address"}, 49 }, 50 }, 51 { 52 RpcMethod: "ValidatorSlashes", 53 Use: "slashes [validator] [start-height] [end-height]", 54 Short: "Query distribution validator slashes", 55 Example: fmt.Sprintf(`$ %s query distribution slashes [validator-address] 0 100`, version.AppName), 56 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 57 {ProtoField: "validator_address"}, 58 {ProtoField: "starting_height"}, 59 {ProtoField: "ending_height"}, 60 }, 61 }, 62 { 63 RpcMethod: "DelegationRewards", 64 Use: "rewards-by-validator [delegator-addr] [validator-addr]", 65 Short: "Query all distribution delegator from a particular validator", 66 Example: fmt.Sprintf("$ %s query distribution rewards [delegator-address] [validator-address]", version.AppName), 67 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 68 {ProtoField: "delegator_address"}, 69 {ProtoField: "validator_address"}, 70 }, 71 }, 72 { 73 RpcMethod: "DelegationTotalRewards", 74 Use: "rewards [delegator-addr]", 75 Short: "Query all distribution delegator rewards", 76 Long: "Query all rewards earned by a delegator", 77 Example: fmt.Sprintf("$ %s query distribution rewards [delegator-address]", version.AppName), 78 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 79 {ProtoField: "delegator_address"}, 80 }, 81 }, 82 { 83 RpcMethod: "CommunityPool", 84 Use: "community-pool", 85 Short: "Query the amount of coins in the community pool", 86 Example: fmt.Sprintf(`$ %s query distribution community-pool`, version.AppName), 87 }, 88 }, 89 }, 90 Tx: &autocliv1.ServiceCommandDescriptor{ 91 Service: distirbuitonv1beta1.Msg_ServiceDesc.ServiceName, 92 RpcCommandOptions: []*autocliv1.RpcCommandOptions{ 93 { 94 RpcMethod: "SetWithdrawAddress", 95 Use: "set-withdraw-addr [withdraw-addr]", 96 Short: "Change the default withdraw address for rewards associated with an address", 97 Example: fmt.Sprintf("%s tx distribution set-withdraw-addr cosmos1gghjut3ccd8ay0zduzj64hwre2fxs9ld75ru9p --from mykey", version.AppName), 98 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 99 {ProtoField: "withdraw_address"}, 100 }, 101 }, 102 { 103 RpcMethod: "WithdrawDelegatorReward", 104 Use: "withdraw-rewards [validator-addr]", 105 Short: "Withdraw rewards from a given delegation address", 106 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 107 {ProtoField: "validator_address"}, 108 }, 109 }, 110 { 111 RpcMethod: "WithdrawValidatorCommission", 112 Use: "withdraw-validator-commission [validator-addr]", 113 Short: "Withdraw commissions from a validator address (must be a validator operator)", 114 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 115 {ProtoField: "validator_address"}, 116 }, 117 }, 118 { 119 RpcMethod: "DepositValidatorRewardsPool", 120 Use: "fund-validator-rewards-pool [validator-addr] [amount]", 121 Short: "Fund the validator rewards pool with the specified amount", 122 Example: fmt.Sprintf("%s tx distribution fund-validator-rewards-pool cosmosvaloper1x20lytyf6zkcrv5edpkfkn8sz578qg5sqfyqnp 100uatom --from mykey", version.AppName), 123 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 124 {ProtoField: "validator_address"}, 125 {ProtoField: "amount", Varargs: true}, 126 }, 127 }, 128 { 129 RpcMethod: "FundCommunityPool", 130 Use: "fund-community-pool [amount]", 131 Short: "Funds the community pool with the specified amount", 132 Example: fmt.Sprintf(`$ %s tx distribution fund-community-pool 100uatom --from mykey`, version.AppName), 133 PositionalArgs: []*autocliv1.PositionalArgDescriptor{ 134 {ProtoField: "amount", Varargs: true}, 135 }, 136 }, 137 { 138 RpcMethod: "UpdateParams", 139 Skip: true, // skipped because authority gated 140 }, 141 { 142 RpcMethod: "CommunityPoolSpend", 143 Skip: true, // skipped because authority gated 144 }, 145 }, 146 EnhanceCustomCommand: false, // use custom commands only until v0.51 147 }, 148 } 149 }