What is Action Node?
Action node performs an action automatically on a specific set of AWS resources fetched from the previous node. Each action in this node is unique to an AWS service and is dependent on the inputs defined in the preceding node as well as current specifications.
Working with Action Nodes
To define an Action node in a Workflow, do the following:
- Go to the workflow editor, when you create a new workflow or select an existing template.
- If you create a new workflow:
- Click the Action icon from the Tools section.
- Double click the Action node to access the parameters input window.
- If you select an existing template:
- Double click the existing Action node to access the parameters input window.
- Select the service you want to act on.
- Select the action you want to take.
- Click Save Node.
What happens in Action Node?
Action node inherits the properties of the previous node and takes timely action on filtered resources as per the user's command. The input to Action node is typically from Resource node, filter node, and/or User Approval node.
Let's look at each input scenario using an use case example of taking snapshots of all or specific EC2 volumes belonging to Oregon region, and check out how Action node behaves. Refer Additional Parameters that explaining scenarios that use the Additional Parameters section.
Scenario 1: If the preceding node is a Resource node
If the preceding node is a Resource node, the Action node will:
- Fetch all the EC2 Volumes' from the Resource node.
- Create snapshot of all the filtered volumes using the Create Snapshot action command.
The sequence of steps essential to carry out this use case is as follows:
The Create Snapshot action will run on all the EC2 volumes belonging to the Oregon region.
Scenario 2: If you add a filter node between Resource node and Action node
If you add a filter node between Resource node and Action node, the Action node will run actions on the resources filtered by the Filter Node.
Let's consider the same use case of creating snapshots. However, you want snapshots of only those EC2 volumes that belong to Tags User.Stack: Testing. You can use Tag filter prior to Action node and use the action Create Snapshot only for those volumes. The sequence of steps is as follows:
In this node, the Create Snapshot action will be performed on EC2 volumes belonging to Oregon region with Tags User.Stack: Testing.
Scenario 3: If the preceding node is a User Approval node
If the preceding node is a User Approval node, the Action node executes and takes appropriate action only upon receiving "Approved" command from the approver via an email. If the approver "Disapproves" the command, the action goes void.
Considering the same use case -- to take snapshots of EC2 volumes that belong to Tags User.Stack: Testing. Now, if you want to take snapshots only upon approval from the CloudOps Lead engineer, use the User Approval Node to take approval before taking any action on the resources.
The action Create Snapshot will run on EC2 volumes belonging to Oregon region and that have Tags User.Stack: Testing only when the Approve command comes from the email address CloudOpsLead@TotalCloud.io.
More scenarios on how to use the Action node are explained here.