Deployment Installer Developer Overview - rpapub/WatchfulAnvil GitHub Wiki
π οΈ Watchful Anvil Installer β Developer Overview
The Watchful Anvil Installer is designed to:
- Support both admin and user installations (with or without UAC)
- Automatically detect the correct UiPath Studio rule target folders
- Install all Workflow Analyzer rule projects found in the repo output
- e.g.
CPRIMA.WorkflowAnalyzerRules.dll
,XYZ.WorkflowAnalyzerRules.dll
, etc.
- e.g.
π Installer Layout
installer/
βββ WatchfulAnvil_Installer_Admin.iss β Uses UAC, installs to system paths
βββ WatchfulAnvil_Installer_User.iss β No UAC, installs to user-accessible paths
βββ Shared_Defines.iss β App metadata (name, version, output paths)
βββ Shared_Code.iss β Shared detection logic, wizard flow
βββ Shared_Files_DeployWrite.iss β Real file copy logic (enabled by default)
βββ Shared_Files_DebugReadonly.iss β Optional dry-run config (no writes)
βοΈ Behavior
-
The installer shows a wizard UI with two options:
- Auto-detect appropriate rule folder(s) based on installed UiPath Studio versions
- Let user select a folder manually (via folder picker)
-
If the user selects a folder, that folder is used as the only target (receiving a
net6.0
DLL). -
If auto-detect is used, the installer checks for known UiPath versions and installs the appropriate DLL(s) to all matching folders:
%ProgramFiles%\UiPath\Studio\Rules\net8.0
%ProgramFiles%\UiPath\Studio\Rules\net6.0
%ProgramFiles%\UiPath\Studio\net461\Rules
- etc.
-
If no known folders are found, it falls back to:
%Public%\Documents\UiPath\Rules
(suitable for Studioβs βCustom Workflow Analyzer Rules locationβ setting)
π§ͺ Development Mode (Low Priority)
During early development, the installer can be switched to a debug-only mode that simulates installation without writing files.
Controlled via:
#define MODE_DEBUG
// or
#define MODE_DISTRIBUTION
And used to conditionally include either:
Shared_Files_DebugReadonly.iss
(simulated)Shared_Files_DeployWrite.iss
(real)