问题标签 [teamcity-7.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.

0 投票
4 回答
11917 浏览

msbuild - 如何使用 TeamCity 将此公共属性传递给 MSBuild?

我正在使用 TeamCity Visual Studio 运行器。我想添加一个无法从 Visual Studio 访问的设置。

我直接在构建步骤“命令行参数”中输入了它。构建日志显示错误:

MSBuild 命令行参数包含“/property:”或“/p:”参数。请改用构建参数。

我不明白如何从 TeamCity 向 MSBuild 提供这个并摆脱这个警告!

1. 我应该使用哪种参数?

有3种:

  • 配置参数
  • 系统属性
  • 环境变量。

我不想要环境或系统变量,因为我不希望这个构建依赖于任何外部。我现在要尝试 Config,但我不确定我是否填写正确。

2. 我怎么知道这个参数实际上正在被使用?

构建日志似乎只有他们的程序具有可导航/可折叠的类似 xml 的级别,但没有说明构建参数。

0 投票
1 回答
45837 浏览

msbuild - ODP Oracle.DataAccess.DLL 参考 32/64 位

我有一个引用 ODP (Oracle.DataAccess.dll) 的 .NET 3.5 程序集,在 Visual Studio 2010 中构建。复制 Local = False,特定版本为 false。路径是

版本是 2.112.3.0,(运行时 v.2.0.50727)。我的开发机器上安装了 ODAC 11.2.0.3.0 x86。当我构建这个项目并在集成测试中对其进行测试时,一切正常,ODP 已加载并使用。我正在尝试使用 MSBuild(通过 Team City)在 Windows Server 2003 x64 机器上的 Team City 7 上构建相同的集成测试。这台机器安装了相同版本的ODAC,但是是x64版本。

尝试加载 Oracle.DataAccess.dll 时出现问题。好像是在找.NET 2的版本,但是先找到.NET 4的版本,然后就难免失败了。查看日志,它找到了 .NET 4 版本,但仍然无法解析引用,并且似乎明确地在寻找 x86 版本。MSBuild 的配置为:MSBUILD 版本:.NET 4.0 运行平台 x86。

CS项目参考:

(我尝试将运行平台更改为 x86,并且似乎接受了 Oracle.DataAccess.DLL 库,但抱怨所有其他核心 .NET 库都针对错误的平台,例如 mscorlib

我还尝试通过 rake 脚本进行构建,该脚本使用 msbuild 来构建项目解决方案,并遇到类似的问题。

问题: 我怎样才能让它在我的 x64 机器上正确构建?x86 和 x64 版本的库具有相同的 PublicKeyToken,所以它不应该工作吗?CSProj 中的引用标记是否可以设置为针对“任何 CPU”而不是显式 x64(通过手动编辑文件)?或者,是否有某种方法可以根据构建机器的体系结构有条件地引用库,如此处所示不完全确定问题是什么,但这可能是一个解决方案)?

0 投票
1 回答
619 浏览

teamcity - TeamCity 7.0 依赖项和版本

我决定遵循“最佳实践”并且只构建我的工件一次并在我的各种构建中共享它们。所以我创建了一个主构建,它只构建正确的工件,然后让其他构建具有工件依赖项来导入预构建的程序集和 .exe。

不幸的是,我遇到了一些问题。具有工件依赖项的构建与主构建的版本不同。因此,主构建版本可能是 2.2.11.6787,但运行测试的构建版本号为 2.2.111.6787,即使它使用的工件版本为 2.2.11.6787。这同样适用于运行完整测试套件的每晚构建。

具有工件依赖项的构建有什么方法可以从主构建继承版本信息?

0 投票
2 回答
1724 浏览

msbuild - Team City 7 在项目中找不到 DLL

我正在尝试让我们的解决方案与 Team City 7 一起使用。当 Team City 从主解决方案 (.sln) 文件构建时,我遇到了问题。一旦它到达我们进行单元测试的项目,Team City 就会吐出​​一个错误,即找不到各种 DLL,如 Gallio.dll、mbunit.dll 等。

虽然在本地这个项目编译得很好,并且对这些 DLL 的所有引用都设置正确。为什么 Team City 会遇到问题?

错误如下所示:

General Logic\Language\LanguageLogicTests.cs(6, 7):错误 CS0246:找不到类型或命名空间名称“Gallio”(您是否缺少 using 指令或程序集引用?)

0 投票
0 回答
232 浏览

xcode - TeamCity 测试选项卡未显示在 TeamCity 7.0 中

我刚刚设置了一个新的 TeamCity 7.0 服务器,它的工作应该与我的 6.5.2 服务器完全相同。我使用来自https://gist.github.com/994882的 TeamCity 适配器来通知 TeamCity 测试结果。

每台服务器上的构建日志都显示测试通过,我的 7.0 服务器不显示测试选项卡。我不记得在设置 6.5.2 服务器时做了什么特别的事情。

TeamCity 7.0 中的缺失测试选项卡

我必须做什么才能显示测试选项卡?

0 投票
2 回答
414 浏览

teamcity - 一个仓库路径的副本到两个不同的工作空间位置

我们有一个名为“Shared”的 Perforce 软件仓库路径,其中包含许多子文件夹,所有子文件夹都只包含零长度的虚拟文件,没有真正的源文件,以在工作区中创建特定的文件夹结构。我们希望第二次使​​用相同的文件夹结构,这次称为“Artifacts”。

有没有办法使用 Perforce 将一个仓库路径映射到两个工作区位置?

更新:由于无法使用 Perforce 将一个仓库路径复制到两个工作区位置,因此我不得不寻求其他解决方案。这是一件好事,因为无论如何拥有仓库路径的影子副本都会有异味。现在我介绍了一个“预构建”步骤,用于重置共享文件夹中的所有存档标志。我添加了一个“构建后”步骤,将所有带有存档标志的文件复制到 Artifacts 文件夹中。这完全符合我的要求,而无需解决上述问题。

感谢您的回答和评论。

0 投票
1 回答
194 浏览

windows - BuildAgent 在作为服务运行时访问 xcopy 和 attrib

我们正在运行 TeamCity。我已将 BuildAgent 安装到作为服务运行的 Windows 机器上。我决定以专用用户身份运行它,而不是在本地系统帐户下运行它。这台机器过去曾用于构建我们的解决方案,所有必要的工具都已安装并可供该用户使用。

大多数构建和测试工作正常。但是我有一些构建前和构建后的步骤来进行管理工作。这些步骤使用外部命令,如 attrib 和 xcopy(像往常一样,位于 System32 中)。使用专用用户启动时,BuildAgent 无法执行这些操作。如果我将 System32 的完整路径添加到这些命令中,它们也可以正常工作。所以很明显,这似乎是一个环境问题。

当使用本地系统帐户启动时,这些步骤将按预期执行。(不使用本地系统帐户还有其他原因,所以很遗憾,这不是解决方案。)

从控制台运行 BuildAgent 的后备方案也可以正常工作。但是由于在使用本地系统帐户时也可以将 BuildAgent 作为服务运行,因此我正在寻找一种方法来修改专用用户(权限或环境)以使其能够将 BuildAgent 作为服务运行。

我错过了什么?

0 投票
5 回答
12466 浏览

teamcity - 触发选项来设置特定的构建参数?

我正在寻找一种将某些特定构建参数附加到计划触发器的方法。

我们的想法是我们不断构建我们产品的调试版本。不过,我们的夜间构建必须是发布构建。我们大多数项目的构建配置都是完全相同的。它甚至已经有一个配置参数。所以我只需要一个触发器,它允许为单个构建参数指定覆盖。这会将构建配置减少一半以维持。

有没有办法做到这一点?

0 投票
2 回答
827 浏览

.net - Teamcity 忽略在 Visual Studio 2010 中配置的项目上下文

我有一个包含六个项目的解决方案。

其中四个项目是类库,另外两个是 WPF 应用程序和 Windows 服务。后面的两个项目有一个名为“Test”的项目配置——所有的类库都没有这个配置,只有标准的“Debug”和“Release”配置。

我添加了一个名为“测试”的解决方案配置,并且在配置管理器中,我从 Release 中复制了设置,因此所有类库都构建在 Release 配置中,并且 WPF 和 Windows 服务都使用“测试'的配置。

解决方案构建在 Visual Studio (2010) 中运行良好,但是,当我在 TeamCity 7 中配置 Visual Studio (sln) 运行程序时,它会忽略这些设置,并尝试使用“测试”配置构建所有项目,当然它找不到类库的此配置。

有没有办法告诉 TeamCity 使用存储在解决方案文件中的这些项目上下文?

我不想向每个类库添加不必要的测试配置,这将是发布配置的精确副本。

0 投票
1 回答
791 浏览

.net - 如何为多个解决方案配置 TeamCity Inspections (.NET) Runner

我正在使用 TeamCity Professional 7.0.2(内部版本 21349)并添加了Inspections (.NET)运行程序(用于收集 JetBrains ReSharper 检查结果的运行程序)作为构建步骤。

解决方案文件路径是必填字段,根据当前文档,这是“.sln 文件的路径。指定的路径应该相对于检出目录。”

我有多种解决方案(超过 20 种),因此尝试过*.sln但失败了(我猜这是意料之中的)。

我想知道是否有人知道解决方法?

我已经在支持网站上发布了一个功能请求