@pulumi/aws 4.28.0-alpha.1637005539 → 4.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/alb/targetGroupAttachment.d.ts +3 -3
  2. package/applicationloadbalancing/targetGroupAttachment.d.ts +3 -3
  3. package/appstream/directoryConfig.d.ts +108 -0
  4. package/appstream/directoryConfig.js +93 -0
  5. package/appstream/directoryConfig.js.map +1 -0
  6. package/appstream/index.d.ts +1 -0
  7. package/appstream/index.js +5 -0
  8. package/appstream/index.js.map +1 -1
  9. package/autoscaling/group.d.ts +3 -3
  10. package/cloudfront/responseHeadersPolicy.d.ts +28 -4
  11. package/cloudfront/responseHeadersPolicy.js +25 -1
  12. package/cloudfront/responseHeadersPolicy.js.map +1 -1
  13. package/ec2/getInstanceType.d.ts +4 -0
  14. package/ec2/getInstanceType.js.map +1 -1
  15. package/elasticloadbalancingv2/targetGroupAttachment.d.ts +3 -3
  16. package/emr/cluster.d.ts +12 -0
  17. package/emr/cluster.js +2 -0
  18. package/emr/cluster.js.map +1 -1
  19. package/emr/getReleaseLabels.d.ts +53 -0
  20. package/emr/getReleaseLabels.js +42 -0
  21. package/emr/getReleaseLabels.js.map +1 -0
  22. package/emr/index.d.ts +1 -0
  23. package/emr/index.js +1 -0
  24. package/emr/index.js.map +1 -1
  25. package/iot/index.d.ts +2 -0
  26. package/iot/index.js +10 -0
  27. package/iot/index.js.map +1 -1
  28. package/iot/thingGroup.d.ts +153 -0
  29. package/iot/thingGroup.js +100 -0
  30. package/iot/thingGroup.js.map +1 -0
  31. package/iot/thingGroupMembership.d.ts +96 -0
  32. package/iot/thingGroupMembership.js +85 -0
  33. package/iot/thingGroupMembership.js.map +1 -0
  34. package/iot/thingType.d.ts +36 -0
  35. package/iot/thingType.js +4 -0
  36. package/iot/thingType.js.map +1 -1
  37. package/lambda/index.d.ts +1 -0
  38. package/lambda/index.js +5 -0
  39. package/lambda/index.js.map +1 -1
  40. package/lambda/layerVersion.d.ts +41 -83
  41. package/lambda/layerVersion.js +2 -45
  42. package/lambda/layerVersion.js.map +1 -1
  43. package/lambda/layerVersionPermission.d.ts +154 -0
  44. package/lambda/layerVersionPermission.js +110 -0
  45. package/lambda/layerVersionPermission.js.map +1 -0
  46. package/lb/targetGroupAttachment.d.ts +3 -3
  47. package/package.json +2 -2
  48. package/package.json.dev +1 -1
  49. package/quicksight/user.d.ts +1 -1
  50. package/quicksight/user.js +1 -1
  51. package/s3/accessPoint.d.ts +20 -28
  52. package/s3/accessPoint.js +4 -28
  53. package/s3/accessPoint.js.map +1 -1
  54. package/s3/bucket.d.ts +2 -0
  55. package/s3/bucket.js +2 -0
  56. package/s3/bucket.js.map +1 -1
  57. package/s3/bucketReplicationConfig.d.ts +190 -0
  58. package/s3/bucketReplicationConfig.js +181 -0
  59. package/s3/bucketReplicationConfig.js.map +1 -0
  60. package/s3/index.d.ts +1 -0
  61. package/s3/index.js +5 -0
  62. package/s3/index.js.map +1 -1
  63. package/s3control/accessPointPolicy.d.ts +77 -0
  64. package/s3control/accessPointPolicy.js +70 -0
  65. package/s3control/accessPointPolicy.js.map +1 -0
  66. package/s3control/index.d.ts +5 -0
  67. package/s3control/index.js +25 -0
  68. package/s3control/index.js.map +1 -1
  69. package/s3control/multiRegionAccessPoint.d.ts +123 -0
  70. package/s3control/multiRegionAccessPoint.js +103 -0
  71. package/s3control/multiRegionAccessPoint.js.map +1 -0
  72. package/s3control/multiRegionAccessPointPolicy.d.ts +115 -0
  73. package/s3control/multiRegionAccessPointPolicy.js +107 -0
  74. package/s3control/multiRegionAccessPointPolicy.js.map +1 -0
  75. package/s3control/objectLambdaAccessPoint.d.ts +105 -0
  76. package/s3control/objectLambdaAccessPoint.js +93 -0
  77. package/s3control/objectLambdaAccessPoint.js.map +1 -0
  78. package/s3control/objectLambdaAccessPointPolicy.d.ts +114 -0
  79. package/s3control/objectLambdaAccessPointPolicy.js +103 -0
  80. package/s3control/objectLambdaAccessPointPolicy.js.map +1 -0
  81. package/sagemaker/endpoint.d.ts +19 -6
  82. package/sagemaker/endpoint.js +2 -0
  83. package/sagemaker/endpoint.js.map +1 -1
  84. package/securityhub/findingAggregator.d.ts +124 -0
  85. package/securityhub/findingAggregator.js +120 -0
  86. package/securityhub/findingAggregator.js.map +1 -0
  87. package/securityhub/index.d.ts +1 -0
  88. package/securityhub/index.js +5 -0
  89. package/securityhub/index.js.map +1 -1
  90. package/types/enums/iam/index.d.ts +1 -0
  91. package/types/enums/iam/index.js +1 -0
  92. package/types/enums/iam/index.js.map +1 -1
  93. package/types/input.d.ts +463 -29
  94. package/types/output.d.ts +455 -28
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectLambdaAccessPoint.js","sourceRoot":"","sources":["../../s3control/objectLambdaAccessPoint.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAa,uBAAwB,SAAQ,MAAM,CAAC,cAAc;IAkD9D,YAAY,IAAY,EAAE,WAAwE,EAAE,IAAmC;QACnI,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAuD,CAAC;YACtE,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SACnD;aAAM;YACH,MAAM,IAAI,GAAG,WAAsD,CAAC;YACpE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAChE;YACD,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,MAAM,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACrC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,uBAAuB,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IAxED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAoC,EAAE,IAAmC;QAClI,OAAO,IAAI,uBAAuB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC9E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,uBAAuB,CAAC,YAAY,CAAC;IACxE,CAAC;;AA1BL,0DA0EC;AA5DG,gBAAgB;AACO,oCAAY,GAAG,+DAA+D,CAAC"}
@@ -0,0 +1,114 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Provides a resource to manage an S3 Object Lambda Access Point resource policy.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as aws from "@pulumi/aws";
10
+ *
11
+ * const exampleBucket = new aws.s3.Bucket("exampleBucket", {});
12
+ * const exampleAccessPoint = new aws.s3.AccessPoint("exampleAccessPoint", {bucket: exampleBucket.id});
13
+ * const exampleObjectLambdaAccessPoint = new aws.s3control.ObjectLambdaAccessPoint("exampleObjectLambdaAccessPoint", {configuration: {
14
+ * supportingAccessPoint: exampleAccessPoint.arn,
15
+ * transformationConfigurations: [{
16
+ * actions: ["GetObject"],
17
+ * contentTransformation: {
18
+ * awsLambda: {
19
+ * functionArn: aws_lambda_function.example.arn,
20
+ * },
21
+ * },
22
+ * }],
23
+ * }});
24
+ * const exampleObjectLambdaAccessPointPolicy = new aws.s3control.ObjectLambdaAccessPointPolicy("exampleObjectLambdaAccessPointPolicy", {policy: exampleObjectLambdaAccessPoint.arn.apply(arn => JSON.stringify({
25
+ * Version: "2008-10-17",
26
+ * Statement: [{
27
+ * Effect: "Allow",
28
+ * Action: "s3-object-lambda:GetObject",
29
+ * Principal: {
30
+ * AWS: data.aws_caller_identity.current.account_id,
31
+ * },
32
+ * Resource: arn,
33
+ * }],
34
+ * }))});
35
+ * ```
36
+ *
37
+ * ## Import
38
+ *
39
+ * Object Lambda Access Point policies can be imported using the `account_id` and `name`, separated by a colon (`:`), e.g.
40
+ *
41
+ * ```sh
42
+ * $ pulumi import aws:s3control/objectLambdaAccessPointPolicy:ObjectLambdaAccessPointPolicy example 123456789012:example
43
+ * ```
44
+ */
45
+ export declare class ObjectLambdaAccessPointPolicy extends pulumi.CustomResource {
46
+ /**
47
+ * Get an existing ObjectLambdaAccessPointPolicy resource's state with the given name, ID, and optional extra
48
+ * properties used to qualify the lookup.
49
+ *
50
+ * @param name The _unique_ name of the resulting resource.
51
+ * @param id The _unique_ provider ID of the resource to lookup.
52
+ * @param state Any extra arguments used during the lookup.
53
+ * @param opts Optional settings to control the behavior of the CustomResource.
54
+ */
55
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ObjectLambdaAccessPointPolicyState, opts?: pulumi.CustomResourceOptions): ObjectLambdaAccessPointPolicy;
56
+ /**
57
+ * Returns true if the given object is an instance of ObjectLambdaAccessPointPolicy. This is designed to work even
58
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
59
+ */
60
+ static isInstance(obj: any): obj is ObjectLambdaAccessPointPolicy;
61
+ readonly accountId: pulumi.Output<string>;
62
+ /**
63
+ * Indicates whether this access point currently has a policy that allows public access.
64
+ */
65
+ readonly hasPublicAccessPolicy: pulumi.Output<boolean>;
66
+ /**
67
+ * The name of the Object Lambda Access Point.
68
+ */
69
+ readonly name: pulumi.Output<string>;
70
+ /**
71
+ * The Object Lambda Access Point resource policy document.
72
+ */
73
+ readonly policy: pulumi.Output<string>;
74
+ /**
75
+ * Create a ObjectLambdaAccessPointPolicy resource with the given unique name, arguments, and options.
76
+ *
77
+ * @param name The _unique_ name of the resource.
78
+ * @param args The arguments to use to populate this resource's properties.
79
+ * @param opts A bag of options that control this resource's behavior.
80
+ */
81
+ constructor(name: string, args: ObjectLambdaAccessPointPolicyArgs, opts?: pulumi.CustomResourceOptions);
82
+ }
83
+ /**
84
+ * Input properties used for looking up and filtering ObjectLambdaAccessPointPolicy resources.
85
+ */
86
+ export interface ObjectLambdaAccessPointPolicyState {
87
+ accountId?: pulumi.Input<string>;
88
+ /**
89
+ * Indicates whether this access point currently has a policy that allows public access.
90
+ */
91
+ hasPublicAccessPolicy?: pulumi.Input<boolean>;
92
+ /**
93
+ * The name of the Object Lambda Access Point.
94
+ */
95
+ name?: pulumi.Input<string>;
96
+ /**
97
+ * The Object Lambda Access Point resource policy document.
98
+ */
99
+ policy?: pulumi.Input<string>;
100
+ }
101
+ /**
102
+ * The set of arguments for constructing a ObjectLambdaAccessPointPolicy resource.
103
+ */
104
+ export interface ObjectLambdaAccessPointPolicyArgs {
105
+ accountId?: pulumi.Input<string>;
106
+ /**
107
+ * The name of the Object Lambda Access Point.
108
+ */
109
+ name?: pulumi.Input<string>;
110
+ /**
111
+ * The Object Lambda Access Point resource policy document.
112
+ */
113
+ policy: pulumi.Input<string>;
114
+ }
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ObjectLambdaAccessPointPolicy = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Provides a resource to manage an S3 Object Lambda Access Point resource policy.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as aws from "@pulumi/aws";
16
+ *
17
+ * const exampleBucket = new aws.s3.Bucket("exampleBucket", {});
18
+ * const exampleAccessPoint = new aws.s3.AccessPoint("exampleAccessPoint", {bucket: exampleBucket.id});
19
+ * const exampleObjectLambdaAccessPoint = new aws.s3control.ObjectLambdaAccessPoint("exampleObjectLambdaAccessPoint", {configuration: {
20
+ * supportingAccessPoint: exampleAccessPoint.arn,
21
+ * transformationConfigurations: [{
22
+ * actions: ["GetObject"],
23
+ * contentTransformation: {
24
+ * awsLambda: {
25
+ * functionArn: aws_lambda_function.example.arn,
26
+ * },
27
+ * },
28
+ * }],
29
+ * }});
30
+ * const exampleObjectLambdaAccessPointPolicy = new aws.s3control.ObjectLambdaAccessPointPolicy("exampleObjectLambdaAccessPointPolicy", {policy: exampleObjectLambdaAccessPoint.arn.apply(arn => JSON.stringify({
31
+ * Version: "2008-10-17",
32
+ * Statement: [{
33
+ * Effect: "Allow",
34
+ * Action: "s3-object-lambda:GetObject",
35
+ * Principal: {
36
+ * AWS: data.aws_caller_identity.current.account_id,
37
+ * },
38
+ * Resource: arn,
39
+ * }],
40
+ * }))});
41
+ * ```
42
+ *
43
+ * ## Import
44
+ *
45
+ * Object Lambda Access Point policies can be imported using the `account_id` and `name`, separated by a colon (`:`), e.g.
46
+ *
47
+ * ```sh
48
+ * $ pulumi import aws:s3control/objectLambdaAccessPointPolicy:ObjectLambdaAccessPointPolicy example 123456789012:example
49
+ * ```
50
+ */
51
+ class ObjectLambdaAccessPointPolicy extends pulumi.CustomResource {
52
+ constructor(name, argsOrState, opts) {
53
+ let inputs = {};
54
+ opts = opts || {};
55
+ if (opts.id) {
56
+ const state = argsOrState;
57
+ inputs["accountId"] = state ? state.accountId : undefined;
58
+ inputs["hasPublicAccessPolicy"] = state ? state.hasPublicAccessPolicy : undefined;
59
+ inputs["name"] = state ? state.name : undefined;
60
+ inputs["policy"] = state ? state.policy : undefined;
61
+ }
62
+ else {
63
+ const args = argsOrState;
64
+ if ((!args || args.policy === undefined) && !opts.urn) {
65
+ throw new Error("Missing required property 'policy'");
66
+ }
67
+ inputs["accountId"] = args ? args.accountId : undefined;
68
+ inputs["name"] = args ? args.name : undefined;
69
+ inputs["policy"] = args ? args.policy : undefined;
70
+ inputs["hasPublicAccessPolicy"] = undefined /*out*/;
71
+ }
72
+ if (!opts.version) {
73
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
74
+ }
75
+ super(ObjectLambdaAccessPointPolicy.__pulumiType, name, inputs, opts);
76
+ }
77
+ /**
78
+ * Get an existing ObjectLambdaAccessPointPolicy resource's state with the given name, ID, and optional extra
79
+ * properties used to qualify the lookup.
80
+ *
81
+ * @param name The _unique_ name of the resulting resource.
82
+ * @param id The _unique_ provider ID of the resource to lookup.
83
+ * @param state Any extra arguments used during the lookup.
84
+ * @param opts Optional settings to control the behavior of the CustomResource.
85
+ */
86
+ static get(name, id, state, opts) {
87
+ return new ObjectLambdaAccessPointPolicy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
88
+ }
89
+ /**
90
+ * Returns true if the given object is an instance of ObjectLambdaAccessPointPolicy. This is designed to work even
91
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
92
+ */
93
+ static isInstance(obj) {
94
+ if (obj === undefined || obj === null) {
95
+ return false;
96
+ }
97
+ return obj['__pulumiType'] === ObjectLambdaAccessPointPolicy.__pulumiType;
98
+ }
99
+ }
100
+ exports.ObjectLambdaAccessPointPolicy = ObjectLambdaAccessPointPolicy;
101
+ /** @internal */
102
+ ObjectLambdaAccessPointPolicy.__pulumiType = 'aws:s3control/objectLambdaAccessPointPolicy:ObjectLambdaAccessPointPolicy';
103
+ //# sourceMappingURL=objectLambdaAccessPointPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectLambdaAccessPointPolicy.js","sourceRoot":"","sources":["../../s3control/objectLambdaAccessPointPolicy.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAa,6BAA8B,SAAQ,MAAM,CAAC,cAAc;IAkDpE,YAAY,IAAY,EAAE,WAAoF,EAAE,IAAmC;QAC/I,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA6D,CAAC;YAC5E,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,MAAM,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;YAClF,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SACvD;aAAM;YACH,MAAM,IAAI,GAAG,WAA4D,CAAC;YAC1E,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;YACD,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAClD,MAAM,CAAC,uBAAuB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACvD;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,6BAA6B,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IAxED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA0C,EAAE,IAAmC;QACxI,OAAO,IAAI,6BAA6B,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACpF,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,6BAA6B,CAAC,YAAY,CAAC;IAC9E,CAAC;;AA1BL,sEA0EC;AA5DG,gBAAgB;AACO,0CAAY,GAAG,2EAA2E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "../types";
2
3
  /**
3
4
  * Provides a SageMaker Endpoint resource.
4
5
  *
@@ -46,16 +47,20 @@ export declare class Endpoint extends pulumi.CustomResource {
46
47
  * The Amazon Resource Name (ARN) assigned by AWS to this endpoint.
47
48
  */
