web stats
Release management - Mirth Community

Go Back   Mirth Community > Mirth Connect > Support

Thread Tools Display Modes
Old 11-06-2015, 07:05 AM
david_ david_ is offline
What's HL7?
Join Date: Nov 2015
Posts: 5
david_ is on a distinguished road
Default Release management


I am starting on a new project using Mirth Connect, and I'm concerned about release management. What is the best way to export, manage and import configuration between environments, given that connection information will be different in each environment?

For example, in my dev environment, I may read some messages from a file store, some other messages from a local sender, and write messages to a dev database. In test, however, those same channels are all connecting to test systems, and in live, the connections are the same, but the ports and IP addresses are different. What is the best way of managing this in Mirth, using the standard export/import processes?

Reply With Quote
Old 11-06-2015, 07:40 AM
narupley's Avatar
narupley narupley is offline
Mirth Employee
Join Date: Oct 2010
Posts: 7,126
narupley is on a distinguished road

A great way to handle things like differing IPs/ports across multiple test/prod servers is to use the configuration map. For example, say you decide on the following paradigm:

All ports on the TEST system start with "10" (like 10001, 10002, etc.). All ports on the PROD system start with "20" (like 20001, 20002, etc.). Then in your configuration map, create a "portPrefix" variable, with "10" on TEST and "20" on PROD.

Now in your channels, instead of hard-coding a port (like 10001), use the configuration map variable. The port field will have this:
You can do similar things for IPs, though instead of a prefix you might have variables for each downstream endpoint, like "clientA_EHR_IP".

Once you've abstracted such variables out to the configuration map, the channels themselves can be exactly the same on both TEST and PROD.

There might be other things that change in your channels, like changes to JavaScript code somewhere. You can use code templates on both servers to accomplish the abstraction layer in that case. You can also do things like creating your own properties file or database table for each MC instance, and load that data in the global deploy script or something.
Step 1: JAVA CACHE...DID YOU CLEAR ...wait, ding dong the witch is dead?

Nicholas Rupley
Work: 949-237-6069
Always include what Mirth Connect version you're working with. Also include (if applicable) the code you're using and full stacktraces for errors (use CODE tags). Posting your entire channel is helpful as well; make sure to scrub any PHI/passwords first.

- How do I foo?
- You just bar.
Reply With Quote
Old 11-06-2015, 08:28 AM
david_ david_ is offline
What's HL7?
Join Date: Nov 2015
Posts: 5
david_ is on a distinguished road

That seems to work pretty well - will come back if there are any follow-up questions...
Reply With Quote

export, release management

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT -8. The time now is 11:28 AM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2020, vBulletin Solutions, Inc.
Mirth Corporation