繁体   English   中英

Hudson / Jenkins插件开发:如何获取其他插件的环境变量

[英]Hudson/Jenkins Plugin development: how to get environment variables of other plugin

我有点老Hudson配置。 我们有一个内部开发的插件,可以查询Nexus存储库并设置一些作业参数。 这个插件是用Java编写的。

我们还使用depreacated SetEnv Plugin ,我们在其中设置了一堆环境变量。

我们的插件基本上扩展了ParameterDefinition类,在构建作业屏幕中提供了一堆选项,然后为我们的作业设置了一个ParameterValue类设置环境变量。

我们的参数定义classe:

class NexusQueryParameterDefinition extends ParameterDefinition

是否可以从Parameter Definition类访问SetEnv插件中定义的环境变量?

问题是我在参数化构建的定义时间,即当我按下“立即构建”按钮和按下“构建”按钮以启动过程之间的屏幕。 此时我不知道如何访问作业实例对象,我相信只在提交表单时才会创建构建对象。

这些环境变量保存在config.xml ,所以如果我能读取这个文件,我可以解析这些值。

我建议您使用Environment Injector插件和groovy代码来探索在作业配置中的“运行”选项的“设置环境”中返回一个地图对象。

看起来如果不改变Hudson / Jenkins代码就不可能。

以下是有关该链接的链接: https//groups.google.com/forum/#!topic / jenkinsci-dev / hLy525cxsg

如果环境变量已经注入运行时,您是否尝试过? 使用System.getenv(“yourEnvVar”)访问环境属性的方法;

如果要为迁移路径访问SetEnv-Plugin的已配置的Env-Params,则会更棘手。 但是对于migation,我建议你阅读config.xml并在你的插件中提取配置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM