jenkins-pipeline - 使用 Jenkins 管道解压缩文件

标签 jenkins-pipeline unzip jenkins-groovy

我有一个名为 ***.zip 的 zip 文件。我使用下面的命令来解压缩它。一旦我解压,里面的文件也是“Zip”文件(超过3个zip文件)。能否请您告诉我如何解压缩这些文件。

unzip zipFile: "$project_version",dir:"D:\\jenkins\\DEV\\extract\\project", quiet: true

努力去做-

unzip dir: 'D:\\jenkins\\DEV\\extract\\project', glob: '', zipFile: 'D:\\jenkins\\DEV\\extract\\project\\project_*.zip'

错误日志

java.io.IOException: D:\jenkins\DEV\extract\project\project_*.zip does not exist.
    at org.jenkinsci.plugins.pipeline.utility.steps.zip.UnZipStepExecution.run(UnZipStepExecution.java:77)
    at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:47)
    at hudson.security.ACL.impersonate(ACL.java:260)
    at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:44)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Finished: FAILURE

解压主 zip 文件后我的目录下的文件。

05/16/2018  04:31 PM    <DIR>          .
05/16/2018  04:31 PM    <DIR>          ..
05/15/2018  12:51 PM           265,637 project-project1_1.0.0.24_bdd86e0c.zip
05/15/2018  12:51 PM         7,924,188 project-project2_1.4.0.130_43dce5e4.zip
05/15/2018  12:51 PM         6,862,842 project-project3_1.0.0.207_c7d5d471.zip
               3 File(s)     15,052,667 bytes
               2 Dir(s)  432,451,330,048 bytes free

我在 Windows 中需要类似的命令-

for file in `ls 123_*.zip'; do unzip $file -d `echo $file | cut -d "." -f 1`; done

最佳答案

您可以在步骤 block 中使用管道实用程序步骤 应该同时使用脚本式和声明式管道

steps {
      unzip zipFile: 'file.zip', dir: '<directory>'
}

关于jenkins-pipeline - 使用 Jenkins 管道解压缩文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50371073/

相关文章:

Python:解压目录树中选定的文件

java - 压缩和解压 jar ,大小不一样!

bash - 从 jenkins groovy 脚本中的 bash 脚本捕获退出代码

jenkins-groovy - 如何在 Jenkins Post block 中定义代理/节点

testing - 使用 Jenkins 自动测试 Nifi 流

jenkins - 如何使用 Jenkins 管道构建 docker 镜像?

git - Jenkins:使用来自另一个 repo 的 jenkinsfile 构建多分支管道

swift - 文档文件夹在模拟器中工作但不适用于 iPad - Swift 2.1

jenkins - 从 Jenkins 中的 Groovy 脚本设置环境变量

jenkins - 如何在 check out Jenkinsfile 中的存储库之前清理管道