Skip to content

Commit 0a4f5fd

Browse files
author
awstools
committed
feat(client-ssm): This release includes support for applying a CloudWatch alarm to Systems Manager capabilities like Automation, Run Command, State Manager, and Maintenance Windows.
1 parent b1aac0b commit 0a4f5fd

File tree

7 files changed

+775
-215
lines changed

7 files changed

+775
-215
lines changed

clients/client-ssm/src/commands/DescribeParametersCommand.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,12 @@ import {
1212
SerdeContext as __SerdeContext,
1313
} from "@aws-sdk/types";
1414

15-
import { DescribeParametersRequest, DescribeParametersRequestFilterSensitiveLog } from "../models/models_0";
16-
import { DescribeParametersResult, DescribeParametersResultFilterSensitiveLog } from "../models/models_1";
15+
import {
16+
DescribeParametersRequest,
17+
DescribeParametersRequestFilterSensitiveLog,
18+
DescribeParametersResult,
19+
DescribeParametersResultFilterSensitiveLog,
20+
} from "../models/models_1";
1721
import {
1822
deserializeAws_json1_1DescribeParametersCommand,
1923
serializeAws_json1_1DescribeParametersCommand,

clients/client-ssm/src/commands/UpdateDocumentDefaultVersionCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import {
1717
UpdateDocumentDefaultVersionRequestFilterSensitiveLog,
1818
UpdateDocumentDefaultVersionResult,
1919
UpdateDocumentDefaultVersionResultFilterSensitiveLog,
20-
} from "../models/models_1";
20+
} from "../models/models_2";
2121
import {
2222
deserializeAws_json1_1UpdateDocumentDefaultVersionCommand,
2323
serializeAws_json1_1UpdateDocumentDefaultVersionCommand,

clients/client-ssm/src/models/models_0.ts

Lines changed: 122 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,51 @@ export class TooManyUpdates extends __BaseException {
266266
}
267267
}
268268

269+
/**
270+
* <p>A CloudWatch alarm you apply to an automation or command.</p>
271+
*/
272+
export interface Alarm {
273+
/**
274+
* <p>The name of your CloudWatch alarm.</p>
275+
*/
276+
Name: string | undefined;
277+
}
278+
279+
/**
280+
* <p>The details for the CloudWatch alarm you want to apply to an automation or command.</p>
281+
*/
282+
export interface AlarmConfiguration {
283+
/**
284+
* <p>If you specify <code>true</code> for this value, your automation or command continue to run even if we can't gather information about the state of your CloudWatch alarm. The default value is <code>false</code>.</p>
285+
*/
286+
IgnorePollAlarmFailure?: boolean;
287+
288+
/**
289+
* <p>The name of the CloudWatch alarm specified in the configuration.</p>
290+
*/
291+
Alarms: Alarm[] | undefined;
292+
}
293+
294+
export enum ExternalAlarmState {
295+
ALARM = "ALARM",
296+
UNKNOWN = "UNKNOWN",
297+
}
298+
299+
/**
300+
* <p>The details about the state of your CloudWatch alarm.</p>
301+
*/
302+
export interface AlarmStateInformation {
303+
/**
304+
* <p>The name of your CloudWatch alarm.</p>
305+
*/
306+
Name: string | undefined;
307+
308+
/**
309+
* <p>The state of your CloudWatch alarm.</p>
310+
*/
311+
State: ExternalAlarmState | string | undefined;
312+
}
313+
269314
/**
270315
* <p>Error returned if an attempt is made to register a patch group with a patch baseline that is
271316
* already registered with a different patch baseline.</p>
@@ -1091,12 +1136,15 @@ export interface CreateAssociationRequest {
10911136
TargetMaps?: Record<string, string[]>[];
10921137

10931138
/**
1094-
* <p>Adds or overwrites one or more tags for a State Manager association. <i>Tags</i>
1095-
* are metadata that you can assign to your Amazon Web Services resources. Tags enable you to categorize your
1096-
* resources in different ways, for example, by purpose, owner, or environment. Each tag consists of
1097-
* a key and an optional value, both of which you define. </p>
1139+
* <p>Optional metadata that you assign to a resource. Tags enable you to categorize a resource in
1140+
* different ways, such as by purpose, owner, or environment. For example, you might want to tag an association to identify the type of resource to which it applies, the environment, or the purpose of the association.</p>
10981141
*/
10991142
Tags?: Tag[];
1143+
1144+
/**
1145+
* <p>The details for the CloudWatch alarm you want to apply to an automation or command.</p>
1146+
*/
1147+
AlarmConfiguration?: AlarmConfiguration;
11001148
}
11011149

