With the manual checkout mode, automatic directory cleaning is not performed unless the directory expiration period is configured. With the server-side and agent-side checkout modes, checkout directories are automatically deleted from the disk if not used (no builds were run on the agent using the directory as the checkout directory) for a specified period of time (8 days by default) or when another build requires more free disk space than available. Note that the content of the checkout directory can be deleted by TeamCity under certain circumstances. It is recommended that a custom checkout directory does not contain the agent's working directory because of the potential undesirable side effects. As one TeamCity agent has no knowledge of another, the other agent appears as an external process to it. This rule also applies to two TeamCity agents sharing the same working directory. If this cannot be eliminated, make sure to turn on the clean build checkout option for all the participating build configurations. The content of the directory is not modified by processes other than those of a single TeamCity agent (otherwise, TeamCity might be unable to ensure consistent incremental sources update). The checkout directory is not shared between build configurations with different VCS settings (otherwise, TeamCity will perform clean checkout each time another build configuration is built in the directory) If for some reason you need to specify a custom checkout directory (for example, the process of creating builds depends on some particular directory), make sure the following conditions are met: Effectively, this means that the directory is shared between all the build configurations with the same VCS settings. The VCS settings hash code is calculated based on the set of VCS roots, their checkout rules and VCS settings used by the build configuration (checkout mode). The name of the default automatically created directory is generated as follows: /. With this default checkout directory, TeamCity ensures the best performance and consistent incremental sources updates. In most cases, the default Auto (recommended) setting will cover your needs. It can also be enforced manually or configured to be performed on each build. If TeamCity detects that it cannot build an incremental patch, a clean checkout is enforced. Make sure the builds never modify or delete the files under version control. Typical files are compilation output, tests reports, build produce artifacts. Make sure the builds perform a clean procedure as the first step of the build for all the files that affect the build and might have been produced by previous builds. Incremental checkouts mean that any files not created or modified by TeamCity (for example, by the previous build scripts) are preserved in their modified state (unless dedicated VCS root-specific reset options are used). The revisions used can be looked up on the Changes tab of the build results page. Checkout Processįor checkout handled by TeamCity (the server-side or agent-side checkout mode), TeamCity keeps track of the last revision checked out into each checkout directory on the agent and for the new build applies an incremental patch from the last used revision to the revision of the current build. In your build script, you can refer to the effective value of the build checkout directory via the property provided by TeamCity.īy default, this is also the directory where builds will run. If you want to investigate an issue and need to know the directory used by the build configuration, you can get the directory from the build log, or you can refer to the /directory.map generated file which lists build configurations with the directories they used last. The checkout directory is configured in the Checkout Settings section on the Version Control Settings page the default Auto (recommended) value is strongly advised, but it is possible to configure a custom checkout directory as described below. The sources are placed into the checkout directory according to the mapping defined in the VCS Checkout Rules. The directory will not be cleaned automatically unless its expiration period is configured as described below. With the manual checkout mode, no sources will be checked out, but the default build checkout directory will still be created to check out the sources via a build script. In case you use the server-side checkout mode, the TeamCity server sends incremental patches to the agent to update only the files changed since the last build in the given checkout directory. If you use the agent-side checkout mode, the build agent checks out the sources into this directory before the build. The build checkout directory is a directory on the TeamCity agent machine where all the sources of all builds are checked out into.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |