cic-stack/apps/contract-migration
2022-01-04 16:01:01 +00:00
..
config migrations: Enable deployment and data seeding to Bloxberg 2021-12-22 18:24:05 +00:00
config_template Empty config dir in faucet setup 2021-08-18 06:34:07 +00:00
doc init 2021-01-24 12:16:22 -08:00
docker refactor: Improve cic-cache 2022-01-04 16:01:01 +00:00
keystore init 2021-01-24 12:16:22 -08:00
scripts refactor: Improve cic-cache 2022-01-04 16:01:01 +00:00
testdata Refactor import scripts 2021-02-21 15:41:37 +00:00
token_data Philip/token meta 2021-11-17 08:20:31 +00:00
.dockerignore e2e ussd import user scripts 2021-07-19 21:30:04 +00:00
.gitlab-ci.yml docker vm builds 2021-08-28 16:26:16 +00:00
1_deploy_contract_root.sh feat: Enable parallell contract transactions in bootstrap 2021-10-29 09:36:14 +00:00
2_deploy_contract_instance.sh refactor: Improve cic-cache 2022-01-04 16:01:01 +00:00
3_deploy_token.sh refactor: Improve cic-cache 2022-01-04 16:01:01 +00:00
4_init_custodial.sh migrations: Enable deployment and data seeding to Bloxberg 2021-12-22 18:24:05 +00:00
5_data_seeding.sh feat: Enable parallell contract transactions in bootstrap 2021-10-29 09:36:14 +00:00
config.sh migrations: Enable deployment and data seeding to Bloxberg 2021-12-22 18:24:05 +00:00
from_env.sh Add cic-eth and auxiliary contract seeding script 2021-02-10 07:03:11 +00:00
LICENSE.txt init 2021-01-24 12:16:22 -08:00
nvm.sh Refactor import scripts 2021-02-21 15:41:37 +00:00
README_bloxberg.md feat: Split and improve contract migration steps 2021-10-20 15:02:36 +00:00
README.md documentation: updated the docs with new links and getting started 2021-12-09 09:20:03 +00:00
requirements.txt refactor: Improve cic-cache 2022-01-04 16:01:01 +00:00
run_job.sh feat: Enable parallell contract transactions in bootstrap 2021-10-29 09:36:14 +00:00
sarafu_declaration.json Add cic-eth and auxiliary contract seeding script 2021-02-10 07:03:11 +00:00
util.sh feat: Enable parallell contract transactions in bootstrap 2021-10-29 09:36:14 +00:00
wait-for-it.sh run reset.sh outside docker and fix deps 2021-02-22 06:27:59 -08:00

CIC-stack system bootstrap scripts

1. Deploy global contracts.

Global contracts are contracts that may or may not be used to contribute to a data store intended for consumption across instances.

In the current version of the scripts, the only contract deployed is the AddressDeclarator. Also, in the current version, the AddressDeclarator is required as a storage backend for some of the instance contracts.

2. Deploy instance contracts.

Instance contracts are contracts whose contents are limited to the context of a single custodial engine system.

This includes a registry of contracts used by the engine, as well as registry contracts for user accounts and tokens.

3. Deploy token.

Deploys a CIC token, adding it to the token registry.

The first token deployed becomes the default token of the instance.

In the current version of the scripts, two token types may be deployed; giftable_erc20_token and erc20_demurrage_token.

This step may be run multiple times, as long as the token symbol is different from all previously deployed tokens.

4. Initialize custodial engine.

Adds system accounts to the custodial engine, and unlocks the initialization seal. After this step, the custodial system is ready to use.

Services dependency graph

  1. evm
  2. bootstrap runlevel 1 - deploy global contracts (RUN_MASK=1 docker-compose up bootstrap)
  3. bootstrap runlevel 2 - deploy instance contracts (RUN_MASK=2 docker-compose up bootstrap)
  4. bootstrap runlevel 4 - deploy token (RUN_MASK=4 docker-compose up bootstrap)
  5. redis
  6. postgres
  7. cic-eth-tasker
  8. boostrap runlevel 8 - deploy custodial contracts (RUN_MASK=8 docker-compose up bootstrap)
  9. boostrap runlevel 16 - data seeding for development (RUN_MASK=16 docker-compose up bootstrap)
  10. bring up the remainig services (docker-compose up -d)