11021150
/**
@@ -1320,6 +1368,16 @@ export interface AssociationDescription {
13201368
* can't be specified together.</p>
13211369
*/
13221370
TargetMaps?: Record<string, string[]>[];
1371+
1372+
/**
1373+
* <p>The details for the CloudWatch alarm you want to apply to an automation or command.</p>
1374+
*/
1375+
AlarmConfiguration?: AlarmConfiguration;
1376+
1377+
/**
1378+
* <p>The CloudWatch alarm that was invoked during the association.</p>
1379+
*/
1380+
TriggeredAlarms?: AlarmStateInformation[];
13231381
}
13241382

13251383
export interface CreateAssociationResult {
@@ -1416,7 +1474,7 @@ export class InvalidSchedule extends __BaseException {
14161474
}
14171475

14181476
/**
1419-
* <p>The specified tag key or value is not valid.</p>
1477+
* <p>The tag key or value isn't valid.</p>
14201478
*/
14211479
export class InvalidTag extends __BaseException {
14221480
readonly name: "InvalidTag" = "InvalidTag";
@@ -1655,6 +1713,11 @@ export interface CreateAssociationBatchRequestEntry {
16551713
* can't be specified together.</p>
16561714
*/
16571715
TargetMaps?: Record<string, string[]>[];
1716+
1717+
/**
1718+
* <p>The details for the CloudWatch alarm you want to apply to an automation or command.</p>
1719+
*/
1720+
AlarmConfiguration?: AlarmConfiguration;
16581721
}
16591722

16601723
export interface CreateAssociationBatchRequest {
@@ -4187,6 +4250,16 @@ export interface AssociationExecution {
41874250
* <p>An aggregate status of the resources in the execution based on the status type.</p>
41884251
*/
41894252
ResourceCountByStatus?: string;
4253+
4254+
/**
4255+
* <p>The details for the CloudWatch alarm you want to apply to an automation or command.</p>
4256+
*/
4257+
AlarmConfiguration?: AlarmConfiguration;
4258+
4259+
/**
4260+
* <p>The CloudWatch alarms that were invoked by the association.</p>
4261+
*/
4262+
TriggeredAlarms?: AlarmStateInformation[];
41904263
}
41914264

41924265
export interface DescribeAssociationExecutionsResult {
@@ -4636,6 +4709,16 @@ export interface AutomationExecutionMetadata {
46364709
*/
46374710
AutomationType?: AutomationType | string;
46384711

4712+
/**
4713+
* <p>The details for the CloudWatch alarm applied to your automation.</p>
4714+
*/
4715+
AlarmConfiguration?: AlarmConfiguration;
4716+
4717+
/**
4718+
* <p>The CloudWatch alarm that was invoked by the automation.</p>
4719+
*/
4720+
TriggeredAlarms?: AlarmStateInformation[];
4721+
46394722
/**
46404723
* <p>The subtype of the Automation operation. Currently, the only supported value is
46414724
* <code>ChangeRequest</code>.</p>
@@ -6967,6 +7050,16 @@ export interface MaintenanceWindowExecutionTaskIdentity {
69677050
* <p>The type of task that ran.</p>
69687051
*/
69697052
TaskType?: MaintenanceWindowTaskType | string;
7053+
7054+
/**
7055+
* <p>The details for the CloudWatch alarm applied to your maintenance window task.</p>
7056+
*/
7057+
AlarmConfiguration?: AlarmConfiguration;
7058+
7059+
/**
7060+
* <p>The CloudWatch alarm that was invoked by the maintenance window task.</p>
7061+
*/
7062+
TriggeredAlarms?: AlarmStateInformation[];
69707063
}
69717064

69727065
export interface DescribeMaintenanceWindowExecutionTasksResult {
@@ -7483,6 +7576,11 @@ export interface MaintenanceWindowTask {
74837576
* in the maintenance windows is reached. </p>
74847577
*/
74857578
CutoffBehavior?: MaintenanceWindowTaskCutoffBehavior | string;
7579+
7580+
/**
7581+
* <p>The details for the CloudWatch alarm applied to your maintenance window task.</p>
7582+
*/
7583+
AlarmConfiguration?: AlarmConfiguration;
74867584
}
74877585

74887586
export interface DescribeMaintenanceWindowTasksResult {
@@ -7766,120 +7864,59 @@ export interface DescribeOpsItemsResponse {
77667864
OpsItemSummaries?: OpsItemSummary[];
77677865
}
77687866

7769-
export enum ParametersFilterKey {
7770-
KEY_ID = "KeyId",
7771-
NAME = "Name",
7772-
TYPE = "Type",
7773-
}
7774-
77757867
/**
7776-
* <p>This data type is deprecated. Instead, use <a>ParameterStringFilter</a>.</p>
7868+
* @internal
77777869
*/
7778-
export interface ParametersFilter {
7779-
/**
7780-
* <p>The name of the filter.</p>
7781-
*/
7782-
Key: ParametersFilterKey | string | undefined;
7783-
7784-
/**
7785-
* <p>The filter values.</p>
7786-
*/
7787-
Values: string[] | undefined;
7788-
}
7870+
export const AccountSharingInfoFilterSensitiveLog = (obj: AccountSharingInfo): any => ({
7871+
...obj,
7872+
});
77897873

77907874
/**
7791-
* <p>One or more filters. Use a filter to return a more specific list of results.</p>
7875+
* @internal
77927876
*/
7793-
export interface ParameterStringFilter {
7794-
/**
7795-
* <p>The name of the filter.</p>
7796-
* <p>The <code>ParameterStringFilter</code> object is used by the <a>DescribeParameters</a> and <a>GetParametersByPath</a> API operations.
7797-
* However, not all of the pattern values listed for <code>Key</code> can be used with both
7798-
* operations.</p>
7799-
* <p>For <code>DescribeParameters</code>, all of the listed patterns are valid except
7800-
* <code>Label</code>.</p>
7801-
* <p>For <code>GetParametersByPath</code>, the following patterns listed for <code>Key</code>
7802-
* aren't valid: <code>tag</code>, <code>DataType</code>, <code>Name</code>, <code>Path</code>, and
7803-
* <code>Tier</code>.</p>
7804-
* <p>For examples of Amazon Web Services CLI commands demonstrating valid parameter filter constructions, see
7805-
* <a href="https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-search.html">Searching for Systems Manager parameters</a> in the <i>Amazon Web Services Systems Manager User Guide</i>.</p>
7806-
*/
7807-
Key: string | undefined;
7808-
7809-
/**
7810-
* <p>For all filters used with <a>DescribeParameters</a>, valid options include
7811-
* <code>Equals</code> and <code>BeginsWith</code>. The <code>Name</code> filter additionally
7812-
* supports the <code>Contains</code> option. (Exception: For filters using the key
7813-
* <code>Path</code>, valid options include <code>Recursive</code> and
7814-
* <code>OneLevel</code>.)</p>
7815-
* <p>For filters used with <a>GetParametersByPath</a>, valid options include
7816-
* <code>Equals</code> and <code>BeginsWith</code>. (Exception: For filters using
7817-
* <code>Label</code> as the Key name, the only valid option is <code>Equals</code>.)</p>
7818-
*/
7819-
Option?: string;
7820-
7821-
/**
7822-
* <p>The value you want to search for.</p>
7823-
*/
7824-
Values?: string[];
7825-
}
7826-
7827-
export interface DescribeParametersRequest {
7828-
/**
7829-
* <p>This data type is deprecated. Instead, use <code>ParameterFilters</code>.</p>
7830-
*/
7831-
Filters?: ParametersFilter[];
7832-
7833-
/**
7834-
* <p>Filters to limit the request results.</p>
7835-
*/
7836-
ParameterFilters?: ParameterStringFilter[];
7837-
7838-
/**
7839-
* <p>The maximum number of items to return for this call. The call also returns a token that you
7840-
* can specify in a subsequent call to get the next set of results.</p>
7841-
*/
7842-
MaxResults?: number;
7877+
export const TagFilterSensitiveLog = (obj: Tag): any => ({
7878+
...obj,
7879+
});
78437880

7844-
/**
7845-
* <p>The token for the next set of items to return. (You received this token from a previous
7846-
* call.)</p>
7847-
*/
7848-
NextToken?: string;
7849-
}
7881+
/**
7882+
* @internal
7883+
*/
7884+
export const ActivationFilterSensitiveLog = (obj: Activation): any => ({
7885+
...obj,
7886+
});
78507887

78517888
/**
78527889
* @internal
78537890
*/
7854-
export const AccountSharingInfoFilterSensitiveLog = (obj: AccountSharingInfo): any => ({
7891+
export const AddTagsToResourceRequestFilterSensitiveLog = (obj: AddTagsToResourceRequest): any => ({
78557892
...obj,
78567893
});
78577894

78587895
/**
78597896
* @internal
78607897
*/
7861-
export const TagFilterSensitiveLog = (obj: Tag): any => ({
7898+
export const AddTagsToResourceResultFilterSensitiveLog = (obj: AddTagsToResourceResult): any => ({
78627899
...obj,
78637900
});
78647901

78657902
/**
78667903
* @internal
78677904
*/
7868-
export const ActivationFilterSensitiveLog = (obj: Activation): any => ({
7905+
export const AlarmFilterSensitiveLog = (obj: Alarm): any => ({
78697906
...obj,
78707907
});
78717908

78727909
/**
78737910
* @internal
78747911
*/
7875-
export const AddTagsToResourceRequestFilterSensitiveLog = (obj: AddTagsToResourceRequest): any => ({
7912+
export const AlarmConfigurationFilterSensitiveLog = (obj: AlarmConfiguration): any => ({
78767913
...obj,
78777914
});
78787915

78797916
/**
78807917
* @internal
78817918
*/
7882-
export const AddTagsToResourceResultFilterSensitiveLog = (obj: AddTagsToResourceResult): any => ({
7919+
export const AlarmStateInformationFilterSensitiveLog = (obj: AlarmStateInformation): any => ({
78837920
...obj,
78847921
});
78857922

@@ -9259,24 +9296,3 @@ export const OpsItemSummaryFilterSensitiveLog = (obj: OpsItemSummary): any => ({
92599296
export const DescribeOpsItemsResponseFilterSensitiveLog = (obj: DescribeOpsItemsResponse): any => ({
92609297
...obj,
92619298
});
9262-
9263-
/**
9264-
* @internal
9265-
*/
9266-
export const ParametersFilterFilterSensitiveLog = (obj: ParametersFilter): any => ({
9267-
...obj,
9268-
});
9269-
9270-
/**
9271-
* @internal
9272-
*/
9273-
export const ParameterStringFilterFilterSensitiveLog = (obj: ParameterStringFilter): any => ({
9274-
...obj,
9275-
});
9276-
9277-
/**
9278-
* @internal
9279-
*/
9280-
export const DescribeParametersRequestFilterSensitiveLog = (obj: DescribeParametersRequest): any => ({
9281-
...obj,
9282-
});

0 commit comments

Comments
 (0)