使用 zip 实用程序从工作区目录中压缩多个文件/文件夹

2024-05-16

我们有一个 Jenkins 管道,我想压缩位于工作区中多个目录中的多个文件(.py 和 .cfg)。有没有一种方法可以将多个值传递给dirzip 方法的选项?

zip (zipFile: "package.zip", dir: "${WORKSPACE}/infra/folder1/")

P.S:我可以在 zip 过程之前添加一个额外的阶段,并将所有必需的文件移动到一个文件夹并使用上述 zip 方法存档该文件夹,但我想避免额外的步骤/阶段


我已经查看了来源JENKINS Pipeline Utility 步骤插件 https://wiki.jenkins.io/display/JENKINS/Pipeline+Utility+Steps+Plugin in jenkinsci/pipeline-utility-steps-plugin https://github.com/jenkinsci/pipeline-utility-steps-plugin:

  • zip/ZipStep.java https://github.com/jenkinsci/pipeline-utility-steps-plugin/blob/0b912dac3870b880d354dcbe0d21cfff4b08ff93/src/main/java/org/jenkinsci/plugins/pipeline/utility/steps/zip/ZipStep.java
  • zip/ZipStepExecution.java https://github.com/jenkinsci/pipeline-utility-steps-plugin/blob/0b912dac3870b880d354dcbe0d21cfff4b08ff93/src/main/java/org/jenkinsci/plugins/pipeline/utility/steps/zip/ZipStepExecution.java

没有任何迹象表明您可以:

  • 传递多个目录
  • 对一个存档多次执行 zip 步骤,追加文件夹到现有存档

