jenkins - 如何使用来自另一个自由式项目的属性文件在管道中加载变量?
问题描述
我有一个触发“管道”项目的 Jenkins“自由式”项目(事实上,我的“自由式”项目在管道项目的“构建触发器”步骤中被提及为触发器)。
如何从“父/自由式”项目的每个构建创建的“.properties”文件中获取变量值?
目前我已经在“父/自由式”项目上检查了“存档工件”,并将以下代码添加到我的“子/管道”中:
node
{
load "${WORKSPACE}/variables.properties"
echo "${PARAM_FROM_TRIGGER}"
}
pipeline
{
agent any
stages
{
stage('STEP1')
{
steps
{
sh '''
#!/bin/bash
echo 'STEP 1'
'''
}
}
}
}
在“子/管道”构建后遇到异常:
java.nio.file.NoSuchFileException:/var/lib/jenkins/workspace/my_pipeline/variables.properties
如何从我的属性文件中加载值?
解决方案
由于您已经在归档 .properties 文件,我认为您正在寻找Copy Artifact Plugin。
您可以使用以下命令:
copyArtifacts(projectName: 'sourceproject');
将工件从父/自由式复制到子/管道的工作区。
推荐阅读
- tensorflow - 用于比较相同架构中的训练损失的指标
- r - 用 2 个元素总结 R 中的数据框
- java - 是否可以在 ANTLR4 中包含(但不导入)独立语法?
- python - 使用 SSIM ,尝试比较图像并尝试分别获取亮度、对比度和结构
- angular - 无法从一个组件向另一个组件发出功能
- java - com.mongodb.client.MongoClient 和 com.mongodb.MongoClient 的区别
- javascript - 有没有办法在Javascript中向数组添加一个空元素?
- google-maps - 谷歌地图设置航向不起作用,地图仍然向北行驶
- python - 获取docker容器内主机的MAC地址
- python - 检查路径是否存在于 Databricks 中