https://github.com/mergi72/dms-provider-installer
Installer and deployment tools for DMS Provider Bridge and Total Commander WFX Plugin.
https://github.com/mergi72/dms-provider-installer
alfresco deployment edocat fastapi installer nssm python total-commander wfx-plugin windows-service
Last synced: 2 days ago
JSON representation
Installer and deployment tools for DMS Provider Bridge and Total Commander WFX Plugin.
- Host: GitHub
- URL: https://github.com/mergi72/dms-provider-installer
- Owner: mergi72
- License: mit
- Created: 2026-06-05T16:34:14.000Z (19 days ago)
- Default Branch: main
- Last Pushed: 2026-06-19T20:00:58.000Z (5 days ago)
- Last Synced: 2026-06-19T20:21:54.306Z (5 days ago)
- Topics: alfresco, deployment, edocat, fastapi, installer, nssm, python, total-commander, wfx-plugin, windows-service
- Language: PowerShell
- Homepage: https://github.com/mergi72/dms-provider-bridge
- Size: 85.9 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dms-provider-installer
[](https://github.com/mergi72/dms-provider-installer/actions/workflows/ci.yml)
[](https://github.com/mergi72/dms-provider-installer)
[](https://github.com/mergi72/dms-provider-installer/releases/latest)
Current development branch: `develop`
Stable release branch: `main`
Orchestrator installer for the DMS Provider desktop stack.
It bundles and runs the dedicated installers in this order:
- Credential Broker
- Total Commander WFX plugin
- DMS Provider Bridge
The orchestrator runs in the current user context. The credential broker installer owns broker deployment, per-user scheduled task setup, startup, health wait, and broker config. The bridge installer owns its own elevation/admin flow, bridge executable deployment, service/task setup, NSSM usage, health checks, and machine/user config locations. This project owns only orchestration and Total Commander WFX installation/registration.
## What This Project Does
- Bundles `DmsProviderBridgeSetup.exe` (the public bridge bootstrapper).
- Bundles the Credential Broker runtime payload directly and runs its `install-broker.ps1` script.
- Installs `TcWfxPlugin.wfx64` into the orchestrator user install root under `tc-wfx`.
- Installs WFX `config.json` next to the plugin and under `tc-wfx\config`.
- Installs WFX localization from `localize.json` under `tc-wfx\config`.
- Runs the install flow in this order: Credential Broker script, Total Commander WFX install/registration, DMS Provider Bridge setup.
- Optionally verifies the bridge health endpoint.
- Registers the WFX plugin in Total Commander `wincmd.ini` under `[FileSystemPlugins64]`.
- Creates a `wincmd.ini` backup before modification.
## Install Flow
1. Credential Broker files are copied to `%LOCALAPPDATA%\Credential Broker` by Inno Setup.
2. The orchestrator runs `%LOCALAPPDATA%\Credential Broker\install-broker.ps1` and waits for that script to finish.
3. The orchestrator installs `TcWfxPlugin.wfx64`, `config.json`, and `localize.json` under its own `tc-wfx` directory.
4. The orchestrator registers the WFX plugin in Total Commander `wincmd.ini` when the file can be found.
5. The orchestrator starts the bundled `DmsProviderBridgeSetup.exe` and waits for that setup to finish.
6. The orchestrator optionally checks bridge health at `http://127.0.0.1:8765/health`.
The orchestrator does not create bridge config directories, does not set bridge config environment variables directly, and does not install the bridge service by itself.
## What This Project Does Not Own
- Bridge config files.
- `DMS_PROVIDER_MACHINE_CONFIG_DIR`.
- `DMS_PROVIDER_USER_CONFIG_DIR`.
- NSSM service setup.
- Credential Broker config files.
- Credential Broker scheduled task setup.
Those are intentionally handled by the dedicated component installers.
## Build
Build the orchestrator installer:
```powershell
powershell -ExecutionPolicy Bypass -File .\scripts\build-inno-installer.ps1 `
-BridgeRepoPath ..\dms-provider-bridge `
-CredentialBrokerRepoPath ..\credential-broker `
-TcPluginRepoPath ..\tc-wfx-plugin
```
The build script:
- picks the latest `DmsProviderBridgeSetup-*.exe` from the bridge repo unless `-BridgeSetupRelativePath` is provided;
- copies the prepared Credential Broker runtime payload from `credential-broker`;
- copies the WFX plugin, runtime config, and localization file from `tc-wfx-plugin`;
- compiles [installer.iss](installer.iss) with Inno Setup.
Output:
- `artifacts\installer\DmsProviderInstaller-v0.7.17-beta.exe`
Prepare payload only:
```powershell
powershell -ExecutionPolicy Bypass -File .\scripts\prepare-payload.ps1 `
-BridgeRepoPath ..\dms-provider-bridge `
-CredentialBrokerRepoPath ..\credential-broker `
-TcPluginRepoPath ..\tc-wfx-plugin
```
Payload layout:
- `payload\installers\DmsProviderBridgeSetup.exe`
- `payload\credential-broker\credential-broker.exe`
- `payload\credential-broker\install-broker.ps1`
- `payload\credential-broker\config\broker.json`
- `payload\tc-wfx\TcWfxPlugin.wfx64`
- `payload\tc-wfx\config.json`
- `payload\tc-wfx\localize.json`
## Manual Install
```powershell
powershell -ExecutionPolicy Bypass -File .\scripts\install-wrapper.ps1
```
Useful options:
```powershell
-BridgeSetupPath C:\path\DmsProviderBridgeSetup-v0.9.8-beta.exe
-BrokerInstallRoot C:\Users\\AppData\Local\Credential Broker
-WfxPluginPath C:\path\TcWfxPlugin.wfx64
-PluginConfigPath C:\path\config.json
-PluginLocalizePath C:\path\localize.json
-WinCmdIniPath C:\Users\\AppData\Roaming\GHISLER\wincmd.ini
-SkipBridge
-SkipBroker
-SkipHealthCheck
-DisableTcRegistration
-PauseOnError
```
Default health endpoint:
- Bridge: `http://127.0.0.1:8765/health`
## Uninstall
The orchestrator uninstall removes only its WFX files. Bridge and Credential Broker are uninstalled through their own entries in Windows Apps & Features.
Manual WFX cleanup:
```powershell
powershell -ExecutionPolicy Bypass -File .\scripts\uninstall.ps1
```