Infusion Build Scripts
These are rough notes about the build scripts intended to provide developers with starting points for working with the build scripts.
There are several top level targets in the infusion build scripts. This table describes the targets and what products to expect from each build.
Target |
Description |
Products |
---|---|---|
releaseBuilds |
Builds and packages minified and source release bundles of Infusion |
infusion-v-src.zip, infusion-v.zip |
customBuild |
Builds a custom package of Infusion containing the modules specified as command line arguments |
infusion-v.zip |
dailyBuild |
Builds a WAR of Infusion containing unminified code, tests and demos |
fluid-components-v.war |
infusionAllBuilds |
Builds and packages minified and source release bundles of Infusion which use InfusionAll.js instead of individual javascript files |
infusion-v-src.zip, infusion-v.zip |
pretreatMinify |
Minifies source code in preparation for future builds that will be done from pretreated source. |
minified code in build/pretreated |
builderBuild |
Builds a custom package of Infusion from pretreated source containing the modules specified |
infusion-v.zip |
The command line arguments for the customBuild
and builderBuild
targets are:
Argument Name |
Description |
Example |
---|---|---|
include |
a comma separated list of modules to include in the build |
|
exclude |
a comma separated list of modules to exclude from the build |
|
jsfilename |
the name of the concatenated javascript file that will be created |
|
noMinify |
|
|
Infusion packages are built using ant scripts that are located here: https://github.com/fluid-project/infusion/tree/master/build-scripts
The build process has four stages it goes through: Pretreat, Assemble, Package and Post-treat. Depending on the type of build that is happening, some stages may be omitted. There are also four buckets from with code is fetched or placed in: Source, Pretreated, Assembled, Products. See the attached diagram for an overview of the flow of a build.