所以你必须:

  • 或者,按照建议,使用右壳 glob 模式 https://en.wikipedia.org/wiki/Glob_(programming)
  • 进行一个预先步骤,其中您复制多个文件夹最上面一个公用文件夹 https://stackoverflow.com/q/19409220/6309,然后您可以在其中应用zip step.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 zip 实用程序从工作区目录中压缩多个文件/文件夹 的相关文章

  • 如何通过 JSON / JS 在 Jenkins 中添加 CSRF 面包屑

    我想在 Jenkins 中通过 API 创建作业 但无法连接 Jenkins 中的 CSRF 保护课程 我得到了一个面包屑 但不知道如何将其附加到 JSON 或 JavaScript 中的 url 请求 以通过 POST 方法获取数据传递
  • Jenkins sudo:不存在 tty,并且没有使用 NOPASSWD 指定的 Askpass 程序 [重复]

    这个问题在这里已经有答案了 我花了几天时间来设置文件 etc sudoers能够向用户授予 root 权限jenkins 我在我的服务器上安装了 Jenkins 因为我使用 symfony ionic neo4j 等托管多个项目 问题是我无
  • Jenkins 管道构建如何确定工作区文件夹?

    在 Jenkins 管道中 当在特定节点上运行构建时 会在该代理上分配工作空间 我们没有设置工作空间路径 因此它是自动确定的 据我了解 当同一作业在同一代理上同时运行时 工作区必须包含执行程序编号以隔离构建 但是 工作空间路径到底是如何构建
  • 在声明性詹金斯管道中 - 我可以动态设置代理标签吗?

    有没有办法动态设置代理标签而不是普通字符串 该工作有 2 个阶段 第一阶段 始终在 主 代理上运行 在此阶段结束时 我将知道第二阶段应在哪个代理上运行 第二阶段 应该在第一阶段决定的代理上运行 我的 不起作用 尝试如下所示 pipeline
  • 如何根据作业参数设置 Jenkins 环境变量?

    我有一个项目 需要根据用户选择的选择参数设置环境变量 每个项目都有一个主题项目依赖项 我想让用户选择项目 然后从属性文件加载主题名称 就像是 proj1 theme1 proj2 theme2 proj3 theme3 如果用户选择proj
  • 重新启动我的 sql 时,jenkins 失败“sudo:不存在 tty,并且未指定 Askpass 程序 抱歉,请重试。”

    我刚刚配置了 jenkins 在预构建步骤中我尝试重新启动 jenkins 但最终出现以下错误 Commencing build of Revision c5b9f8daac092efc5396d80f568a2cf89ae8b697 or
  • 如何通过运行构建队列重新启动 Jenkins?

    我们的 Jenkins 执行大量集成测试 詹金斯运行的时间越长 测试所需的时间就越长 因此 我们每天晚上通过 cronjob 重新启动 Jenkins 服务器 同时 构建队列太长而无法完成 当前正在运行的作业被取消并失败 那太丑了 我找到了
  • 批准后使用 jenkinsfile 构建促销

    仅当更改管理使用 servicenow 更改票证或通过手动批准批准它时 我才需要使用 jenkins 文件将我的构建升级到生产 我想要类似的东西 产品构建只有在经理批准后才能手动触发 他 她应该收到带有批准 拒绝链接的批准邮件 或者 如果与
  • 从 Jenkins Pipeline 捕获 shell 脚本输出

    我正在尝试提取 git 分支并在 Jenkinsfile 中提交信息 如下所示 def commit sh returnStdout true script git rev parse HEAD trim def branch sh ret
  • Jenkins:致命:无法初始化类 hudson.util.ProcessTree$UnixReflection

    FATAL Could not initialize class hudson util ProcessTree UnixReflection java lang NoClassDefFoundError Could not initial
  • 整合 Jenkins 电子邮件通知

    我有一个 Jenkins 项目 由 3 个简单的自由式作业组成 每个作业都有自己的构建从站 每个作业都与一个单独的平台相关联 linux mac 或 windows 当开发人员提交代码时 Jenkins 很快就会轮询存储库 在每个构建从属设
  • Jenkins 并行管道中的顺序阶段

    我在 Jenkins 中有一个动态脚本化管道 它有许多并行阶段 但在每个阶段内都有多个串行步骤 我已经浪费了好几天的时间试图让它工作 无论我尝试什么 所有串行子阶段都集中到一个阶段 这是我现在所拥有的 node stage Parallel
  • 如何跳过 Maven 存储库中的发布或特定模块

    Heyho 我有一个具有以下结构的 Maven 项目 parent 项目清单 API模块 module2 module5 test 分配 组装 所以首先我运行父模块 然后运行构建 api 的模块 然后运行依赖于 api 的模块 然后运行一个
  • Jenkins 上的 XCode 项目陷入“codesign”

    我使用 Jenkins 与 XCode 插件进行持续集成 有一个 Jenkins 坚持的项目 usr bin codesign force sign 接下来是旋转器 永远旋转 我以前从未见过这个 以前有人见过这个吗 是配置文件问题还是证书问
  • 在 Jenkins 中执行批处理文件

    我有一个简单的批处理文件 我想要从 Jenkins 调用 运行 执行该文件 Jenkins 中有同样的插件吗 如何从 Jenkins 执行批处理文件 如果有相同的教程或文档 无需为此添加新插件 在Jenkins 选择您的工作名称并转到配置部
  • Jenkins 声明性管道:当仅为管道设置代理时,哪个工作区与阶段相关联?

    以下是声明式管道的示例 其中为管道设置了代理 但未在各个阶段中设置 pipeline agent node label linux stages stage Checkout steps checkout scm stage Build s
  • 如何从詹金斯管道获取所有参数(参数化构建)?

    我正在较新版本的 jenkins 中构建一个参数化管道作业 在较旧版本的 jenkins 中 我使用 getbinding getVariables 来检索所有参数 但较新的版本它返回空值 如何在新版本的詹金斯中检索参数 全部 您可以使用
  • 如何在 Jenkins 成功构建后触发参数化构建?

    我有三个管道项目 项目 a 项目 b 和项目 c 项目 c 采用一个参数 成功完成项目 a 或项目 b 后 我想使用参数触发项目 c 的构建 我可以在项目 a 和项目 b 中使用管道中的以下代码执行此操作 stage trigger pro
  • 如何将 .xlsx 文件上传到 jenkins 作业

    如何将 xlsx 文件作为构建参数上传到 jenkins 作业 我尝试使用文件参数 但我发现该文件正在丢失其扩展名或原始格式 有什么方法可以从 jenkins UI 将 excel 文件上传到 jenkins 作业吗 In the file
  • 詹金斯配置文件问题

    检查依赖关系 找不到与 Nitin xxxxxxx xyzCAppStore 匹配的 iOS 配置文件 Xcode 找不到与 Nitin xxxxxxx xyzCAppStore 匹配的配置文件 安装配置文件 通过将其拖放到 Xcode 的

