如何在 jenkins 2 管道中使用 FileParameterValue

2024-03-20

如何将当前项目工作区中的文件作为参数传递给另一个项目。

例如就像是:

build job: 'otherproject', parameters: [[$class: 'FileParameterValue', name: 'output.tar.gz', value: ??? ]], wait: false

java.File 对象只能从主节点恢复文件。
因此,为了将文件作为 java.File 对象加载,我们使用主节点来取消存储所需的文件,然后将它们包装为文件对象,最后将它们作为 FileParameterValue 对象发送。

node("myNode") {
    sh " my-commands -f myFile.any " // This command create a new file.
    stash includes: "*.any", name: "my-custom-name", useDefaultExcludes: true
}

node("master") {
    unstash "my-custom-name"
    def myFile = new File("${WORKSPACE}/myFile.any")
    def myJob = build(job: "my-job", parameters: 
                    [ string(name: 'required-param-1', value: "myValue1"),
                      new FileParameterValue("myFile.any", myFile, "myFile.any")
                    ], propagate: false)

    print "The Job execution status is: ${myJob.result}."

    if(myJob.result == "FAILURE") {
      error("The Job execution has failed.")
    }
    else {
      print "The Job was executed successfully."
    }
}

如果您需要发送的文件仅包含文本,您可以跳过主节点。

def myFileContent = readFile("myFile.txt")
FilePath fp = new FilePath(new File("${WORKSPACE}","myFile.txt"))
if(fp!=null){
    fp.write(myFileContent, null)
}
def file = new File("${WORKSPACE}/myFile.txt")

