interchain-security

module
v6.0.0 Latest Latest
Warning

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

Go to latest
Published: Sep 13, 2024 License: Apache-2.0

README

Interchain Security

Go Report Card Security Rating Vulnerabilities Bugs Lines of Code Coverage

interchain-security contains a working and in-production implementation of the Interchain Security (ICS) protocol. ICS is an open sourced IBC application which allows cosmos blockchains to lease their proof-of-stake security to one another.

For more details on the Interchain Security protocol, take a look at the docs or technical specification.

For a list of currently active releases, see RELEASES.md.

For a list of major ICS features available in the currently active releases, see FEATURES.md.

Instructions

Prerequisites

## For OSX or Linux

# go 1.21 (https://formulae.brew.sh/formula/go)
brew install go@1.21
# jq (optional, for testnet) (https://formulae.brew.sh/formula/jq)
brew install jq
# docker (optional, for integration tests, testnet) (https://docs.docker.com/get-docker/)

Installing and running binaries

# install interchain-security-pd and interchain-security-cd binaries
make install
# run provider
interchain-security-pd
# run consumer
interchain-security-cd
# (if the above fail, ensure ~/go/bin on $PATH)
export PATH=$PATH:$(go env GOPATH)/bin

Inspect the Makefile if curious.

Testing

See testing docs.

Learn more

Directories

Path Synopsis
app
cmd
tests
e2e
testutil
keeper
Package keeper is a generated GoMock package.
Package keeper is a generated GoMock package.
simibc
simibc is a collection of utilities wrapping the ibc-go testing framework which make is easier to write test scenarios involving precise orders of packet and ack delivery and calls to BeginBlock and EndBlock.
simibc is a collection of utilities wrapping the ibc-go testing framework which make is easier to write test scenarios involving precise orders of packet and ack delivery and calls to BeginBlock and EndBlock.
x
ccv/consumer/types
Package types is a reverse proxy.
Package types is a reverse proxy.
ccv/democracy/distribution
Package distribution defines a "wrapper" module around the Cosmos SDK's native x/distribution module.
Package distribution defines a "wrapper" module around the Cosmos SDK's native x/distribution module.
ccv/democracy/governance
Package governance defines a "wrapper" module around the Cosmos SDK's native x/governance module.
Package governance defines a "wrapper" module around the Cosmos SDK's native x/governance module.
ccv/democracy/staking
Package staking defines a "wrapper" module around the Cosmos SDK's native x/staking module.
Package staking defines a "wrapper" module around the Cosmos SDK's native x/staking module.
ccv/no_valupdates_genutil
Package genutil defines a "wrapper" module around the Cosmos SDK's native x/genutil module.
Package genutil defines a "wrapper" module around the Cosmos SDK's native x/genutil module.
ccv/no_valupdates_staking
Package staking defines a "wrapper" module around the Cosmos SDK's native x/staking module.
Package staking defines a "wrapper" module around the Cosmos SDK's native x/staking module.
ccv/provider/types
Package types is a reverse proxy.
Package types is a reverse proxy.

Jump to

Keyboard shortcuts

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