Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

There are two ways to dynamically inject parameters to your integration solutions that are deployed in different environmentsWhen deploying integration artifacts in different environments, it is necessary to change the synapse parameters used in the artifacts according to the environment. For example, the 'endpoint URL' will be different in each environment. If you define the synapse parameters in your artifacts using the "$SYSTEM:<value>" format, you can inject the required parameter values to each environment. Without this feature, you need to create and maintain separate artifacts for each environment. This feature ensures allows deploy the same integration solution to multiple environments (DEV, PROD, etc.) and then inject separate parameter values to the different environments.

Tip

This feature is particularly useful for container deployments, where we need to dynamically inject the parameter values to the docker container.

There are two ways to dynamically inject parameters to your integration solutions:

Injecting parameters as environment variables

Injecting parameters using a file

Supported Synapse parameters

Listed below are the synapse parameters in integration artifacts that you can parameterize.

Endpoints

Endpoint TypeParametersExample
Address Endpointuri

In the following example, the endpoint URL is configured for an environment variable.

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<endpoint xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteEndPoint">
  <address uri="$SYSTEM:stockQuoteEP"/>
</endpoint>

In a VM deployment, you can export the variables as shown below.

...

Here VAR is the url you need to have set as environment property.

Code Block
export VAR=http://localhost:61616/...
HTTP Endpointuri
Loadbalance Endpointhostname and port
RecipientList Endpointhostname and port
Template Endpointuri
WSDL EndpointwsdlURI