48
49
  readonly arn: pulumi.Output<string>;
50
+ /**
51
+ * The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations. See Deployment Config.
52
+ */
53
+ readonly deploymentConfig: pulumi.Output<outputs.sagemaker.EndpointDeploymentConfig | undefined>;
49
54
  /**
50
55
  * The name of the endpoint configuration to use.
51
56
  */
52
57
  readonly endpointConfigName: pulumi.Output<string>;
53
58
  /**
54
- * The name of the endpoint. If omitted, this provider will assign a random, unique name.
59
+ * The name of the endpoint.
55
60
  */
56
61
  readonly name: pulumi.Output<string>;
57
62
  /**
58
- * A mapping of tags to assign to the resource.
63
+ * A map of tags to assign to the resource. If configured with a provider [`defaultTags` configuration block](https://www.terraform.io/docs/providers/aws/index.html#default_tags-configuration-block) present, tags with matching keys will overwrite those defined at the provider-level.
59
64
  */
60
65
  readonly tags: pulumi.Output<{
61
66
  [key: string]: string;
@@ -83,16 +88,20 @@ export interface EndpointState {
83
88
  * The Amazon Resource Name (ARN) assigned by AWS to this endpoint.
84
89
  */
85
90
  arn?: pulumi.Input<string>;
91
+ /**
92
+ * The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations. See Deployment Config.
93
+ */
94
+ deploymentConfig?: pulumi.Input<inputs.sagemaker.EndpointDeploymentConfig>;
86
95
  /**
87
96
  * The name of the endpoint configuration to use.
88
97
  */
89
98
  endpointConfigName?: pulumi.Input<string>;
90
99
  /**
91
- * The name of the endpoint. If omitted, this provider will assign a random, unique name.
100
+ * The name of the endpoint.
92
101
  */
93
102
  name?: pulumi.Input<string>;
94
103
  /**
95
- * A mapping of tags to assign to the resource.
104
+ * A map of tags to assign to the resource. If configured with a provider [`defaultTags` configuration block](https://www.terraform.io/docs/providers/aws/index.html#default_tags-configuration-block) present, tags with matching keys will overwrite those defined at the provider-level.
96
105
  */
97
106
  tags?: pulumi.Input<{
98
107
  [key: string]: pulumi.Input<string>;
@@ -108,16 +117,20 @@ export interface EndpointState {
108
117
  * The set of arguments for constructing a Endpoint resource.
109
118
  */
110
119
  export interface EndpointArgs {
120
+ /**
121
+ * The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations. See Deployment Config.
122
+ */
123
+ deploymentConfig?: pulumi.Input<inputs.sagemaker.EndpointDeploymentConfig>;
111
124
  /**
112
125
  * The name of the endpoint configuration to use.
113
126
  */
114
127
  endpointConfigName: pulumi.Input<string>;
115
128
  /**
116
- * The name of the endpoint. If omitted, this provider will assign a random, unique name.
129
+ * The name of the endpoint.
117
130
  */
118
131
  name?: pulumi.Input<string>;
119
132
  /**
120
- * A mapping of tags to assign to the resource.
133
+ * A map of tags to assign to the resource. If configured with a provider [`defaultTags` configuration block](https://www.terraform.io/docs/providers/aws/index.html#default_tags-configuration-block) present, tags with matching keys will overwrite those defined at the provider-level.
121
134
  */
122
135
  tags?: pulumi.Input<{
123
136
  [key: string]: pulumi.Input<string>;
@@ -39,6 +39,7 @@ class Endpoint extends pulumi.CustomResource {
39
39
  if (opts.id) {
40
40
  const state = argsOrState;
41
41
  inputs["arn"] = state ? state.arn : undefined;
42
+ inputs["deploymentConfig"] = state ? state.deploymentConfig : undefined;
42
43
  inputs["endpointConfigName"] = state ? state.endpointConfigName : undefined;
43
44
  inputs["name"] = state ? state.name : undefined;
44
45
  inputs["tags"] = state ? state.tags : undefined;
@@ -49,6 +50,7 @@ class Endpoint extends pulumi.CustomResource {
49
50
  if ((!args || args.endpointConfigName === undefined) && !opts.urn) {
50
51
  throw new Error("Missing required property 'endpointConfigName'");
51
52
  }
53
+ inputs["deploymentConfig"] = args ? args.deploymentConfig : undefined;
52
54
  inputs["endpointConfigName"] = args ? args.endpointConfigName : undefined;
53
55
  inputs["name"] = args ? args.name : undefined;
54
56
  inputs["tags"] = args ? args.tags : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../sagemaker/endpoint.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,cAAc;IAyD/C,YAAY,IAAY,EAAE,WAA0C,EAAE,IAAmC;QACrG,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;SACzD;aAAM;YACH,MAAM,IAAI,GAAG,WAAuC,CAAC;YACrD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC/D,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;aACrE;YACD,MAAM,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAClC,MAAM,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACzC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAjFD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqB,EAAE,IAAmC;QACnH,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/D,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,YAAY,CAAC;IACzD,CAAC;;AA1BL,4BAmFC;AArEG,gBAAgB;AACO,qBAAY,GAAG,iCAAiC,CAAC"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../sagemaker/endpoint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,124 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Manages a Security Hub finding aggregator. Security Hub needs to be enabled in a region in order for the aggregator to pull through findings.
4
+ *
5
+ * ## Example Usage
6
+ * ### All Regions Usage
7
+ *
8
+ * The following example will enable the aggregator for every region.
9
+ *
10
+ * ```typescript
11
+ * import * as pulumi from "@pulumi/pulumi";
12
+ * import * as aws from "@pulumi/aws";
13
+ *
14
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
15
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {linkingMode: "ALL_REGIONS"}, {
16
+ * dependsOn: [exampleAccount],
17
+ * });
18
+ * ```
19
+ * ### All Regions Except Specified Regions Usage
20
+ *
21
+ * The following example will enable the aggregator for every region except those specified in `specifiedRegions`.
22
+ *
23
+ * ```typescript
24
+ * import * as pulumi from "@pulumi/pulumi";
25
+ * import * as aws from "@pulumi/aws";
26
+ *
27
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
28
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {
29
+ * linkingMode: "ALL_REGIONS_EXCEPT_SPECIFIED",
30
+ * specifiedRegions: [
31
+ * "eu-west-1",
32
+ * "eu-west-2",
33
+ * ],
34
+ * }, {
35
+ * dependsOn: [exampleAccount],
36
+ * });
37
+ * ```
38
+ * ### Specified Regions Usage
39
+ *
40
+ * The following example will enable the aggregator for every region specified in `specifiedRegions`.
41
+ *
42
+ * ```typescript
43
+ * import * as pulumi from "@pulumi/pulumi";
44
+ * import * as aws from "@pulumi/aws";
45
+ *
46
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
47
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {
48
+ * linkingMode: "SPECIFIED_REGIONS",
49
+ * specifiedRegions: [
50
+ * "eu-west-1",
51
+ * "eu-west-2",
52
+ * ],
53
+ * }, {
54
+ * dependsOn: [exampleAccount],
55
+ * });
56
+ * ```
57
+ *
58
+ * ## Import
59
+ *
60
+ * An existing Security Hub finding aggregator can be imported using the `arn`, e.g.,
61
+ *
62
+ * ```sh
63
+ * $ pulumi import aws:securityhub/findingAggregator:FindingAggregator example arn:aws:securityhub:eu-west-1:123456789098:finding-aggregator/abcd1234-abcd-1234-1234-abcdef123456
64
+ * ```
65
+ */
66
+ export declare class FindingAggregator extends pulumi.CustomResource {
67
+ /**
68
+ * Get an existing FindingAggregator resource's state with the given name, ID, and optional extra
69
+ * properties used to qualify the lookup.
70
+ *
71
+ * @param name The _unique_ name of the resulting resource.
72
+ * @param id The _unique_ provider ID of the resource to lookup.
73
+ * @param state Any extra arguments used during the lookup.
74
+ * @param opts Optional settings to control the behavior of the CustomResource.
75
+ */
76
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FindingAggregatorState, opts?: pulumi.CustomResourceOptions): FindingAggregator;
77
+ /**
78
+ * Returns true if the given object is an instance of FindingAggregator. This is designed to work even
79
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
80
+ */
81
+ static isInstance(obj: any): obj is FindingAggregator;
82
+ /**
83
+ * Indicates whether to aggregate findings from all of the available Regions or from a specified list. The options are `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`. When `ALL_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED` are used, Security Hub will automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.
84
+ */
85
+ readonly linkingMode: pulumi.Output<string>;
86
+ /**
87
+ * List of regions to include or exclude (required if `linkingMode` is set to `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`)
88
+ */
89
+ readonly specifiedRegions: pulumi.Output<string[] | undefined>;
90
+ /**
91
+ * Create a FindingAggregator resource with the given unique name, arguments, and options.
92
+ *
93
+ * @param name The _unique_ name of the resource.
94
+ * @param args The arguments to use to populate this resource's properties.
95
+ * @param opts A bag of options that control this resource's behavior.
96
+ */
97
+ constructor(name: string, args: FindingAggregatorArgs, opts?: pulumi.CustomResourceOptions);
98
+ }
99
+ /**
100
+ * Input properties used for looking up and filtering FindingAggregator resources.
101
+ */
102
+ export interface FindingAggregatorState {
103
+ /**
104
+ * Indicates whether to aggregate findings from all of the available Regions or from a specified list. The options are `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`. When `ALL_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED` are used, Security Hub will automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.
105
+ */
106
+ linkingMode?: pulumi.Input<string>;
107
+ /**
108
+ * List of regions to include or exclude (required if `linkingMode` is set to `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`)
109
+ */
110
+ specifiedRegions?: pulumi.Input<pulumi.Input<string>[]>;
111
+ }
112
+ /**
113
+ * The set of arguments for constructing a FindingAggregator resource.
114
+ */
115
+ export interface FindingAggregatorArgs {
116
+ /**
117
+ * Indicates whether to aggregate findings from all of the available Regions or from a specified list. The options are `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`. When `ALL_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED` are used, Security Hub will automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.
118
+ */
119
+ linkingMode: pulumi.Input<string>;
120
+ /**
121
+ * List of regions to include or exclude (required if `linkingMode` is set to `ALL_REGIONS_EXCEPT_SPECIFIED` or `SPECIFIED_REGIONS`)
122
+ */
123
+ specifiedRegions?: pulumi.Input<pulumi.Input<string>[]>;
124
+ }
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.FindingAggregator = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Manages a Security Hub finding aggregator. Security Hub needs to be enabled in a region in order for the aggregator to pull through findings.
10
+ *
11
+ * ## Example Usage
12
+ * ### All Regions Usage
13
+ *
14
+ * The following example will enable the aggregator for every region.
15
+ *
16
+ * ```typescript
17
+ * import * as pulumi from "@pulumi/pulumi";
18
+ * import * as aws from "@pulumi/aws";
19
+ *
20
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
21
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {linkingMode: "ALL_REGIONS"}, {
22
+ * dependsOn: [exampleAccount],
23
+ * });
24
+ * ```
25
+ * ### All Regions Except Specified Regions Usage
26
+ *
27
+ * The following example will enable the aggregator for every region except those specified in `specifiedRegions`.
28
+ *
29
+ * ```typescript
30
+ * import * as pulumi from "@pulumi/pulumi";
31
+ * import * as aws from "@pulumi/aws";
32
+ *
33
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
34
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {
35
+ * linkingMode: "ALL_REGIONS_EXCEPT_SPECIFIED",
36
+ * specifiedRegions: [
37
+ * "eu-west-1",
38
+ * "eu-west-2",
39
+ * ],
40
+ * }, {
41
+ * dependsOn: [exampleAccount],
42
+ * });
43
+ * ```
44
+ * ### Specified Regions Usage
45
+ *
46
+ * The following example will enable the aggregator for every region specified in `specifiedRegions`.
47
+ *
48
+ * ```typescript
49
+ * import * as pulumi from "@pulumi/pulumi";
50
+ * import * as aws from "@pulumi/aws";
51
+ *
52
+ * const exampleAccount = new aws.securityhub.Account("exampleAccount", {});
53
+ * const exampleFindingAggregator = new aws.securityhub.FindingAggregator("exampleFindingAggregator", {
54
+ * linkingMode: "SPECIFIED_REGIONS",
55
+ * specifiedRegions: [
56
+ * "eu-west-1",
57
+ * "eu-west-2",
58
+ * ],
59
+ * }, {
60
+ * dependsOn: [exampleAccount],
61
+ * });
62
+ * ```
63
+ *
64
+ * ## Import
65
+ *
66
+ * An existing Security Hub finding aggregator can be imported using the `arn`, e.g.,
67
+ *
68
+ * ```sh
69
+ * $ pulumi import aws:securityhub/findingAggregator:FindingAggregator example arn:aws:securityhub:eu-west-1:123456789098:finding-aggregator/abcd1234-abcd-1234-1234-abcdef123456
70
+ * ```
71
+ */
72
+ class FindingAggregator extends pulumi.CustomResource {
73
+ constructor(name, argsOrState, opts) {
74
+ let inputs = {};
75
+ opts = opts || {};
76
+ if (opts.id) {
77
+ const state = argsOrState;
78
+ inputs["linkingMode"] = state ? state.linkingMode : undefined;
79
+ inputs["specifiedRegions"] = state ? state.specifiedRegions : undefined;
80
+ }
81
+ else {
82
+ const args = argsOrState;
83
+ if ((!args || args.linkingMode === undefined) && !opts.urn) {
84
+ throw new Error("Missing required property 'linkingMode'");
85
+ }
86
+ inputs["linkingMode"] = args ? args.linkingMode : undefined;
87
+ inputs["specifiedRegions"] = args ? args.specifiedRegions : undefined;
88
+ }
89
+ if (!opts.version) {
90
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
91
+ }
92
+ super(FindingAggregator.__pulumiType, name, inputs, opts);
93
+ }
94
+ /**
95
+ * Get an existing FindingAggregator resource's state with the given name, ID, and optional extra
96
+ * properties used to qualify the lookup.
97
+ *
98
+ * @param name The _unique_ name of the resulting resource.
99
+ * @param id The _unique_ provider ID of the resource to lookup.
100
+ * @param state Any extra arguments used during the lookup.
101
+ * @param opts Optional settings to control the behavior of the CustomResource.
102
+ */
103
+ static get(name, id, state, opts) {
104
+ return new FindingAggregator(name, state, Object.assign(Object.assign({}, opts), { id: id }));
105
+ }
106
+ /**
107
+ * Returns true if the given object is an instance of FindingAggregator. This is designed to work even
108
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
109
+ */
110
+ static isInstance(obj) {
111
+ if (obj === undefined || obj === null) {
112
+ return false;
113
+ }
114
+ return obj['__pulumiType'] === FindingAggregator.__pulumiType;
115
+ }
116
+ }
117
+ exports.FindingAggregator = FindingAggregator;
118
+ /** @internal */
119
+ FindingAggregator.__pulumiType = 'aws:securityhub/findingAggregator:FindingAggregator';
120
+ //# sourceMappingURL=findingAggregator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findingAggregator.js","sourceRoot":"","sources":["../../securityhub/findingAggregator.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,MAAa,iBAAkB,SAAQ,MAAM,CAAC,cAAc;IA6CxD,YAAY,IAAY,EAAE,WAA4D,EAAE,IAAmC;QACvH,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAiD,CAAC;YAChE,MAAM,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3E;aAAM;YACH,MAAM,IAAI,GAAG,WAAgD,CAAC;YAC9D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC9D;YACD,MAAM,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SACzE;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IA/DD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA8B,EAAE,IAAmC;QAC5H,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACxE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,iBAAiB,CAAC,YAAY,CAAC;IAClE,CAAC;;AA1BL,8CAiEC;AAnDG,gBAAgB;AACO,8BAAY,GAAG,qDAAqD,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export * from "./account";
2
2
  export * from "./actionTarget";
3
+ export * from "./findingAggregator";
3
4
  export * from "./insight";
4
5
  export * from "./inviteAccepter";
5
6
  export * from "./member";
@@ -17,6 +17,7 @@ const utilities = require("../utilities");
17
17
  // Export members:
18
18
  __exportStar(require("./account"), exports);
19
19
  __exportStar(require("./actionTarget"), exports);
20
+ __exportStar(require("./findingAggregator"), exports);
20
21
  __exportStar(require("./insight"), exports);
21
22
  __exportStar(require("./inviteAccepter"), exports);
22
23
  __exportStar(require("./member"), exports);
@@ -28,6 +29,7 @@ __exportStar(require("./standardsSubscription"), exports);
28
29
  // Import resources to register:
29
30
  const account_1 = require("./account");
30
31
  const actionTarget_1 = require("./actionTarget");
32
+ const findingAggregator_1 = require("./findingAggregator");
31
33
  const insight_1 = require("./insight");
32
34
  const inviteAccepter_1 = require("./inviteAccepter");
33
35
  const member_1 = require("./member");
@@ -44,6 +46,8 @@ const _module = {
44
46
  return new account_1.Account(name, undefined, { urn });
45
47
  case "aws:securityhub/actionTarget:ActionTarget":
46
48
  return new actionTarget_1.ActionTarget(name, undefined, { urn });
49
+ case "aws:securityhub/findingAggregator:FindingAggregator":
50
+ return new findingAggregator_1.FindingAggregator(name, undefined, { urn });
47
51
  case "aws:securityhub/insight:Insight":
48
52
  return new insight_1.Insight(name, undefined, { urn });
49
53
  case "aws:securityhub/inviteAccepter:InviteAccepter":
@@ -67,6 +71,7 @@ const _module = {
67
71
  };
68
72
  pulumi.runtime.registerResourceModule("aws", "securityhub/account", _module);
69
73
  pulumi.runtime.registerResourceModule("aws", "securityhub/actionTarget", _module);
74
+ pulumi.runtime.registerResourceModule("aws", "securityhub/findingAggregator", _module);
70
75
  pulumi.runtime.registerResourceModule("aws", "securityhub/insight", _module);
71
76
  pulumi.runtime.registerResourceModule("aws", "securityhub/inviteAccepter", _module);
72
77
  pulumi.runtime.registerResourceModule("aws", "securityhub/member", _module);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../securityhub/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../securityhub/index.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare const ManagedPolicy: {
14
14
  readonly AWSCloudHSMRole: "arn:aws:iam::aws:policy/service-role/AWSCloudHSMRole";
15
15
  readonly AWSCloudTrailFullAccess: "arn:aws:iam::aws:policy/AWSCloudTrailFullAccess";
16
16
  readonly AWSCloudTrailReadOnlyAccess: "arn:aws:iam::aws:policy/AWSCloudTrailReadOnlyAccess";
17
+ readonly AWSCloudWatchLambdaInsightsExecutionRolePolicy: "arn:aws:iam::aws:policy/AWSCloudWatchLambdaInsightsExecutionRolePolicy";
17
18
  readonly AWSCodeBuildAdminAccess: "arn:aws:iam::aws:policy/AWSCodeBuildAdminAccess";
18
19
  readonly AWSCodeBuildDeveloperAccess: "arn:aws:iam::aws:policy/AWSCodeBuildDeveloperAccess";
19
20
  readonly AWSCodeBuildReadOnlyAccess: "arn:aws:iam::aws:policy/AWSCodeBuildReadOnlyAccess";