我正在使用一个自托管的 GitLab CI 服务器
(社区版 v8.9.5)和 gitlab-ci-multi-runner
1.2.0 来构建一个项目。我的其中一个流水线阶段(测试)需要一段时间来运行,我遇到了以下错误:
我应该在哪里覆盖这个超时时间?我能把它应用于测试流水线阶段吗?ERROR: Build failed: execution took longer than 3600 seconds
timeout
在.gitlab-ci.yml
文件中为每个阶段设置超时时间:
timeout
允许您为特定作业配置超时时间。例如:
build:
script: build.sh
timeout: 3 hours 30 minutes
test:
script: rspec
timeout: 3h 30m
有两个超时时间可以设置: 项目超时 和 运行器超时.
项目超时:
可以从设置 -> CI/CD -> 常规流水线中为每个任务设置超时时间。
运行超时:
可以从设置 -> CI/CD -> Runners中选择来自此项目激活的Runner并编辑最大作业超时时间来设置Runner的超时时间。
请注意,这两种类型的超时时间可以被彼此覆盖。请参考docs。
ERROR: Job failed: execution took longer than 30m0s seconds FATAL: execution took longer than 30m0s seconds
。我已经在toml文件中将超时时间设置为1小时。请让我知道可能的问题是什么。 - shaktisinghmoyalgitlab-runner exec docker job_name --timeout 3600
- shaktisinghmoyalGitlab 12.3 引入了一种特定于工作的超时机制。
https://docs.gitlab.com/ce/ci/yaml/README.html#timeout
build:
script: build.sh
timeout: 3 hours 30 minutes
test:
script: rspec
timeout: 3h 30m
ERROR: Job failed: execution took longer than 30m0s seconds FATAL: execution took longer than 30m0s seconds
。我已经在toml文件中设置了1小时的超时时间。请告诉我可能是什么问题。 - shaktisinghmoyal