Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EGF/Portfolio/Build
Contents
Portfolio Name
Build Portfolio
Objective and scope
The objective of the Build Portfolio is to edit a build chain and next generate all the associated files for a release engineering target platform in order to manage and control a build chain.
The purpose is not to have an exhaustive, and then complex, build description. The build description must be simple with the possibility to describe large build chains.
The portfolio targets first Hudson and Buckminster.
Rationale
MDA principle
In OMG's MDA terms, the edited model represents the PIM and the build chain against a build target platform represents the PSM.
The PIM-to-PSM transformation is realized by a generation ensured by EGF. During this generation 1) the build model is transformed to be optimized, 2) the transformed model is checked, 3) files for the target platform are generated.
Metamodel
The build metamodel is a build core (see Figure 1) metamodel extended by build extension metamodels (see Figures 2 and 3). An extension metamodel enables to address a specific build concern.
Figure 1. Build core metamodel
Figure 2. Extension metamodel - Step metamodel - List of steps
Figure 3. Extension metamodel Step metamodel - Build step focus
Concepts
Practice
Example
Import the examples available with EGF: section Basic EGF Example, and refer to the org.eclipse.egf.portfolio.eclipse.build.examples plugin. The model is located in the model folder and the factory in the egf folder.
For history, examples are available here.
Use Case
The EGF build chain is built with the EGF build portfolio itself.
The model of the EGF build chain for Indigo is available here
The EGF build chain for Indigo, generation result of the EGF portfolio, is available here
Process
[TBD]
References
A video is available here