问题标签 [nant]

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 投票
2 回答
684 浏览

svn - 在 .Net 项目中引用来自 svn:external build 的构建工件

这是我之前问过的问题的延续问题

我现在在项目树的根目录中有一个 /externals 目录。在这里面,我引用了另一个项目。我可以在主项目 NAnt 脚本中编写所有外部组件的构建脚本。这些构建的结果如下:

/externals/external-project1/build/buildartifacts/{dlls|html|js}

/externals/external-project2/build/buildartifacts/{dlls|html|js}

这一切都很好,但现在我很好奇我的主要项目应该如何引用这些构建工件。例如,假设外部项目构建了我的一些代码库所依赖的 DLL。我应该简单地引用构建工件目录中的 DLL,还是应该实现另一个将这些复制到 /thirdparty/libs/ 文件夹的 NAnt 任务?

这意味着我的构建现在依赖于构建这个外部项目(可以是内部项目,也可以是第三方项目)的能力。签入最新的构建工件集以确保主构建不会因为依赖构建中断而中断是个好主意吗?

希望这足够清楚。只是把这个写下来对我来说至少澄清了这个问题:-)。

- 编辑 -

多谢你们。我想我将实施“签出修订版”,但由于构建速度如此之快,我不会签入任何构建工件。还必须弄清楚如何处理外部项目的依赖关系(例如:原型、swfobject 等)。

0 投票
2 回答
1117 浏览

nant - 如何让一些 NAnt 任务安静下来?

我正在使用MailLogger发送有关发布失败/成功的消息。我想让邮件正文简单易读。如何抑制某些特定任务的输出?

0 投票
10 回答
1634 浏览

continuous-integration - 与 Nant 持续集成

我准备第一次使用持续集成。我将使用 Nant 进行自动化构建和测试任务,并尝试找到合适的 CI 工具来轮询存储库并执行 Nant 脚本。

到目前为止,我已经大致研究了以下内容:

  • 哈德逊
  • 巡航控制
  • 德拉科

到目前为止,我的感觉是,由于大部分工作将由 Nant 完成,Draco 会很好,因为它应该很容易安装/设置。另一方面,Cruise Control 和 Hudson 可能会提供更好的报告选项。

将 Nant 用于构建和测试任务时,执行持续集成的最佳方式是什么?

0 投票
1 回答
1952 浏览

ant - 如何从 TeamCity 中提取工件?

我想从 teamcity 中提取工件。

我一直在尝试使用 c# 和 HtmlAgilityPack 来访问该网站并找到最新版本及其工件。我目前卡在登录状态,我想我只需要发送会话 Cookie 即可。

我是否朝着正确的方向前进,有其他人尝试过吗?

我意识到使用构建脚本推出文件很容易,但我想尽量减少对 Ant、NAnt 文件的更改,因为我正在考虑将其扩展到 100 个应用程序。

编辑:这个问题看起来很有前景Getting HTML from a page behind a login

编辑:现在可以了,我只需要编写一些代码来解析它

0 投票
4 回答
1492 浏览

svn - 如何将 SVN 工作副本中的版本和路径提取到 nant 变量中?

我正在为要在 Subversion 中举行的 DotNet 项目创建一个新的构建过程。

对于我编译的每个 dll/exe(通过 Nant),我想在构建的 dll 中包含 2 个额外的属性。

我已经了解'asminfo' nant 任务的工作原理。但是我需要帮助来检索我希望嵌入到我的二进制文件中的信息。

构建将始终从完整的工作副本(由构建过程本身检出)进行,因此将始终具有可用的 .svn 目录。

我要添加的属性是 RepositoryVersion 和 RepositoryPath。(我知道这些不是这个信息在 svn 中的名称)

为此,我需要提取由 BuildFile 所在的工作副本文件夹表示的 RepositoryVersion 和 RepositoryPath。

如何从任何给定的 .svn 文件夹中提取这些信息到 2 个 nant 变量中?

0 投票
4 回答
1954 浏览

configuration - 我可以参数化 CruiseControl.NET 项目配置,以便 Web 界面公开参数吗?

