美文网首页
jenkins pipeline 制品相关步骤

jenkins pipeline 制品相关步骤

作者: _fishman | 来源:发表于2020-07-24 17:21 被阅读0次
stash

保存临时文件。
stash步骤可以将一些文件保存起来,以便被同一次构建的其他步骤或阶段使用。如果整个pipeline的所有阶段在同一台机器上执行,则stash步骤是多余的。所以,通常需要stash的文件都是要跨Jenkins node使用的。
stash步骤会将文件存储在tar文件中,对于大文件的stash操作将会消耗Jenkins master的计算资源。Jenkins官方文档推荐,当文件大小为5∼100MB时,应该考虑使用其他替代方案。

stash步骤的参数列表如下:

  • name:字符串类型,保存文件的集合的唯一标识。
  • allowEmpty:布尔类型,允许stash内容为空。
  • excludes:字符串类型,将哪些文件排除。如果排除多个文件,则使用逗号分隔。留空代表不排除任何文件。
  • includes:字符串类型,stash哪些文件,留空代表当前文件夹下的所有文件。
  • useDefaultExcludes:布尔类型,如果为true,则代表使用Ant风格路径默认排除文件列表。
    除了name参数,其他参数都是可选的。excludes和includes使用的是Ant风格路径表达式。
unstash

取出之前stash的文件。
unstash步骤只有一个name参数,即stash时的唯一标识。通常stash与unstash步骤同时使用。以下是完整示例。

pipeline {
    agent none
    stages {
        stage('stash') {
            agent { label "master" }
            steps {
                script {
                    writeFile file: "a.txt", text: "$BUILD_NUMBER"
                    stash(name: "abc", include: "a.txt")
                }
            }
        }
        stage("unstash") {
            agent { label "build" }
            steps {
                script {
                    unstash("abc")
                    def content = readFile("a.txt")
                    echo "${content}"
                }
            }
        }
    }
}

参考文章:
https://www.ssgeek.com/post/jenkinspipeline-yu-fa-gai-yao/#422-%E5%88%B6%E5%93%81%E7%9B%B8%E5%85%B3%E6%AD%A5%E9%AA%A4

相关文章

网友评论

      本文标题:jenkins pipeline 制品相关步骤

      本文链接:https://www.haomeiwen.com/subject/kqkslktx.html