Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4,516 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Development

Dependencies

Install uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

Install all dependencies:

uv sync --prerelease=allow --all-extras

Linting and type checking

Check linting/formatting issues

uv run ruff check

Check type issues

uv run mypy .

Auto-fix ruff issues (linting + formatting)

uv run ruff check --fix

Format code with ruff

uv run ruff format

In file .git/hooks/pre-commit add:

#!/bin/sh
uv run ruff check

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/sgxwallet_sim/tags

  2. 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.

About

SKALE admin docker container orchestrates all other SKALE Docker containers

Topics

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages