Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 0
Project Config
Project settings live in your repository and apply to everyone who builds that project (unless overridden by global config or CLI flags).
Beez does not auto-discover config.lua. You load it from build.lua:
beez.config(require("config"))Place config.lua next to build.lua. Lua's require resolves it from the project root when Beez loads the build script.
You can pass the table directly without a separate file:
beez.config({
cache= {
enabled=true,
path=".cache",
},
})Multiple calls merge in order:
beez.config(require("config"))
beez.config({
ui= { output_mode="verbose" },
})Later calls win for the same key.
return {
performance= {
cache_write_strategy="phase",
cache_fs_metadata=true,
},
cache= {
path=".cache",
enabled=true,
compress= {
algorithm="gzip",
mode="always",
},
},
env= {
load_dotenv=true,
vars= {
BUILD_TYPE="Release",
},
hash_vars= {
"CC",
"CXX",
"BUILD_TYPE",
},
},
}beez.config(...) runs while build.lua is parsed, before any workflow or task executes. That means:
- Settings are available for the whole run
beez.env()inbuild.luasees vars after environment application- Step callbacks use the merged config from the start of execution
Do not confuse project Beez settings with per-step config:
| Mechanism | Purpose |
|---|---|
beez.config({ ... }) | Global Beez behavior (cache, UI, env) |
configure_step("name", { ... }) | Data for one step (patterns, tool revisions) |
step({ config = { ... } }) | Inline step config at declaration time |
Step config is documented in Configure Step and Step Context.
Commit shared defaults in config.lua. Override locally or in CI without editing files:
beez --no-cache build
beez -j 1 --verbose test
beez --show-config- Environment Variables -
envsection in detail - Cache Settings -
cachesection - Project Layout - file locations
Quick Reference · Glossary · FAQ
- Fundamentals
- Core Concepts
- Project Layout
- First Pipeline
- Phases and Scopes
- How Phases and Scopes Work
- Selecting with Phases and Scopes
- Designing Phases and Scopes
- Parallel Execution and Dependencies
- Configuration
- Configuration Overview
- Global User Config
- Project Config
- Environment Variables
- Performance Settings
- Cache Settings
- Config Reference
- CLI
- CLI Overview
- Running Targets
- Filtering by Phase
- Running a Single Step
- Listing Entities
- Output and Logging Flags
- Cache and Maintenance Flags
- Meta and Utility Commands
- Project Scaffolding —
beez --init(embedded Tempify) - CLI Flag Reference
- Lua DSL
- DSL Overview
- Plugin System — Plugins, Config DSL, Standard-Workflows
- Step Declaration
- Task Declaration
- Workflow Declaration
- Order Declaration
- Configure Step
- ReqPack Declaration
- Beez API
- Step Context
- DSL Patterns
- Caching
- Caching Overview
- Step Cache
- Success Cache
- Glob Metadata Cache
- Artifact Patterns
- Cache Keys and Invalidation
- Cache Storage and Maintenance
- Caching Troubleshooting
- Development and Contribution
- Building and Setup
- Repository Layout
- Testing
- Code Quality
- Feature Development Workflow
- Submitting Changes