@pulumi/aws 4.33.1 → 4.34.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 (198) hide show
  1. package/appstream/fleet.d.ts +3 -3
  2. package/batch/getJobQueue.d.ts +4 -0
  3. package/batch/getJobQueue.js.map +1 -1
  4. package/batch/getSchedulingPolicy.d.ts +69 -0
  5. package/batch/getSchedulingPolicy.js +39 -0
  6. package/batch/getSchedulingPolicy.js.map +1 -0
  7. package/batch/index.d.ts +2 -0
  8. package/batch/index.js +6 -0
  9. package/batch/index.js.map +1 -1
  10. package/batch/jobQueue.d.ts +37 -0
  11. package/batch/jobQueue.js +27 -0
  12. package/batch/jobQueue.js.map +1 -1
  13. package/batch/schedulingPolicy.d.ts +134 -0
  14. package/batch/schedulingPolicy.js +97 -0
  15. package/batch/schedulingPolicy.js.map +1 -0
  16. package/cloud9/environmentMembership.d.ts +106 -0
  17. package/cloud9/environmentMembership.js +92 -0
  18. package/cloud9/environmentMembership.js.map +1 -0
  19. package/cloud9/index.d.ts +1 -0
  20. package/cloud9/index.js +5 -0
  21. package/cloud9/index.js.map +1 -1
  22. package/cloudwatch/eventTarget.d.ts +48 -3
  23. package/cloudwatch/eventTarget.js +45 -0
  24. package/cloudwatch/eventTarget.js.map +1 -1
  25. package/codebuild/index.d.ts +1 -0
  26. package/codebuild/index.js +5 -0
  27. package/codebuild/index.js.map +1 -1
  28. package/codebuild/project.d.ts +49 -5
  29. package/codebuild/project.js +8 -0
  30. package/codebuild/project.js.map +1 -1
  31. package/codebuild/resourcePolicy.d.ts +108 -0
  32. package/codebuild/resourcePolicy.js +107 -0
  33. package/codebuild/resourcePolicy.js.map +1 -0
  34. package/codepipeline/webhook.d.ts +8 -0
  35. package/codepipeline/webhook.js +2 -0
  36. package/codepipeline/webhook.js.map +1 -1
  37. package/cognito/getUserPoolClients.d.ts +49 -0
  38. package/cognito/getUserPoolClients.js +38 -0
  39. package/cognito/getUserPoolClients.js.map +1 -0
  40. package/cognito/getUserPoolSigningCertificate.d.ts +49 -0
  41. package/cognito/getUserPoolSigningCertificate.js +38 -0
  42. package/cognito/getUserPoolSigningCertificate.js.map +1 -0
  43. package/cognito/index.d.ts +2 -0
  44. package/cognito/index.js +2 -0
  45. package/cognito/index.js.map +1 -1
  46. package/datasync/index.d.ts +2 -0
  47. package/datasync/index.js +10 -0
  48. package/datasync/index.js.map +1 -1
  49. package/datasync/locationFsxLustre.d.ts +155 -0
  50. package/datasync/locationFsxLustre.js +94 -0
  51. package/datasync/locationFsxLustre.js.map +1 -0
  52. package/datasync/locationHdfs.d.ts +257 -0
  53. package/datasync/locationHdfs.js +117 -0
  54. package/datasync/locationHdfs.js.map +1 -0
  55. package/dax/cluster.d.ts +18 -0
  56. package/dax/cluster.js +2 -0
  57. package/dax/cluster.js.map +1 -1
  58. package/devicefarm/devicePool.d.ts +170 -0
  59. package/devicefarm/devicePool.js +100 -0
  60. package/devicefarm/devicePool.js.map +1 -0
  61. package/devicefarm/index.d.ts +3 -0
  62. package/devicefarm/index.js +15 -0
  63. package/devicefarm/index.js.map +1 -1
  64. package/devicefarm/networkProfile.d.ts +247 -0
  65. package/devicefarm/networkProfile.js +105 -0
  66. package/devicefarm/networkProfile.js.map +1 -0
  67. package/devicefarm/upload.d.ts +142 -0
  68. package/devicefarm/upload.js +97 -0
  69. package/devicefarm/upload.js.map +1 -0
  70. package/directconnect/privateVirtualInterface.d.ts +3 -0
  71. package/directconnect/privateVirtualInterface.js +2 -0
  72. package/directconnect/privateVirtualInterface.js.map +1 -1
  73. package/directconnect/transitVirtualInterface.d.ts +3 -0
  74. package/directconnect/transitVirtualInterface.js +2 -0
  75. package/directconnect/transitVirtualInterface.js.map +1 -1
  76. package/ec2/defaultSubnet.d.ts +15 -0
  77. package/ec2/defaultSubnet.js +10 -0
  78. package/ec2/defaultSubnet.js.map +1 -1
  79. package/ec2/getSubnet.d.ts +20 -0
  80. package/ec2/getSubnet.js.map +1 -1
  81. package/ec2/index.d.ts +3 -0
  82. package/ec2/index.js +15 -0
  83. package/ec2/index.js.map +1 -1
  84. package/ec2/subnet.d.ts +65 -5
  85. package/ec2/subnet.js +10 -3
  86. package/ec2/subnet.js.map +1 -1
  87. package/ec2/vpcEndpointConnectionAccepter.d.ts +105 -0
  88. package/ec2/vpcEndpointConnectionAccepter.js +98 -0
  89. package/ec2/vpcEndpointConnectionAccepter.js.map +1 -0
  90. package/ec2/vpcIpamOrganizationAdminAccount.d.ts +94 -0
  91. package/ec2/vpcIpamOrganizationAdminAccount.js +85 -0
  92. package/ec2/vpcIpamOrganizationAdminAccount.js.map +1 -0
  93. package/ec2/vpcIpamPoolCidr.d.ts +3 -0
  94. package/ec2/vpcIpamPoolCidr.js +3 -0
  95. package/ec2/vpcIpamPoolCidr.js.map +1 -1
  96. package/ec2/vpcIpamPoolCidrAllocation.d.ts +3 -3
  97. package/ec2/vpcIpamPreviewNextCidr.d.ts +100 -0
  98. package/ec2/vpcIpamPreviewNextCidr.js +90 -0
  99. package/ec2/vpcIpamPreviewNextCidr.js.map +1 -0
  100. package/ecr/replicationConfiguration.d.ts +22 -0
  101. package/ecr/replicationConfiguration.js +22 -0
  102. package/ecr/replicationConfiguration.js.map +1 -1
  103. package/ecs/getTaskDefinition.d.ts +39 -0
  104. package/ecs/getTaskDefinition.js +35 -0
  105. package/ecs/getTaskDefinition.js.map +1 -1
  106. package/fsx/backup.d.ts +15 -0
  107. package/fsx/backup.js +15 -0
  108. package/fsx/backup.js.map +1 -1
  109. package/fsx/index.d.ts +3 -0
  110. package/fsx/index.js +15 -0
  111. package/fsx/index.js.map +1 -1
  112. package/fsx/openZfsFileSystem.d.ts +341 -0
  113. package/fsx/openZfsFileSystem.js +144 -0
  114. package/fsx/openZfsFileSystem.js.map +1 -0
  115. package/fsx/openZfsSnapshot.d.ts +149 -0
  116. package/fsx/openZfsSnapshot.js +107 -0
  117. package/fsx/openZfsSnapshot.js.map +1 -0
  118. package/fsx/openZfsVolume.d.ts +225 -0
  119. package/fsx/openZfsVolume.js +101 -0
  120. package/fsx/openZfsVolume.js.map +1 -0
  121. package/glue/trigger.d.ts +15 -3
  122. package/glue/trigger.js +2 -0
  123. package/glue/trigger.js.map +1 -1
  124. package/index.d.ts +3 -1
  125. package/index.js +7 -2
  126. package/index.js.map +1 -1
  127. package/memorydb/acl.d.ts +142 -0
  128. package/memorydb/acl.js +90 -0
  129. package/memorydb/acl.js.map +1 -0
  130. package/memorydb/cluster.d.ts +388 -0
  131. package/memorydb/cluster.js +140 -0
  132. package/memorydb/cluster.js.map +1 -0
  133. package/memorydb/index.d.ts +5 -0
  134. package/memorydb/index.js +53 -0
  135. package/memorydb/index.js.map +1 -0
  136. package/memorydb/parameterGroup.d.ts +160 -0
  137. package/memorydb/parameterGroup.js +96 -0
  138. package/memorydb/parameterGroup.js.map +1 -0
  139. package/memorydb/subnetGroup.d.ts +146 -0
  140. package/memorydb/subnetGroup.js +96 -0
  141. package/memorydb/subnetGroup.js.map +1 -0
  142. package/memorydb/user.d.ts +138 -0
  143. package/memorydb/user.js +83 -0
  144. package/memorydb/user.js.map +1 -0
  145. package/mskconnect/customPlugin.d.ts +144 -0
  146. package/mskconnect/customPlugin.js +104 -0
  147. package/mskconnect/customPlugin.js.map +1 -0
  148. package/mskconnect/getCustomPlugin.d.ts +61 -0
  149. package/mskconnect/getCustomPlugin.js +38 -0
  150. package/mskconnect/getCustomPlugin.js.map +1 -0
  151. package/mskconnect/getWorkerConfiguration.d.ts +61 -0
  152. package/mskconnect/getWorkerConfiguration.js +38 -0
  153. package/mskconnect/getWorkerConfiguration.js.map +1 -0
  154. package/mskconnect/index.d.ts +4 -0
  155. package/mskconnect/index.js +40 -0
  156. package/mskconnect/index.js.map +1 -0
  157. package/mskconnect/workerConfiguration.d.ts +113 -0
  158. package/mskconnect/workerConfiguration.js +87 -0
  159. package/mskconnect/workerConfiguration.js.map +1 -0
  160. package/organizations/getResourceTags.d.ts +63 -0
  161. package/organizations/getResourceTags.js +39 -0
  162. package/organizations/getResourceTags.js.map +1 -0
  163. package/organizations/index.d.ts +1 -0
  164. package/organizations/index.js +1 -0
  165. package/organizations/index.js.map +1 -1
  166. package/package.json +2 -2
  167. package/package.json.dev +1 -1
  168. package/sagemaker/device.d.ts +97 -0
  169. package/sagemaker/device.js +89 -0
  170. package/sagemaker/device.js.map +1 -0
  171. package/sagemaker/getPrebuiltEcrImage.d.ts +2 -2
  172. package/sagemaker/index.d.ts +1 -0
  173. package/sagemaker/index.js +5 -0
  174. package/sagemaker/index.js.map +1 -1
  175. package/ses/getActiveReceiptRuleSet.d.ts +31 -0
  176. package/ses/getActiveReceiptRuleSet.js +30 -0
  177. package/ses/getActiveReceiptRuleSet.js.map +1 -0
  178. package/ses/getDomainIdentity.d.ts +56 -0
  179. package/ses/getDomainIdentity.js +38 -0
  180. package/ses/getDomainIdentity.js.map +1 -0
  181. package/ses/getEmailIdentity.d.ts +52 -0
  182. package/ses/getEmailIdentity.js +38 -0
  183. package/ses/getEmailIdentity.js.map +1 -0
  184. package/ses/index.d.ts +3 -0
  185. package/ses/index.js +3 -0
  186. package/ses/index.js.map +1 -1
  187. package/sqs/queue.d.ts +16 -0
  188. package/sqs/queue.js +6 -0
  189. package/sqs/queue.js.map +1 -1
  190. package/ssm/getParametersByPath.d.ts +9 -0
  191. package/ssm/getParametersByPath.js +1 -0
  192. package/ssm/getParametersByPath.js.map +1 -1
  193. package/timestreamwrite/table.d.ts +12 -0
  194. package/timestreamwrite/table.js +2 -0
  195. package/timestreamwrite/table.js.map +1 -1
  196. package/types/input.d.ts +409 -11
  197. package/types/output.d.ts +430 -11
  198. package/wafv2/webAclLoggingConfiguration.d.ts +3 -3
