feat: initial commit with 2 step functions
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"Comment": "Suspend ASG and reboot instances in the group",
|
||||
"StartAt": "SetVariables",
|
||||
"States": {
|
||||
"SetVariables": {
|
||||
"Type": "Pass",
|
||||
"Result": {
|
||||
"asgName": "acme-dev-web-asg"
|
||||
},
|
||||
"ResultPath": "$.vars",
|
||||
"Next": "SuspendProcesses"
|
||||
},
|
||||
"SuspendProcesses": {
|
||||
"Type": "Task",
|
||||
"Parameters": {
|
||||
"AutoScalingGroupName.$": "$.vars.asgName"
|
||||
},
|
||||
"Resource": "arn:aws:states:::aws-sdk:autoscaling:suspendProcesses",
|
||||
"ResultPath": "$.suspendResult",
|
||||
"Next": "DescribeAutoScalingGroups"
|
||||
},
|
||||
"DescribeAutoScalingGroups": {
|
||||
"Type": "Task",
|
||||
"Parameters": {
|
||||
"AutoScalingGroupNames.$": "States.Array($.vars.asgName)",
|
||||
"MaxRecords": 1
|
||||
},
|
||||
"Resource": "arn:aws:states:::aws-sdk:autoscaling:describeAutoScalingGroups",
|
||||
"Next": "RebootInstances",
|
||||
"ResultPath": "$.asgData"
|
||||
},
|
||||
"RebootInstances": {
|
||||
"Type": "Task",
|
||||
"Parameters": {
|
||||
"InstanceIds.$": "$.asgData.AutoScalingGroups[0].Instances[*].InstanceId"
|
||||
},
|
||||
"Resource": "arn:aws:states:::aws-sdk:ec2:rebootInstances",
|
||||
"ResultPath": "$.rebootResult",
|
||||
"Next": "ResumeProcesses"
|
||||
},
|
||||
"ResumeProcesses": {
|
||||
"Type": "Task",
|
||||
"Parameters": {
|
||||
"AutoScalingGroupName.$": "$.vars.asgName"
|
||||
},
|
||||
"Resource": "arn:aws:states:::aws-sdk:autoscaling:resumeProcesses",
|
||||
"End": true
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user