ibc-integration

command module
v0.1.0-alpha.8 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2023 License: Apache-2.0 Imports: 3 Imported by: 0

README

Language Code Coverage
Java Java Cov
Rust Rust Cov

IBC-Integration

The Inter-Blockchain Communication protocol (IBC) is an end-to-end, connection-oriented, stateful protocol for reliable, ordered, and authenticated communication between heterogeneous blockchains arranged in an unknown and dynamic topology. xCall, a standard for generic cross-chain messaging along with IBC provides dynamic and coherent solution for inter-connected dapps.

Additional information on how IBC works can be found here. and xCall spec is defined here

Table of Content

About

Installation

This project uses git submodules. Use the following command to clone the repository.

git clone --recurse-submodules https://github.com/icon-project/IBC-Integration

To update submodules, run the following command,

git submodule init
git submodule update --remote

Getting Started

Terminologies used in this project.

Available Integrations
  • ICON
  • Archway
Project Structure
Directory Description
/contracts/cosmwasm-vm Includes contracts for cosmwasm based chains
/contracts/evm Includes contracts for evm based chains
/contracts/javascore Includes contracts for ICON chain
/docs Documentation
/libraries/rust Common rust libraries used across multiple integrations
/proto Proto files used for IBC
/resources Static resources in project. For example images, bin files, etc
/scripts Scripts to automate task in project, for example build scripts, deploy scripts.
/test Test Framework and Test Suite including e2e test and functional test
/utils Utilities used for build, setup, CI/CD

Testing

Integration Testing
go test -v ./test/integration --args -config=<path to config.json>
E2E Testing
go test -v ./test/e2e --args -config=<path to config.json>

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
libraries
internal/blockdb
Package blockdb saves chain and block data for inspection later to aid in debugging ibctest failures.
Package blockdb saves chain and block data for inspection later to aid in debugging ibctest failures.
internal/dockerutil
Package dockerutil contains helpers for interacting with Docker containers.
Package dockerutil contains helpers for interacting with Docker containers.
internal/mocktesting
Package mocktesting contains a mock instance of *testing.T which is useful for testing ibctest's interactions with Go tests.
Package mocktesting contains a mock instance of *testing.T which is useful for testing ibctest's interactions with Go tests.
relayer
Package relayer contains general functionality relevant to individual relayer implementations.
Package relayer contains general functionality relevant to individual relayer implementations.
relayer/icon
Package rly provides an interface to the cosmos relayer running in a Docker container.
Package rly provides an interface to the cosmos relayer running in a Docker container.

Jump to

Keyboard shortcuts

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