@@ -0,0 +1,98 @@
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.VpcEndpointConnectionAccepter = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Provides a resource to accept a pending VPC Endpoint Connection accept request to VPC Endpoint Service.
10
+ *
11
+ * ## Example Usage
12
+ * ### Accept cross-account request
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as aws from "@pulumi/aws";
17
+ *
18
+ * const exampleVpcEndpointService = new aws.ec2.VpcEndpointService("exampleVpcEndpointService", {
19
+ * acceptanceRequired: false,
20
+ * networkLoadBalancerArns: [aws_lb.example.arn],
21
+ * });
22
+ * const exampleVpcEndpoint = new aws.ec2.VpcEndpoint("exampleVpcEndpoint", {
23
+ * vpcId: aws_vpc.test_alternate.id,
24
+ * serviceName: aws_vpc_endpoint_service.test.service_name,
25
+ * vpcEndpointType: "Interface",
26
+ * privateDnsEnabled: false,
27
+ * securityGroupIds: [aws_security_group.test.id],
28
+ * }, {
29
+ * provider: "aws.alternate",
30
+ * });
31
+ * const exampleVpcEndpointConnectionAccepter = new aws.ec2.VpcEndpointConnectionAccepter("exampleVpcEndpointConnectionAccepter", {
32
+ * vpcEndpointServiceId: exampleVpcEndpointService.id,
33
+ * vpcEndpointId: exampleVpcEndpoint.id,
34
+ * });
35
+ * ```
36
+ *
37
+ * ## Import
38
+ *
39
+ * VPC Endpoint Services can be imported using ID of the connection, which is the `VPC Endpoint Service ID` and `VPC Endpoint ID` separated by underscore (`_`). e.g.
40
+ *
41
+ * ```sh
42
+ * $ pulumi import aws:ec2/vpcEndpointConnectionAccepter:VpcEndpointConnectionAccepter foo vpce-svc-0f97a19d3fa8220bc_vpce-010601a6db371e263
43
+ * ```
44
+ */
45
+ class VpcEndpointConnectionAccepter extends pulumi.CustomResource {
46
+ constructor(name, argsOrState, opts) {
47
+ let inputs = {};
48
+ opts = opts || {};
49
+ if (opts.id) {
50
+ const state = argsOrState;
51
+ inputs["vpcEndpointId"] = state ? state.vpcEndpointId : undefined;
52
+ inputs["vpcEndpointServiceId"] = state ? state.vpcEndpointServiceId : undefined;
53
+ inputs["vpcEndpointState"] = state ? state.vpcEndpointState : undefined;
54
+ }
55
+ else {
56
+ const args = argsOrState;
57
+ if ((!args || args.vpcEndpointId === undefined) && !opts.urn) {
58
+ throw new Error("Missing required property 'vpcEndpointId'");
59
+ }
60
+ if ((!args || args.vpcEndpointServiceId === undefined) && !opts.urn) {
61
+ throw new Error("Missing required property 'vpcEndpointServiceId'");
62
+ }
63
+ inputs["vpcEndpointId"] = args ? args.vpcEndpointId : undefined;
64
+ inputs["vpcEndpointServiceId"] = args ? args.vpcEndpointServiceId : undefined;
65
+ inputs["vpcEndpointState"] = undefined /*out*/;
66
+ }
67
+ if (!opts.version) {
68
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
69
+ }
70
+ super(VpcEndpointConnectionAccepter.__pulumiType, name, inputs, opts);
71
+ }
72
+ /**
73
+ * Get an existing VpcEndpointConnectionAccepter resource's state with the given name, ID, and optional extra
74
+ * properties used to qualify the lookup.
75
+ *
76
+ * @param name The _unique_ name of the resulting resource.
77
+ * @param id The _unique_ provider ID of the resource to lookup.
78
+ * @param state Any extra arguments used during the lookup.
79
+ * @param opts Optional settings to control the behavior of the CustomResource.
80
+ */
81
+ static get(name, id, state, opts) {
82
+ return new VpcEndpointConnectionAccepter(name, state, Object.assign(Object.assign({}, opts), { id: id }));
83
+ }
84
+ /**
85
+ * Returns true if the given object is an instance of VpcEndpointConnectionAccepter. This is designed to work even
86
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
87
+ */
88
+ static isInstance(obj) {
89
+ if (obj === undefined || obj === null) {
90
+ return false;
91
+ }
92
+ return obj['__pulumiType'] === VpcEndpointConnectionAccepter.__pulumiType;
93
+ }
94
+ }
95
+ exports.VpcEndpointConnectionAccepter = VpcEndpointConnectionAccepter;
96
+ /** @internal */
97
+ VpcEndpointConnectionAccepter.__pulumiType = 'aws:ec2/vpcEndpointConnectionAccepter:VpcEndpointConnectionAccepter';
98
+ //# sourceMappingURL=vpcEndpointConnectionAccepter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vpcEndpointConnectionAccepter.js","sourceRoot":"","sources":["../../ec2/vpcEndpointConnectionAccepter.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAa,6BAA8B,SAAQ,MAAM,CAAC,cAAc;IAiDpE,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,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,MAAM,CAAC,sBAAsB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3E;aAAM;YACH,MAAM,IAAI,GAAG,WAA4D,CAAC;YAC1E,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,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACvE;YACD,MAAM,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,MAAM,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,MAAM,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAClD;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,qEAAqE,CAAC"}
@@ -0,0 +1,94 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Enables the IPAM Service and promotes a delegated administrator.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * Basic usage:
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as aws from "@pulumi/aws";
12
+ *
13
+ * const delegated = aws.getCallerIdentity({});
14
+ * const example = new aws.ec2.VpcIpamOrganizationAdminAccount("example", {delegatedAdminAccountId: delegated.then(delegated => delegated.accountId)});
15
+ * ```
16
+ *
17
+ * ## Import
18
+ *
19
+ * IPAMs can be imported using the `delegate account id`, e.g.
20
+ *
21
+ * ```sh
22
+ * $ pulumi import aws:ec2/vpcIpamOrganizationAdminAccount:VpcIpamOrganizationAdminAccount example 12345678901
23
+ * ```
24
+ */
25
+ export declare class VpcIpamOrganizationAdminAccount extends pulumi.CustomResource {
26
+ /**
27
+ * Get an existing VpcIpamOrganizationAdminAccount resource's state with the given name, ID, and optional extra
28
+ * properties used to qualify the lookup.
29
+ *
30
+ * @param name The _unique_ name of the resulting resource.
31
+ * @param id The _unique_ provider ID of the resource to lookup.
32
+ * @param state Any extra arguments used during the lookup.
33
+ * @param opts Optional settings to control the behavior of the CustomResource.
34
+ */
35
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcIpamOrganizationAdminAccountState, opts?: pulumi.CustomResourceOptions): VpcIpamOrganizationAdminAccount;
36
+ /**
37
+ * Returns true if the given object is an instance of VpcIpamOrganizationAdminAccount. This is designed to work even
38
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
39
+ */
40
+ static isInstance(obj: any): obj is VpcIpamOrganizationAdminAccount;
41
+ /**
42
+ * The Organizations ARN for the delegate account.
43
+ */
44
+ readonly arn: pulumi.Output<string>;
45
+ readonly delegatedAdminAccountId: pulumi.Output<string>;
46
+ /**
47
+ * The Organizations email for the delegate account.
48
+ */
49
+ readonly email: pulumi.Output<string>;
50
+ /**
51
+ * The Organizations name for the delegate account.
52
+ */
53
+ readonly name: pulumi.Output<string>;
54
+ /**
55
+ * The AWS service principal.
56
+ */
57
+ readonly servicePrincipal: pulumi.Output<string>;
58
+ /**
59
+ * Create a VpcIpamOrganizationAdminAccount resource with the given unique name, arguments, and options.
60
+ *
61
+ * @param name The _unique_ name of the resource.
62
+ * @param args The arguments to use to populate this resource's properties.
63
+ * @param opts A bag of options that control this resource's behavior.
64
+ */
65
+ constructor(name: string, args: VpcIpamOrganizationAdminAccountArgs, opts?: pulumi.CustomResourceOptions);
66
+ }
67
+ /**
68
+ * Input properties used for looking up and filtering VpcIpamOrganizationAdminAccount resources.
69
+ */
70
+ export interface VpcIpamOrganizationAdminAccountState {
71
+ /**
72
+ * The Organizations ARN for the delegate account.
73
+ */
74
+ arn?: pulumi.Input<string>;
75
+ delegatedAdminAccountId?: pulumi.Input<string>;
76
+ /**
77
+ * The Organizations email for the delegate account.
78
+ */
79
+ email?: pulumi.Input<string>;
80
+ /**
81
+ * The Organizations name for the delegate account.
82
+ */
83
+ name?: pulumi.Input<string>;
84
+ /**
85
+ * The AWS service principal.
86
+ */
87
+ servicePrincipal?: pulumi.Input<string>;
88
+ }
89
+ /**
90
+ * The set of arguments for constructing a VpcIpamOrganizationAdminAccount resource.
91
+ */
92
+ export interface VpcIpamOrganizationAdminAccountArgs {
93
+ delegatedAdminAccountId: pulumi.Input<string>;
94
+ }
@@ -0,0 +1,85 @@
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.VpcIpamOrganizationAdminAccount = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Enables the IPAM Service and promotes a delegated administrator.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * Basic usage:
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as aws from "@pulumi/aws";
18
+ *
19
+ * const delegated = aws.getCallerIdentity({});
20
+ * const example = new aws.ec2.VpcIpamOrganizationAdminAccount("example", {delegatedAdminAccountId: delegated.then(delegated => delegated.accountId)});
21
+ * ```
22
+ *
23
+ * ## Import
24
+ *
25
+ * IPAMs can be imported using the `delegate account id`, e.g.
26
+ *
27
+ * ```sh
28
+ * $ pulumi import aws:ec2/vpcIpamOrganizationAdminAccount:VpcIpamOrganizationAdminAccount example 12345678901
29
+ * ```
30
+ */
31
+ class VpcIpamOrganizationAdminAccount extends pulumi.CustomResource {
32
+ constructor(name, argsOrState, opts) {
33
+ let inputs = {};
34
+ opts = opts || {};
35
+ if (opts.id) {
36
+ const state = argsOrState;
37
+ inputs["arn"] = state ? state.arn : undefined;
38
+ inputs["delegatedAdminAccountId"] = state ? state.delegatedAdminAccountId : undefined;
39
+ inputs["email"] = state ? state.email : undefined;
40
+ inputs["name"] = state ? state.name : undefined;
41
+ inputs["servicePrincipal"] = state ? state.servicePrincipal : undefined;
42
+ }
43
+ else {
44
+ const args = argsOrState;
45
+ if ((!args || args.delegatedAdminAccountId === undefined) && !opts.urn) {
46
+ throw new Error("Missing required property 'delegatedAdminAccountId'");
47
+ }
48
+ inputs["delegatedAdminAccountId"] = args ? args.delegatedAdminAccountId : undefined;
49
+ inputs["arn"] = undefined /*out*/;
50
+ inputs["email"] = undefined /*out*/;
51
+ inputs["name"] = undefined /*out*/;
52
+ inputs["servicePrincipal"] = undefined /*out*/;
53
+ }
54
+ if (!opts.version) {
55
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
56
+ }
57
+ super(VpcIpamOrganizationAdminAccount.__pulumiType, name, inputs, opts);
58
+ }
59
+ /**
60
+ * Get an existing VpcIpamOrganizationAdminAccount resource's state with the given name, ID, and optional extra
61
+ * properties used to qualify the lookup.
62
+ *
63
+ * @param name The _unique_ name of the resulting resource.
64
+ * @param id The _unique_ provider ID of the resource to lookup.
65
+ * @param state Any extra arguments used during the lookup.
66
+ * @param opts Optional settings to control the behavior of the CustomResource.
67
+ */
68
+ static get(name, id, state, opts) {
69
+ return new VpcIpamOrganizationAdminAccount(name, state, Object.assign(Object.assign({}, opts), { id: id }));
70
+ }
71
+ /**
72
+ * Returns true if the given object is an instance of VpcIpamOrganizationAdminAccount. This is designed to work even
73
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
74
+ */
75
+ static isInstance(obj) {
76
+ if (obj === undefined || obj === null) {
77
+ return false;
78
+ }
79
+ return obj['__pulumiType'] === VpcIpamOrganizationAdminAccount.__pulumiType;
80
+ }
81
+ }
82
+ exports.VpcIpamOrganizationAdminAccount = VpcIpamOrganizationAdminAccount;
83
+ /** @internal */
84
+ VpcIpamOrganizationAdminAccount.__pulumiType = 'aws:ec2/vpcIpamOrganizationAdminAccount:VpcIpamOrganizationAdminAccount';
85
+ //# sourceMappingURL=vpcIpamOrganizationAdminAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vpcIpamOrganizationAdminAccount.js","sourceRoot":"","sources":["../../ec2/vpcIpamOrganizationAdminAccount.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAa,+BAAgC,SAAQ,MAAM,CAAC,cAAc;IAsDtE,YAAY,IAAY,EAAE,WAAwF,EAAE,IAAmC;QACnJ,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA+D,CAAC;YAC9E,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,yBAAyB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3E;aAAM;YACH,MAAM,IAAI,GAAG,WAA8D,CAAC;YAC5E,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,uBAAuB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aAC1E;YACD,MAAM,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;YACpF,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAClC,MAAM,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YACnC,MAAM,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAClD;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,+BAA+B,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC;IA9ED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA4C,EAAE,IAAmC;QAC1I,OAAO,IAAI,+BAA+B,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACtF,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,+BAA+B,CAAC,YAAY,CAAC;IAChF,CAAC;;AA1BL,0EAgFC;AAlEG,gBAAgB;AACO,4CAAY,GAAG,yEAAyE,CAAC"}
@@ -5,6 +5,9 @@ import { input as inputs, output as outputs } from "../types";
5
5
  *
6
6
  * > **NOTE:** Provisioning Public IPv4 or Public IPv6 require [steps outside the scope of this resource](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#prepare-for-byoip). The resource accepts `message` and `signature` as part of the `cidrAuthorizationContext` attribute but those must be generated ahead of time. Public IPv6 CIDRs that are provisioned into a Pool with `publiclyAdvertisable = true` and all public IPv4 CIDRs also require creating a Route Origin Authorization (ROA) object in your Regional Internet Registry (RIR).
7
7
  *
8
+ * > **NOTE:** In order to deprovision CIDRs all Allocations must be released. Allocations created by a VPC take up to 30 minutes to be released. However, for IPAM to properly manage the removal of allocation records created by VPCs and other resources, you must [grant it permissions](https://docs.aws.amazon.com/vpc/latest/ipam/choose-single-user-or-orgs-ipam.html) in
9
+ * either a single account or organizationally. If you are unable to deprovision a cidr after waiting over 30 minutes, you may be missing the Service Linked Role.
10
+ *
8
11
  * ## Example Usage
9
12
  *
10
13
  * Basic usage:
@@ -10,6 +10,9 @@ const utilities = require("../utilities");
10
10
  *
11
11
  * > **NOTE:** Provisioning Public IPv4 or Public IPv6 require [steps outside the scope of this resource](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#prepare-for-byoip). The resource accepts `message` and `signature` as part of the `cidrAuthorizationContext` attribute but those must be generated ahead of time. Public IPv6 CIDRs that are provisioned into a Pool with `publiclyAdvertisable = true` and all public IPv4 CIDRs also require creating a Route Origin Authorization (ROA) object in your Regional Internet Registry (RIR).
12
12
  *
13
+ * > **NOTE:** In order to deprovision CIDRs all Allocations must be released. Allocations created by a VPC take up to 30 minutes to be released. However, for IPAM to properly manage the removal of allocation records created by VPCs and other resources, you must [grant it permissions](https://docs.aws.amazon.com/vpc/latest/ipam/choose-single-user-or-orgs-ipam.html) in
14
+ * either a single account or organizationally. If you are unable to deprovision a cidr after waiting over 30 minutes, you may be missing the Service Linked Role.
15
+ *
13
16
  * ## Example Usage
14
17
  *
15
18
  * Basic usage:
@@ -1 +1 @@
1
- {"version":3,"file":"vpcIpamPoolCidr.js","sourceRoot":"","sources":["../../ec2/vpcIpamPoolCidr.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,MAAa,eAAgB,SAAQ,MAAM,CAAC,cAAc;IAiDtD,YAAY,IAAY,EAAE,WAAwD,EAAE,IAAmC;QACnH,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA+C,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/D;aAAM;YACH,MAAM,IAAI,GAAG,WAA8C,CAAC;YAC5D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7D;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,eAAe,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IArED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA4B,EAAE,IAAmC;QAC1H,OAAO,IAAI,eAAe,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACtE,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,eAAe,CAAC,YAAY,CAAC;IAChE,CAAC;;AA1BL,0CAuEC;AAzDG,gBAAgB;AACO,4BAAY,GAAG,yCAAyC,CAAC"}
1
+ {"version":3,"file":"vpcIpamPoolCidr.js","sourceRoot":"","sources":["../../ec2/vpcIpamPoolCidr.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,MAAa,eAAgB,SAAQ,MAAM,CAAC,cAAc;IAiDtD,YAAY,IAAY,EAAE,WAAwD,EAAE,IAAmC;QACnH,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA+C,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/D;aAAM;YACH,MAAM,IAAI,GAAG,WAA8C,CAAC;YAC5D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7D;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,eAAe,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IArED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA4B,EAAE,IAAmC;QAC1H,OAAO,IAAI,eAAe,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACtE,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,eAAe,CAAC,YAAY,CAAC;IAChE,CAAC;;AA1BL,0CAuEC;AAzDG,gBAAgB;AACO,4BAAY,GAAG,yCAAyC,CAAC"}
@@ -69,7 +69,7 @@ export declare class VpcIpamPoolCidrAllocation extends pulumi.CustomResource {
69
69
  */
70
70
  readonly ipamPoolId: pulumi.Output<string>;
71
71
  /**
72
- * The netmask length of the CIDR you would like to allocate to the IPAM pool.
72
+ * The netmask length of the CIDR you would like to allocate to the IPAM pool. Valid Values: `0-32`.
73
73
  */
74
74
  readonly netmaskLength: pulumi.Output<number | undefined>;
75
75
  /**
@@ -111,7 +111,7 @@ export interface VpcIpamPoolCidrAllocationState {
111
111
  */
112
112
  ipamPoolId?: pulumi.Input<string>;
113
113
  /**
114
- * The netmask length of the CIDR you would like to allocate to the IPAM pool.
114
+ * The netmask length of the CIDR you would like to allocate to the IPAM pool. Valid Values: `0-32`.
115
115
  */
116
116
  netmaskLength?: pulumi.Input<number>;
117
117
  /**
@@ -144,7 +144,7 @@ export interface VpcIpamPoolCidrAllocationArgs {
144
144
  */
145
145
  ipamPoolId: pulumi.Input<string>;
146
146
  /**
147
- * The netmask length of the CIDR you would like to allocate to the IPAM pool.
147
+ * The netmask length of the CIDR you would like to allocate to the IPAM pool. Valid Values: `0-32`.
148
148
  */
149
149
  netmaskLength?: pulumi.Input<number>;
150
150
  }
@@ -0,0 +1,100 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Previews a CIDR from an IPAM address pool. Only works for private IPv4.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * Basic usage:
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as aws from "@pulumi/aws";
12
+ *
13
+ * const current = aws.getRegion({});
14
+ * const exampleVpcIpam = new aws.ec2.VpcIpam("exampleVpcIpam", {operatingRegions: [{
15
+ * regionName: current.then(current => current.name),
16
+ * }]});
17
+ * const exampleVpcIpamPool = new aws.ec2.VpcIpamPool("exampleVpcIpamPool", {
18
+ * addressFamily: "ipv4",
19
+ * ipamScopeId: exampleVpcIpam.privateDefaultScopeId,
20
+ * locale: current.then(current => current.name),
21
+ * });
22
+ * const exampleVpcIpamPoolCidr = new aws.ec2.VpcIpamPoolCidr("exampleVpcIpamPoolCidr", {
23
+ * ipamPoolId: exampleVpcIpamPool.id,
24
+ * cidr: "172.2.0.0/16",
25
+ * });
26
+ * const exampleVpcIpamPreviewNextCidr = new aws.ec2.VpcIpamPreviewNextCidr("exampleVpcIpamPreviewNextCidr", {
27
+ * ipamPoolId: exampleVpcIpamPool.id,
28
+ * netmaskLength: 28,
29
+ * }, {
30
+ * dependsOn: [exampleVpcIpamPoolCidr],
31
+ * });
32
+ * ```
33
+ */
34
+ export declare class VpcIpamPreviewNextCidr extends pulumi.CustomResource {
35
+ /**
36
+ * Get an existing VpcIpamPreviewNextCidr resource's state with the given name, ID, and optional extra
37
+ * properties used to qualify the lookup.
38
+ *
39
+ * @param name The _unique_ name of the resulting resource.
40
+ * @param id The _unique_ provider ID of the resource to lookup.
41
+ * @param state Any extra arguments used during the lookup.
42
+ * @param opts Optional settings to control the behavior of the CustomResource.
43
+ */
44
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcIpamPreviewNextCidrState, opts?: pulumi.CustomResourceOptions): VpcIpamPreviewNextCidr;
45
+ /**
46
+ * Returns true if the given object is an instance of VpcIpamPreviewNextCidr. This is designed to work even
47
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
48
+ */
49
+ static isInstance(obj: any): obj is VpcIpamPreviewNextCidr;
50
+ /**
51
+ * The previewed CIDR from the pool.
52
+ */
53
+ readonly cidr: pulumi.Output<string>;
54
+ /**
55
+ * The ID of the pool to which you want to assign a CIDR.
56
+ */
57
+ readonly ipamPoolId: pulumi.Output<string>;
58
+ /**
59
+ * The netmask length of the CIDR you would like to preview from the IPAM pool.
60
+ */
61
+ readonly netmaskLength: pulumi.Output<number | undefined>;
62
+ /**
63
+ * Create a VpcIpamPreviewNextCidr resource with the given unique name, arguments, and options.
64
+ *
65
+ * @param name The _unique_ name of the resource.
66
+ * @param args The arguments to use to populate this resource's properties.
67
+ * @param opts A bag of options that control this resource's behavior.
68
+ */
69
+ constructor(name: string, args: VpcIpamPreviewNextCidrArgs, opts?: pulumi.CustomResourceOptions);
70
+ }
71
+ /**
72
+ * Input properties used for looking up and filtering VpcIpamPreviewNextCidr resources.
73
+ */
74
+ export interface VpcIpamPreviewNextCidrState {
75
+ /**
76
+ * The previewed CIDR from the pool.
77
+ */
78
+ cidr?: pulumi.Input<string>;
79
+ /**
80
+ * The ID of the pool to which you want to assign a CIDR.
81
+ */
82
+ ipamPoolId?: pulumi.Input<string>;
83
+ /**
84
+ * The netmask length of the CIDR you would like to preview from the IPAM pool.
85
+ */
86
+ netmaskLength?: pulumi.Input<number>;
87
+ }
88
+ /**
89
+ * The set of arguments for constructing a VpcIpamPreviewNextCidr resource.
90
+ */
91
+ export interface VpcIpamPreviewNextCidrArgs {
92
+ /**
93
+ * The ID of the pool to which you want to assign a CIDR.
94
+ */
95
+ ipamPoolId: pulumi.Input<string>;
96
+ /**
97
+ * The netmask length of the CIDR you would like to preview from the IPAM pool.
98
+ */
99
+ netmaskLength?: pulumi.Input<number>;
100
+ }
@@ -0,0 +1,90 @@
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.VpcIpamPreviewNextCidr = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Previews a CIDR from an IPAM address pool. Only works for private IPv4.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * Basic usage:
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as aws from "@pulumi/aws";
18
+ *
19
+ * const current = aws.getRegion({});
20
+ * const exampleVpcIpam = new aws.ec2.VpcIpam("exampleVpcIpam", {operatingRegions: [{
21
+ * regionName: current.then(current => current.name),
22
+ * }]});
23
+ * const exampleVpcIpamPool = new aws.ec2.VpcIpamPool("exampleVpcIpamPool", {
24
+ * addressFamily: "ipv4",
25
+ * ipamScopeId: exampleVpcIpam.privateDefaultScopeId,
26
+ * locale: current.then(current => current.name),
27
+ * });
28
+ * const exampleVpcIpamPoolCidr = new aws.ec2.VpcIpamPoolCidr("exampleVpcIpamPoolCidr", {
29
+ * ipamPoolId: exampleVpcIpamPool.id,
30
+ * cidr: "172.2.0.0/16",
31
+ * });
32
+ * const exampleVpcIpamPreviewNextCidr = new aws.ec2.VpcIpamPreviewNextCidr("exampleVpcIpamPreviewNextCidr", {
33
+ * ipamPoolId: exampleVpcIpamPool.id,
34
+ * netmaskLength: 28,
35
+ * }, {
36
+ * dependsOn: [exampleVpcIpamPoolCidr],
37
+ * });
38
+ * ```
39
+ */
40
+ class VpcIpamPreviewNextCidr extends pulumi.CustomResource {
41
+ constructor(name, argsOrState, opts) {
42
+ let inputs = {};
43
+ opts = opts || {};
44
+ if (opts.id) {
45
+ const state = argsOrState;
46
+ inputs["cidr"] = state ? state.cidr : undefined;
47
+ inputs["ipamPoolId"] = state ? state.ipamPoolId : undefined;
48
+ inputs["netmaskLength"] = state ? state.netmaskLength : undefined;
49
+ }
50
+ else {
51
+ const args = argsOrState;
52
+ if ((!args || args.ipamPoolId === undefined) && !opts.urn) {
53
+ throw new Error("Missing required property 'ipamPoolId'");
54
+ }
55
+ inputs["ipamPoolId"] = args ? args.ipamPoolId : undefined;
56
+ inputs["netmaskLength"] = args ? args.netmaskLength : undefined;
57
+ inputs["cidr"] = undefined /*out*/;
58
+ }
59
+ if (!opts.version) {
60
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
61
+ }
62
+ super(VpcIpamPreviewNextCidr.__pulumiType, name, inputs, opts);
63
+ }
64
+ /**
65
+ * Get an existing VpcIpamPreviewNextCidr resource's state with the given name, ID, and optional extra
66
+ * properties used to qualify the lookup.
67
+ *
68
+ * @param name The _unique_ name of the resulting resource.
69
+ * @param id The _unique_ provider ID of the resource to lookup.
70
+ * @param state Any extra arguments used during the lookup.
71
+ * @param opts Optional settings to control the behavior of the CustomResource.
72
+ */
73
+ static get(name, id, state, opts) {
74
+ return new VpcIpamPreviewNextCidr(name, state, Object.assign(Object.assign({}, opts), { id: id }));
75
+ }
76
+ /**
77
+ * Returns true if the given object is an instance of VpcIpamPreviewNextCidr. This is designed to work even
78
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
79
+ */
80
+ static isInstance(obj) {
81
+ if (obj === undefined || obj === null) {
82
+ return false;
83
+ }
84
+ return obj['__pulumiType'] === VpcIpamPreviewNextCidr.__pulumiType;
85
+ }
86
+ }
87
+ exports.VpcIpamPreviewNextCidr = VpcIpamPreviewNextCidr;
88
+ /** @internal */
89
+ VpcIpamPreviewNextCidr.__pulumiType = 'aws:ec2/vpcIpamPreviewNextCidr:VpcIpamPreviewNextCidr';
90
+ //# sourceMappingURL=vpcIpamPreviewNextCidr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vpcIpamPreviewNextCidr.js","sourceRoot":"","sources":["../../ec2/vpcIpamPreviewNextCidr.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,sBAAuB,SAAQ,MAAM,CAAC,cAAc;IAiD7D,YAAY,IAAY,EAAE,WAAsE,EAAE,IAAmC;QACjI,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAsD,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;SACrE;aAAM;YACH,MAAM,IAAI,GAAG,WAAqD,CAAC;YACnE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,MAAM,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACtC;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,sBAAsB,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IArED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAmC,EAAE,IAAmC;QACjI,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC7E,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,sBAAsB,CAAC,YAAY,CAAC;IACvE,CAAC;;AA1BL,wDAuEC;AAzDG,gBAAgB;AACO,mCAAY,GAAG,uDAAuD,CAAC"}
@@ -44,6 +44,28 @@ import { input as inputs, output as outputs } from "../types";
44
44
  * }});
45
45
  * ```