随机推荐

  • Tkinter:消息小部件中锚点选项的正确值是多少?

    我一直在学习 tkinterTkinter 中的消息小部件 https python course eu tkinter message widget in tkinter php at Python 课程和教程 https python
  • 我的 PHP 代码不会将记录插入到 mySQL 数据库表中[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我的网站上
  • 如何找到特定路线上两点之间的距离?

    我正在为我的大学开发一个 Android 应用程序 可以帮助学生跟踪大学巴士的当前位置 并为他们提供巴士到达他们的预计时间 截至目前 我获取了公交车的当前位置 通过公交车上的设备 和学生的位置 我陷入了必须找到两个 GPS 坐标之间的距离的
  • 在 C/C++ 中将数据从一个文件复制到另一个文件的最快方法?

    在我的代码中 我遇到一种情况 需要将数据从一个文件复制到另一个文件 我想出的解决方案如下所示 const int BUF SIZE 1024 char buf BUF SIZE int left to copy toCopy while l
  • 对更改运行 PHPUnit 测试

    每当磁盘上的文件发生更改时 我想运行 PHPUnit 测试 或至少其中的一个子集 与您可以使用 进行的操作非常相似 咕噜手表 https github com gruntjs grunt contrib watch blob master
  • DbContext 实例不能在 OnConfiguring 内部使用,因为此时它仍在配置中

    我正在尝试构建一个自定义视图位置系统 public class myViewLocationExpander IViewLocationExpander private myDBContext context public myViewLo
  • getifaddrs() 结果发生变化时是否有通知机制?

    启动时 我的程序调用 getifaddrs 来查找哪些网络接口可用于链路本地 IPv6 多播 就目前而言 这是可行的 但它不能处理 getifaddrs 返回后可用网络接口集发生更改的情况 当网络接口发生更改时 操作系统是否有某种方式通知我
  • 将变量传递给 Start-Job

    我必须在这里遗漏一些非常简单的东西 这是一个非常基本的脚本来说明我正在尝试的内容 Computers comp1 comp2 ScriptBlock New Item C Temp C txt Force Foreach C in Comp
  • Java EE6> 将 JSF Facelets (xhtml) 和 ManagedBeans 打包为 JAR

    是否可以将 JSF Facelets 和 ManagedBeans 打包到 JAR 文件中 这样我们就可以在不同的 war ear 项目中使用这个代码和 UI 组合了吗 我不是在谈论 JSF 组件 如果是的话 你能给我指一下教程或博客文章吗
  • java.lang.VerifyError:JVMVRFY012堆栈形状不一致;

    在 WAS 8 5 5 中部署 Maven 项目时出现以下错误 我在WAS中安装了JDK 1 6和1 7 错误500 org springframework web util NestedServletException 处理程序处理失败
  • 验证美国的电话号码是否存在

    我想用 C 验证美国的给定电话号码 是否有任何API或其他东西可以帮助程序员验证电话号码存在 我不仅想验证它们是否与美国电话号码的格式匹配 还想验证它们的存在 提前致谢 您可以使用正则表达式验证电话号码格式 例如 但为了验证该电话号码是否确
  • 使用 BGTaskScheduler 进行后台获取与调试模拟完美配合,但在实践中却不起作用

    我在 appDelegate 的 didFinishLaunchingWithOptions 中注册后台获取任务 BGTaskScheduler shared register forTaskWithIdentifier Backgroun
  • Qt:测量事件处理时间

    我想测量我的应用程序中的哪些事件在主线程中需要很长时间才能执行 阻塞 GUI 或者至少是否有任何事件花费的时间超过 比如说 10 毫秒 显然 我对需要很长时间的任务使用线程和并发 但有时很难在其他线程中放入的内容和可以保留在 GUI 中的内
  • C++ 中求幂的函数是什么?

    如何计算一个数的幂 2 1 2 2 2 3 etc cmath 库中的 pow 更多信息here http en cppreference com w cpp numeric math pow 别忘了放 include
  • 需要使用 iFrame API 隐藏 YouTube 品牌

    我正在使用 YouTube iFrame API 在我的自定义播放器 javascript 播放器 中加载视频 我需要隐藏 Youtube 品牌 但是在 iOS 设备上 它显示带有以下参数的徽标 playerVars fs 1 autopl
  • 游戏GUI框架

    我目前正在重新修改游戏的用户界面 OpenLieroX http www openlierox net即 我正在寻找一个可以轻松创建 GUI 的库 框架 具体来说 这是我的要求 开源 游戏是 LGPL 的 遇到许可问题是我们最不想关心的事情
  • Google reCAPTCHA v2 在幕后如何工作?

    本文引用的是 Google ReCaptcha v2 不是最新版本 最近谷歌推出了简化的 验证码 验证系统 video https www youtube com watch v jwslDn3ImM0 使用户只需单击即可通过 验证码 但它
  • 如何从 Internet Explorer 获取与 cookie 关联的过期日期和标志?

    我可以得到 cookie 的值互联网获取Cookie http msdn microsoft com en us library windows desktop aa384710 28v vs 85 29 aspx or InternetG
  • SQL Server 大小写/排序规则问题

    今天我在客户数据库中遇到了一个奇怪的情况 SQL Server 2005 数据库排序规则不区分大小写 因此我可以使用任何大小写编写 SQL 查询 没有任何问题 除了一个 一张特定表中的一个特定列称为 DeadZone 如果我这样查询 从表名
  • 使用 zip 实用程序从工作区目录中压缩多个文件/文件夹

    我们有一个 Jenkins 管道 我想压缩位于工作区中多个目录中的多个文件 py 和 cfg 有没有一种方法可以将多个值传递给dirzip 方法的选项 zip zipFile package zip dir WORKSPACE infra