Nexa-Flow Installer: Automated On-Prem Deployment & Update Tool
A WPF desktop installer that turns a multi-service Nexa-Flow stack (backend API, frontend, MongoDB, PostgreSQL, Seq, nginx) into a one-click on-prem deployment for customer sites. It provisions every dependency as a native Windows Service, generates production secrets, migrates configuration forward across version upgrades, and offers a full clean-uninstall path — eliminating what used to be a manual, error-prone multi-step server setup.
DevOps / Deployment Tooling Engineer
- Windows Service Orchestration – Automated install, start/stop and clean removal of MongoDB, PostgreSQL, the Nexa-Flow backend and an nginx reverse-proxy service, using WMI plus sc.exe/ServiceController with retry logic around SCM race conditions (errors 1072/1073).
- Secrets & Config Generation – Generated production secrets (admin credentials, JWT signing key) with secure auto-fallback, and wrote a production appsettings.json per install, migrating existing secrets forward on every update.
- MSI-Driven Dependency Install – Ran bundled MSI installers (Seq) via P/Invoke with live progress callbacks surfaced in the UI.
- Version-Aware Update Flow – Built an Install / Update / Delete workflow that lists available release packages, extracts the selected version, and swaps backend/frontend binaries in place.
- Runtime Frontend Patching – Solved hardcoded API URLs in the built frontend by injecting a runtime JS patch, so a single frontend build works across every customer environment.
- Embedded PowerShell Automation – Hosted the PowerShell engine in-process to run service-management commands without shelling out, with live log streaming into the WPF UI via Console.SetOut redirection.
Features
- One-click on-prem install/update/uninstall for the full Nexa-Flow stack
- Automated Windows Service provisioning for MongoDB, PostgreSQL, backend API and nginx
- Secure secrets generation with forward migration across version upgrades
- MSI-based dependency installation with live progress feedback
- Runtime API-URL patching for environment-portable frontend builds
- In-process PowerShell automation with live log streaming
Technologies
- .NET Framework 4.7.2 (WPF)
- C#
- WMI / System.Management
- ServiceController + sc.exe orchestration
- MSI installer P/Invoke
- Embedded PowerShell (System.Management.Automation)
- nginx reverse proxy provisioning