Enhanced Script Base Element
Currently in the core of BuildStream there is a BuildElement which
is a specialized element for the purpose of implementing various
build elements (like autotools
, cmake
, etc).
All of these elements share the commonality of:
- staging one or more sources into
/buildstream/build
- running a series of commands defined by the element's accompanied YAML configuration
- collection of the artifact from
/buildstream/install
location in the sandbox
This pattern should be repeated for the purpose of deployments,
currently we have a quite rigid script
element which allows
staging multiple artifact dependency chains in different places
and running a series of commands allowing one to use one base
runtime to operate on another staged artifact & dependencies.
In order to create more kinds of deployment elements we should have a more flexible base scripting element to allow this.
The design of this base scripting element should take into consideration the current usage of the script element for creating a bootable image