问题标签 [teamcity]

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.

0 投票
3 回答
3354 浏览

continuous-integration - 在 TeamCity 构建配置中包含搜索路径

通常,当开发人员在我们公司的机器上本地编译某个混合 C++/C# 解决方案时,他们会使用 .vssettings 配置文件。此配置文件中包含的内容之一是对 Lib 和 Include 文件的各种目录路径的引用。

但是,我们的 buildAgent 机器(使用 TeamCity)被设置为无菌的,并且在其上安装了构建任何给定解决方案/项目所需的最低限度。这意味着上面示例的混合 C++/C# 项目将无法访问设置了包含搜索路径等内容的 IDE 配置。TC 通过允许您为任何给定的 buildConfiguration(甚至通过 buildAgent)设置各种变量来解决这个问题......

但是如何在 TC 中获得 WORK 的包含搜索路径?我正在从 Source Control (Perforce) 复制我想要 Included (1)的本地副本,然后尝试定义环境变量(2) - 但 TC 未能构建(3)

我确定我的某些配置有误,但是对于我的生活来说,我无法弄清楚是什么!


非常感激任何的帮助,

布隆


(1) VSC 客户端映射 - Perforce

//depot/OpenSource/Boost-1.33.0/boost/... //team-city-agent/OpenSource/boost/...


(2) buildConfig 环境变量定义

env.Include = %system.teamcity.build.checkoutDir%\OpenSource


(3) TC 构建日志片段

[16:57:39]:[项目“xxx.sln”(构建目标):] e:\buildagent\work\ef1853a454da9d94\xxx\rowsbase.cpp(5, 0):错误 C1083:无法打开包含文件:'boost/dynamic_bitset.hpp':没有这样的文件或目录

0 投票
2 回答
2867 浏览

version-control - TeamCity 项目和多个 SVN 分支

本着保持我的 SVN 主干干净并准备好部署的精神,我一直在使用以下源代码控制模型。对于不耐烦的人,基本概念是您创建开发分支来进行实际开发,并随时保持主干干净并准备好部署(主干中没有垃圾)。

除此之外,我正在配置 TeamCity 以进行持续集成。在 TeamCity 中,我想确保所有开发分支以及部署就绪分支(在我的情况下为主干)正确构建并通过所有单元测试。

这可能是一个愚蠢的问题,但对 TeamCity 不太熟悉,我应该为每个分支创建一个新的 TeamCity 项目吗?特别是,部署就绪分支比开发分支有一些额外的规则。例如,发布应该保存在文件系统上的版本化目录中(例如,C:\Projects\MyProject\1.0.187...、C:\Projects\MyProject\1.0.188...),以便轻松访问二进制文件,在任何时间点。另一方面,在开发分支中保存程序集的版本副本是不必要的,并且会浪费硬盘空间。

在 TeamCity 中,我希望每个软件项目只看到一个项目。换句话说,如果我的公司正在开发 X 个开发项目,我希望该项目只列出一次,而不是 X * 2(假设每个项目只有两个分支)。

0 投票
4 回答
3660 浏览

continuous-integration - 无法让 TeamCity FxCop Build Runner 工作

关于如何使此错误消息消失的任何想法?

无法运行进程 E:\Program Files\Microsoft FxCop 1.36\FxCop.exe\FxCopCmd.exe /forceoutput /gac /ignoregeneratedcode /f:\Sacog\bin\Debug\Sacog.dll /out:05A1B22A-DE6E-49ae-AA30- DC52A074EF22\fxcop-result.xml:找不到文件

0 投票
2 回答
604 浏览

svn - 使用持续集成将第 3 方库存储到源代码控制中

我刚刚将一个非常大的第 3 方库 (Boost) 提交到我们的源代码控制中。我用自己的存储库设置它。我标记了它的版本,以便其他项目可以 svn:externals 这个特定版本。

这很好,直到我意识到我的持续集成(CI)服务器每次签入一些代码时都会进行完整的签出。(很明显,我一开始是故意这样设置我的 CI 服务器的)。这可能会导致 CI​​ 服务器端的结帐时间很长。

所以问题是:这是一件好事吗?有人可以建议一种更好的方法来处理这种模式吗?

编辑:我正在使用 TeamCity CI 服务器。

0 投票
2 回答
804 浏览

.net - .NET + TeamCity:未编译私有访问器

我正在为 VS2008 sln 文件运行 Team City Pro (v4.0.2 build 8222)。

现在我面临一个问题,即没有为测试项目中的私有访问器生成自动生成的代码,并且由于无法找到那些(自动生成的)类而导致编译错误。

构建运行器是默认的 sln2008。

有什么配置需要改吗?我检查了 VS 构建日志,它没有显示自动生成的类的任何 msbuild 条目。自动生成类的 DLL 就在那里。

注意:我知道测试私有方法是进行单元测试的最佳方式。

0 投票
2 回答
2125 浏览

windows - 使用 Windows 身份验证从 TeamCity 访问 SVN

我正在尝试在我的 Windows XP 机器上设置 TeamCity。由于身份验证错误,它无法从 subversion 获取代码。我已将我的 Windows 域\用户用户名和密码放入 TeamCity 配置中 - 但它看起来像是在尝试基本身份验证。我需要改变什么?

这是 TeamCity SVN 日志(实际的服务器/端口已替换为 server:port):

[2009-05-28 17:37:43,375] 调试 - javasvn.output - 网络:已发送

选项 /svn/外部 HTTP/1.1

主机:远程服务器:端口

