vro-action-extractor
v1.1.0
Published
CLI tool to extract Scriptable Actions from vRO Workflows (.xml), Packages (.package), and Folder structures (data).
Maintainers
Readme
vro-action-extractor
A Universal CLI tool to extract Scriptable Actions from vRealize Orchestrator (vRO) / VMware Aria Automation Orchestrator environments. It converts Workflows, Packages, and Folder structures into clean code files with automated documentation generation.
Features
- Polyglot Extraction: Extracts code for multiple runtimes:
- JavaScript / Node.js (
.js) - Python (
.py) - PowerShell / PowerCLI (
.ps1)
- JavaScript / Node.js (
- Smart Documentation: Generates language-specific documentation automatically:
- JSDoc for JavaScript (
/** ... */) - Docstrings for Python (
""" ... """) - Comment-Based Help for PowerShell (
<# ... #>)
- JSDoc for JavaScript (
- Universal Import: Supports multiple source formats:
- .package Files: Direct extraction from vRO exports (Zip).
- Directory Structures: Recursively scans folders (e.g., from a Git repo).
- Flat XMLs: Individual workflow files.
- Smart Naming: Uses display names for coherent file naming.
- Conflict Resolution: Handles duplicate action names automatically.
Installation
npm install -g vro-action-extractorUsage
The tool exposes the vro-extract command:
1. Extract from a Package File
vro-extract "path/to/my-package.package"Creates an Extracted_Actions folder with organized subfolders.
2. Extract from a Directory (e.g., Git Repo)
vro-extract "path/to/project_root"Scans for all valid data and .xml files recursively.
3. Extract from Single XML
vro-extract "path/to/workflow.xml" [output_directory]Example output
Extracted_Actions/
├── My_Workflow/
│ ├── Validate_Inputs.js (JavaScript)
│ └── Call_API.py (Python)
└── Another_Workflow/
└── Send_Notification.ps1 (PowerShell)License
MIT
