/skale-admin

SKALE admin docker container orchestrates all other SKALE Docker containers

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

SKALE Admin

Test Build and publish Discord

This repo contains source code for 3 core SKALE Node containers:

  • skale_admin - worker that manages sChains creation and node rotation
  • skale_api - webserver that provides node API
  • celery - distributed task queue

API reference

SKALE API reference could be found in the docs repo: SKALE Node API.

Development

Run tests locally

  1. Run local ganache, download and deploy SKALE Manager contracts to it
ETH_PRIVATE_KEY=[..] MANAGER_BRANCH=[..] bash ./scripts/deploy_manager.sh
  • ETH_PRIVATE_KEY - it could be any valid Ethereum private key (without 0x prefix!)
  • MANAGER_BRANCH - tag of the SKALE Manager image to use ($MANAGER_BRANCH-latest will be used)
  • SGX_WALLET_TAG - tag of the SGX simulator to use (optional, latest will be used by default)

List of the available SM tags: https://hub.docker.com/r/skalenetwork/skale-manager/tags
List of the available SGX tags: https://hub.docker.com/r/skalenetwork/sgxwalletsim/tags

  1. Run SGX wallet simulator and all tests after it
ETH_PRIVATE_KEY=[...] SCHAIN_TYPE=[...] bash ./scripts/run_tests.sh
  • ETH_PRIVATE_KEY - it could be any valid Ethereum private key (without 0x prefix!)
  • SCHAIN_TYPE - type of the chain for the DKG test (could be test2 - 2 nodes, test4 - 4 nodes, tiny - 16 nodes)

Test build:

export BRANCH=$(git branch | grep -oP "^\*\s+\K\S+$")
export VERSION=$(bash scripts/calculate_version.sh)
bash scripts/build.sh

License

License

All contributions to SKALE Admin are made under the GNU Affero General Public License v3. See LICENSE.

Copyright (C) 2019-Present SKALE Labs.