当构建处于无限循环中时如何在Travis中运行构建

时间:2019-01-03 06:14:23

标签: travis-ci

我目前有一个构建为无限运行的应用程序。它旨在作为服务在Raspberry Pi上运行,因此它将持续运行。

每当我尝试在Travis-CI上对其进行测试时,由于文件无限运行,因此即使文件正确构建,无限循环部分也会产生错误。有什么办法可以阻止此错误,还是我必须从.travis.yml中删除运行构建的功能?

language: cpp
compiler:
  - clang
  - g++
script:
  - make
  - cd main
  - ./jsonWeatherPrediction

我希望它会出错,但是我不确定在不删除- ./jsonWeatherPrediction的情况下是否可以停止它

我不知道这是否有帮助,但是版本位于https://travis-ci.org/DMoore12/json-weather-prediction

预先感谢:)

1 个答案:

答案 0 :(得分:0)

在大多数合理的CI工作流程中,作业应有明确定义的开始和结束。您正在测试的软件 可能永远运行,但是您的测试却不能。因此,首先,我建议重新考虑如何运行构建。

看一下https://travis-ci.org/DMoore12/json-weather-prediction/jobs/474719832之类的构建,我发现您只是在运行命令(这引发了一个不同的问题:该命令始终在紧密循环中永久打印相同的输出。这是所需的行为吗?)

对于测试,您需要另一种可以测试的行为(例如,从STDIN或命令行标志获取输入,打印并终止)。