Skip to content
Contact Us

Plugin Guide

Complete guide to using the MirthSync Admin Console Plugin. This page covers the interface, all features, common workflows, and best practices.


The MirthSync Plugin appears as a panel in the Mirth Connect or OIE Administrator console. The interface uses dropdowns, checkboxes, and text fields to provide complete version control functionality without leaving the Admin Console.

MirthSync Plugin Main Interface

Key Benefits:

  • No terminal required - everything is point-and-click
  • Presets for one-click execution of common tasks
  • Real-time output with detailed feedback
  • Choose local or server execution

Configure which Mirth Connect or OIE server to interact with.

FieldDescriptionExample
Server URLMirth Connect/OIE API endpointhttps://localhost:8443
UsernameAdmin usernameadmin
PasswordAdmin password(stored in session)

These settings tell the plugin which server to pull configurations from or push configurations to.


Save frequently-used configurations for one-click execution.

Presets Dropdown

A preset stores:

  • Selected action (Pull, Push, Git command)
  • All flag settings
  • Git metadata (author, email)
  • Execution mode
ControlPurpose
SaveStore current configuration as a named preset
LoadSelect from dropdown to load saved configuration
DeleteRemove preset
  • “Dev Pull” - Pull from development with Skip Disabled Channels
  • “Prod Deploy” - Push to production with Deploy All + Force Push
  • “Daily Commit” - Git commit with standard metadata pre-filled
  • “View Changes” - Git diff to review modifications

Choose which operation to execute.

ActionPurpose
mirthsync pullExtract server configurations to files
mirthsync pushDeploy file configurations to server
mirthsync gitExecute Git commands

When you select mirthsync git, choose from these Git operations:

CommandPurpose
initInitialize repository
statusShow current state

Choose where commands execute.

ModeExecutes OnUse When
Run LocallyYour workstationPersonal repos, local development
Run on ServerMirth serverShared repos, team environments

How to choose:

  • Local: You have a Git repository on your workstation and want to work locally
  • Server: The repository lives on the server or you want centralized team access
  • Mixed: Use Local for development, Server for production deployments

Extract server configurations to files.

FlagEffect
Include Configuration MapExtract server-wide settings
Skip Disabled ChannelsIgnore disabled channels
Force OverwriteOverwrite files without prompt
Deploy After PullDeploy immediately (rarely used)
  1. Select mirthsync pull from Action dropdown
  2. Choose execution mode (Local or Server)
  3. Check desired flags (e.g., Skip Disabled Channels)
  4. Click Execute
  5. View output to confirm files were extracted

Deploy files to server.

FlagEffect
Deploy ChannelsDeploy channels after upload
Deploy AllDeploy all configurations
Force PushOverwrite without confirmation
Auto-Commit ChangesCommit before pushing
  1. Select mirthsync push from Action dropdown
  2. Choose execution mode
  3. Check deployment flags (Deploy Channels, Deploy All)
  4. Click Execute
  5. Monitor output for deployment status

Required for commit operations.

FieldExampleUsed In
Author NameJohn SmithGit commit history
Author Emailjohn@example.comGit commit attribution
Commit MessageUpdate ACK timeoutCommit description
Short summary (50 chars max)
Detailed explanation of changes and reasoning.
Reference ticket numbers if applicable.

Good example:

Fix HL7 ACK timeout issue
Increased ACK timeout from 5s to 15s to handle slow
downstream systems. Resolves issue #127.
  1. Select mirthsync git from Action dropdown
  2. Choose commit from Git command list
  3. Enter Author Name and Email
  4. Write Commit Message describing changes
  5. Click Execute
  6. Check output for commit confirmation

Displays real-time results from command execution.

Displays:

  • Command being executed
  • Real-time stdout/stderr
  • Success/failure status
  • Execution time
  • Git output (diffs, logs, status)

Actions:

  • Scroll to review output
  • Copy text
  • Open in New Window - Separate output viewer

Output Window


StepAction
1Git → init
2mirthsync pull
3Git → add
4Git → commit (with message “Initial commit”)

StepAction
1mirthsync pull (get latest from server)
2(Make changes in Admin Console)
3mirthsync pull (extract changes to files)
4Git → diff (review changes)
5Git → add (stage files)
6Git → commit (save changes)

StepAction
1Git → push (upload commits to remote)
2(On target environment) Git → pull (download commits)
3mirthsync push + Deploy All flag (deploy to server)

StepAction
1Git → branch (create feature branch)
2Git → checkout (switch to branch)
3(Work on feature, commit changes)
4Git → checkout main (switch back)
5Git → merge (combine changes)

  1. Select mirthsync git from Action dropdown
  2. Choose diff from Git command list
  3. Click Execute
  4. Review changes in output panel
  5. Optionally click Open in New Window for detailed review

Development:

Pull + Skip Disabled Channels

Get configurations but ignore channels you’re not working on.

Production Deploy:

Push + Deploy All (on Server)

Deploy all configurations and ensure they’re activated on the production server.

View Changes:

Git diff (Run Locally)

Review what you’ve modified before committing.

Safe Testing:

Pull (no Deploy After Pull flag)

Extract configurations to files but don’t deploy them automatically.


Use Git → remote to configure remote repositories:

Terminal window
# Add remote
remote add origin https://github.com/user/repo.git
# Verify
remote -v

Then use Git → push/pull in the plugin to sync with the remote.

TypeSetupAuth
HTTPSEasierUsername/password or token
SSHRequires key setupSSH key

Configure authentication outside the plugin at the system level:

For HTTPS:

  • Use personal access token instead of password
  • GitHub: Settings → Developer settings → Personal access tokens
  • Create token with repo scope

For SSH:

  • Generate SSH key: ssh-keygen -t rsa -b 4096
  • Add public key to GitHub: Settings → SSH Keys
  • Change remote URL using native git: git remote set-url origin git@github.com:user/repo.git

Local Execution:

  • Fast for personal work
  • Requires local Git repository
  • Good for development and testing

Server Execution:

  • Best for teams with shared repo on server
  • Centralized version control
  • Good for production deployments

Mixed Strategy:

  • Use Local for development work
  • Use Server for production deployments
  • Keeps development fast, production controlled