远程自动构建系统

时间:2010-12-02 15:56:42

标签: c++ build-automation

我是一名即将开始Com Sci研究生的电气工程师。目前我在国防工业工作,因此大多数服务和网站都被封锁了。我正在尝试提出一个解决方案,让我可以在工作时做我的家庭作业/项目,因为他们每天给我们2小时的时间做学校工作,如果参加研究生学校。我的工作计算机上没有必要的软件工具,也无法获得。我想在ubuntu盒子上设置我的构建系统,我能想到的最好的解决方案是使用电子邮件和可能的FTPmail来自动化构建过程,并通过电子邮件回复编译器可能返回的任何错误。

之前有没有人这样做过,或者有人知道已经实现此解决方案的软件包。

6 个答案:

答案 0 :(得分:1)

我建议您查看一些基于Web的虚拟机/桌面工具。我在野外见过的有icloudeyeOS

此外,由于安装任何软件基本上都是禁忌,您可能需要检查Linux live-CD。您可以使用必要的工具(SCM,IDE等)预先配置光盘,并在2小时内从Live磁盘启动计算机。当然,这不会给你一个硬盘来保存你的东西,但你可以在2小时到期之前提交你所拥有的任何东西。

修改:无论您做什么,在您尝试之前,请由您的上级获得批准的解决方案。

答案 1 :(得分:0)

听起来您可以访问网络外部的内容,即使您无法在工作系统上安装任何软件。你可以做的一件事:

在Ubuntu框上安装版本控制系统(CVS,SVN等)。您可以在那里存储您的项目/作业。

在你的Ubunto盒子上使用Hudson(http://hudson-ci.org/)作为你的构建系统。您可以创建一个作业,以便从版本控制系统和构建中签出。任何时候你想要建立一个项目(假设你改变了某个类),你所要做的就是按下“build-now”按钮。

Hudson本身几乎完全是web-gui所以它很容易配置,如果你为Hudson打开一个端口,你应该可以直接从工作中访问它(除非它们阻止外部网站)。

答案 2 :(得分:0)

你可以在工作中使用虚拟机吗?即使您没有管理员访问您的工作机器,您也可以使用Qemu和Puppy Linux之类的东西。例如,请参阅http://www.erikveen.dds.nl/qemupuppy/

根据原始问题,如果您可以托管在家接收电子邮件的计算机,您当然可以配置procmail(例如,请参阅http://www.perlcode.org/tutorials/procmail/proctut/)以匹配电子邮件来自某个主题并运行命令(例如,make)。但是你还需要设置一个过滤器来获取和提交文件等。

答案 3 :(得分:0)

您是否可以使用VNC之类的东西来远程控制您的桌面,或者您是否也对这种Sw有限制?

http://www.realvnc.com/

如果我没记错,客户端不需要安装,它可以从pendrive运行......

http://www.pendriveapps.com/portable-vnc-viewer-realvnc/

答案 4 :(得分:0)

这不是远程系统,但如果您可以在您使用的计算机上选择引导介质,它可能会起作用。你的雇主可能不喜欢这个。

可以在USB硬盘上安装一个Linux机箱,然后从中启动。在这里,您可以安装各种开发工具和项目。你只需借用他们的硬件......

如果您之前没有使用过Linux,我不建议这样做。如果你每天只有2个小时的花费,那么Linux可能会让你的开发环境在一年内升级和运行......

祝你好运

答案 5 :(得分:0)

github上设置项目。您可以通过Web浏览器直接进行编辑。

然后在您的家庭系统上的Jenkins上设置持续集成,或使用Travis CI和/或Appveyor监控您的github仓库,并在有变更时构建您的项目。如果有错误,您可以将它们设置为发送通知。

Travis或Appveyor的优势在于它们是基于网络的,因此您可以查看破碎版本的控制台输出,其中jenkins在家中运行可能不会(我不记得是否可以获得整体通过电子邮件输出或不通过)。