46
46
  *
47
+ * ## Repository Filter Usage
48
+ *
49
+ * ```typescript
50
+ * import * as pulumi from "@pulumi/pulumi";
51
+ * import * as aws from "@pulumi/aws";
52
+ *
53
+ * const current = aws.getCallerIdentity({});
54
+ * const exampleRegions = aws.getRegions({});
55
+ * const exampleReplicationConfiguration = new aws.ecr.ReplicationConfiguration("exampleReplicationConfiguration", {replicationConfiguration: {
56
+ * rule: {
57
+ * destinations: [{
58
+ * region: exampleRegions.then(exampleRegions => exampleRegions.names?[0]),
59
+ * registryId: current.then(current => current.accountId),
60
+ * }],
61
+ * repositoryFilters: [{
62
+ * filter: "prod-microservice",
63
+ * filterType: "PREFIX_MATCH",
64
+ * }],
65
+ * },
66
+ * }});
67
+ * ```
68
+ *
47
69
  * ## Import
48
70
  *
49
71
  * ECR Replication Configuration can be imported using the `registry_id`, e.g.,
@@ -49,6 +49,28 @@ const utilities = require("../utilities");
49
49
  * }});
50
50
  * ```
51
51
  *
52
+ * ## Repository Filter Usage
53
+ *
54
+ * ```typescript
55
+ * import * as pulumi from "@pulumi/pulumi";
56
+ * import * as aws from "@pulumi/aws";
57
+ *
58
+ * const current = aws.getCallerIdentity({});
59
+ * const exampleRegions = aws.getRegions({});
60
+ * const exampleReplicationConfiguration = new aws.ecr.ReplicationConfiguration("exampleReplicationConfiguration", {replicationConfiguration: {
61
+ * rule: {
62
+ * destinations: [{
63
+ * region: exampleRegions.then(exampleRegions => exampleRegions.names?[0]),
64
+ * registryId: current.then(current => current.accountId),
65
+ * }],
66
+ * repositoryFilters: [{
67
+ * filter: "prod-microservice",
68
+ * filterType: "PREFIX_MATCH",
69
+ * }],
70
+ * },
71
+ * }});
72
+ * ```
73
+ *
52
74
  * ## Import
53
75
  *
54
76
  * ECR Replication Configuration can be imported using the `registry_id`, e.g.,
@@ -1 +1 @@
1
- {"version":3,"file":"replicationConfiguration.js","sourceRoot":"","sources":["../../ecr/replicationConfiguration.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAa,wBAAyB,SAAQ,MAAM,CAAC,cAAc;IA6C/D,YAAY,IAAY,EAAE,WAA0E,EAAE,IAAmC;QACrI,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwD,CAAC;YACvE,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3F;aAAM;YACH,MAAM,IAAI,GAAG,WAAuD,CAAC;YACrE,MAAM,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC5C;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,wBAAwB,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IA5DD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqC,EAAE,IAAmC;QACnI,OAAO,IAAI,wBAAwB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/E,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,wBAAwB,CAAC,YAAY,CAAC;IACzE,CAAC;;AA1BL,4DA8DC;AAhDG,gBAAgB;AACO,qCAAY,GAAG,2DAA2D,CAAC"}
1
+ {"version":3,"file":"replicationConfiguration.js","sourceRoot":"","sources":["../../ecr/replicationConfiguration.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AACH,MAAa,wBAAyB,SAAQ,MAAM,CAAC,cAAc;IA6C/D,YAAY,IAAY,EAAE,WAA0E,EAAE,IAAmC;QACrI,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwD,CAAC;YACvE,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3F;aAAM;YACH,MAAM,IAAI,GAAG,WAAuD,CAAC;YACrE,MAAM,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC5C;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,wBAAwB,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IA5DD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqC,EAAE,IAAmC;QACnI,OAAO,IAAI,wBAAwB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/E,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,wBAAwB,CAAC,YAAY,CAAC;IACzE,CAAC;;AA1BL,4DA8DC;AAhDG,gBAAgB;AACO,qCAAY,GAAG,2DAA2D,CAAC"}