3

I'm trying to get my head around the deployment atchitecture for Talend ESB (SE) runtime.

I've got a single container at the moment and everything is running with the route's default context. That's great for PoC and development, but when we get into testing and production deployment, I want separate karaf containers for the different environments (Dev/Test/Production etc.).

This article ( https://cleverbuilder.com/articles/runtime-context/ ) explains how to set the runtime context of an existing job at runtime, but I want to set the container so that routes deploy automatically with the right context for the particular container.

I've hunted through all the properties and .cfg files, but I can't see this anywhere.

Is there somewhere to configure the default context or deployment context for the container as a whole, or will I have to deploy each route and then explicitly change the context?

Thanks!

Screwtape
  • 1,337
  • 2
  • 12
  • 27

1 Answers1

2

Please note that this isn't the answer I was looking for, but I have found a way to achieve what I need without deploying a route with the wrong context prior to updating.

In the article referenced in the original question, a means of updating the context of an existing route is dicuscussed. What that method effectively does through the karaf client, is to create a configuration file in <container>/etc called <routename>.cfg which contains a single line

context = PROD

assuming you have set the context to "PROD".

In order to ensure that a route starts in the correct context, prior to putting the .kar file into <container>/deploy you can create the <routename>.cfg file with the correct context setting. When you subsequently deploy the route, the route will start with the required context parameter set.

OK - it's clunky and a bit long-winded, but it works, at least until someone can suggest a better way.

Screwtape
  • 1,337
  • 2
  • 12
  • 27