When creating a build configuration it is important to configure the sequence of build steps to be executed. Each build step is represented by a build runner and provides integration with a specific build or test tool. You can add as many build steps to your build configuration as needed. For example, call a NAnt script before compiling VS solutions.
Build steps are invoked sequentially.
Build step is failed if build process returned non zero exit code and Fail build if build process exit code is not zero build failure condition is enabled (see General Settings), otherwise build step is successful. Note that status of build step and build can be different. Build step can be successful, but build can be failed, because of some other build failure condition, not based on exit code. From the other hand if build step failed build will be failed too.
In TeamCity 7.1: You can specify step execution policy based on build step status via "Execute step" option:
In TeamCity 7.0: if a build step fails the rest are not executed, i.e. behavior is the same as Only if previous steps were successful execution policy in TeamCity 7.1.
For the details on configuring individual build steps, refer to:
Skip to end of metadata Go to start of metadata