当尝试从Bitbucket结帐时,Jenkins删除了工作区

时间:2018-06-06 11:06:14

标签: git jenkins bitbucket

ERROR

一切顺利。突然间,我从jenkins的Bitbucket结账时看到了错误 -

克隆远程Git存储库http://username@bitbucket:port/scm/projectname/appname/project.git 错误:无法清理工作区 Java.io.IOException:无法删除'D:\ Jenkins \ jobs \ projectname \ appname \ projectname \ workspace.Tried 3次(最多3次),等待0.1秒尝试。

at hudson.Util.deleteConstantRecursive(util.java.237) 在org.jenkinsci.plugin.gitclient.CliGitAPIImpl $ 2.execute(CliGitAPIImpl.java:502)

我正在使用jenkins ver-2.7

即使我没有在我的jenkins管道脚本中使用deleteDir()。

感谢..

3 个答案:

答案 0 :(得分:0)

您必须在结帐前强行清洁工作区。

在您的作业配置中,在源代码管理下,Git有一个名为附加行为的选项。您可以选择上述选项,应该解决此错误。请参阅附图。

enter image description here

答案 1 :(得分:0)

这可能是因为工作空间中的某些文件拥有错误的所有者。

通过运行对其进行更改

sudo chown -R jenkins:jenkins /var/lib/jenkins/workspace

答案 2 :(得分:0)

Vighnesh Pai 进展顺利,我发现 Cloudbees 的以下文章描述了此问题,该问题仅影响使用适用于 Windows 的 Git 客户端 Workspace Cleanup 插件的用户的 Windows 节点。

Cloudbees - How can I clean the workspace in Windows agents?

至于如何在声明性管道中使用它,您始终可以使用管道语法片段生成器来帮助您在管道中配置这些插件行为。

例如:

checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'CleanBeforeCheckout']], gitTool: 'Default', submoduleCfg: [], userRemoteConfigs: [[url: 'https://github.com/your-repository']]])