3

我为我们的 CI 设置了一个本地无人机服务器。而我们的项目是一个由maven管理的java项目。运行该mvn clean install命令时,maven 会将所有依赖项下载到~/.m2目录中。第一次运行这个命令会从 maven 远程仓库下载大量数据,这可能需要很长时间。在这种情况下,我在无人机 CI 上遇到了以下错误。

ERROR: terminal inactive for 15m0s, build cancelled

我了解此消息意味着控制台上 15 分钟没有输出。但在我的构建环境中这是正常情况。我徘徊是否可以将 15m 配置为更大的值,以便我可以构建我们的项目。

4

2 回答 2

4

我之前的回答已经过时了。您现在可以从存储库设置屏幕更改每个单独存储库的默认超时。此设置仅供系统管理员使用。


DRONE_TIMEOUT=<duration>您可以通过传递给每个代理来增加终端非活动超时。

docker run -e DRONE_TIMEOUT=15m drone/drone:0.5 agent

超时值可以是任何有效的 Go 持续时间字符串 [1]。

# 30 minute timeout
DRONE_TIMEOUT=30m

# 1 hour timeout
DRONE_TIMEOUT=1h

# 1 hour, 30 minute timeout
DRONE_TIMEOUT=1h30m

[1] https://golang.org/pkg/time/#ParseDuration

于 2016-12-28T17:59:36.197 回答
0

查看无人机源代码,看起来它们具有环境变量DRONE_TIMEOUTDRONE_TIMEOUT_INACTIVITY您可以使用它来配置不活动超时。我尝试将它放在我的 .drone.yml 文件中,但它似乎没有做任何事情,所以这可能只能在更高级别使用。

这是对环境变量的引用DRONE_TIMEOUT_INACTIVITYhttps ://github.com/drone/drone/blob/17e5eb50363f3fcdc0a0461162bee93041d600b7/drone/exec.go#L62

这是对环境变量的引用DRONE_TIMEOUThttps ://github.com/drone/drone/blob/eee4fd1fd2556ac9e4115c746ce785c7364a6f12/drone/agent/agent.go#L95

这是引发错误的地方: https ://github.com/drone/drone/blob/5abb5de44aa11ea546db1d3846d603eacef7f0d9/agent/agent.go#L206

于 2016-12-28T17:31:13.213 回答