然后照常使用 FileParameterValue 对象上的文件。
不要忘记导入 FilePath 对象 -> import hudson.FilePath

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 jenkins 2 管道中使用 FileParameterValue 的相关文章

  • 在 Jenkins 中运行 MsTest 失败,CreateProcess 错误=5,访问被拒绝

    我正在从 Jenkins 运行 MsTest 作为构建步骤 但它失败了 Test c Program Files x86 Microsoft Visual Studio 14 0 Common7 IDE resultsfile TestRe
  • 詹金斯可以在构建操作之间添加睡眠时间吗?

    我正在 Jenkins 中启动 JBoss 服务器作为构建操作 下一个操作将运行一组测试 我需要在两个操作之间添加睡眠时间 有谁知道如何轻松做到这一点 可以使用sleep进入 Jenkins 管道 该步骤包含在管道 基本步骤 https p
  • Jenkins 安排代理节点可用性

    我们有许多机器希望用作 Jenkins 的代理节点 但仅限于特定的时间间隔 即不在工作时间 是否可以配置一个代理节点作为特定时间范围内构建的代理 例如 周一至周五晚上 10 点至凌晨 5 点 周六和周日全天 In the 从机配置面板 选择
  • 您可以使用 Jenkins Pipeline 解析 TAP 格式吗?

    我正在尝试解析 BATS 脚本的输出 https github com gaia adm docker bench test https github com gaia adm docker bench test 输出为 TAP 格式 我稍
  • 使用与后期步骤中的 Shell 脚本中的克隆相同的 http git 凭据

    我想要自动化我们的发布过程 并且我有一个 Maven 项目的以下 Jenkins 构建作业 使用配置的 Jenkins 凭证 用户名 密码 克隆 Git 存储库 执行一些 Maven 命令以进行构建 配置一个后步骤来执行一些额外的 Git
  • Jenkins 中的 Powershell 转义路径字符

    我有一个声明性管道 应该执行 powershell 步骤来安装路径 路径作为参数提供 parameters string name UNC defaultValue server01 lab local shared data descri
  • 使用 jenkins.Creating .apk 文件生成 android 版本

    我正在使用 Jenkins 在 mac 上持续集成 android 应用程序 但是我无法使用 Jenkins 生成 apk 文件 就像我们在 iOS 应用程序中创建 ipa 一样 创建用于在 mac 上分发的 apk 文件的配置是什么 您可
  • 如何删除 TFS 工作区映射?

    我在一个团队项目中的 tfs 中有一个项目 然后我们将该项目移动到另一个团队项目中的不同位置 我已将 Jenkins 配置为连接到团队项目并构建我的解决方案 但是当我更改设置以连接到新的 tfs 团队项目时 出现以下错误 workspace
  • 访问先前 Jenkins 构建中失败的阶段

    我编写了一个 Jenkinsfile 脚本 它获取当前 Github 提交中的文档是否已更新或代码是否已更新 并相应地启动所有阶段 如果仅更新文档 我不会再次运行代码测试阶段 所以现在如果之前的构建失败并且现在在当前的 Git 提交中仅更新
  • 使用 Ruby 验证 Jenkins 插件表单

    我正在用 Ruby 开发一个 Jenkins 插件 您应该能够配置连接到服务器的每个节点 以便在该节点失去与主服务器的连接时将电子邮件发送到指定的地址 EmailNodeProperty添加一个字段来输入电子邮件地址 Save an ema
  • Docker:PermissionError:[Errno 13]权限被拒绝[重复]

    这个问题在这里已经有答案了 我在运行 docker compose 时得到了这个 Got permission denied while trying to connect to the Docker daemon socket at un
  • 在 jelly 脚本中使用 JavaScript

    我正在尝试在 Jenkins 中使用用 JavaScript 编写的脚本 我认为最简单的方法是在 jelly 脚本中调用它们 例如 我有文件 myCustom js alert Hello World function myFunction
  • 在 Jenkins 声明式管道中对后置条件进行分组

    有没有办法在 Jenkins 声明式管道中对后置条件进行分组 例如 我想对状态做同样的事情aborted failure and success 有没有比以下更短的方法 post aborted sendNotification curre
  • Jenkins Pipeline:在构建日志控制台中启用时间戳

    如何显示多分支管道项目的每一行的构建时间戳 它是受支持的功能吗 如果是 是否需要在Jenkinsfile或者有 GUI 选项吗 向声明性管道添加选项 pipeline agent any options timestamps stages
  • 使用 Jenkins API 促进构建

    给定一个具有不同升级作业的 Jenkins 构建作业 即 将构建升级到不同的环境 如何使用 Jenkins API 触发特定构建的特定升级作业 综合不同来源的答案得出 Username Username APItoken 12345 Cre
  • 让 gradle 执行 JUnit 测试(Android 应用程序、Android Studio)

    我目前正在开发一个 Android 应用程序 最近从 Eclipse 切换到 Android Studio 不是我的想法 不过 我想配置 jenkins 服务器来定期运行 JUnit 测试和其他测试 为了实现这一点 我尝试配置一个 grad
  • Jenkins:尽管没有变化,SCM 仍然触发持续构建

    我们遇到一个问题 尽管没有代码更改 SCM 仍在触发构建 SCM 每 15 分钟轮询一次更改 并且仅在发现更改时才触发构建 以下是连续 SCM 轮询日志的几个示例 Started on Nov 15 2013 11 47 14 AM Usi
  • Jenkins 和 Github 不使用 SSH 密钥

    我已将 Jenkins 设置为从 Github 上的私有存储库中提取特定作业 尽管我已经生成了私钥 公钥并将其作为部署密钥添加到 github 但 Jenkins 似乎并未使用 SSH 密钥 当我从 Jenkins 用户进行 git clo
  • Jenkins中找不到环境变量

    我想在詹金斯中设置很多变量 我试过把它们放进去 bashrc bash profile and profile of the jenkins用户 但 Jenkins 在构建发生时找不到它们 唯一有效的方法是将所有环境变量放入Jenkinsf
  • Jenkins 可以检测到任何 svn 用户每次提交代码吗?

    Jenkins 可以检测到任何 svn 用户每次提交代码吗 我想知道每次 Jenkins 提交 svn user 时 有什么方法或 jenkins 插件吗 现在我用svn updateJenkins 中的 cmd 来更新 svn 您可以按照

