|You are viewing documentation of TeamCity 6.5.x, which is not the most recent released version of TeamCity. Please refer to the listing to choose another version.|
In TeamCity one build configuration can depend on one or more configurations. Two types of dependencies can be specified:
Snapshot Dependency is a powerful concept that allows to express dependencies between the build configurations on the source level in TeamCity.
A snapshot dependency from build configuration A to build configuration B enforces that each build of A has a "suitable" build of B so that both builds use the same sources snapshot (used sources revisions correspond to the same moment).
Snapshot dependency alters the builds behavior in the following way:
Let's consider an example to illustrate how snapshot dependencies work.
Let's assume that we have two build configuration, A and B, and configuration A has snapshot dependency on configuration B.
The above example shows the core basics of the snapshot dependencies, straight forward process, without additional options. For snapshot dependency options refer to the Snapshot Dependencies page.
If a build has snapshot dependencies on several builds, the snapshot will be taken at the moment the first build of the whole set (chain) starts to run on a build agent. Depending on the dependencies topology builds could be subsequent or can be started in parallel.
Two or more builds connected by snapshot dependencies form the Build Chain.
Artifact Dependencies provide you with a convenient means to use output (artifacts) of one build in another build. When an artifact dependency is configured, the necessary artifacts are downloaded to the agent before the build starts. You can then review what artifacts were used in a build or what build used artifacts of the current build on a Dependencies tab of build results.
To create and configure an artifact dependency use the Dependencies page. If for some reason you need to store artifact dependency information together with your codebase and not in TeamCity, you can configure Ivy Ant tasks to get the artifacts in your build script.