Bootstrap::BuildPlanOverrides
Inherits JSON::Serializable < Struct < Value < Object
Represents user-supplied, runtime-only overrides that can be applied to an
embedded BuildPlan JSON without recompiling the tooling.
Intended workflow:
- Run
bq2 sysroot-runnerand observe a failure. - Edit an overrides JSON (default:
/var/lib/sysroot-build-overrides.json) to add flags/env for the failing phase/package. - Re-run the runner for just the affected phase/package.
- Once stable, back-port the overrides into
SysrootBuilder.phase_specsso the build becomes reproducible from scratch.
Constructors
from_diff(base_plan : BuildPlan, target_plan : BuildPlan) : BuildPlanOverrides
Returns overrides that transform base_plan into target_plan.
Raises if differences cannot be represented via runtime overrides.
new(pull : JSON::PullParser)
Sourcenew(*, __pull_for_json_serializable pull : JSON::PullParser)
SourceInstance methods
apply(plan : BuildPlan) : BuildPlan
Apply the overrides to plan and return a new plan.
Raises when the overrides reference unknown phases or unknown packages in a phase package allowlist.
phases
Source