Back to

Package bootstrap

Latest Go to latest

The latest major version is .

Published: Jul 22, 2020 | License: Apache-2.0 | Module:


type Helper

type Helper interface {
	// GenesisBlock should return the genesis block required to bootstrap
	// the ledger (be it reading from the filesystem, generating it, etc.)
	GenesisBlock() *ab.Block

Helper defines the functions a bootstrapping implementation should provide.

type Replacer

type Replacer interface {
	// ReplaceGenesisBlockFile should first copy the current file to a backup
	// file: <genesis-file-name> => <genesis-file-name>.bak
	// and then overwrite the original file with the content of the given block.
	// If something goes wrong during migration, the original file could be
	// restored from the backup.
	// An error is returned if the operation was not completed successfully.
	ReplaceGenesisBlockFile(block *ab.Block) error

	// CheckReadWrite checks whether the current file is readable and writable,
	// because if it is not, there is no point in attempting to replace. This
	// check is performed at the beginning of the consensus-type migration
	// process.
	// An error is returned if the file is not readable and writable.
	CheckReadWrite() error

Replacer provides the ability to to replace the current genesis block used for bootstrapping with the supplied block. It is used during consensus-type migration in order to replace the original genesis block used for bootstrapping with the latest config block of the system channel, which contains the new consensus-type. This will ensure the instantiation of the correct consenter type when the server restarts.

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier