Repository navigation
Beez API
The beez table exposes project settings and environment access from build.lua.
Merge project Beez settings (cache, UI, performance, env).
beez.config(require("config"))
beez.config({
cache = { enabled = true },
ui = { output_mode = "clean" },
})- Multiple calls merge; later calls override the same keys
- Same shape as
~/.config/beez/config.lua(see Configuration) - Applied when the script loads, before any step runs
Typical pattern at the top of build.lua:
beez.config(require("config"))Read an environment variable by name.
local buildType = beez.env("BUILD_TYPE")
local cc = beez.env("CC") or "gcc"- Process environment (
getenv), including values fromenv.varsand env files already loaded byapplyEnvironment() - Project root
.envfile (lazy-loaded on firstbeez.env()call) -
nilif unset (Luanil, not empty string)
beez.env() does not read every env.files entry directly. Files listed under env.files become visible after beez.config() runs, because that call applies them to the process environment. Call beez.config(require("config")) before reading project env vars at the top of build.lua.
Use beez.env() when defining shell commands or step logic at load time:
local BUILD_TYPE = beez.env("BUILD_TYPE") or "Release"
local BUILD_TREE = "build/build/" .. BUILD_TYPEControl env loading via the env section in config:
-
load_dotenv,files,vars,hash_vars, etc.
This page covers configuration (beez.config) and environment (beez.env) only.
For filesystem, crypto, HTTP, archives, data serialization, text templates, and more, see Lua API Overview.
| Module | Page |
|---|---|
beez.fs |
Lua API Filesystem |
beez.crypto |
Lua API Crypto |
beez.sys |
Lua API System |
beez.time / beez.date
|
Lua API Time and Date |
beez.data |
Lua API Data (includes schema validation) |
beez.net |
Lua API Network |
beez.archive |
Lua API Archive |
beez.text |
Lua API Text |
ctx:spawn / wait
|
Lua API Workers |
| Feature | Where |
|---|---|
| Register steps | Global step()
|
| Run commands | CLI (beez ...) |
| Read cache | Step context in callbacks |
-
Lua API Overview - full
beez.*reference - Configuration - full config reference
-
Project Config -
config.luapattern - DSL Overview - other globals
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
- UI and Output
- Output Modes
- Progress and Animation
- Colors and Themes
- Run Summaries
- Logging and Log Files
- Development and Contribution
- Building and Setup
- Repository Layout
- Testing
- Code Quality
- Feature Development Workflow
- Submitting Changes