我正在尝试设置一个travis脚本,在其中运行我们的应用程序以确保它能够正常启动。如果可以,则可以通过构建。测试可以捕获启动时的错误。但是,它是一个API服务器,如果我运行二进制文件并且成功了,它将无限期地运行。
我尝试使用以下命令:
timeout --preserve-status 20s <binary>
但这只返回二进制文件的退出码,当从超时中终止时为143。
timeout 20s <binary>
这将在成功时返回退出127。
是否有一个脚本可以运行该二进制文件,如果二进制文件在启动时出错,则失败,并且如果在20秒后成功启动,则返回退出0以通过travis构建?