如何在Karaf中设置Talend-ESB运行时容器的默认上下文?

时间:2018-04-05 11:29:30

标签: talend apache-karaf

我试图了解Talend ESB(SE)运行时的部署架构。

我现在有一个容器,一切都在路由的默认上下文中运行。这对于PoC和开发来说非常有用,但是当我们进入测试和生产部署时,我需要为不同的环境(开发/测试/生产等)提供单独的karaf容器。

这篇文章( https://cleverbuilder.com/articles/runtime-context/) 解释了如何在运行时设置现有作业的运行时上下文,但我想设置容器,以便路由自动部署特定容器的正确上下文。

我已经搜索了所有属性和.cfg文件,但我无法在任何地方看到它。

是否存在为容器整体配置默认上下文或部署上下文的位置,还是我必须部署每个路由然后显式更改上下文?

谢谢!

1 个答案:

答案 0 :(得分:1)

请注意,这不是我要找的答案,但是我找到了一种方法,无需在更新之前使用错误的上下文部署路由即可实现我所需要的。

在原始问题中引用的文章中,讨论了一种更新现有路由上下文的方法。该方法通过karaf客户端有效完成的工作是在<container>/etc中创建一个名为<routename>.cfg的配置文件,其中包含一行

context = PROD

假设您已将上下文设置为“ PROD”。

为了确保路由在正确的上下文中开始,在将.kar文件放入<container>/deploy之前,您可以使用正确的上下文设置创建<routename>.cfg文件。当您随后部署路由时,该路由将从所需的上下文参数集开始。

好的-它笨拙且有点冗长,但是它可以正常工作,至少要等到有人提出更好的方法为止。