changes.
| h1. Situation |
| ComponentA and productA build independently as different projects. During build process of ProductA , build result of latest version of componentA should be retrieved and used. |
| |
| h1. Demonstration |
| | # Visit the demo project [productA|http://demo.pmease.com/build/59.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. |
| # Switch to [componentA|http://demo.pmease.com/build/58.latest/], and click the run button to generate a new version of componentA. |
| # Switch back to [productA|http://demo.pmease.com/build/59.latest/], and click the run button to build productA. When the new build finishes, examine its dependency again, and it is now dependent on the newly generated version of componentA. |
| | # Visit [latest build of productA|http://demo.pmease.com/build/59: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. |
| # Switch to [componentA|http://demo.pmease.com/dashboard/58], and click the run button to generate a new version of componentA. |
| # Switch back to [productA|http://demo.pmease.com/dashboard/59], and click the run button to build productA. When the new build 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/59/]. 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 latest build of componentA. |
| # Visit [step definitions of productA|http://demo.pmease.com/setting/steps/execution/59/]. Two checkout steps are defined to checkout repository _product-a_ and _component-a_ respectively. |
| | # Visit [repository setting of productA|http://demo.pmease.com/settings/59/repositories]. 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 latest build of componentA. |
| # Visit [step setting of productA|http://demo.pmease.com/settings/59/steps]. Two checkout steps are defined to checkout repository _product-a_ and _component-a_ respectively. |