- Remove KCL ecosystem (~220 files deleted) - Migrate all infrastructure to Nickel schema system - Consolidate documentation: legacy docs → provisioning/docs/src/ - Add CI/CD workflows (.github/) and Rust build config (.cargo/) - Update core system for Nickel schema parsing - Update README.md and CHANGES.md for v5.0.0 release - Fix pre-commit hooks: end-of-file, trailing-whitespace - Breaking changes: KCL workspaces require migration - Migration bridge available in docs/src/development/
1.9 KiB
1.9 KiB
Build System
Purpose: Core build tools for compiling Rust components and bundling Nushell libraries.
Tools
Compilation
compile-platform.nu- Compile Rust orchestrator, control-center, and MCP server- Multi-platform cross-compilation
- Release/debug build modes
- Feature flag management
- Output to
dist/platform/
Bundling
bundle-core.nu- Bundle Nushell core libraries and CLI- Package provisioning CLI wrapper
- Core library bundling (lib_provisioning)
- Configuration system packaging
- Validation and syntax checking
- Optional compression (gzip)
- Output to
dist/core/
Validation
check-system.nu- Validate build environment- Check required tools (Rust, Nushell, Nickel)
- Verify dependencies
- Validate configuration
Build Process
Complete build pipeline:
just build-all # Platform + core
just build-platform # Rust binaries only
just build-core # Nushell libraries only
Build with validation:
just build-core --validate # Validate Nushell syntax
Debug build:
just build-debug # Build with debug symbols
Output
Build outputs go to dist/:
dist/platform/- Compiled Rust binariesdist/core/- Nushell libraries and CLIdist/config/- Configuration filesdist/core/bundle-metadata.json- Build metadata
Architecture
Each build tool follows Nushell 0.109+ standards:
- Immutable variable patterns
- Explicit external command prefixes (
^) - Error handling via
do { } | completepattern - Comprehensive logging
Related Files
provisioning/justfiles/build.just- Build recipe definitionsprovisioning/tools/distribution/- Distribution generation using build outputsprovisioning/tools/package/- Packaging compiled binaries