可以使用以下命令指定克隆超时:
git {
...
cloneTimeout(60)
}
其中60是超时是分钟。我读到也可以指定结账超时但我找不到详细信息。 checkoutTimeout(...)
和timeout(...)
都会出错。
修改
我可以通过Jenkins GUI设置结帐超时(Configuration
- > SCM
- > Git
- > Additional Behaviors
- > { {1}} - > Advanced Checkout Behaviors
)。我想在Groovy脚本中执行相同操作,该脚本为Jenkins生成Docker配置:
Timeout
答案 0 :(得分:5)
经过一些实验,我找到了如下所示的解决方案。
<强> RECAP 强>
可以通过Jenkins GUI设置结帐超时(Configuration
- &gt; SCM
- &gt; Git
- &gt; Additional Behaviors
- &gt; {{ 1}} - &gt; Advanced Checkout Behaviors
)。我想在Groovy脚本中执行相同的操作,该脚本为Jenkins生成Docker配置。该脚本已设置克隆超时。
Timeout
显而易见的
...
public class DockerJob {
...
multiscm {
git {
remote {
url(...)
branch(...)
...
}
shallowClone()
cloneTimeout(60)
// Add "checkout timeout" here...
}
...
}
...
}
...
没用。一般设置超时
...
// "Checkout timeout"
checkoutTimeout(60)
...
也没用。然后评论网页导致:
...
// "Checkout timeout"
timeout(60)
...
那也没用。最后...
<强>解强>
...
// "Checkout timeout"
extensions {
checkoutOptions {
timeout(60)
}
}
...
答案 1 :(得分:5)
由于 CheckoutOption 对我不起作用,我不得不用管道更改它
扩展程序:[[ $ class:&#39; CloneOption&#39;,timeout:120 ]]
完整的结帐代码
Current window
<input type="text" name="amount" id="amount" style="border:0; color:#f6931f; font-weight:bold;">
<div class="geoframe">
<div class="sliderpos_inframe">
<div id="geoslider-range"></div>
<img id="tscaleimage" src="http:www.mikrotax.org/Nannotax3/graphics/timescale-narrow-rotated.png"/>
</div>
答案 2 :(得分:1)
如何使用工作流程插件并执行此类操作?
checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'CheckoutOption', timeout: 100]], submoduleCfg: [], userRemoteConfigs: [[]]])
答案 3 :(得分:0)
在jenkins管道脚本中,遵循checkout配置非常适合我。我们像github一样使用stash1作为内部git服务器。用自己的替换它。
stage('Checkout') {
steps {
echo "Running checkout stage"
checkout([$class: 'GitSCM', branches: [
[name: "*/${params.branch}"]
], doGenerateSubmoduleConfigurations: false, extensions: [
[$class: 'CleanCheckout'], [$class: 'CloneOption', timeout: 30, shallow: true]
], submoduleCfg: [], userRemoteConfigs: [
[credentialsId: 'ink_bot', url: "ssh://git@stash1.XYZ.com:7999/int_sparktp/${params.repo}.git"]
]])
}
}