问题标签 [teamcity-8.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
api - TeamCity REST API:谁破坏了构建?
在我们的办公室中,我们使用自定义Geckoboard从TeamCity 8构建服务器显示有关我们当前构建状态的信息。
我们使用以下 REST 查询显示最近的签到/更改:http://teamcity.internal.com:8080/httpAuth/app/rest/changes?project:ProjectName&locator=count:10
我们还计算了上次使用此 REST 查询破坏构建的时间:http://teamcity.internal.com:8080/httpAuth/app/rest/builds?locator=project:ProjectName
然而,我们不仅能够将两者联系起来。
换句话说:
- 对于最近的更改,以确定签入是否导致构建损坏
- 最后一次构建被破坏确定谁进行了签入
git - TeamCity 构建依赖项并选择正确的分支
我有一个具有三个构建配置的项目:
- 一体化
- 部署开发
- 部署发布
构建配置 2 和 3 通过快照依赖于 1。
有 3 个 VCS 根:
- Git - 全部(与构建配置 1 一起使用)
- Git - 开发(与构建配置 2 一起使用)
- Git - Master(与构建配置 3 一起使用)
默认分支和分支规范如下:
Git - 全部
默认分支:
开发
分支规格:
+:refs/heads/(develop)
+:refs/heads/(master)
+:refs/heads/(feature/ )
+:refs/heads/(hotfix/ )
+:refs/heads/(release)
+:refs /heads/(支持/*)
Git - 开发
默认分支:
开发
分支规格:
+:refs/heads/(开发)
Git - 大师
默认分支:
掌握
分支规格:
+:refs/heads/(master)
这里是问题...
当我为第三个构建配置运行构建时,我希望依赖项检查主分支上的集成构建。它没有这样做,并且将始终使用集成构建配置的默认分支(当前正在开发)。
有没有办法实现我想要的?
- 有一个单一的集成构建配置
- 有一个单独的构建配置,仅依赖于开发分支更新
- 有一个单独的构建配置,它只依赖于主分支更新
我过去的做法涉及在单个构建配置上使用多个 CVS 端点,这似乎也是错误的,我想尽可能避免这种情况。
teamcity - 有没有办法使用 TeamCity NuGet 安装程序构建步骤设置还原位置?
默认情况下,NuGet 安装程序构建步骤似乎将包还原到指定解决方案文件所在位置旁边的“包”文件夹中。但是,在我们的案例中,我们有几个项目在多个解决方案之间共享,并且希望能够指定文件系统中较高的恢复位置。在本地工作时,我们可以在 NuGet.config 文件中使用如下配置来设置可供多个解决方案使用的包位置:
请注意“repositoryPath”键,它允许我们在文件夹层次结构中进一步设置包位置。有什么方法可以通过 TeamCity 的 NuGet 安装程序构建步骤实现相同的结果?
github - 在 README.md 中禁用内部 teamcity 构建状态图像的 github 缓存
我在 github README.md 中有一个 TeamCity 构建状态图标,如下所示
看起来 Github 将图像缓存在 README.md 中,新的图像 src url 如下所示。
由于 teamcity url 在我们的内部网络中,github 将无法访问它并且无法正确缓存它。所以,我在自述文件中看不到任何图像。是否有任何图像标签可用于禁用自动 github 图像缓存?
teamcity - 如何在 teamCity 中设置构建分支
我在我的项目中使用 perforce。我想问一下,如何在teamcity中设置build分支?现在,如果我想进行构建,它会从主干获取代码,当我点击“运行”按钮时,它会询问我的用户名/密码/perforce 作业,我还需要询问我的分支名称。我知道需要在构建参数的构建配置中进行设置。
svn - TC 8.0.3 完成构建触发器和 SVN 修订号
我们有一个五步构建过程:
步骤 2 和 3 由步骤 1 上的完成构建触发器触发。步骤 4 由步骤 3 上的完成构建触发器触发,并使用在 3 中生成的工件。步骤 5 是手动的。
步骤 1 到 3 是在从 subversion 中干净检出头部时执行的 maven 构建。问题就在这里。如果开发人员在第 1 步期间提交,则第 2 步和第 3 步将针对与第 1 步不同的版本运行。如果时机非常糟糕,则第 1 步到第 3 步可能会在不同的版本上运行。
有没有办法通过其他步骤携带第 1 步的修订号?
teamcity - 在 TeamCity 上更改管理员密码
当我设置我的 TeamCity 实例时,我将管理员用户创建为“buildServerAdmin”。我还创建了一些具有管理员权限的个人用户帐户。然后我有几个月没有参与构建服务器。
现在我无法再使用我最初设置的用户名和密码登录。我可以以我自己的身份登录(我有管理员权限),但我根本看不到那个用户。
我还使用此处的说明以超级用户身份登录。以这种方式登录时,我也看不到 buildServerAdmin 用户。
我的问题:
- 原始管理员用户与超级用户或配置为管理员的用户相比有什么特别之处吗?
- 如果该用户存在,我能否在 Admin => User 页面上看到该用户?
teamcity - 如何在从子项目生成的 TeamCity 元运行器中使用参数?
我在 TeamCity 中 设置了顶级项目A。
项目A有一个名为A1的构建配置。
项目B是A的子项目。
项目B有一个名为B1的构建配置。
在这个构建配置中,我定义了两个参数:
- env.param1 = "ABCDE"
- env.param2 = %param1%
然后,从项目B的构建配置(B1)中,我提取了一个元运行器并将其附加到B的父项目A。
但是,当我尝试在项目A的构建配置(A1)中使用元运行器时,此构建将无法运行;它抱怨env.param1没有定义。
当我查看构建步骤 ( A1 ) 或元运行器的定义时,我可以清楚地看到env.param1是在其中定义的。但是在项目A的构建配置(A1)参数页面上,它将env.param1列为“”。
我认为元运行器或多或少地封装了其中定义的所有内容,因此可以在您附加它的任何地方使用它。从文档:
基本上,元运行器是来自一个构建配置的一组构建步骤,您可以在另一个构建配置中重用它们;它是一个包含构建步骤、要求和参数的 xml 定义,您可以在其他构建配置的 xml 定义中使用这些定义。TeamCity 允许使用 Web UI 提取元运行器。
[剪辑]
单击“提取”按钮后,TeamCity 将获取此构建配置中所有构建步骤和参数的定义,并从中创建一个构建运行器。
我究竟做错了什么?
teamcity - Teamcity Nuget 文件冲突
有没有办法让 Teamcity 在执行包还原时与 nuget 会话进行交互。
我遇到的问题是各种文件处于冲突状态,并提示覆盖,即像这样:
这反过来会挂起构建等待对提示的响应,这在 VS 中显然不是问题,但我无法在 Teamcity 中找到一个选项来设置对这样的提示的默认响应。
人们如何处理这种情况?
teamcity - 是否可以防止跨某些配置的并发构建?
我有一个 TeamCity (8.0.5) 设置运行多个代理和具有多个配置的多个项目。
我们有一些用于 CI 的构建配置(例如编译和单元测试)和一些用于自动部署的配置。
部署配置在共享服务(例如 IIS / sql 等)上运行脚本,因此不能与任何项目中的其他部署构建并行运行。
有没有办法在团队城市中限制这种情况?
我已经看到设置为“限制并发构建”,但这仅适用于单个配置,我还尝试将部署构建限制为单个通用代理,但到目前为止我还无法做到这一点。