Job Automator & Automation Page – User Guide¶
Overview¶
The Automations module in Domain Services Ops allows users to manage, monitor, and control scheduled or condition-based workflows.
This module is integrated with the Job Automator Service, which continuously evaluates defined triggers and automatically executes jobs when conditions are met.
Automations provide a flexible way to orchestrate background processes across multiple host groups (e.g., Minion) within your environment.
Users and Roles¶
| User Role | Responsibilities |
|---|---|
| Software Developers | Develop custom triggers, define workflows, deploy Job Automator service, and configure automation definitions |
| System Managers / Administrators | Create, monitor, enable/disable, edit, and delete automations; manage triggers and execution status |
| Modelers / Operators | Define automation tasks, monitor execution, and validate results |
| Schedulers / Analysts | Configure schedules, maintain trigger intervals, and review automation performance |
System Setup¶
1. Prepare Job Automator¶
- Customize automation logic using the Job Automator Service template
- Define workflow tasks and trigger configurations
- Deploy to a Virtual Machine or target environment
2. Install and Configure¶
- Install the Job Automator Service
- Run it as a background process
- Ensure connectivity with Domain Services Ops
3. Backend Prerequisites¶
Ensure the following services are running:
- Authorization Server (JWT authentication)
- Jobs Automations Web API (automation CRUD, trigger discovery, job status)
Key requirements:
- Matching HostGroup configuration
- Proper JWT setup
- Valid database connections
4. Access the Module¶
- Log in to Domain Services Ops
- Open sidebar
- Select Automation
Data refreshes automatically every 30 seconds.
Automation Page Structure¶
- Toolbar – title and create button
- Automation Table – list of automations
- Column Tools – filter, sort, group, resize
- Action Menu – per-row actions
Automation Table Information¶
- Group
- Name
- Task Id
- Job Id
- Enabled
- Host Group
- Trigger Condition
- Is Met
- Last Requested Time
- Current Status
- Actions
Table Features¶
- Filter by column
- Sort data
- Group rows
- Select multiple automations
- Show/hide columns
- Resize columns (saved in browser)
Notes:
- Column headers can be dragged to the grouping area
- Dragging is used for grouping, NOT for rearranging column order
Key Status Fields¶
Color Indicators¶
The Automation page uses visual color indicators:
- Red entire row → automation is marked as corrupted
- Green in Trigger Condition → trigger is fulfilled
- Red in Trigger Condition → trigger is not fulfilled
- Green in Is Met → final condition is
True - Red in Is Met → final condition is
False
If an automation is corrupted, the Current Status column will display the reason instead of normal job status.
Enabled¶
- Yes → active
- No → inactive
Trigger Condition¶
- Logical expressions (AND / OR)
- Green → satisfied
- Red → not satisfied
Is Met¶
- True → condition satisfied
- False → not satisfied
- Not Applicable → disabled
Current Status¶
- Shows latest job status
- Corrupted automations are highlighted
Actions Menu¶
- Trigger Now – run immediately
- View – see full details
- Edit – modify configuration
- Delete – remove automation
- Enabled Toggle – activate/deactivate
Creating a New Automation¶
- Click Create a new Automations
- Fill Automation tab:
- name, group, taskId, hostGroup, priority, tag, isEnabled
- Add taskParameters (key-value)
- Go to Trigger tab
- Add at least one trigger
- Click Create
Notes:
- Some fields may be locked
- Automation must have at least one trigger
Cloning an Automation¶
- Select Clone an Automation
- Reuse configuration
- Adjust required fields
- Click Create
Managing Triggers¶
- Select trigger types
- Configure parameters
- Enable/disable triggers
- Delete triggers
Rules:
- Minimum one trigger required
- Logical condition built from active triggers
Viewing Automation Details¶
Displays:
- Task Id, Name, Group
- Priority, Host Group
- Status & Requested Time
- Task Parameters
- Trigger conditions and evaluation
Editing an Automation¶
- Select Edit
- Update fields
- Click Update
Enabling / Disabling¶
Single¶
- Use Enabled switch
Bulk¶
- Select rows → toggle Enabled Selected Automation
Manual Execution (Trigger Now)¶
- Select Trigger Now
- Review parameters
- Click Submit Job
System adds:
- utcNow
- triggerNow = true
Viewing Jobs¶
- Job Id appears as a link
- Redirects to job details page
Viewing Logs¶
Available logs:
- Latest Log
- Latest Met Log
Deleting Automation¶
- Click Delete
- Confirm action
⚠️ Cannot be restored after deletion
Monitoring Automations¶
| Status | Meaning |
|---|---|
| True | Condition met |
| Not Applicable | Not relevant |
| Waiting | Scheduled |
| Error | Failed execution |
| Disabled | Turned off |
Automation Execution Flow¶
- Service polling
- Condition evaluation
- Job creation
- Execution
- Status update in UI
Filtering & Sorting¶
Examples:
- Filter Group = BlueCast
- Filter Task Id = Mail
- Sort by Last Requested Time
Conditional Logic¶
- AND → all conditions required
- OR → at least one condition
Example:
Conditional: "trigger1 AND trigger2"
JSON Configuration Example¶
```json { "BlueCast": { "vdjtesttable2024a": { "TaskId": "Workflows.UpdateSysP", "JobId": "02f56cf2-c207-4e10-b4bd-xxxx", "IsEnabled": true, "HostGroup": "Minion", "TriggerCondition": { "Triggers": [ { "Id": "bluecastTriggerCon", "StartTimeUtc": "2024-09-28T06:28:38", "Interval": "01:00:00", "IsEnabled": true } ], "Conditional": "bluecastTriggerCon" } } } }