关于ci:teamcity-for-administrator

68次阅读

共计 3404 个字符,预计需要花费 9 分钟才能阅读完成。

1. 扭转 teamcity server 配置:

Administration (右上)| Global Settings(左中)

2. teamcity 配置(Global Settings 下的选项):

database:构建的历史,用户及其用户数据以及其余内容存再 datebase 中。
Date Directory: 存配置文件,构建后果,和以后操作文件的目录。
装置服务的机器上的.BuildServer 也存有相干信息。点击 broser 能够看到很多配置相干的文件。<tc home>/TeamCity/conf/teamcity-startup.properties 中保留了 TeamCity 数据寄存目录。
Artifact directories:Build Artifact 是一个 build 产生的文件。此目录寄存 Build Artifact,build data,build logs。

3.Version Control Setting

Default VCS changes check interval: 默认的检测版本库是否产生扭转的工夫距离。默认 60s,能够通过设置 VCS root 进行设置。
Default VCS trigger quiet period:指明了上次 VCS 变变动到减少一个 build 到队列中这个时间段。这由 teamcity 保护。
Checkout directory:

4.Edit configuration Settings

首先选定我的项目,我的项目个别都有子项目。点击我的项目前的三角形就会列举进去。选中对应我的项目后,点击右上角的 build configuration home。能够看到以下几局部:

  • General Settings:
  • Agent requirement:
  • Dependencies
    一个 build 配置能够依赖多个配置。能够设置两种类型的依赖:Snapshot Dependency 和 Artifact Dependency。

    • Artifact Dependency 是获取其余 build 生成的产品。当没有相应的 Snapshot Dependency 设置时,它次要用于 build 的配置与源无关的状况。例如一个为其余 build 进步可重用组件 (文件,压缩包等) 的 build。

      如何增加一个 artifact dependency?
      Dependencies|Add new artifact dependency, 此时能够看到如下界面:

    各项阐明如下:

选项阐明
Depend on为以后 build 配置指明一个要依赖的 buil 配置
Get artifacts from指明 build 类型,将从这个 build 获取产品(压缩包,文件等)。类型有:last successful build(获取最近的且 build 胜利的产品), last pinned build(最近的固定依赖), last finished build(有 Snapshot Dependency 配置时,产品 build 和同源 build 获取), build from the same chain(有 Snapshot Dependency 配置才无效)
Build number抉择 last finished build with specified tag 才会用到
Build branch filter此项只有当依赖中有一个在 VCS root settings 就指定的分支时才会失效。它容许设置一个分支过滤,从而限度源 build 只在匹配的分支中进行
Artifacts Rules参考下文
Clean destination paths before downloading artifacts在 copy 产品前,查看这个选项去删除目标目录的内容。它将利用到所有蕴含性规定中

Artifacts Rules
个别格局:[+:|-:]SourcePath[!ArchivePath][=>DestinationPath]
每条规定都指明了从源 build 要下载的文件。SourcePath指明了源 build 的产品的目录。它要么指明一个具体的文件或目录,要么用通配符匹配多个文件 (反对通配符:* 匹配任何文件名和目录名,但 / 和 \ 这两个目录分隔符除外。? 匹配除开目录分隔符外的任何一个字符。** 匹配任何符号,蕴含目录分隔符)。下载的内容会依据规定中的SourcePath 的第一个 * 或? 开始放弃目录构造。DestinationPath指明在 agent 上的目标目录(放文件的中央)。如果它是相对路径,build checkout directory 为当前目录。若指标门路不存在,会把文件下载到 checkout 根目录。

举例:
源目录文件构造 a /b/c/file.txt。规定:a/b/**=>lib。则会目录会下载一个 lib/c/file.txt 的构造。
源目录文件构造 a /b/c/file.txt。规定:**/*.txt=>lib。则会目录会下载一个 lib/a/b/c/file.txt 的构造。

ArchivePath用于下载压缩构造:zip,7zip,jar,tar 和 tar.gz。ArchivePath的匹配规定相似SourcePath

举例
release-.zip!.dll=>dlls 会下载匹配 release-*.zip 的所有.dll 文件到 dlls 目录。
a.zip!**=>destination 会下载 a.zip 下的所有文件到 destination 目录
a.zip!a/b/c/**/*.dll=>dlls 会下载 a /b/ c 或它的子目录下的所有.dll 文件( 此处存疑)。

+:和 -:是用来从要下载的内容中蕴含或排除指定的文件的。

举例:
*/.txt=>texts
-:bad/exclude.txt
以上两条规定会下载所有.txt 文件。但 bad 目录下的 exclude.txt 文件除外。
+:release-.zip!/.dll=>dlls
-:release-0.0.1.zip!Bad.dll
以上两条规定会从 release-.zip 文件中下载所有的 .dll 文件。到 release-0.0.1.zip 中的 Bad.dll 除外。
*/.*=>target
-:excl/*/.*
+:excl/must_have.txt=>target
以上三条规定会下载所有指标文件,但 excl 目录下的文件不会下载,但会下载 excl 下的 must_have.txt 文件会下载。

  • Snapshot Dependency 设置的是 build 间源档次的依赖。目标是通过创立不同的 build 配置造成简单的 build 程序,而这些 build 配置用 Snapshot Dependency 关联起来。
  • Failure Conditions
    通过设置失败条件,从而定义一个 build 怎么才算失败(默认状况下,很多出错 build 的后果都是 success)。

    • Common Failure Conditions(Fail build if:)
      it runs longer than … minutes:build 运行工夫限度。以分钟为单位。设置为非零值时,会笼罩全局 (server 档次:Administration|Global settings) 设置。设置为 0,则是无工夫限度, 若有 server 档次的设置,则以它为准。
      the build process exit code is not zero:有一个 build step 以非 0 完结,则整个 build 失败。
      at least one test failed:有一个 build step 失败,则整个 build 失败。且后续的 build step 不会再运行。若为选中此此选项,即便有大量 build step 失败,后续 build step 仍会执行。
      an error message is logged by build runner:build runner报告了错误信息,则认为 build 失败。
      an out of memory or crash is detected (Java only): 检测到 JVM 的解体,或 Java 的内存不足问题。
    • Additional Failure Conditions
      1.Fail build on metric change
      2.Fail build on specific text in build log
      当 build 日志中呈现特定的文本时,能够定义 build 失败。TeamCity 会查看日志中的每一行。
      留神:匹配时,日志前的工夫以及每个步骤开始前的步骤名称等会被疏忽。当然,也可反向定义,即日志未呈现某些文本时,认为 build 失败。
正文完
 0