platform_build_blueprint/bootstrap
Colin Cross 910242b9a6 Clone all modules between mutators and GenerateBuildActions
A common pattern in mutators is to set a property on a module to be used
later in GenerateBuildActions.  A common anti-pattern is to set a member
variable instead of a property.  Setting member variables will appear to
work until a mutator calls CreateVariations after the member variable is
set.  The first variant will have the member variables, but any other
variants will have zero values for all member variables.

To catch this common case early, replace all modules with clones after
running all the mutators but before GenerateBuildActions.

This catches the anti-pattern used in bootstrap, replace the buildStage
member variable with a property.

Change-Id: I6ff37580783a6227ebba2b46d577b443566a79bb
2016-04-12 14:52:46 -07:00
..
bpdoc docs: Allow propery structs to contain non-struct ptrs 2016-01-13 13:58:45 -08:00
minibp Use three stage builds 2015-07-29 17:14:00 -07:00
bootstrap.go Clone all modules between mutators and GenerateBuildActions 2016-04-12 14:52:46 -07:00
cleanup.go Use context builddir for removing abandoned files 2015-11-18 16:06:19 -08:00
command.go Colorize errors 2016-01-07 17:24:15 -08:00
config.go Make removing abandoned files optional 2015-11-18 15:29:12 -08:00
doc.go Support go 1.5 2015-08-03 16:16:24 -07:00
writedocs.go Add self-documenting support 2015-06-26 10:51:44 -07:00