This documentation relates to QuickBuild 2.0.x
You are viewing a different version of QuickBuild. Please refer to the listing to choose another version.
ComponentA and productA build independently as different projects. During build process of ProductA, componentA will be checked for changes: if there are new changes in componentA, a new componentA version will be generated, and the new build result will be used to construct productA; otherwise, build result of latest version of componentA will be used instead.
h1. Demonstration
# To simulate new changes in componentA, _build condition_ of the [demo componentA configuration|http://demo.pmease.com/build/55.latest/] is set to _true_ so that a new componentA version will be generated whenever it is triggered.
# Visit the demo [productA project|http://demo.pmease.com/build/56.latest/]. Hover mouse over the dependencies link in the build summary section, and you will see that current build of productA depends on most recent version of componentA.
# Click the run button to build productA. A new version will be generated in [componentA|http://demo.pmease.com/build/55.latest/] besides the new version in [productA|http://demo.pmease.com/build/56.latest/]. When new build of productA finishes, examine its dependency again, and it is now dependent on the newly generated version of componentA.
h1. Resolution
# Visit [repositories definition of productA|http://demo.pmease.com/setting/repositories/56/]. There are two repositories defined: _component-a_ and _product-a_. Repository _product-a_ is used to retrieve source code of productA from SCM, while repository _component-a_ is used to retrieve build result of componentA. Repository _component-a_ is defined to retrieve all published artifacts from componentA, with the build defined as _latest build (generate new if necessary)_.
# Visit [repositories definition of productA|http://demo.pmease.com/setting/repositories/56/]. There are two repositories defined: _component-a_ and _product-a_. Repository _product-a_ is used to retrieve source code of productA from SCM, while repository _component-a_ is used to retrieve build result of componentA. Repository _component-a_ is defined to retrieve all published jars from componentA, with the build defined as _latest build (generate new if necessary)_.
# Visit [step definitions of productA|http://demo.pmease.com/setting/steps/execution/56/]. Two checkout steps are defined to checkout repository _product-a_ and _component-a_ respectively.