我只是了解Travis CI,并阅读了一些文档。对于开源项目来说,这似乎是一个不错的解决方案。
到目前为止,通过Travis文档的阅读,我怀疑我是否能够以某种方式将其连接到我的个人硬件。
我正在研究GitHub上托管的一些用C/C++编写的与IoT相关的项目。在Travis CI上基于工件构建和发布图像应该不是问题。但是,在测试方面,绝对不能在其(Travis's)硬件上进行测试。这些二进制文件需要放在我的开发板上(raspberry pi),然后应该执行测试用例。测试服完成后,应将结果通知Travis CI。
Travis允许这种功能吗?如果不是这样,那将是一个很大的限制。
最佳答案
通过此陈述,您可以回答自己的问题。如果要使用Travis公开显示测试状态,则最好的机会是使用Jenkins,GitLab CI或任何其他CI服务器在本地运行测试,然后向Travis提供API(例如包含测试结果的文件)。然后,Travis要做的就是获取并显示测试结果。
如果要从Travis内部进行控制,可以使用HTTP调用从Travis触发构建,然后等待远程构建完成后再显示其结果。 Jenkins和GitLab CI均提供远程触发。但是,这要求您的CI服务器可以公开访问,这可能会带来安全风险(例如,触发不间断构建的人员)。
关于continuous-integration - 是否可以使用Travis CI测试与硬件相关的代码?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44702195/