About Nodes
Workflows are designed with nodes, where each node represents a distinct action or function essential for automating specific tasks.
Nodes in the context of Kubeark workflows are core components that represent distinct actions or operations within a workflow. These fundamental building blocks enable users to tailor their automation processes precisely.
Each node encapsulates specific logic and functionality necessary for executing a particular task. They vary widely in their capabilities, from performing data transformations to system integrations, conditional branching, or even facilitating manual approvals. Effectively, nodes are the building blocks of a workflow, pieced together to create a comprehensive, automated process.
Once familiarized with the concept of nodes as the fundamental building blocks within a workflow, we can explore the various top-level nodes available in the system. These top-level nodes serve as primary categories, each encapsulating a unique function or capability that you can utilize in constructing your workflows.
From 'Actions' that serve as the doers of the workflow, performing a wide range of tasks, to 'Approve' nodes that pause the workflow for human input, each node is designed to streamline and automate processes effectively. Other top-level nodes include 'Workflow' for incorporating existing workflows, 'Define Variables' for setting up reusable elements, and control structures such as 'For Loop', 'While Loop', and 'Branch' that dictate the flow of execution based on logic and conditions. Additionally, utility nodes like 'Sleep' and 'Terminate' provide you with mechanisms to delay execution or end a workflow, respectively. Understanding and leveraging these top-level nodes will be key in building robust, efficient, and maintainable workflows.
- Action
- Executes predefined or user-saved tasks.
- Expands to show 'Default Actions' for typical use cases and 'Custom Actions' for user-configured tasks.
- Approve
- Introduces a manual intervention point in the workflow.
- Pauses the workflow until approval is granted, enabling conditional progression.
- Workflow
- Integrates another workflow within the current one.
- Facilitates modularity and the reuse of established workflows.
- Define Variables
- Sets up and initializes variables for use throughout the workflow.
- Essential for defining and managing data that is used by multiple nodes.
- For Loop
- Implements iteration over a collection, array, or range of numbers.
- Enables performing repetitive tasks on sets of data.
- Function
- Defines a reusable block of logic or computation.
- Can accept parameters and return outputs for use in the workflow.
- Branch
- Directs the workflow along different paths based on conditional logic.
- Similar to 'if-else' statements in programming, allowing for decision-based branching.
- Sleep
- Delays the workflow for a specified amount of time.
- Useful for timing actions or waiting for external events.
- Terminate
- Immediately ends the workflow execution.
- Can be configured to terminate on certain conditions or errors.
- While Loop
- Continuously executes a set of nodes while a specified condition is true.
- Ideal for tasks where the number of iterations is not predetermined.
The Expression Builder within Kubeark is a simple, yet sophisticated feature designed to enhance the customization and flexibility of workflows, allowing users to craft complex logic and manipulate data within their workflows. This offers the ability to incorporate custom instructions or scripts directly in YAML format.
This capability significantly expands the utility and adaptability of the Expression Builder, offering users a familiar and widely-used syntax to define complex logic and automation tasks within their workflows. YAML, known for its human-readable structure, makes it easier for users to craft, read, and share their custom scripts, ensuring that automation logic is both accessible and maintainable.
Located within the arguments panel of specific nodes, the Expression Builder helps creating dynamic, context-aware actions in workflows, bridging the gap between generic automation capabilities and bespoke business requirements.
By connecting the nodes together, users define the sequence and dependencies of the tasks within the workflow. This visual representation provides a clear and comprehensive overview of the entire workflow, enabling users to easily comprehend the flow of operations and identify any potential bottlenecks or areas for optimization.
The workflow editor allows users to configure the properties and parameters of each node, tailoring them to suit specific requirements. This customization may involve defining input and output variables, setting conditional statements, specifying timeouts, or configuring error handling mechanisms.