Skip to content

Conversation

@kamilsa
Copy link
Contributor

@kamilsa kamilsa commented Oct 1, 2025

  • Updates CLI by introducing new flags.
  • Fixes incompatibilities with Ream and Zeam
  • Improves docker container build

Summary (auto-generated):

This pull request introduces a multi-stage Docker build for the project, refactors build scripts to improve reproducibility and dependency management, and adds example genesis configuration files for smoke testing. The changes streamline CI, Docker, and Makefile workflows, and enhance Python and Rust environment setup for both local and containerized builds.

Docker and Build System Improvements:

  • Added a multi-stage Docker build in Dockerfile, separating builder and runtime stages, with artifact collection and runtime verification. Also introduced a more granular Dockerfile.runtime for runtime-only images. [1] [2]
  • Extended the Makefile with comprehensive Docker build, run, verify, tag, and push targets, supporting build args and image management for CI/CD and local development. [1] [2]
  • Updated build commands to use Ninja generator and parallel builds for faster compilation, and improved environment variable handling for Docker integration.

CI and Environment Setup:

  • Improved .ci/scripts/init.sh and .ci/scripts/init_py.sh to robustly install Rust via rustup, verify Python availability and venv creation, and ensure proper environment setup for both Python and Rust. [1] [2] [3]
  • Updated GitHub Actions workflow to remove redundant Rust setup, and expanded cache paths for Rust and vcpkg artifacts to speed up CI runs. [1] [2]

Example and Configuration Files:

  • Added example genesis configuration files (config.yaml, genesis.json, nodes.yaml, validators.yaml) for smoke testing with four validators and corresponding node/validator assignments. [1] [2] [3] [4]
  • Updated main configuration (example/config.yaml) to change logging level to info and remove the unused spec_file field for clarity. [1] [2]

kamilsa and others added 26 commits October 1, 2025 11:43
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
zerg-su and others added 3 commits October 4, 2025 12:54
- Add Dockerfile with 2-stage build (builder and runtime)
- Add Dockerfile.runtime for fast runtime-only rebuilds
- Update Makefile with Docker build targets (docker_build_builder, docker_build_runtime, docker_build_all)
- Install Rust via rustup in init.sh script instead of apt
- Add RUST_VERSION to .env configuration
- Update CI workflow to cache Rust via rustup
- Configure vcpkg caching with BuildKit mount
- Fix library and module paths in runtime stage
- Set --modules-dir in ENTRYPOINT for convenience

(cherry picked from commit e52add2)
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
@turuslan turuslan requested a review from xDimon October 16, 2025 06:16
config_->node_key_hex_ = value;
std::println(file_errors_,
"E: Value 'general.node_key' must be private key "
"hex or it's file path");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we leave error message here?

Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
Signed-off-by: turuslan <[email protected]>
@turuslan turuslan requested a review from xDimon October 16, 2025 09:32
@kamilsa kamilsa merged commit e4e3834 into master Oct 16, 2025
2 checks passed
@kamilsa kamilsa deleted the feature/configs-cli branch October 16, 2025 10:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants