Skip to content

Commit

Permalink
docs: add IBC setup using DIVE CLI to readme (icon-project#767)
Browse files Browse the repository at this point in the history
* docs: add ibc local setup using dive cli

* chore: update ibc setup docs

* chore: update readme and ibc setup md

* docs: update table of contents

* fix: typo in readme
  • Loading branch information
shreyasbhat0 authored Oct 23, 2023
1 parent 49ff4ad commit 335a316
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 13 deletions.
25 changes: 12 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,17 @@
[![Version](https://img.shields.io/github/tag/icon-project/IBC-Integration.svg?style=flat-square)](https://github.com/icon-project/IBC-Integration)

| Language | Code Coverage | Test |
|---------------------------------|----------------------------------------------|-------------------------------------------------|
| ------------------------------- | -------------------------------------------- | ----------------------------------------------- |
| [Java](./contracts/javascore) | [![Java Cov][java-cov-badge]][java-cov-link] | [![Java Test][java-test-badge]][java-test-link] |
| [Rust](./contracts/cosmwasm-vm) | [![Rust Cov][rust-cov-badge]][rust-cov-link] | [![Rust Test][rust-test-badge]][rust-test-link] |


[java-cov-link]: https://app.codecov.io/gh/icon-project/IBC-Integration/tree/main/contracts/javascore

[rust-cov-link]: https://app.codecov.io/gh/icon-project/IBC-Integration/tree/main/contracts/cosmwasm-vm

[java-cov-badge]: https://codecov.io/gh/icon-project/IBC-Integration/branch/main/graph/badge.svg?token=8KX6y8aGom&flag=java

[rust-cov-badge]: https://codecov.io/gh/icon-project/IBC-Integration/branch/main/graph/badge.svg?token=8KX6y8aGom&flag=rust

[java-test-badge]: https://github.com/icon-project/IBC-Integration/actions/workflows/java-contracts-test.yml/badge.svg

[java-test-link]: https://github.com/icon-project/IBC-Integration/actions/workflows/java-contracts-test.yml

[rust-test-badge]: https://github.com/icon-project/IBC-Integration/actions/workflows/basic-rust.yml/badge.svg

[rust-test-link]: https://github.com/icon-project/IBC-Integration/actions/workflows/basic-rust.yml

# IBC-Integration
Expand All @@ -43,6 +35,7 @@ defined [here](https://github.com/icon-project/xCall/blob/main/docs/adr/xcall.md
- [Installation](#installation--)
- [Getting Started](#getting-started--)
- [Prerequisite](#prerequiste)
- [Local Setup And Runnning Tests Using DIVE CLI](#local-setup-and-runnning-tests-using-dive-cli)
- [Build](#build)
- [Running the tests](#testing)
- [Deploy](#deploy)
Expand Down Expand Up @@ -91,7 +84,7 @@ Make sure you have following installed on your machine to build the contracts or
### Project Structure

| Directory | Description |
|:--------------------------------------------------|:-------------------------------------------------------------------------------|
| :------------------------------------------------ | :----------------------------------------------------------------------------- |
| [/contracts/cosmwasm-vm](./contracts/cosmwasm-vm) | Includes contracts for cosmwasm based chains |
| [/contracts/evm](./contracts/evm) | Includes contracts for evm based chains |
| [/contracts/javascore](./contracts/javascore) | Includes contracts for ICON chain |
Expand All @@ -103,6 +96,10 @@ Make sure you have following installed on your machine to build the contracts or
| [/test](./test) | Test Framework and Test Suite including e2e test and functional test |
| [/utils](./utils) | Utilities used for build, setup, CI/CD |

## Local Setup And Runnning Tests Using DIVE CLI

For Setting up nodes , deploy contracts and end-to-end testing follow steps provided [here](./docs/ibc-setup-using-dive-cli.md)

## Build <a name = "build"> </a>

Run following command on root directory to build the rust contracts. The built wasm files will be available in the artifacts directory in the root.
Expand Down Expand Up @@ -146,8 +143,8 @@ For deployment and usage follow steps provided [here](https://github.com/izyak/i
## Developing IBC Dapp <a name = "developing-ibc-dapp"> </a>

To build dapp that is compatible with our smart contract based IBC Host you can follow the docs provided in mock ibc dapp samples.
Sample for cosmwasm contract [here](./contracts/cosmwasm-vm/cw-mock-ibc-dapp/README.md).
Sample for icon contract [here](./contracts/javascore/modules/mockapp/src/main/java/ibc/mockapp/MockApp.java)
Sample for cosmwasm contract [here](./contracts/cosmwasm-vm/cw-mock-ibc-dapp/README.md).
Sample for icon contract [here](./contracts/javascore/modules/mockapp/src/main/java/ibc/mockapp/MockApp.java)

## Contributing <a name = "contributing"> </a>

Expand All @@ -162,6 +159,7 @@ If you encounter a bug or have an idea for a new feature, please follow these st
1. Before submitting a bug report, search the [existing issues](https://github.com/icon-project/IBC-Integration/issues) to see if the bug has already been reported. If you find a similar issue, you can add relevant details in the comments.

2. If the bug hasn't been reported yet, [open a new issue](https://github.com/icon-project/IBC-Integration/issues/new/choose) with a clear and descriptive title. Provide as much detail as possible, including:

- A clear description of the bug and its impact.
- Steps to reproduce the bug.
- Your environment details (OS, ICON node version, etc.).
Expand All @@ -174,6 +172,7 @@ If you encounter a bug or have an idea for a new feature, please follow these st
1. Before submitting a feature request, again, check the [existing issues](https://github.com/icon-project/IBC-Integration/issues) to ensure that the feature hasn't already been requested. If you find a similar request, you can add your insights in the comments.

2. To submit a new feature request, [open a new issue](https://github.com/icon-project/IBC-Integration/issues/new/choose) and select the "Feature Request" template. Provide a clear and comprehensive description of the feature you're proposing, including:

- The problem the feature aims to solve.
- How the feature would work.
- Any potential benefits or use cases.
Expand Down Expand Up @@ -214,4 +213,4 @@ If you need assistance, have questions, or want to collaborate on this project,

---

Thank you for your interest in the IBC Integration for ICON Project. We look forward to your contributions and the positive impact they will bring to the ICON blockchain and its interoperability capabilities!
Thank you for your interest in the IBC Integration for ICON Project. We look forward to your contributions and the positive impact they will bring to the ICON blockchain and its interoperability capabilities!
37 changes: 37 additions & 0 deletions docs/ibc-setup-using-dive-cli.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Setting Up IBC Using DIVE CLI

## Prerequisite

- [Docker installed and running](https://docs.docker.com/get-docker/)

- [Kurtosis installed and running ](https://docs.kurtosis.com/install#ii-install-the-cli) or [(upgrading to the latest)](https://docs.kurtosis.com/upgrade)

- [Install DIVE CLI ](https://github.com/HugoByte/DIVE#installing-dive-cli)

## Running Setup

- To setup IBC setup between Icon and Archway run the following command:

```shell
dive bridge ibc --chainA icon --chainB archway
```

- Spins icon and archway node
- Opens Btp Network for BTP Blocks
- Deploys the Contracts necessary for the IBC connection
- Starts the relay

- To setup IBC setup between Icon and Archway run the following command:

```shell
dive bridge ibc --chainA icon --chainB neutron
```

- Spins icon and neutron node
- Opens Btp Network for BTP Blocks
- Deploys the Contracts necessary for the IBC connection
- Starts the relay

## End-to-End Testing

To run end-to-end testing script please follow from the second step mentioned [here](https://github.com/HugoByte/DIVE/blob/main/test/README.md#end-to-end-icon---archway-demo)

0 comments on commit 335a316

Please sign in to comment.