用于本地和远程编译的集中式构建服务器

问题描述 投票:0回答:2

我所在的团队由几个开发人员组成,他们共享编译器工具链的许可证。 我们遇到的问题是,在一位开发人员获得使用编译器的许可证后,需要很长的等待时间才能让下一位开发人员使用该编译器。 这会浪费大量时间并让人们感到沮丧。

由于许可证非常昂贵,购买更多许可证不是一个选择。我希望通过设置一个中央编译器来更充分地利用许可证,您可以将作业推送到该机器并让机器完成工作。 我们还在研究自动构建来验证来源。

我研究过 buildbot,它对于自动化构建和测试来说似乎很成熟,但是,当开发人员处于本地测试阶段,然后将更改推送到远程存储库时,使用它来代替本地构建可能超出了它的范围。

理想情况下,该工具能够位于 IDE 和编译机之间,以便 IDE 认为构建是在本地执行的。然后,如果出现任何警告/错误,我们仍然可以使用这些方便的功能来定位语法错误。

build ide buildbot centralized
2个回答
2
投票

您可以查看 buildbot try 工具。 这允许您向构建器发送补丁文件以使其远程运行,并允许您阻止结果。

如果您已经拥有一个集中式存储库,您所要做的就是创建一个对

buildbot try
的调用,传入所需的参数,并将其替换为 makefile/buildscript 中的实际编译器。

当然,如果您是唯一进行编译的人,这会导致迭代需要更长的时间,但听起来您确实遇到了相反的问题。


0
投票

如果您可以自定义用于执行编译器的命令,并且可以

ssh
到中央计算机,那么您可能可以使用
ssh
编写调用远程计算机上的编译器的包装器。为了让它正常工作,您可能需要在客户端和服务器上安装源目录。

如果源目录安装在两台机器上的同一位置,那么脚本可能会很简单

#!/bin/sh
ssh $REMOTE_HOST cd "$PWD" ";" $@

这将调用作为参数传递给

$REMOTE_HOST
的命令,位于服务器上的同一目录中。

© www.soinside.com 2019 - 2024. All rights reserved.