poa

package module
v0.0.0-...-191b3e2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 8, 2020 License: Apache-2.0 Imports: 23 Imported by: 2

README

!! This module is still in beta and not fit for production use !!

How to find more information on the module


Please view to Proof of Authority module spec for more details on the commands defined in the How to sections

Link to Spec


How to install module


How to add the module to your application

  1. See the diff on this PR and emulate the changes in your application

  2. (OPTIONAL) Set up local network to test changes, can be copy/paste'd from this PR


How to use the module


How to add a validator to the validator set

  1. Create a CreateValidatorPOA transaction and submit it
appcli tx poa create-validator val1 `hex-encoded-public-key-of-the-validator` --trust-node --from validator --chain-id cash

  1. Verfiy that the CreateValidatorPOA tranaction was correctly processed
appcli query poa validator-poa val1 --trust-node --chain-id cash

How to vote on a validator to allow the validator to be added to the validator set

  1. Vote for a validator to join the validator set
appcli tx poa vote-validator val1 --trust-node --from validator --chain-id cash

  1. Query for the vote to see if the transaction was successful
appcli query poa vote-poa val1 `validator address` --trust-node --chain-id cash

How to query all votes and validators

  1. Query all votes
appcli query poa votes

  1. Query all validators
appcli query poa validators

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ModuleCdc *codec.Codec

ModuleCdc defines the module codec

Functions

func BeginBlocker

func BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock, k keeper.Keeper)

BeginBlocker check for infraction evidence or downtime of validators on every begin block

func EndBlocker

func EndBlocker(ctx sdk.Context, k keeper.Keeper) []abci.ValidatorUpdate

EndBlocker called every block, process inflation, update validator set.

func ExportGenesis

func ExportGenesis(ctx sdk.Context, k keeper.Keeper) (data types.GenesisState)

ExportGenesis writes the current store values to a genesis file, which can be imported again with InitGenesis

func InitGenesis

func InitGenesis(ctx sdk.Context, k keeper.Keeper, data types.GenesisState) []abci.ValidatorUpdate

InitGenesis initialize default parameters and the keeper's address to pubkey map

func NewHandler

func NewHandler(k keeper.Keeper) sdk.Handler

NewHandler ...

func NewQuerier

func NewQuerier(k keeper.Keeper) sdk.Querier

NewQuerier creates a new querier for authority clients.

func RegisterCodec

func RegisterCodec(cdc *codec.Codec)

RegisterCodec registers concrete types on codec

Types

type AppModule

type AppModule struct {
	AppModuleBasic
	// contains filtered or unexported fields
}

AppModule implements an application module for the poa module.

func NewAppModule

func NewAppModule(k keeper.Keeper, bankKeeper bank.Keeper) AppModule

NewAppModule creates a new AppModule object

func (AppModule) BeginBlock

func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock)

BeginBlock returns the begin blocker for the poa module.

func (AppModule) EndBlock

EndBlock returns the end blocker for the poa module. It returns no validator updates.

func (AppModule) ExportGenesis

func (am AppModule) ExportGenesis(ctx sdk.Context) json.RawMessage

ExportGenesis returns the exported genesis state as raw bytes for the poa module.

func (AppModule) InitGenesis

func (am AppModule) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate

InitGenesis performs genesis initialization for the poa module. It returns no validator updates.

func (AppModule) Name

func (AppModule) Name() string

Name returns the poa module's name.

func (AppModule) NewHandler

func (am AppModule) NewHandler() sdk.Handler

NewHandler returns an sdk.Handler for the poa module.

func (AppModule) NewQuerierHandler

func (am AppModule) NewQuerierHandler() sdk.Querier

NewQuerierHandler returns the poa module sdk.Querier.

func (AppModule) QuerierRoute

func (AppModule) QuerierRoute() string

QuerierRoute returns the poa module's querier route name.

func (AppModule) RegisterInvariants

func (am AppModule) RegisterInvariants(_ sdk.InvariantRegistry)

RegisterInvariants registers the poa module invariants.

func (AppModule) Route

func (AppModule) Route() string

Route returns the message routing key for the poa module.

type AppModuleBasic

type AppModuleBasic struct{}

AppModuleBasic defines the basic application module used by the poa module.

func (AppModuleBasic) BuildCreateValidatorMsg

func (AppModuleBasic) BuildCreateValidatorMsg(cliCtx context.CLIContext,
	txBldr authtypes.TxBuilder) (authtypes.TxBuilder, sdk.Msg, error)

// BuildCreateValidatorMsg - used for gen-tx

func (AppModuleBasic) CreateValidatorMsgHelpers

func (AppModuleBasic) CreateValidatorMsgHelpers(ipDefault string) (
	fs *flag.FlagSet, nodeIDFlag, pubkeyFlag, amountFlag, defaultsDesc string)

// CreateValidatorMsgHelpers - used for gen-tx

func (AppModuleBasic) DefaultGenesis

func (AppModuleBasic) DefaultGenesis() json.RawMessage

DefaultGenesis returns default genesis state as raw bytes for the poa module.

func (AppModuleBasic) GetQueryCmd

func (AppModuleBasic) GetQueryCmd(cdc *codec.Codec) *cobra.Command

GetQueryCmd returns no root query command for the poa module.

func (AppModuleBasic) GetTxCmd

func (AppModuleBasic) GetTxCmd(cdc *codec.Codec) *cobra.Command

GetTxCmd returns the root tx command for the poa module.

func (AppModuleBasic) Name

func (AppModuleBasic) Name() string

Name returns the poa module's name.

func (AppModuleBasic) PrepareFlagsForTxCreateValidator

func (AppModuleBasic) PrepareFlagsForTxCreateValidator(config *cfg.Config, nodeID,
	chainID string, valPubKey crypto.PubKey)

// PrepareFlagsForTxCreateValidator - used for gen-tx

func (AppModuleBasic) RegisterCodec

func (AppModuleBasic) RegisterCodec(cdc *codec.Codec)

RegisterCodec registers the poa module's types for the given codec.

func (AppModuleBasic) RegisterRESTRoutes

func (AppModuleBasic) RegisterRESTRoutes(ctx context.CLIContext, rtr *mux.Router)

RegisterRESTRoutes registers the REST routes for the poa module.

func (AppModuleBasic) ValidateGenesis

func (AppModuleBasic) ValidateGenesis(bz json.RawMessage) error

ValidateGenesis performs genesis state validation for the poa module.

Directories

Path Synopsis
client
cli

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL