2022-03-01 08:01:56 +01:00
|
|
|
# CIC Token Deployment Tool
|
2022-03-01 09:22:14 +01:00
|
|
|
[![Status](https://ci.grassecon.net/api/badges/grassrootseconomics/cic/status.svg?ref=refs/heads/master)](https://ci.grassecon.net/grassrootseconomics/cic)
|
|
|
|
[![Version](https://img.shields.io/pypi/v/cic?color=green)](https://pypi.org/project/cic/)
|
2021-11-30 10:54:13 +01:00
|
|
|
|
|
|
|
CIC-CLI provides tooling to generate and publish metadata in relation to
|
|
|
|
token deployments.
|
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
```shell
|
2022-03-01 10:09:22 +01:00
|
|
|
pip install --extra-index-url https://pip.grassrootseconomics.net cic[eth]
|
2021-11-30 10:54:13 +01:00
|
|
|
```
|
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
## Usage
|
|
|
|
### Using the wizard
|
|
|
|
```
|
|
|
|
# Local
|
|
|
|
cic wizard ./somewhere -c ./config/dev-docker
|
2021-11-30 10:54:13 +01:00
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
# Production
|
|
|
|
cic wizard ./somewhere -c ./config/prod
|
2021-11-30 10:54:13 +01:00
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
```
|
|
|
|
### Modular
|
2021-11-30 10:54:13 +01:00
|
|
|
Some of the concepts described below assume familiarity with base
|
|
|
|
concepts of the CIC architecture. Please refer to the appropriate
|
|
|
|
documentation for more information.
|
|
|
|
|
|
|
|
To initialize a new token deployment for the EVM:
|
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
```shell
|
2021-11-30 10:54:13 +01:00
|
|
|
cic init --target eth --name <token_name> --symbol <token_symbol> --precision <token_value_precision> <settings_folder>
|
|
|
|
```
|
|
|
|
|
|
|
|
To automatically fill in settings detected in the network for the EVM:
|
|
|
|
|
2022-03-01 08:01:56 +01:00
|
|
|
```shell
|
2021-11-30 10:54:13 +01:00
|
|
|
cic ext --registry <contract_registry_address> -d <settings_folder> -i <chain_spec> -p <rpc_endpoint> eth
|
|
|
|
```
|
2022-03-01 08:01:56 +01:00
|
|
|
|
|
|
|
|
|
|
|
## Structure of the components
|
|
|
|
|
|
|
|
![image](./doc/sphinx/components.svg)
|
|
|
|
|
|
|
|
CIC-CLI is designed to interface any network type backend. The current
|
|
|
|
state of the package contains interface to EVM only. Thus, the examples
|
|
|
|
below are limited to the context of the EVM.
|
|
|
|
|
|
|
|
## Development
|
|
|
|
### Requirements
|
|
|
|
- [poetry](https://python-poetry.org/docs/#installation)
|
|
|
|
### Setup
|
|
|
|
|
|
|
|
```
|
2022-03-01 10:09:22 +01:00
|
|
|
poetry install -E eth
|
2022-03-01 08:01:56 +01:00
|
|
|
```
|
|
|
|
|
|
|
|
### Running the CLI
|
|
|
|
|
|
|
|
```bash
|
|
|
|
poetry run cic -h
|
|
|
|
```
|
|
|
|
|
2022-03-01 14:36:58 +01:00
|
|
|
```bash
|
|
|
|
poetry run cic wizard ./somewhere -c ./config/dev-docker
|
|
|
|
```
|
2022-03-01 08:01:56 +01:00
|
|
|
### Tests
|
|
|
|
|
|
|
|
```
|
|
|
|
poetry run pytest
|
|
|
|
```
|