A step is a building block of a blueprint. Each step performs a distinct action, such as launching a server, installing an application, rebooting a server, and so on. You can use any blueprint or script in your library as a step for building a blueprint. You can also use a variety of built-in steps to perform common actions.
- Cloud Steps
- Utility Steps
EC2 Generic Step
The EC2 Generic Step lets you specify an EC2 API whose output can then be used as input for steps in a blueprint. This enables you to pre-configure processes in Smart Tools that perform automated IT tasks based on data passed from your EC2 accounts via API.
For example, you may wish to chain outputs from the DescribeVolumes API to a configuration step that requires as input a specific attribute value, such as volumeID, size, snapshotID, etc.
For more information about using this step in a blueprint, see Configure the EC2 Generic Step.
The Server step launches a server in your target resource location. Typically, this step is used as a reference point for subsequent steps in your blueprint. For example, you might include scripts that rename and reboot the server or create a domain controller. The steps for these scripts would point to the Server step as the target for execution.
The Mount Volume step lets you to create a new empty volume on a server or create a new volume from a snapshot that you specify.
The Create Snapshot step enables you to create a snapshot of a server that is launched from the blueprint. When the snapshot is created, all disks on the machine are included.
The Terminate Machine step removes servers that have been scaled down or decommissioned. For more information about using this step, see Manage teardown.
The Manual Step allows you to specify custom inputs that can be used in subsequent steps in your blueprint. You can supply values for the keys you define when you deploy the blueprint.
The Conditional Step enables you to insert conditions into your blueprint, and specify actions to take when those conditions are met. For example, you can use blueprint inputs that you supply or the output of another step to trigger actions such as sending a notification or approval, running a script, or executing another blueprint.
The conditions and actions you specify are grouped into paths (for example, Path A, Path B, and so on). All conditions in a path must be satisfied for the specified action to occur. You can configure multiple paths to ensure alternative actions are taken if the conditions in a particular path are not met. If the conditions in any path are not met, no actions in the step occur.
For an example of how to configure this step, see Configure the Conditional Step.
The Monitor step enables you to preconfigure metrics and alerts when you design your blueprint. You can modify these metrics and alerts after you deploy the blueprint, using Smart Tools's Manage module.
Alert / Notify / Approve
The Alert/Notify/Approve step lets you add a notification and approval mechanism to your blueprint deployment process. You can use this step to notify specified recipients based on trigger conditions that you define, and to require approval before a process or sub-process can run. By adding Alert/Notify/Approve steps to your blueprint, you can keep key individuals informed on the status of a deployment and you can build policy controls that help you manage resources and contain costs.
You can configure the Alert/Notify/Approve step for a wide-range of use cases, including:
- Require Approval Before Process Runs: Use the Alert/Notify/Approve step to require approval from specified recipients before a process can run.
- Notify on Multiple Conditions: Define multiple trigger conditions for an alert, then set the alert to notify on Any or All conditions—if ALL conditions are met, a notification is sent; or, if ANY conditions are met, a notification is sent.
- Notify on Inverse Conditions: Configure alerts to notify based on inverse conditions (e.g. "instancecount" equals 1 ; or "instancecount" not equal to 1)
The Reboot step enables you to reboot a target server. When using this step, you can set the "Runs On" tab to point to a Server step in your blueprint.
The Wait step enables you to pause blueprint execution for a predefined period. For example, you can use this step to allow additional time for a server reboot to complete after installing an application.