我目前正在尝试使用 NAnt 和 CruiseControl.NET 来管理我的软件开发的各个方面。目前,NAnt 几乎可以处理所有事情,包括根据我在命令行中指定的输入目标替换特定于环境的设置(例如,数据库连接字符串) 。

CruiseControl.NET 用于在提交新代码时为默认环境(dev)构建应用程序。我还希望 CruiseControl.NET 为我的其他环境测试和阶段调用构建,但我不希望每次(每天)调用开发构建时自动调用这些,因为测试和阶段部署发生的频率要低得多。测试和阶段部署仅在应用程序准备好进行 QA 时进行。

我可以通过指定多个项目来轻松做到这一点,每个环境一个。但是,我已经配置了许多项目,我的应用程序中的每个里程碑都有一个。如果我必须为每个里程碑设置 3 个项目,CruiseControl.NET 配置可能会很快失控。

这是我的问题: 我可以参数化 CruiseControl.NET 项目配置,以便 Web 界面公开参数吗?

最好(我认为),我可以在 Web 界面中公开每个环境(例如,开发、测试、阶段)的复选框。将为检查的每个环境进行构建,无论构建是强制的还是自动的。如果我可以默认选中状态会更好。

0 投票
1 回答
1467 浏览

nant - 使用 Nant,取消注释文件中的 xml 块

我需要取消注释我在 NAnt 中使用的文件中的部分 xml。这是xml的示例:

我想要做的是将 --> 部分移到“导航部分”旁边。--> 的全局查找将不起作用,因为文件中有很多 --> 以及导航节点下。这个结束注释字符是导航节点中的最后一个。

任何人?

0 投票
2 回答
217 浏览

nant - 用于本机代码环境的 NAnt

有谁知道关于将 NAnt 用于本机代码构建过程说明的任何好的教程?


还有其他更适合原生代码环境的构建过程自动化工具吗?


我们正在开发一个 win32 移动应用程序,它可以作为 CAB 文件在线下载。CAB 文件应包含用户在下载前填写的信息,以便应用程序安装过程将一些用户信息写入设备注册表。

0 投票
3 回答
318 浏览

continuous-integration - NAnt 与数据库集成测试,最终持续集成

我一直在探索在一些 Nant 构建脚本中运行集成测试的不同策略。通常,许多不同的脚本链接在一个具有单独目标的整体构建中:staging(构建一个暂存版本,如 build)、build(只是构建东西)、集成(构建东西并运行集成测试)。这工作得相当好,构建目标需要大约三分之一的时间作为集成目标运行,而且时间不长,所以我发现自己并不不愿意经常运行它。

另一方面,集成目标需要足够长的时间,以至于我不想经常这样做——最好是在我准备好进行部署之前。这看起来是一个合理的策略吗?IOW,我做得对吗?

计划是最终将此项目转移到持续集成。我是整个持续集成的新手,但我想我理解“打破构建”的概念,所以我想知道为了充分利用它,有哪些好的实践可以学习?

任何有关此主题的良好阅读资源也将不胜感激。谢谢!

0 投票
2 回答
1071 浏览

msbuild - NUnit 和 NAnt 的未来考虑

在 .NET v1 期间,我尝试说服同事使用 NUnit 和 NAnt 的附加工具来养成测试驱动和自动化构建的工作习惯,但没有取得多大成功。当 .NET Framework 2.0 和 Visual Studio 2005 Team Suite 出现时,我能够“强制”我的团队编写测试并在 Visual Studio 中为他们自己提供可视化测试。我还能够通过额外的 MSBuild 任务来调整项目文件,以执行更多的构建自动化。

当然,这并不意味着微软已经交付了完美的系统,但我相信他们已经采取了正确的步骤。随着所有这些特性直接融入框架和产品并成为“原生”,让开发人员更容易进入更好的开发实践。

早就忘记了开源选项(我确实错过了),我想知道当前 NUnit 和 NAnt 的化身有什么价值主张?在这个阶段,有什么理由可以说服团队使用 MSBuild 或 MSTest?

澄清:我的公司是纯微软 SI。Visual Studio Team Suite 版本、Database Professional 版本、TFS 等可供我们使用。我们不使用 Visual Studio 专业版或更低版本。