我目前正在尝试让我的Jenkins (版本2.35)为AEM (6.2)的作者/出版商工作并运行。在这个设置中,我有Dev、暂存和生产环境。为了避免版本控制我的pom.xml中的凭据,我在maven中使用了环境变量 (version 3.3.9)。
<properties>
<aem.host>localhost:4502</aem.host>
<aem.protocol>http</aem.protocol>
<aem.user>${env.AEM_AUTHOR_USER}</aem.user>
<aem.password>${env.AEM_AUTHOR_PASSWORD}</aem.password>
</properties>在我的本地环境中,我测试了将这些环境变量设置为正确的值,然后将其设置为不正确的值,它的行为就像人们所认为的那样。
这里的问题是,当我在我的Jenkins服务器上构建 Dev Author job时,不管环境变量是否设置为正确值,似乎都成功了,无论环境变量是否设置为E 216。这是如此奇怪,在这一点上,我不知道是怎么回事。我正在通过一个简单的设置Jenkins服务器上的环境变量。
source ~/path/to/file其中~/path/to/file的外观如下所示:
AEM_AUTHOR_USER="admin"
AEM_AUTHOR_PASSWORD="admin"另外,我应该提到,以前在maven中使用环境变量时,我只为Dev作业直接在pom.xml中使用了AEM凭据。
我想知道Jenkins是否缓存了maven属性,因此凭证和重新设置环境变量没有任何影响。我还应该提到,我已经尝试在每个新构建上重新创建工作区,看看它是否会清除一些缓存系统,但没有骰子。
Jenkins或Maven是否在忽略我的环境变量的某个地方缓存我的maven属性?
有人遇到我描述的问题了吗?
我应该使用EnvInject插件 Jenkins插件吗?
欢迎任何帮助。
谢谢,,Nicola
发布于 2016-12-14 22:13:37
就我的而言,Jenkins似乎使用了一些我无法清除的缓存系统。即使在删除工作区或删除
/home/jenkins/.jenkins/cache无论如何,在尝试了许多尝试重新控制我的pom.xml中的AEM凭证集的值之后,我想出了如何控制pom.xml环境变量的值,从而解决了我的问题。我这样做的方式是安装EnvInject插件,之后我就能够在所有的任务上分别配置maven环境变量。现在一切都很好。
https://stackoverflow.com/questions/41149886
复制相似问题