Skip to content

Commit 6740dca

Browse files
author
AWS
committed
AWS Systems Manager for SAP Update: Added support for application-aware start/stop of SAP applications running on EC2 instances, with SSM for SAP
1 parent 9dfab96 commit 6740dca

File tree

3 files changed

+203
-1
lines changed

3 files changed

+203
-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 Systems Manager for SAP",
4+
"contributor": "",
5+
"description": "Added support for application-aware start/stop of SAP applications running on EC2 instances, with SSM for SAP"
6+
}

services/ssmsap/src/main/resources/codegen-resources/paginators-1.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@
1818
"limit_key": "MaxResults",
1919
"result_key": "Databases"
2020
},
21+
"ListOperationEvents": {
22+
"input_token": "NextToken",
23+
"output_token": "NextToken",
24+
"limit_key": "MaxResults",
25+
"result_key": "OperationEvents"
26+
},
2127
"ListOperations": {
2228
"input_token": "NextToken",
2329
"output_token": "NextToken",

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

Lines changed: 191 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,21 @@
171171
],
172172
"documentation":"<p>Lists the SAP HANA databases of an application registered with AWS Systems Manager for SAP.</p>"
173173
},
174+
"ListOperationEvents":{
175+
"name":"ListOperationEvents",
176+
"http":{
177+
"method":"POST",
178+
"requestUri":"/list-operation-events",
179+
"responseCode":200
180+
},
181+
"input":{"shape":"ListOperationEventsInput"},
182+
"output":{"shape":"ListOperationEventsOutput"},
183+
"errors":[
184+
{"shape":"ValidationException"},
185+
{"shape":"InternalServerException"}
186+
],
187+
"documentation":"<p>Returns a list of operations events.</p> <p>Available parameters include <code>OperationID</code>, as well as optional parameters <code>MaxResults</code>, <code>NextToken</code>, and <code>Filters</code>.</p>"
188+
},
174189
"ListOperations":{
175190
"name":"ListOperations",
176191
"http":{
@@ -235,6 +250,23 @@
235250
],
236251
"documentation":"<p>Register an SAP application with AWS Systems Manager for SAP. You must meet the following requirements before registering. </p> <p>The SAP application you want to register with AWS Systems Manager for SAP is running on Amazon EC2.</p> <p>AWS Systems Manager Agent must be setup on an Amazon EC2 instance along with the required IAM permissions.</p> <p>Amazon EC2 instance(s) must have access to the secrets created in AWS Secrets Manager to manage SAP applications and components.</p>"
237252
},
253+
"StartApplication":{
254+
"name":"StartApplication",
255+
"http":{
256+
"method":"POST",
257+
"requestUri":"/start-application",
258+
"responseCode":200
259+
},
260+
"input":{"shape":"StartApplicationInput"},
261+
"output":{"shape":"StartApplicationOutput"},
262+
"errors":[
263+
{"shape":"ResourceNotFoundException"},
264+
{"shape":"ValidationException"},
265+
{"shape":"ConflictException"},
266+
{"shape":"InternalServerException"}
267+
],
268+
"documentation":"<p>Request is an operation which starts an application.</p> <p>Parameter <code>ApplicationId</code> is required.</p>"
269+
},
238270
"StartApplicationRefresh":{
239271
"name":"StartApplicationRefresh",
240272
"http":{
@@ -253,6 +285,23 @@
253285
],
254286
"documentation":"<p>Refreshes a registered application.</p>"
255287
},
288+
"StopApplication":{
289+
"name":"StopApplication",
290+
"http":{
291+
"method":"POST",
292+
"requestUri":"/stop-application",
293+
"responseCode":200
294+
},
295+
"input":{"shape":"StopApplicationInput"},
296+
"output":{"shape":"StopApplicationOutput"},
297+
"errors":[
298+
{"shape":"ResourceNotFoundException"},
299+
{"shape":"ValidationException"},
300+
{"shape":"ConflictException"},
301+
{"shape":"InternalServerException"}
302+
],
303+
"documentation":"<p>Request is an operation to stop an application.</p> <p>Parameter <code>ApplicationId</code> is required. Parameters <code>StopConnectedEntity</code> and <code>IncludeEc2InstanceShutdown</code> are optional.</p>"
304+
},
256305
"TagResource":{
257306
"name":"TagResource",
258307
"http":{
@@ -681,6 +730,10 @@
681730
},
682731
"exception":true
683732
},
733+
"ConnectedEntityType":{
734+
"type":"string",
735+
"enum":["DBMS"]
736+
},
684737
"CredentialType":{
685738
"type":"string",
686739
"enum":["ADMIN"]
@@ -1148,7 +1201,7 @@
11481201
},
11491202
"MaxResults":{
11501203
"shape":"MaxResults",
1151-
"documentation":"<p>The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value. </p>"
1204+
"documentation":"<p>The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.</p>"
11521205
},
11531206
"Filters":{
11541207
"shape":"FilterList",
@@ -1233,6 +1286,41 @@
12331286
}
12341287
}
12351288
},
1289+
"ListOperationEventsInput":{
1290+
"type":"structure",
1291+
"required":["OperationId"],
1292+
"members":{
1293+
"OperationId":{
1294+
"shape":"OperationId",
1295+
"documentation":"<p>The ID of the operation.</p>"
1296+
},
1297+
"MaxResults":{
1298+
"shape":"MaxResults",
1299+
"documentation":"<p>The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.</p> <p>If you do not specify a value for <code>MaxResults</code>, the request returns 50 items per page by default.</p>"
1300+
},
1301+
"NextToken":{
1302+
"shape":"NextToken",
1303+
"documentation":"<p>The token to use to retrieve the next page of results. This value is null when there are no more results to return.</p>"
1304+
},
1305+
"Filters":{
1306+
"shape":"FilterList",
1307+
"documentation":"<p>Optionally specify filters to narrow the returned operation event items.</p> <p>Valid filter names include <code>status</code>, <code>resourceID</code>, and <code>resourceType</code>. The valid operator for all three filters is <code>Equals</code>.</p>"
1308+
}
1309+
}
1310+
},
1311+
"ListOperationEventsOutput":{
1312+
"type":"structure",
1313+
"members":{
1314+
"OperationEvents":{
1315+
"shape":"OperationEventList",
1316+
"documentation":"<p>A returned list of operation events that meet the filter criteria.</p>"
1317+
},
1318+
"NextToken":{
1319+
"shape":"NextToken",
1320+
"documentation":"<p>The token to use to retrieve the next page of results. This value is null when there are no more results to return.</p>"
1321+
}
1322+
}
1323+
},
12361324
"ListOperationsInput":{
12371325
"type":"structure",
12381326
"required":["ApplicationId"],
@@ -1349,6 +1437,48 @@
13491437
},
13501438
"documentation":"<p>The operations performed by AWS Systems Manager for SAP.</p>"
13511439
},
1440+
"OperationEvent":{
1441+
"type":"structure",
1442+
"members":{
1443+
"Description":{
1444+
"shape":"String",
1445+
"documentation":"<p>A description of the operation event. For example, \"Stop the EC2 instance i-abcdefgh987654321\".</p>"
1446+
},
1447+
"Resource":{
1448+
"shape":"Resource",
1449+
"documentation":"<p>The resource involved in the operations event.</p> <p>Contains <code>ResourceArn</code> ARN and <code>ResourceType</code>.</p>"
1450+
},
1451+
"Status":{
1452+
"shape":"OperationEventStatus",
1453+
"documentation":"<p>The status of the operation event. The possible statuses are: <code>IN_PROGRESS</code>, <code>COMPLETED</code>, and <code>FAILED</code>.</p>"
1454+
},
1455+
"StatusMessage":{
1456+
"shape":"String",
1457+
"documentation":"<p>The status message relating to a specific operation event.</p>"
1458+
},
1459+
"Timestamp":{
1460+
"shape":"Timestamp",
1461+
"documentation":"<p>The timestamp of the specified operation event.</p>"
1462+
}
1463+
},
1464+
"documentation":"<p>An operation event returns details for an operation, including key milestones which can be used to monitor and track operations in progress.</p> <p>Operation events contain:</p> <ul> <li> <p>Description string</p> </li> <li> <p>Resource, including its ARN and type</p> </li> <li> <p>Status</p> </li> <li> <p>StatusMessage string</p> </li> <li> <p>TimeStamp</p> </li> </ul> <p>Operation event examples include StartApplication or StopApplication.</p>"
1465+
},
1466+
"OperationEventList":{
1467+
"type":"list",
1468+
"member":{"shape":"OperationEvent"}
1469+
},
1470+
"OperationEventResourceType":{
1471+
"type":"string",
1472+
"pattern":"[\\w]+::[\\w]+::[\\w]+"
1473+
},
1474+
"OperationEventStatus":{
1475+
"type":"string",
1476+
"enum":[
1477+
"IN_PROGRESS",
1478+
"COMPLETED",
1479+
"FAILED"
1480+
]
1481+
},
13521482
"OperationId":{
13531483
"type":"string",
13541484
"pattern":"[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?"
@@ -1511,6 +1641,20 @@
15111641
},
15121642
"documentation":"<p>Details of the SAP HANA system replication for the instance.</p>"
15131643
},
1644+
"Resource":{
1645+
"type":"structure",
1646+
"members":{
1647+
"ResourceArn":{
1648+
"shape":"Arn",
1649+
"documentation":"<p>The Amazon Resource Name (ARN) of the source resource.</p> <p>Example of <code>ResourceArn</code>: \"<code>arn:aws:ec2:us-east-1:111111111111:instance/i-abcdefgh987654321</code>\"</p>"
1650+
},
1651+
"ResourceType":{
1652+
"shape":"OperationEventResourceType",
1653+
"documentation":"<p>The resource type.</p> <p>Example of <code>ResourceType</code>: \"<code>AWS::SystemsManagerSAP::Component</code>\" or \"<code>AWS::EC2::Instance</code>\".</p>"
1654+
}
1655+
},
1656+
"documentation":"<p>The resource contains a <code>ResourceArn</code> and the <code>ResourceType</code>.</p>"
1657+
},
15141658
"ResourceId":{
15151659
"type":"string",
15161660
"max":64,
@@ -1551,6 +1695,25 @@
15511695
"type":"string",
15521696
"pattern":"arn:(.+:){2,4}.+$|^arn:(.+:){1,3}.+\\/.+"
15531697
},
1698+
"StartApplicationInput":{
1699+
"type":"structure",
1700+
"required":["ApplicationId"],
1701+
"members":{
1702+
"ApplicationId":{
1703+
"shape":"ApplicationId",
1704+
"documentation":"<p>The ID of the application.</p>"
1705+
}
1706+
}
1707+
},
1708+
"StartApplicationOutput":{
1709+
"type":"structure",
1710+
"members":{
1711+
"OperationId":{
1712+
"shape":"OperationId",
1713+
"documentation":"<p>The ID of the operation.</p>"
1714+
}
1715+
}
1716+
},
15541717
"StartApplicationRefreshInput":{
15551718
"type":"structure",
15561719
"required":["ApplicationId"],
@@ -1570,6 +1733,33 @@
15701733
}
15711734
}
15721735
},
1736+
"StopApplicationInput":{
1737+
"type":"structure",
1738+
"required":["ApplicationId"],
1739+
"members":{
1740+
"ApplicationId":{
1741+
"shape":"ApplicationId",
1742+
"documentation":"<p>The ID of the application.</p>"
1743+
},
1744+
"StopConnectedEntity":{
1745+
"shape":"ConnectedEntityType",
1746+
"documentation":"<p>Specify the <code>ConnectedEntityType</code>. Accepted type is <code>DBMS</code>.</p> <p>If this parameter is included, the connected DBMS (Database Management System) will be stopped.</p>"
1747+
},
1748+
"IncludeEc2InstanceShutdown":{
1749+
"shape":"Boolean",
1750+
"documentation":"<p>Boolean. If included and if set to <code>True</code>, the StopApplication operation will shut down the associated Amazon EC2 instance in addition to the application.</p>"
1751+
}
1752+
}
1753+
},
1754+
"StopApplicationOutput":{
1755+
"type":"structure",
1756+
"members":{
1757+
"OperationId":{
1758+
"shape":"OperationId",
1759+
"documentation":"<p>The ID of the operation.</p>"
1760+
}
1761+
}
1762+
},
15731763
"String":{"type":"string"},
15741764
"TagKey":{
15751765
"type":"string",

0 commit comments

Comments
 (0)