In this article:
Overview - Basic overview of the workflow engine
Workflow Designer - Introduction to the workflow designer
Workflow Activities - Basic introduction to the workflow activities with some examples
Requirements - The requirements for workflow execution
Further Information - Where to go for further information
Overview
The Adaptiva Workflow Engine is an incredibly powerful client & server automation and orchestration tool. It allows the Administrator to visually design simple or complex workflows that provide client management, process automation, security, compliance, health (see Client Health Product) and orchestration tasks.
The workflow engine underpins the entire Adaptiva suite of products. All products in the suite utilise the workflow engine in some form whether it's the processing of policies, the download of software, the execution of health checks or the powering on of devices. It was decided that the workflow engine was such a powerful tool that it should be made available for our customers to use and benefit from as well as the core products for which it was designed. The Workflow Designer comes shipped as part of the Adaptiva suite, irrespective of the product(s) owned.
Workflow Designer
The workflow designer is the tool used for creating workflows and can be located in the Misc folder on the Home Perspective.
Whilst some of the advanced workflow concepts benefit from a foundation knowledge of scripting/programming, the majority of the tool can be used without any development background and without having to write a single line of code. The functionality is all based around a drag-and-drop interface and a visual flow-chart style designer.
Workflow Activities
The application permits the creation of both Client and Server side workflows and comes shipped with over 160 different workflow activities that can enable almost any conceivable client management task. It also offers the ability to create custom tasks based on command shell, VBScript, Java and PowerShell which can be created once and then incorporated into any future workflow.
Workflow activities are dragged from the Workflow Designer Palette into the desired place within the workflow in the designer canvas. Input and Output properties can then be set for that activity which can a) define the behaviour, b) control what operation is being performed, c) pass data between activities and d) input static or runtime values required by the activity.
The list of built-in activities is extensive and can be used for performing a plethora of different tasks such as working with the file system, registry, WMI, SQL etc. A few of the most common workflow activities are shown below:
Command Shell | Execute any command-shell (cmd.exe) command including options to return the output and any errors. |
DiskInformation | Return information about the installed disk drives on a system, including used and available space. |
DNSResolver | Resolve a hostname to IP or IP to hostname |
Empty | Used as a placeholder for variables, as a container or for setting external node values |
EnvironmentVariable | Sets or retrieves the value of an environment variable |
FileOperations | Work with specific files. Can be used to perform read and write operations on files. |
FileParser | Search a file for a particular piece of text or regular expression (regex) |
FileSystemOperations | Work with the file system. Creating, deleting, moving, copying, renaming files or folders and retrieving information about a specific file or folder |
If-Else | Evaluating a logical condition and branching down two paths depending on the result |
IPAddressInfo | Retrieve IP address information from the local client including IP, Subnet, Subnet Mask, Gateway etc. |
IPSubnet | Retrieve IP subnet information from the local client |
IsProcessRunning | Check whether a specific process is running or not. Allows checking by process name or PID |
IsUserLoggedOn | Check whether there is a user logged in and if so can show which user is logged in. Can also be used as a wait to pause execution until the user is either logged in or not logged in |
Logger | Outputs data into the active workflow log. Useful for debugging or for providing easily-filtered output information |
Parallel execution | Run multiple activities simultaneously where synchronicity is not required |
Ping | Sends an ICMP Echo to the target device to indicate whether the machine is online or not |
PowerShell | Custom Activity used for performing any PowerShell commands desired. Accepts both input and output parameters and can be used to return data or simply to execute PowerShell tasks on the target device |
PowerStateManager | Control power operations including shutdown (forced optional), reboot, hibernate, standby and others |
ProcessTerminator | Terminate a specific process or process tree by ID or by name |
ServiceControl | Perform operations related to Windows Services |
SmsClient | Retrieve information from the installed SMS/ConfigMgr client agent and perform client actions |
SMTPMail | Send E-Mail using SMTP |
SQL results processor | Execute a SQL query against any SQL datasource and then process the results |
SQL statement | Execute a standalone SQL statement such as an INSERT, UPDATE or DELETE on any SQL datasource |
Switch-Case | Evaluate a condition and the proceed down one of multiple different paths depending on the result |
SystemTime | Retrieve the local time from the target device |
Try-catch exception | Trap errors and perform different tasks based on whether an error has occurred. Useful when wishing to return different values from the workflow when different error conditions are found |
While | Perform the same activity or set of activities multiple times |
WindowsEventLogsReader | Search the Windows event logs on the local machine |
WindowsRegistryWow64 | Perform operations related to the Windows registry. This includes operations such as reading a value, creating or deleting a key, creating, deleting or editing a value and enumerating all keys and values within a specific key |
Wmi | Perform operations related to the Windows Management Instrumentation (WMI). This includes executing a query, retrieving instances, executing a method etc. |
WmiConnection | Form a connection to a WMI namespace |
WmiInstance | Work with a specific WMI instance of a class |
Requirements
The workflows have only one requirement - the device on which the workflow must execute needs to have an Adaptiva client installed.
All execution logic is contained in the client and in the policies and workflows that are delivered to the client so the device must be running the Adaptiva Client in order to execute the workflow.
Further Information
For further information, please see the other resources in the Technical Reference Library or speak to a member of Adaptiva Support.
If you experience any issues or suspect there is a bug in any part of the workflow designer, please log a support ticket and a member of the Adaptiva support team will be touch as soon as possible.
Comments
0 comments
Please sign in to leave a comment.