If there is ever a conflict between multiple properties over multiple levels, Continua CI will always use the value on the lowest level. ie. Configurations take precedence over projects or global settings.
Figure 1: Demonstrates the relationship between Configurations, Projects and any settings that are set Globally. Each level of the tree can override the settings it inherits from its parent
Configurations contain all the information that is needed to complete builds, including:
- The Action WorkWork Flow. This work flow is where you specify the individual actions that will run when you execute your build process. Using the Stage Editor you can define multiple build stages per configuration and set a variety of actions on these stages.
- How a configuration is triggered. Configurations can be fired either manually through the Continua CI user interface or by creating a Trigger on the configuration. Triggers can be set to fire in the following ways:
- Fire the configuration when a checkin is made to a source control repository.
- Fire the configuration at a certain date or time.
- Fire the configuration after another Configuration has completed.
- Continua CI Repositories. Source control repositories, such as Subversion and Mercurial, can be linked to configurations so that a repository's activity can be monitored and in turn, trigger builds.
- Build Conditions. Conditions can be set on configurations to determine what will trigger a build. For example, configurations can be set to fire only if the previous configuration completed its build successfully. Alternatively, you could set a configuration to fire only if a certain file was updated in it's repository.
- Inheriting project settings. Configurations inherit settings from its project, however these can be overridden per configuration. Permissions, Variables and Cleanup Policies are all inherited automatically from the configuration's project, however these can be set per configuration.