Skip to content

About

Installation, configuration, maintenance, and operational tooling for Seismic node operators

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Seismic Node Operations

Operational tooling and configuration for installing and running Seismic validator and observer nodes.

Validator installation

The interactive validator installer is located at:

install/install-validator.sh

For requirements, installation steps, persistent storage, MDBX notes, validator registration, service startup, OpenResty, and troubleshooting, see the Validator Installer and First-Start Guide.

Observer installation

The observer installer is located at:

install/install-observer.sh

See the Observer Installer and First-Start Guide.

Node onboarding and operations

After installation, one CLI downloads and installs checkpoints, creates validator deposit signatures, and starts and stops validator or observer services:

tools/seismic-node.py

Its commands are checkpoint install, checkpoint rollback, checkpoint delete-backup, validator deposit-signature, validator onboard, validator start, validator stop, observer start, and observer stop. The role guides show the onboarding workflows; implementation and security notes are in tools/seismic_node/README.md.

Generate bearer tokens for OpenResty-protected endpoints with:

tools/generate-openresty-jwt.sh

The Summit internal-testnet genesis file is provided at:

internal_testnet_genesis.toml

Repository checks

GitHub Actions checks shell scripts, Python, and Markdown through .github/workflows/checks.yml.

Run the same checks locally from the repository root. ShellCheck must be installed; Go, Node.js with npx, Python 3.12, and uvx are also required. uvx runs the pinned Ruff version only for development checks and is not installed on node hosts.

go run mvdan.cc/sh/v3/cmd/shfmt@v3.12.0 -d install tools

(
  cd install
  shellcheck -x \
    install-validator.sh \
    install-observer.sh \
    ../tools/generate-openresty-jwt.sh
)

uvx --from ruff==0.16.5 ruff check --target-version py312 \
  tools/seismic-node.py \
  tools/seismic_node \
  tools/checkpoint-start/summit-checkpoint-runner.py \
  tests
uvx --from ruff==0.16.5 ruff format --check --target-version py312 \
  tools/seismic-node.py \
  tools/seismic_node \
  tools/checkpoint-start/summit-checkpoint-runner.py \
  tests
python3.12 -m py_compile \
  tools/seismic-node.py \
  tools/seismic_node/*.py \
  tools/checkpoint-start/summit-checkpoint-runner.py
python3.12 -m unittest discover -s tests -p 'test_*.py' -v

npx --yes prettier@3.6.2 --check '**/*.md'
npx --yes markdownlint-cli2@0.21.0 './**/*.md' '#./.git/**'

Shell formatting is defined in .editorconfig. Markdown formatting and lint rules are defined in .prettierrc.json and .markdownlint-cli2.jsonc.

About

Installation, configuration, maintenance, and operational tooling for Seismic node operators

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages