⚙️ GermainUX can execute local programs—also referred to as RPA Bots—on servers running the GermainUX Engine. Programs can be written in any supported language, including Python, Shell, PowerShell, Java, or Perl.
🚀 Execution Methods
Programs can be executed:
|
Method |
|---|
|
Manually from the GermainUX Workspace |
|
Automatically on a schedule |
|
Automatically when an SLA condition is met |
🔧 Configure a Local Program
Go to GermainUX Workspace -> Left Menu → Setting -->Automation -> Local Program.
Select an existing action to edit it, or click + to launch the Local Program wizard.
📖 Configuration Reference
|
Workspace field |
Configuration key |
Description |
Possible values |
Default |
|---|---|---|---|---|
|
Name |
|
Unique name for the action. |
String |
— |
|
Working Directory |
|
Directory from which the program or script runs. Context variables are supported. |
String |
— |
|
Program |
|
Program or command to execute, such as |
String |
— |
|
Arguments |
|
Arguments passed to the program. Context variables are supported. |
String or list of strings |
— |
|
Quote Arguments |
|
Encloses arguments containing spaces or quotation marks in quotes. |
Boolean |
— |
|
Script |
|
Name of a script defined under Automation -> Script. |
String |
— |
|
Run on Schedule |
|
Enables scheduled execution and allows a cron expression to be defined. |
Boolean |
— |
|
Triggered by SLAs |
— |
Lists the SLAs configured to trigger this action. |
Collection of SLAs |
— |
|
Timeout |
|
Maximum execution time, in seconds. |
Integer |
— |
|
Exit Value |
|
Exit code indicating successful execution. |
Integer |
— |
|
Logging Enabled |
|
Enables execution logging. |
Boolean |
— |
|
Notify on Success |
|
Generates a notification when execution succeeds. |
Boolean |
— |
|
Notify on Failure |
|
Generates a notification when execution fails. |
Boolean |
— |
|
Execution Count |
|
Maximum number of executions allowed during the configured execution interval. |
Integer |
— |
|
Execution Interval |
|
Period during which the execution-count limit applies. |
|
— |
|
References |
|
Advanced configuration containing credentials, configuration objects, or custom values that the action can reference. |
Reference collection |
— |
🔗 References
References allow an action to securely access credentials, configuration entries, or custom values.
A reference can point to an existing GermainUX configuration item:
|
Property |
Description |
Example |
|---|---|---|
|
|
Unique name used to reference the item. |
|
|
|
GermainUX configuration collection key. |
|
|
|
Name of the item within the collection. |
|
You can then access its properties using an expression such as:
${Credentials.username}
A reference may also contain a direct key-value pair. Avoid storing passwords or other secrets as plain-text values; use a configured credential whenever possible.
📌 Example: Restart a Windows Service
This example creates a local action that restarts a Windows service when a memory-usage SLA is breached.
1️⃣ Step 1: Create the Local Program
-
Go to GermainUX Workspace -> Automation -> Local Program.
-
Click + to open the Local Program wizard.
-
Enter the following name:
Windows-Service-Restart-Local
-
Click Next.
2️⃣ Step 2: Configure the Command
Enter:
|
Field |
Value |
|---|---|
|
Program |
|
|
Argument |
|
Replace #ServiceName# with the target service name or an appropriate reference.
Click Next.
3️⃣ Step 3: Configure the Schedule
Because this action will be triggered by an SLA breach, do not configure a schedule. Click Next.
4️⃣ Step 4: Select the SLA
Select the Memory Usage SLA that should trigger the service restart, and then click Finish.
GermainUX will now execute the action on the GermainUX Engine server whenever the selected memory-usage SLA is breached.
🌍 Remote Execution
For more advanced scenarios, the program can execute a command against a remote host. For example, PowerShell can target another server by using the -ComputerName argument.
When configuring remediation actions:
|
Recommendation |
|---|
|
Use an SLA scoped to the intended server. |
|
Use stored credentials instead of embedding passwords in commands. |
|
Apply execution limits to prevent repeated restarts. |
|
Configure success and failure notifications. |
|
Test the action in a non-production environment before enabling automatic execution. |
Component: Engine
Feature Availability: 8.6.0 or later