Skip to content

Commit dac287b

Browse files
author
AWS
committed
AWS Fault Injection Simulator Update: This release adds safety levers, a new mechanism to stop all running experiments and prevent new experiments from starting.
1 parent f803c6c commit dac287b

File tree

2 files changed

+158
-1
lines changed

2 files changed

+158
-1
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "AWS Fault Injection Simulator",
4+
"contributor": "",
5+
"description": "This release adds safety levers, a new mechanism to stop all running experiments and prevent new experiments from starting."
6+
}

services/fis/src/main/resources/codegen-resources/service-2.json

Lines changed: 152 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,20 @@
139139
],
140140
"documentation":"<p>Gets information about the specified experiment template.</p>"
141141
},
142+
"GetSafetyLever":{
143+
"name":"GetSafetyLever",
144+
"http":{
145+
"method":"GET",
146+
"requestUri":"/safetyLevers/{id}",
147+
"responseCode":200
148+
},
149+
"input":{"shape":"GetSafetyLeverRequest"},
150+
"output":{"shape":"GetSafetyLeverResponse"},
151+
"errors":[
152+
{"shape":"ResourceNotFoundException"}
153+
],
154+
"documentation":"<p> Gets information about the specified safety lever. </p>"
155+
},
142156
"GetTargetAccountConfiguration":{
143157
"name":"GetTargetAccountConfiguration",
144158
"http":{
@@ -351,6 +365,22 @@
351365
],
352366
"documentation":"<p>Updates the specified experiment template.</p>"
353367
},
368+
"UpdateSafetyLeverState":{
369+
"name":"UpdateSafetyLeverState",
370+
"http":{
371+
"method":"PATCH",
372+
"requestUri":"/safetyLevers/{id}/state",
373+
"responseCode":200
374+
},
375+
"input":{"shape":"UpdateSafetyLeverStateRequest"},
376+
"output":{"shape":"UpdateSafetyLeverStateResponse"},
377+
"errors":[
378+
{"shape":"ValidationException"},
379+
{"shape":"ConflictException"},
380+
{"shape":"ResourceNotFoundException"}
381+
],
382+
"documentation":"<p> Updates the specified safety lever state. </p>"
383+
},
354384
"UpdateTargetAccountConfiguration":{
355385
"name":"UpdateTargetAccountConfiguration",
356386
"http":{
@@ -1120,7 +1150,8 @@
11201150
"completed",
11211151
"stopping",
11221152
"stopped",
1123-
"failed"
1153+
"failed",
1154+
"cancelled"
11241155
]
11251156
},
11261157
"ExperimentStatusReason":{
@@ -1801,6 +1832,27 @@
18011832
}
18021833
}
18031834
},
1835+
"GetSafetyLeverRequest":{
1836+
"type":"structure",
1837+
"required":["id"],
1838+
"members":{
1839+
"id":{
1840+
"shape":"SafetyLeverId",
1841+
"documentation":"<p> The ID of the safety lever. </p>",
1842+
"location":"uri",
1843+
"locationName":"id"
1844+
}
1845+
}
1846+
},
1847+
"GetSafetyLeverResponse":{
1848+
"type":"structure",
1849+
"members":{
1850+
"safetyLever":{
1851+
"shape":"SafetyLever",
1852+
"documentation":"<p> Information about the safety lever. </p>"
1853+
}
1854+
}
1855+
},
18041856
"GetTargetAccountConfigurationRequest":{
18051857
"type":"structure",
18061858
"required":[
@@ -2214,6 +2266,59 @@
22142266
"min":1,
22152267
"pattern":"[\\s\\S]+"
22162268
},
2269+
"SafetyLever":{
2270+
"type":"structure",
2271+
"members":{
2272+
"id":{
2273+
"shape":"SafetyLeverId",
2274+
"documentation":"<p> The ID of the safety lever. </p>"
2275+
},
2276+
"arn":{
2277+
"shape":"ResourceArn",
2278+
"documentation":"<p> The Amazon Resource Name (ARN) of the safety lever. </p>"
2279+
},
2280+
"state":{
2281+
"shape":"SafetyLeverState",
2282+
"documentation":"<p> The state of the safety lever. </p>"
2283+
}
2284+
},
2285+
"documentation":"<p> Describes a safety lever. </p>"
2286+
},
2287+
"SafetyLeverId":{
2288+
"type":"string",
2289+
"max":64,
2290+
"pattern":"[\\S]+"
2291+
},
2292+
"SafetyLeverState":{
2293+
"type":"structure",
2294+
"members":{
2295+
"status":{
2296+
"shape":"SafetyLeverStatus",
2297+
"documentation":"<p> The state of the safety lever. </p>"
2298+
},
2299+
"reason":{
2300+
"shape":"SafetyLeverStatusReason",
2301+
"documentation":"<p> The reason for the state of the safety lever. </p>"
2302+
}
2303+
},
2304+
"documentation":"<p> Describes the state of the safety lever. </p>"
2305+
},
2306+
"SafetyLeverStatus":{
2307+
"type":"string",
2308+
"enum":[
2309+
"disengaged",
2310+
"engaged",
2311+
"engaging"
2312+
]
2313+
},
2314+
"SafetyLeverStatusInput":{
2315+
"type":"string",
2316+
"enum":[
2317+
"disengaged",
2318+
"engaged"
2319+
]
2320+
},
2321+
"SafetyLeverStatusReason":{"type":"string"},
22172322
"ServiceQuotaExceededException":{
22182323
"type":"structure",
22192324
"members":{
@@ -2685,6 +2790,52 @@
26852790
"key":{"shape":"ExperimentTemplateTargetName"},
26862791
"value":{"shape":"UpdateExperimentTemplateTargetInput"}
26872792
},
2793+
"UpdateSafetyLeverStateInput":{
2794+
"type":"structure",
2795+
"required":[
2796+
"status",
2797+
"reason"
2798+
],
2799+
"members":{
2800+
"status":{
2801+
"shape":"SafetyLeverStatusInput",
2802+
"documentation":"<p> The updated state of the safety lever. </p>"
2803+
},
2804+
"reason":{
2805+
"shape":"SafetyLeverStatusReason",
2806+
"documentation":"<p> The reason for updating the state of the safety lever. </p>"
2807+
}
2808+
},
2809+
"documentation":"<p> Specifies a state for a safety lever. </p>"
2810+
},
2811+
"UpdateSafetyLeverStateRequest":{
2812+
"type":"structure",
2813+
"required":[
2814+
"id",
2815+
"state"
2816+
],
2817+
"members":{
2818+
"id":{
2819+
"shape":"SafetyLeverId",
2820+
"documentation":"<p> The ID of the safety lever. </p>",
2821+
"location":"uri",
2822+
"locationName":"id"
2823+
},
2824+
"state":{
2825+
"shape":"UpdateSafetyLeverStateInput",
2826+
"documentation":"<p> The state of the safety lever. </p>"
2827+
}
2828+
}
2829+
},
2830+
"UpdateSafetyLeverStateResponse":{
2831+
"type":"structure",
2832+
"members":{
2833+
"safetyLever":{
2834+
"shape":"SafetyLever",
2835+
"documentation":"<p> Information about the safety lever. </p>"
2836+
}
2837+
}
2838+
},
26882839
"UpdateTargetAccountConfigurationRequest":{
26892840
"type":"structure",
26902841
"required":[

0 commit comments

Comments
 (0)