随机推荐

  • 未找到 GoogleWebAuthorizationBroker

    我正在学习 C 为 Windows Phone 开发 并且我正在尝试验证我的用户进入 Google 帐户 我使用这个代码 https developers google com api client library dotnet guide
  • 如何使用 JavaScript 将非英语字符转换为英语

    我有一个 C 函数 它将所有非英语字符转换为给定文本的正确字符 就像下面这样 public static string convertString string phrase int maxLength 100 string str phr
  • 使用 pandas 删除 Excel 中的标题行

    我有一个带有合并标题的 Excel 文件 我使用 pandas 将其读取为数据框 之后看起来像这样pd read excel Unnamed 0 Pair Unnamed 1 Type Unnamed 23 cabinet name gro
  • 设计时 XAML 的默认值

    我有一个绑定的TextBlock XAML
  • C 复数和 printf

    如何打印 使用 printf 复数 例如 如果我有以下代码 include
  • 针对一组测试最小汉明距离的算法?

    我想做一件相对简单的事情 给定一个查询号码Q 查询距离d 和一组数字S 判断是否S包含any汉明距离小于或等于的数字d 最简单的解决方案就是使S一个列表并迭代它 计算距离 如果计算出的距离小于或等于 d 则退出返回TRUE 但考虑到我想做的
  • 在python中打印对象/实例名称

    我想知道是否有一种方法可以将 python 中的对象名称打印为字符串 例如 我希望能够说 ENEMY1 还剩 2 马力 或者 ENEMY2 还剩 4 马力 有办法做到这一点吗 class badguy def init self self
  • 更精确的Thread.Sleep

    我该如何做 Thread Sleep 10 4166667 好吧 我现在明白了 睡眠不是一条出路 所以我使用计时器 但计时器也是以毫秒为单位 我需要更精确 有纳秒精度的计时器吗 那么您希望您的线程恰好在该时间休眠然后恢复 忘掉它 该参数告诉
  • Android自定义权限-Marshmallow

    背景 从历史上看 Android 自定义权限已经一团糟 https code google com p android issues detail id 65864 and 取决于安装顺序 https code google com p a
  • Hibernate 的二级缓存是否/可以用于 COUNT() 操作?

    当使用 Hibernate 和 Ehcache 作为二级缓存 2LC 实现时 在使用 WHERE 子句执行 COUNT 操作时是否 或可以 使用此缓存 用 SQL 术语来说 我正在执行的查询是SELECT COUNT id FROM tab
  • 以编程方式选择 DataGridView 的一行

    在我的表单应用程序中 有一个 buttonNEW 选择NewIndexRow of DataGridView我想用这个按钮更改 datagridview 的索引 private void buttonNew Click object sen
  • 将变量向上舍入到下一个最接近的 X 倍数

    我正在寻找一种方法将数字四舍五入到下一个最接近的 250 倍数 例如 如果我有以下 JS var containerHeight container height 我们假设 containerHeight 的值是 680px 我想要一种向上
  • 如何设置 AG-GRID 列垂直边框的样式

    我希望我的 AG Grid 列具有垂直边框 默认情况下 网格行具有水平边框 我希望它模仿常规 Excel 电子表格的外观和感觉 我尝试在列定义中使用单元格样式 如下所示 this columnDefs headerName Test cel
  • 我可以通过编程方式向 WPF 数据网格添加一行吗?

    我只想添加一个新行 我的数据源位于需要进行一些处理的对象中 我需要像下面这样的 wpf 数据网格 DataRow row dataTable NewRow foreach NavItem item in record Items row i
  • 如何将数据绑定到非静态类上的静态属性?

    In my ViewModel类我有一个静态属性AllSupport但我不知道如何正确绑定它 ListView 已绑定到 ObservableCollectionAllEffects具有AllSupport静态属性 我用过这个
  • 在 PHP 邮件函数中设置 $headers 数组时遇到问题

    当我将 headers 数组指定为时 我无法通过 PHP 邮件函数发送电子邮件 headers array From gt email protected cdn cgi l email protection Content type gt
  • 悬停时模糊整个背景

    所以我的首页上有一些项目 其中显示了一些动漫 我想做的是 当你将鼠标悬停在第一个节目 Hunter X Hunter 上时 我希望页面上的所有其他内容 不包括悬停的内容 都变得模糊 我环顾四周 看到了一些例子 但我觉得我的情况有点不同 首页
  • PHP REST API 中的选项

    我正在用 PHP 编写 REST API 但找不到任何解释如何使用 OPTIONS 的资源 它似乎是 REST API 的重要组成部分 这就是我发现的内容 谁能解释 OPTIONS 应该包含什么以及它应该如何格式化 提前致谢 HTTP OP
  • 您在哪里进行验证?

    希望您会看到我在下面的场景中描述的问题 如果不清楚 请告诉我 您的应用程序分为三层 前端UI层 可以是asp net webform 或者window 用于编辑Person数据 中间层业务服务层 编译成dll PersonServices
  • 如何在 jenkins 2 管道中使用 FileParameterValue

    如何将当前项目工作区中的文件作为参数传递给另一个项目 例如就像是 build job otherproject parameters class FileParameterValue name output tar gz value wai