BigPicture - rpapub/WatchfulAnvil GitHub Wiki
Major Tasks for Initial Implementation of Custom Workflow Analyzer Rules in the DevOps Cycle
1️⃣ Plan (Requirements & Design)
- Define workflow validation goals (e.g., best practices, security, performance).
- Identify rules and counters needed for enforcement.
- Choose naming conventions and rule IDs.
- Determine Studio version compatibility (.NET Framework vs. .NET 6).
- Plan global vs. project-level deployment (DLL vs. NuGet package).
2️⃣ Develop (Implementation & Coding)
- Install UiPath.Activities.Api package.
- Create a .NET project for custom rules.
- Implement rules and counters using
IActivityModel
,IWorkflowModel
&IProjectModel
. - Ensure rule registration via
IRegisterAnalyzerConfiguration
. - Use
workflow.Root
to iterate through workflows. - Define error levels (Info, Warning, Error).
- Implement rule parameters (e.g., regex for naming conventions).
- Write logging to temp files for debugging.
3️⃣ Build (Compilation & Packaging)
- Compile DLL files (
dotnet build
). - Ensure compatibility with Studio's Workflow Analyzer.
- Package as a NuGet package (if needed for project-level deployment).
- Verify dependencies (
UiPath.Activities.Api
, .NET framework versions).
4️⃣ Test (Validation & Debugging)
- Run unit tests (xUnit/Moq for rule logic).
- Debug using log files in
Path.GetTempPath()
. - Validate rule enforcement in UiPath Studio.
- Check for performance issues in rule execution.
5️⃣ Release (Deployment & Integration)
- Deploy DLLs to Studio’s global rules folder:
%ProgramFiles%\UiPath\Studio\Rules\
%LocalAppData%\Programs\UiPath\Studio\Rules\
- Integrate custom rules into Studio settings.
6️⃣ Operate (Monitoring & Feedback)
- Collect feedback from developers using the rules.
- Monitor Studio’s error list panel for rule behavior.
- Update rules based on project needs.
7️⃣ Improve (Iteration & Optimization)
- Refine rules for performance & accuracy.
- Expand test coverage.
- Automate rule deployment in CI/CD pipelines (if using NuGet).
- Maintain compatibility with UiPath Studio updates.
This cycle ensures custom Workflow Analyzer Rules are effectively designed, implemented, and maintained within a DevOps workflow. 🚀