用户代理:SVN/1.5.5 SVNKit/1.2.2 ( http://svnkit.com/ ) r5405

活着:

连接:TE,保活

TE:拖车

授权:基本 bWVybG90L21hcmt3OiVyZnZjZGUz

内容长度:0

接受编码:gzip

内容类型:文本/xml;字符集="utf-8"

DAV:http ://subversion.tigris.org/xmlns/dav/svn/depth

DAV:http ://subversion.tigris.org/xmlns/dav/svn/log-revprops

DAV:http ://subversion.tigris.org/xmlns/dav/svn/mergeinfo

[2009-05-28 17:37:43,453] 调试 - javasvn.output - 网络:已读

需要 HTTP/1.1 401 授权

日期:格林威治标准时间 2009 年 5 月 28 日星期四 05:38:56

服务器:阿帕奇

WWW-Authenticate: Basic realm="Subversion Repositories"

内容长度:401

保活:超时=5,最大值=99

连接:保持活动

内容类型:文本/html;字符集=iso-8859-1

[2009-05-28 17:37:43,453] 调试 - javasvn.output - 网络:svn:“ https://server:port Subversion Repositories”需要身份验证

0 投票
0 回答
228 浏览

continuous-integration - 将 rake 与 Teamcity 一起使用会产生 RegexError

每次我尝试使用团队城市使用 rake 构建 .NET 解决方案时,我都会收到相同的

我的自然假设是我的 rake 代码中实际上有一个无效的转义字符,我承认我以前从未使用过 ruby​​ 或 rake,但是脚本本身执行没有问题,并且在执行命令时表现得应该没有使用teamcity的线。

此外,我通过我的代码慢慢地注释掉了行,以试图缩小无效字符的范围,即使使用完全注释掉的 rake 文件,团队城市进程仍然会失败。

感谢您的帮助,如果需要更多信息,请告诉我。

0 投票
1 回答
2526 浏览

configuration - 如何让 TeamCity 排除 nunit 测试类别?

我正在使用 TeamCity VisualStudio sln 配置来驱动我的 CI 构建。它运行我所有的 NUnit 测试——这一切都很好,但我不希望 TeamCity 使用 [Category("DatabaseTests")] 属性运行我的任何测试(因为它们命中了一个实际的数据库)。

在要排除的类别下的 NUnit 配置中,我只放置了DatabaseTests但它不起作用。有什么我想念的吗?有没有办法让我看到 teamcity 发送给 nunit 跑步者的内容?

0 投票
5 回答
1705 浏览

resharper - 在 Visual Studio 之外运行 Resharper 代码分析

Resharper 包括各种分析规则,可以从 Visual Studio 内部在您的解决方案上运行,但是否可以从命令行或作为自动构建的一部分运行这些规则?Resharper 似乎专注于在 Visual Studio 中运行,但可以从 IDE 外部对解决方案或项目文件调用它吗?

更新:似乎 TeamCity 7.0 EAP 包含一种在构建时执行代码分析的方法 (博客文章),因此至少它可以以某种方式被调用并作为 CI 流程的一部分使用。

0 投票
2 回答
5737 浏览

continuous-integration - TeamCity 在构建时删除文件

我是 TeamCity 和持续集成的新手。我已经按照这个非常好的指南进行了设置,一开始似乎一切正常。

TC 可以检查来自 SVN 的文件,并且可以毫无问题地构建它们。但是我发现“结帐目录”设置是错误的,它指向了一个文件夹上方应该在的位置,因此将所有来自 SVN 的新文件添加到错误的位置,但仍然建立在旧文件的基础上。纠正此问题后,问题开始了。

现在,每次 TC 进行构建时,它都会清除“签出目录”中的所有文件,问题在于并非所有需要的文件都由 SVN 管理,并且它们会被永久删除。由于并非所有必要的文件都在那里,因此构建失败。

我应该怎么做才能让 TC 保留我的文件?

来自 TC 的设置是否有帮助:

常规设置编辑 »

名称: Mavia Build

说明:无

内部版本号格式:{0},下一个内部版本号:#8

工件路径:未指定

如果出现以下情况,则构建失败:

进程退出代码不为零:ON

至少一项测试失败:开

构建运行器记录了一条错误消息:OFF

它的运行时间超过:没有限制

检测到内存不足或崩溃:ON

构建选项:

悬挂构建检测:ON

状态小部件:关闭

同时运行构建的最大数量:无限制

版本控制设置编辑 »

VCS 结帐模式:在服务器上自动

结帐目录:C:\Inetpub\wwwroot\mavia_sip

在构建之前清理所有文件:OFF

VCS 标签:禁用

附加的 VCS 根:

名称 结帐规则 设置标签

mavia_sip svn 未指定 NO

亚军:sln2008 编辑 »

运行器类型:sln2008(Microsoft Visual Studio 2008 解决方案文件的运行器)

解决方案文件路径:mavia_sip\WebSite\mavia_sip.sln

工作目录:与结帐目录相同

目标:重建

配置:调试

解决方案平台:默认

NUnit 运行平台:auto(MSIL)

NUnit 跑步者:NUnit 2.2.10

从以下位置运行测试:未指定

不要从以下位置运行测试:未指定

NUnit 类别包括:未指定

NUnit 类别排除:未指定

减少测试失败反馈时间:OFF

MSTest:禁用

XML 报告处理:禁用

构建触发编辑 »

构建配置已暂停(触发已禁用)。

通过 vcs 签入触发构建:ON

静默期:默认,60 秒

如果上次构建失败,则开始新构建:关闭

按时间触发:未配置

此配置取决于:未配置

依赖编辑 »

快照依赖:

没有快照依赖项。

工件依赖项:

没有工件依赖项。

属性和环境变量编辑 »

系统属性:未定义

环境变量:未定义

代理要求编辑 »

系统属性要求:未定义

环境变量要求:未定义