首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不能用3个Jenkins并行步骤同时复制同一个存储库两次以上吗?索引包失败了?

不能用3个Jenkins并行步骤同时复制同一个存储库两次以上吗?索引包失败了?
EN

Stack Overflow用户
提问于 2021-02-22 22:48:57
回答 2查看 271关注 0票数 0
代码语言:javascript
运行
复制
stage(code_scan, ut & build) {    
     parallel static_code_scan: { 
     }, unit_test: {
     }, build: {
     }
}

我有一个拉请求管道,它的构建阶段运行一个shell脚本,启动静态代码扫描,然后是单元测试,最后是构建阶段。我使用3个case语句来拆分脚本,每个语句都由我正在编写的3个并行作业调用。这个作业运行在两个构建节点上,我相信我的并行脚本设置不能同时处理两个以上的并行作业,问题是使用索引包。

  • 是否应该有一个单独的静态代码扫描阶段,只需5分钟,单元和构建阶段则需要更长的时间,而不是三个并行阶段的一个阶段?

问题是,所有三个步骤都需要git克隆一个存储库来运行每个任务。我能够做到这一点,只有两个平行的步骤,但不是全部三个在一起。这是我得到的错误:

代码语言:javascript
运行
复制
17:09:00 + git clone git@github.com:[REPO].git -b master .
17:09:00 Cloning into '.'...
17:09:02 fatal: Unable to read current working directory: No such file or directory
17:09:02 fatal: index-pack failed
EN

回答 2

Stack Overflow用户

发布于 2021-02-23 17:55:24

你可以这样试一下,它会很光滑的。

代码语言:javascript
运行
复制
node {
    deleteDir()
    parallel build: {
        dir('build') {
            git url: "https://github.com/dontknow/test0.git", branch: "main"
            sh 'ls -al'
        }        
    }, scan: {
        dir('scan') {
            git url: "https://github.com/dontknow/test0.git", branch: "main"
            sh 'ls -al'
        } 
    }, test : {
        dir('test') {
            git url: "https://github.com/dontknow/test0.git", branch: "main"
            sh 'ls -al'
        } 
    }
}
票数 0
EN

Stack Overflow用户

发布于 2021-02-23 20:09:36

如果三个并行阶段运行在两个节点上,您可能会遇到这样的情况:两个阶段在同一个节点上运行,在同一个目录中运行。试图两次在同一个目录中克隆回购文件可能会失败。您可以尝试一个dir()指令来强制一个不同名称的目录,或者为每个阶段提供一个代理,这将保证一个阶段的唯一目录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66324570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档