想在Hudson C/C++上找到一份工作
Want to make a Job on Hudson C/C++
希望我能在这里找到一位对Hudson及其功能有经验的人。
现在。我已经安装了哈德逊这个没有透露任何问题。但现在我想创建一个新的工作,我正在用C/C++开发。
此外,我正在处理Subversion svn,在那里我运行了第一个错误。哈德森没有找到我的svn。他说我需要身份验证。据我所知,我可以在哈德逊进行身份验证,但这不起作用。
也许你们中的一个人知道如何创建一个项目。
这些事情应该在哈德逊的工作中完成。
-
Hudson在我的电脑上(本地)删除我的项目。
-
然后Hudson访问我的SVN并从那里查看项目。
-
现在正在编纂《哈德逊》。(最好是针对Visual Studio 2008编译器的C/C++编译器)。编译器然后创建一个*。Exe文件。
-
现在哈德逊开始在这个项目的基础上*。Exe文件并运行程序。
-
最后但并非最不重要的是,如果哈德森出现错误,或者如果一切正常,请通过电子邮件通知项目工作人员。
这就是我对哈德逊的期望。否则,我就拿不出多少。我知道我可以通过批处理文件完成所有这些。但这不是我的目标。我希望Hudson能够实现自动化,这样我就可以在午夜开始每天的构建/测试。
你认为我在哈德逊的要求太高了吗?
如果有你的帮助,我将不胜感激,因为我已经被困了好几天了。
这是一个"基本"Hudson作业
- 创建一个新的自由风格的软件项目作业
- 配置该作业
- (可选)配置触发器,如"计时器"、"SCM轮询"或其他触发器
- (可选)在源代码管理部分下,选择SCM源并配置存储库和本地工作区
- 在构建部分下,选择添加构建步骤并选择:
如果在*nix上执行Shell
或
如果在Windows上,则执行Windows批处理命令
或
选择您正在使用的构建步骤插件 - (如果使用任何一个"执行"构建步骤)像在命令行中一样编写构建/make/compile命令
- (如果使用另一个插件构建步骤)根据您的要求配置插件选项
- (可选)使用归档构建的工件在构建后操作下归档工件
- (可选)执行其他生成后操作
- (可选)发送电子邮件
现在来解决您的具体场景。首先,你的问题太宽泛,可能会被锁住。如果发生这种情况,不要气馁,为每个项目单独提出问题。我不能详细介绍所有这些项目,但我会给你一个概述。
SCM部分
根据您之前的问题,没有在Hudson中尝试的凭据,我现在猜测您不是在向Hudson提供SVN服务器的HTTP URL,而是试图将您的本地工作区位置提供给它。。。请执行我在该问题中提出的命令行检查。
您需要为其提供一个合适的HTTP服务器URL。Hudson将从您提供的SVN URL中查看该项目,该URL位于所谓的工作区下。根据您的Hudson配置,工作区的位置可能会有所不同,但它是Hudson安装中专用于该作业的文件夹。它可以通过%WORKSPACE%
环境变量从作业中引用。
有一些方法可以使用不同的工作空间位置,但这超出了本概述的范围。整个SCM部分也是可选的,您可以依赖现有的文件系统,但这不是一个好的方法,并且再次超出了本概述的范围。
构建步骤
Hudson使用您的SVN签出/更新工作区后,便开始构建步骤。默认情况下,Hudson可以执行执行Windows批处理命令。默认情况下,它还可以调用Ant。(它也可以做Maven,但这不适用于您的情况)
要进行其他类型的构建,您需要BuildWrapper插件。在您的特定情况下,MSBuild插件可能就是您想要的。我从未使用过MSBuild,因此无法向您提供详细信息。同样,如果您对如何使用MSBuild插件有特定的问题,您可能应该单独提出一个问题。
因此,使用执行Windows批处理命令或MSBuild插件来配置构建步骤。
运行exe
这是非常含糊的。你想启动.exe
,然后呢?它会退出吗?你需要退出代码吗?你想在屏幕上看到它吗?同样,这是非常宽泛的,值得单独提问(或阅读现有问题)。如果您只想调用.exe
,可以配置第二个执行Windows批处理命令步骤,然后键入call pathtoyourfile.exe
。但很可能你不会在屏幕上看到这一点。请在此处阅读我的答案,在Jenkins CI上打开Excel,了解从Hudson/Jenkins启动.exe
的详细信息,该信息将在屏幕上可见。
电子邮件
如果您想要一封简单的电子邮件,Hudson构建后操作有一种发送电子邮件的方法。要获得更好的自定义选项,您需要电子邮件扩展插件。再次,如果您需要有关如何使用电子邮件文本插件的详细信息,请创建一个新问题(首先搜索现有问题后),因为这太多了,无法在一个问题中涵盖。
结论
你的要求并不太高,但Hudson并不是一个能为你完成任务的神器。你仍然需要配置它的每一步。除非你有一个基于Maven的项目(它与Hudson集成得很好),否则很多操作都需要通过执行Windows批处理命令和自己的脚本来完成。
- 唤醒多个线程以在每个条件下工作一次
- 比较字符串的 GetLine 工作一次,然后比较之后不起作用
- WebKit2GTK+ "page-created"扩展只工作一次
- Atmel Studio 7:ASF 库提供的 USART 中断处理程序仅在 main() 中遇到无限循环时工作一次?
- C :用sizeof()operator在for for loop中增加一个int变量,只能工作一次
- 如何在 c++ 中为我的游戏制作计时器,每 30 秒工作一次
- Cython导入只工作一次,然后会出现gcc.bat错误
- C++11:条件变量只工作一次
- 使用 std::ofstream 只能工作一次
- 为什么 _kbhit() 在 C 程序中只工作一次
- 在文件中插入文本只工作一次
- C++ SQLite 查询只工作一次。我的代码有什么问题?
- boost::timed_wait中的Notify条件变量只工作一次
- 我可以退回一份推荐信吗
- 加速 IOSTREAMS:output_filter只能工作一次
- 默认按钮只工作一次
- 打印一份动物清单
- 非静态成员函数,为每个对象创建生成一份机器码副本
- Pthreads程序工作一段时间,然后停止
- 想在Hudson C/C++上找到一份工作