Build Setup

compared with
Current by Robin Shen
on Aug 06, 2009 23:08.


 
Key
These lines were removed. This word was removed.
These lines were added. This word was added.

View page history


There are 2 changes. View first change.

 To set up build for your project, you'll need to [create a configuration|add configuration] first, and then define steps in it to tell QuickBuild how to build the project. Steps can be defined by selecting the configuration and switching to the _steps_ tab. The _steps_ tab display steps in two views: will be executed steps and all defined steps.
  To set up build for your project, you'll need to [create a configuration|add configuration] first, and then define steps in it to tell QuickBuild how to build the project. Steps can be defined by selecting the configuration and switching to the _steps_ tab. The _steps_ tab display steps in two tabs: will be executed steps and all defined steps.
  
 h2. Will be Executed steps
  
 This gives a graphical view of which steps will be executed when you build the configuration. The build process always starts with master step. If the master step is not a composite step, it will be executed and the build process finishes; otherwise the master step will run contained child steps sequentially or concurrently based on its composition type. The child steps repeat this process recursively until a non-composite step or empty composite step is encountered. Below screen is a sample of _will be executed steps_ view:
  This gives a graphical view of which steps will be executed when you build the configuration. The build process always starts with master step. If the master step is not a composite step, it will be executed and the build process finishes; otherwise the master step will run contained child steps sequentially or concurrently based on its composition type. The child steps repeat this process recursively until a non-composite step or empty composite step is encountered. Below screen is a sample of _will be executed steps_ tab:
 !will-be-executed-steps.png!
 In this screen:
 * The master step is a composite step which sequentially executes steps _checkout_, _build with Ant_, and _publish_. The _publish_ step executes in parallel the child steps _publish artifacts_ and _publish JUnit reports_.
 * Steps with a dashed border are defined in ancestor configurations. This means that step _master_, _checkout_, _publish_, and _publish JUnit reports_ are inherited from the ancestor configurations.
 * Steps with a solid border are defined in the current configuration. This means that step _build with Ant_ and _publish artifacts_ are defined in the current configuration.
 * Hover mouse over the step name link will display the step definition.
 * New steps can be inserted into the execution flow by clicking one of the icons:
 ** !add-child.gif! this icon only appears when the step is a composite step. It will first define a new step in the current configuration, and then modify the current step to contain the newly created step. If the current step is an inherited step, the step will be overridden to apply the particular step modifications without modifying the original step.
 ** !add-before.gif! this icon will allow you to define a new step and add it before the current step. It will first define a new step in the current configuration, and then modify the parent step to contain the newly created step. If the parent step is an inherited step, it will be overridden to apply the particular step modifications without modifying the original step.
 ** !add-after.gif! this icon will allow you to define a new step and add it after the current step. It will first define a new step in the current configuration, and then modify the parent step to contain the newly created step. If the parent step is an inherited step, it will be overridden to apply the particular step modifications without modifying the original step.
 * Only steps defined in current configuration can be deleted. Clicking the remove icon will first remove the step definition from the current configuration, and then modify the parent step to remove the step reference from the children list. If the parent step is an inherited step, it will be overridden to apply the modifications without modifying the original step.
 * Each step can be edited. If an inherited step is edited, it will be overridden to apply the modifications without modifying the original step.
 * If you want to adjust child execution order inside a sequential composite step, you'll need to edit the composite step, and modify the child order there.
 * You can introduce new steps into the execution flow by editing a composite step and add more steps. However, you can only choose from existing steps (either defined in the current configuration, or steps inherited from ancestor configurations). Various add icons in this view are convenient way to define new steps and then add them into the execution flow.
  
 If the master step is not defined in current [configuration hierarchy], below screen will be displayed:
 !default-step-not-defined.png!
 In this case, the configuration can not be built because the master step is not defined. To add the initial step, just click the !add.png! icon to define a master step of your choosed type. Typically you add the master step as a composite step, and then add other appropriate steps as its children.
  
 h2. All defined steps
 !stepmenu3.png!
 This will display all defined steps in the current configuration. Please note that some steps defined here may not appear in the _will be executed steps_ view, if they can not be reached from the master step recursively. At the same time, some steps that appear in the _Will be executed steps_ view may not be defined here, because they are inherited from the ancestor configurations.
  
 h2. Step menu
  
 Step menu is used to choose step types when add new steps or edit existing steps. It can be brought out from three places:
 # When add new step from tab _step execution graph_:
 !stepmenu1.png!
 # When add new step from tab _all defined steps_:
 !stepmenu2.png!
 # When edit an existing step:
 !stepmenu3.png!