当前位置: 首页 > 面试题库 >

如何根据作业参数设置Jenkins环境变量?

郗学
2023-03-14
问题内容

我有一个项目,需要根据用户选择的选择参数设置环境变量。每个项目都有一个主题项目依赖项。我想让用户选择项目,然后从属性文件中加载主题名称。就像是

proj1=theme1
proj2=theme2
proj3=theme3

如果用户proj1PROJECT_NAMEchoice参数中选择,我想自动设置THEME_NAMEtheme1。最好的方法是什么?

每当添加新项目时,我都不想修改Jenkins作业配置。相反,我想将映射保存在文件中,以便可以在版本控制中使用它。


问题答案:

啊哈,我找到了一个简单的解决方案!使用EnvInject插件,在作业配置中:

搭建环境

[X]在构建过程中注入环境变量

属性文件路径 C:\pathtofile\mapping.properties

属性内容 THEME_NAME=${${PROJECT_NAME}}

奇迹般有效!



 类似资料:
  • 我正在尝试根据传递到作业中的参数在Jenkins管道作业中设置环境变量;这样,我可以在需要它的管道的每个阶段使用环境变量。我尝试在环境块中使用Switch语句: 然而,这并不起作用,该作业试图将等号之前的所有行评估为KEY名称: 我该如何让它工作?

  • 问题内容: 我试图访问Accumulo 1.6 从Apache的星火使用的作业(Java编写的)用。为了做到这一点,我必须通过调用该方法来告知在哪里定位ZooKeeper 。此方法采用一个对象,该对象指定各种相关属性。 我通过调用静态方法来创建对象。该方法应该在各个位置查找文件以从中加载其默认值。它应该看的地方之一是。 因此,我试图以这样的方式设置环境变量,使其在Spark运行作业时可见(作为参考

  • 我正在做一个Jenkins的工作,它接受来自用户的一些参数。我遇到了一个不希望的行为:在我的脚本有机会读取环境变量之前,Jenkins似乎在参数环境变量中扩展了环境变量引用。 如果用户输入 作为参数,我的脚本实际看到的是 的内容;环境变量已展开。如果输入的值包含 我的脚本只能看到一个 。但是,如果它包含环境中不存在,则该值将保持不变(不会引发任何类型的错误)。 这很不方便,因为它甚至出现在密码字段

  • 问题内容: 我正在尝试设置脚本以增加Xcode项目的内部版本号。我进行了一次API调用以获取当前的内部版本号,然后我希望对其进行递增,然后将该新的版本号用作环境变量,以便Xcode插件可以使用它。 我安装了EnvInject插件,但是我不知道如何将var从我的shell脚本中获取到环境变量中。 这设置为我需要的值,但是如何将其分配给环境变量,以便以后在工作中访问它? 问题答案: 添加一个构建步骤以

  • 我想在dev/prod环境中更改Spark作业的类型安全配置。在我看来,实现这一点的最简单方法是将传递给作业。那么Typesafe配置库将为我完成这项工作。 将选项添加到spark-submit命令时,不会发生任何情况。 我收到。

  • 问题内容: 我开始研究一个项目,它使用了Github私有存储库中的一些私有模块,每当我尝试运行它时,都会出现以下错误: 验证github.com/repoURL/go- proto@v2.86.0+incompatible/go.mod:github.com/repoURL/go- proto@v2.86.0+incompatible/go.mod:阅读https://sum.golang。 or