Об этом проекте
Fuel Core — официальная реализация клиента Fuel, написанная на Rust как полный узел для протокола Fuel v2. Репозиторий включает бинарный файл узла, вспомогательные крейты и инструменты для сборки, тестирования и запуска узла Fuel.
## Версии сети
В README перечислены версии, используемые в настоящее время в различных сетях Fuel:
- Fuel Ignition: 0.48.1
- Testnet: 0.48.1
- Devnet: 0.48.1
В репозитории также указан тег checkout v0.45.1 для запуска узла Ignition из исходного кода, который может отличаться от последней версии в таблице.
## Сборка
Системные требования включают стандартные инструменты сборки, такие как cmake, pkg-config, clang, и Rust с целевой платформой `wasm32-unknown-unknown`. Приведены команды настройки для конкретных платформ: macOS (Homebrew), Debian (apt) и Arch (pacman).
Команды сборки:
- `make build` для сборки бинарного файла узла в release-режиме
- `cargo xtask build` для сборки в режиме разработки, которая также перегенерирует схему GraphQL
## Запуск узла
Ссылки на документацию ведут к документации Fuel для операторов узлов по запуску узлов mainnet (Ignition) или локальной сети. Узел также можно запустить напрямую с помощью `fuel-core run`; в примерах показано использование `--db-type in-memory` для непостоянного состояния и `--poa-instant=false` для отключения автоматического производства блоков. База данных по умолчанию — RocksDB, и состояние сохраняется, если не используется режим in-memory.
## Тестирование и участие
Проект рекомендует участникам запускать `source ci_checks.sh` перед отправкой изменений или открытием pull request. Этот скрипт запускает все проверки CI, включая тесты. Также есть заметки по устранению неполадок для публикации крейтов, ошибок устаревшей базы данных (`rm -rf ~/.fuel/db`), ограничений на количество файловых дескрипторов в macOS и настройки уровня логирования через `RUST_LOG` или `HUMAN_LOGGING`.
## Служба GraphQL
Функциональность клиента доступна через конечную точку службы GraphQL по адресу `/v1/graphql`. Схема становится доступной в `crates/client/assets/schema.sdl` после сборки. Служба ожидает мутацию `submit`, которая принимает Transaction в шестнадцатеричном бинарном формате, согласно спецификациям Fuel.
## Docker и Kubernetes
Ресурсы для развёртывания включены в каталог `deployment/`, включая Dockerfile и манифест Kubernetes. Команды показывают, как собрать образ Docker и создать/удалить ресурсы Kubernetes: volume, deployment и service.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.