我的 Hudson 配置有点旧。我们有一个内部开发的插件,可以查询 Nexus 存储库并设置一些作业参数。该插件使用 Java。
我们还使用已弃用的 SetEnv Plugin ,我们在这里设置了一堆环境变量。
我们的插件基本上扩展了 ParameterDefinition 类以在构建作业屏幕中提供一堆选项,然后 ParameterValue 类为我们的作业设置环境变量。
我们的参数定义类:
class NexusQueryParameterDefinition extends ParameterDefinition
是否可以从我们的参数定义类访问 SetEnv 插件中定义的环境变量?
问题是我在参数化构建的定义时间,即在我按下“立即构建”按钮和按下“构建”按钮开始该过程之间的屏幕。此时我不知道如何访问作业实例对象,我相信构建对象只会在提交表单时创建。
这些环境变量保存在 config.xml
中,所以如果我可以读取这个文件,我就可以解析这些值。
最佳答案
我建议您探索使用 Environment Injector插件和 groovy 代码,用于在作业配置中的运行选项的设置环境中返回 map 对象。
关于java - Hudson/Jenkins 插件开发 : how to get environment variables of other plugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46288959/