@reventlessdev/rescript-pulumi-aws 2.4.0-alpha.44 → 2.4.0-alpha.46
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.
- package/CHANGELOG.md +16 -0
- package/package.json +1 -1
- package/src/EC2/EC2_SecurityGroup.res +12 -1
- package/src/EC2/EC2_VpcEndpoint.res +4 -0
- package/src/EC2/EC2_VpcEndpoint.res.mjs +1 -0
- package/src/Lambda/Lambda.res +36 -0
- package/src/Lambda/Lambda.res.mjs +3 -0
- package/src/Rds/Rds.res +8 -0
- package/src/Rds/Rds.res.mjs +21 -0
- package/src/Rds/Rds_Cluster.res +59 -0
- package/src/Rds/Rds_Cluster.res.mjs +2 -0
- package/src/Rds/Rds_ClusterInstance.res +29 -0
- package/src/Rds/Rds_ClusterInstance.res.mjs +2 -0
- package/src/Rds/Rds_Instance.res +59 -0
- package/src/Rds/Rds_Instance.res.mjs +2 -0
- package/src/Rds/Rds_Proxy.res +38 -0
- package/src/Rds/Rds_Proxy.res.mjs +2 -0
- package/src/Rds/Rds_SubnetGroup.res +18 -0
- package/src/Rds/Rds_SubnetGroup.res.mjs +2 -0
- package/src/SecretsManager/SecretsManager.res +6 -0
- package/src/SecretsManager/SecretsManager.res.mjs +15 -0
- package/src/SecretsManager/SecretsManager_Secret.res +23 -0
- package/src/SecretsManager/SecretsManager_Secret.res.mjs +2 -0
- package/src/SecretsManager/SecretsManager_SecretVersion.res +21 -0
- package/src/SecretsManager/SecretsManager_SecretVersion.res.mjs +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 2.4.0-alpha.46 (2026-07-06)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **rescript-pulumi-aws:** add subnetIds to EC2_VpcEndpoint binding ([77fb606](https://github.com/ReventlessDev/reventless-core/commit/77fb6069d76b8026c7c12db433e5f6717b037d39))
|
|
11
|
+
* **reventless-aws:** deploy-time Postgres schema provisioning via in-VPC migration Lambda (A3) ([44c8eee](https://github.com/ReventlessDev/reventless-core/commit/44c8eeebd351e883f2d2e21460108e2963a061ce))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# 2.4.0-alpha.45 (2026-07-05)
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
* **rescript-pulumi-aws:** add RDS, Secrets Manager, and Lambda VPC bindings ([9b4fb3d](https://github.com/ReventlessDev/reventless-core/commit/9b4fb3d0b4173cc6f645a903801e59901dbbdeb2))
|
|
19
|
+
* **reventless-aws:** add PgConnection component + wire reventless-postgres dep ([a403a62](https://github.com/ReventlessDev/reventless-core/commit/a403a6292381513cfe679a2f7a967fda0ab00c0e))
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
# 2.4.0-alpha.44 (2026-06-27)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @reventlessdev/rescript-pulumi-aws
|
package/package.json
CHANGED
|
@@ -4,7 +4,18 @@
|
|
|
4
4
|
type t = {id: Pulumi.Output.t<string>}
|
|
5
5
|
|
|
6
6
|
module Ingress = {
|
|
7
|
-
type t = {
|
|
7
|
+
type t = {
|
|
8
|
+
fromPort: int,
|
|
9
|
+
protocol: string,
|
|
10
|
+
toPort: int,
|
|
11
|
+
cidrBlocks: array<string>,
|
|
12
|
+
/** Allow traffic from other members of this same security group. The
|
|
13
|
+
idiomatic RDS+Lambda pattern: the DB and its client Lambdas share one SG
|
|
14
|
+
and this rule lets them reach the DB port without a separate client SG. */
|
|
15
|
+
self?: bool,
|
|
16
|
+
/** Allow traffic from the given source security group IDs. */
|
|
17
|
+
securityGroups?: array<Pulumi.Input.t<string>>,
|
|
18
|
+
}
|
|
8
19
|
let allowAll = {fromPort: 0, protocol: "-1", toPort: 0, cidrBlocks: ["0.0.0.0/0"]}
|
|
9
20
|
}
|
|
10
21
|
|
|
@@ -11,6 +11,9 @@ type args = {
|
|
|
11
11
|
/** routeTableIds are only relevant if endpointType = Gateway */
|
|
12
12
|
routeTableIds?: array<Pulumi.Input.t<string>>,
|
|
13
13
|
securityGroupIds?: array<Pulumi.Input.t<string>>,
|
|
14
|
+
/** Subnets the Interface endpoint's ENIs are placed in (one per AZ). Required
|
|
15
|
+
for `Interface` endpoints; ignored for `Gateway`. */
|
|
16
|
+
subnetIds?: array<Pulumi.Input.t<string>>,
|
|
14
17
|
serviceName: Pulumi.Input.t<string>,
|
|
15
18
|
tags?: Aws.tags,
|
|
16
19
|
/** Default: Gateway */
|
|
@@ -33,6 +36,7 @@ let make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?)
|
|
|
33
36
|
policy: ?args.policy,
|
|
34
37
|
privateDnsEnabled: ?args.privateDnsEnabled,
|
|
35
38
|
securityGroupIds: ?args.securityGroupIds,
|
|
39
|
+
subnetIds: ?args.subnetIds,
|
|
36
40
|
serviceName: args.serviceName,
|
|
37
41
|
tags: args.tags->EC2_Common.supplementTagsWithName(name),
|
|
38
42
|
vpcEndpointType: ?args.vpcEndpointType,
|
|
@@ -9,6 +9,7 @@ function make(name, args, opts) {
|
|
|
9
9
|
policy: args.policy,
|
|
10
10
|
privateDnsEnabled: args.privateDnsEnabled,
|
|
11
11
|
securityGroupIds: args.securityGroupIds,
|
|
12
|
+
subnetIds: args.subnetIds,
|
|
12
13
|
serviceName: args.serviceName,
|
|
13
14
|
tags: EC2_Common$PulumiAws.supplementTagsWithName(args.tags, name),
|
|
14
15
|
vpcEndpointType: args.vpcEndpointType,
|
package/src/Lambda/Lambda.res
CHANGED
|
@@ -206,6 +206,15 @@ module Function = {
|
|
|
206
206
|
|
|
207
207
|
type ephemeralStorage = {size: Pulumi.Input.t<int>}
|
|
208
208
|
|
|
209
|
+
/** Places the function inside a VPC so it can reach private resources such as
|
|
210
|
+
RDS/Aurora. Adds ENIs to the given subnets and attaches the security
|
|
211
|
+
groups; the execution role then needs `ec2:CreateNetworkInterface`,
|
|
212
|
+
`ec2:DescribeNetworkInterfaces`, `ec2:DeleteNetworkInterface`. */
|
|
213
|
+
type vpcConfig = {
|
|
214
|
+
subnetIds: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
215
|
+
securityGroupIds: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
216
|
+
}
|
|
217
|
+
|
|
209
218
|
type args = {
|
|
210
219
|
handler?: Pulumi.Input.t<string>,
|
|
211
220
|
runtime?: Pulumi.Input.t<string>,
|
|
@@ -219,6 +228,7 @@ module Function = {
|
|
|
219
228
|
sourceCodeHash?: Pulumi.Input.t<string>,
|
|
220
229
|
reservedConcurrentExecutions?: Pulumi.Input.t<int>,
|
|
221
230
|
ephemeralStorage?: Pulumi.Input.t<ephemeralStorage>,
|
|
231
|
+
vpcConfig?: Pulumi.Input.t<vpcConfig>,
|
|
222
232
|
}
|
|
223
233
|
|
|
224
234
|
type t = {
|
|
@@ -258,6 +268,32 @@ module Permission = {
|
|
|
258
268
|
"Permission"
|
|
259
269
|
}
|
|
260
270
|
|
|
271
|
+
module Invocation = {
|
|
272
|
+
/** `aws.lambda.Invocation` — invokes the function **during `pulumi up`** (a
|
|
273
|
+
data-plane action, not a control-plane resource) and re-invokes whenever
|
|
274
|
+
`input` or `triggers` change. Used for one-shot deploy-time work such as
|
|
275
|
+
running a schema migration from inside the target VPC, so the deploy runner
|
|
276
|
+
itself needs no network path to the private resource. */
|
|
277
|
+
type args = {
|
|
278
|
+
functionName: Pulumi.Input.t<string>,
|
|
279
|
+
/** JSON string passed as the Lambda event payload. */
|
|
280
|
+
input: Pulumi.Input.t<string>,
|
|
281
|
+
/** Optional map whose changes force a re-invocation independently of `input`. */
|
|
282
|
+
triggers?: Pulumi.Input.t<dict<string>>,
|
|
283
|
+
qualifier?: Pulumi.Input.t<string>,
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
type t = {
|
|
287
|
+
id: Pulumi.Output.t<string>,
|
|
288
|
+
/** The function's JSON response, as a string. */
|
|
289
|
+
result: Pulumi.Output.t<string>,
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
@module("@pulumi/aws") @scope("lambda") @new
|
|
293
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
294
|
+
"Invocation"
|
|
295
|
+
}
|
|
296
|
+
|
|
261
297
|
let defaultLoggingPolicyDocument = PolicyDocument.make(
|
|
262
298
|
~statements=[
|
|
263
299
|
{
|
|
@@ -72,6 +72,8 @@ let $$Function = {};
|
|
|
72
72
|
|
|
73
73
|
let Permission = {};
|
|
74
74
|
|
|
75
|
+
let Invocation = {};
|
|
76
|
+
|
|
75
77
|
let defaultLoggingPolicyDocument = PolicyDocument$PulumiAws.make(undefined, undefined, [{
|
|
76
78
|
Sid: "DefaultLambdaLoggingPolicy",
|
|
77
79
|
Effect: "Allow",
|
|
@@ -89,6 +91,7 @@ export {
|
|
|
89
91
|
CallbackFunction,
|
|
90
92
|
$$Function,
|
|
91
93
|
Permission,
|
|
94
|
+
Invocation,
|
|
92
95
|
defaultLoggingPolicyDocument,
|
|
93
96
|
}
|
|
94
97
|
/* arn Not a pure module */
|
package/src/Rds/Rds.res
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** @pulumi/aws/rds
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds
|
|
3
|
+
*/
|
|
4
|
+
module Instance = Rds_Instance
|
|
5
|
+
module Cluster = Rds_Cluster
|
|
6
|
+
module ClusterInstance = Rds_ClusterInstance
|
|
7
|
+
module SubnetGroup = Rds_SubnetGroup
|
|
8
|
+
module Proxy = Rds_Proxy
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// Generated by ReScript, PLEASE EDIT WITH CARE
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
let Instance;
|
|
5
|
+
|
|
6
|
+
let Cluster;
|
|
7
|
+
|
|
8
|
+
let ClusterInstance;
|
|
9
|
+
|
|
10
|
+
let SubnetGroup;
|
|
11
|
+
|
|
12
|
+
let $$Proxy;
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
Instance,
|
|
16
|
+
Cluster,
|
|
17
|
+
ClusterInstance,
|
|
18
|
+
SubnetGroup,
|
|
19
|
+
$$Proxy,
|
|
20
|
+
}
|
|
21
|
+
/* No side effect */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/** @pulumi/aws/rds/cluster
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds/cluster
|
|
3
|
+
|
|
4
|
+
Aurora (incl. Aurora Serverless v2) Postgres cluster. Pair with one or more
|
|
5
|
+
`Rds_ClusterInstance` — a cluster has no compute of its own.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/** See `Rds_Instance.masterUserSecret`. */
|
|
9
|
+
type masterUserSecret = {
|
|
10
|
+
kmsKeyId: string,
|
|
11
|
+
secretArn: string,
|
|
12
|
+
secretStatus: string,
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** Aurora Serverless v2 autoscaling bounds, in ACUs (0.5-increment floats). */
|
|
16
|
+
type serverlessv2ScalingConfiguration = {
|
|
17
|
+
maxCapacity: float,
|
|
18
|
+
minCapacity: float,
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
type t = {
|
|
22
|
+
arn: Pulumi.Output.t<string>,
|
|
23
|
+
id: Pulumi.Output.t<string>,
|
|
24
|
+
clusterIdentifier: Pulumi.Output.t<string>,
|
|
25
|
+
/** Writer endpoint hostname. */
|
|
26
|
+
endpoint: Pulumi.Output.t<string>,
|
|
27
|
+
/** Load-balanced reader endpoint hostname. */
|
|
28
|
+
readerEndpoint: Pulumi.Output.t<string>,
|
|
29
|
+
port: Pulumi.Output.t<int>,
|
|
30
|
+
databaseName: Pulumi.Output.t<string>,
|
|
31
|
+
masterUsername: Pulumi.Output.t<string>,
|
|
32
|
+
masterUserSecrets: Pulumi.Output.t<array<masterUserSecret>>,
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
type args = {
|
|
36
|
+
engine: Pulumi.Input.t<string>,
|
|
37
|
+
engineMode?: Pulumi.Input.t<string>,
|
|
38
|
+
engineVersion?: Pulumi.Input.t<string>,
|
|
39
|
+
clusterIdentifier?: Pulumi.Input.t<string>,
|
|
40
|
+
databaseName?: Pulumi.Input.t<string>,
|
|
41
|
+
masterUsername?: Pulumi.Input.t<string>,
|
|
42
|
+
masterPassword?: Pulumi.Input.t<string>,
|
|
43
|
+
manageMasterUserPassword?: Pulumi.Input.t<bool>,
|
|
44
|
+
dbSubnetGroupName?: Pulumi.Input.t<string>,
|
|
45
|
+
vpcSecurityGroupIds?: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
46
|
+
port?: Pulumi.Input.t<int>,
|
|
47
|
+
serverlessv2ScalingConfiguration?: Pulumi.Input.t<serverlessv2ScalingConfiguration>,
|
|
48
|
+
storageEncrypted?: Pulumi.Input.t<bool>,
|
|
49
|
+
backupRetentionPeriod?: Pulumi.Input.t<int>,
|
|
50
|
+
deletionProtection?: Pulumi.Input.t<bool>,
|
|
51
|
+
skipFinalSnapshot?: Pulumi.Input.t<bool>,
|
|
52
|
+
finalSnapshotIdentifier?: Pulumi.Input.t<string>,
|
|
53
|
+
applyImmediately?: Pulumi.Input.t<bool>,
|
|
54
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@module("@pulumi/aws") @scope("rds") @new
|
|
58
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
59
|
+
"Cluster"
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** @pulumi/aws/rds/clusterinstance
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds/clusterinstance
|
|
3
|
+
|
|
4
|
+
A compute node attached to an `Rds_Cluster`. Use `instanceClass =
|
|
5
|
+
"db.serverless"` for Aurora Serverless v2.
|
|
6
|
+
*/
|
|
7
|
+
type t = {
|
|
8
|
+
arn: Pulumi.Output.t<string>,
|
|
9
|
+
id: Pulumi.Output.t<string>,
|
|
10
|
+
/** This node's own endpoint hostname (prefer the cluster writer endpoint). */
|
|
11
|
+
endpoint: Pulumi.Output.t<string>,
|
|
12
|
+
port: Pulumi.Output.t<int>,
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
type args = {
|
|
16
|
+
clusterIdentifier: Pulumi.Input.t<string>,
|
|
17
|
+
instanceClass: Pulumi.Input.t<string>,
|
|
18
|
+
engine: Pulumi.Input.t<string>,
|
|
19
|
+
engineVersion?: Pulumi.Input.t<string>,
|
|
20
|
+
identifier?: Pulumi.Input.t<string>,
|
|
21
|
+
dbSubnetGroupName?: Pulumi.Input.t<string>,
|
|
22
|
+
publiclyAccessible?: Pulumi.Input.t<bool>,
|
|
23
|
+
applyImmediately?: Pulumi.Input.t<bool>,
|
|
24
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
@module("@pulumi/aws") @scope("rds") @new
|
|
28
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
29
|
+
"ClusterInstance"
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/** @pulumi/aws/rds/instance
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds/instance
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/** One entry of `masterUserSecrets`, populated when `manageMasterUserPassword`
|
|
6
|
+
is true — RDS creates and rotates the master password in Secrets Manager and
|
|
7
|
+
reports the secret ARN here. */
|
|
8
|
+
type masterUserSecret = {
|
|
9
|
+
kmsKeyId: string,
|
|
10
|
+
secretArn: string,
|
|
11
|
+
secretStatus: string,
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
type t = {
|
|
15
|
+
arn: Pulumi.Output.t<string>,
|
|
16
|
+
id: Pulumi.Output.t<string>,
|
|
17
|
+
/** Hostname of the instance (no port). */
|
|
18
|
+
address: Pulumi.Output.t<string>,
|
|
19
|
+
/** `address:port`. */
|
|
20
|
+
endpoint: Pulumi.Output.t<string>,
|
|
21
|
+
port: Pulumi.Output.t<int>,
|
|
22
|
+
dbName: Pulumi.Output.t<string>,
|
|
23
|
+
username: Pulumi.Output.t<string>,
|
|
24
|
+
/** Present when `manageMasterUserPassword=true`. */
|
|
25
|
+
masterUserSecrets: Pulumi.Output.t<array<masterUserSecret>>,
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type args = {
|
|
29
|
+
allocatedStorage?: Pulumi.Input.t<int>,
|
|
30
|
+
maxAllocatedStorage?: Pulumi.Input.t<int>,
|
|
31
|
+
engine: Pulumi.Input.t<string>,
|
|
32
|
+
engineVersion?: Pulumi.Input.t<string>,
|
|
33
|
+
instanceClass: Pulumi.Input.t<string>,
|
|
34
|
+
/** Name of the initial database created inside the instance. */
|
|
35
|
+
dbName?: Pulumi.Input.t<string>,
|
|
36
|
+
identifier?: Pulumi.Input.t<string>,
|
|
37
|
+
username?: Pulumi.Input.t<string>,
|
|
38
|
+
password?: Pulumi.Input.t<string>,
|
|
39
|
+
/** Let RDS manage the master password in Secrets Manager (mutually
|
|
40
|
+
exclusive with `password`). Secret ARN surfaces on `masterUserSecrets`. */
|
|
41
|
+
manageMasterUserPassword?: Pulumi.Input.t<bool>,
|
|
42
|
+
dbSubnetGroupName?: Pulumi.Input.t<string>,
|
|
43
|
+
vpcSecurityGroupIds?: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
44
|
+
port?: Pulumi.Input.t<int>,
|
|
45
|
+
multiAz?: Pulumi.Input.t<bool>,
|
|
46
|
+
publiclyAccessible?: Pulumi.Input.t<bool>,
|
|
47
|
+
storageEncrypted?: Pulumi.Input.t<bool>,
|
|
48
|
+
backupRetentionPeriod?: Pulumi.Input.t<int>,
|
|
49
|
+
deletionProtection?: Pulumi.Input.t<bool>,
|
|
50
|
+
skipFinalSnapshot?: Pulumi.Input.t<bool>,
|
|
51
|
+
finalSnapshotIdentifier?: Pulumi.Input.t<string>,
|
|
52
|
+
applyImmediately?: Pulumi.Input.t<bool>,
|
|
53
|
+
parameterGroupName?: Pulumi.Input.t<string>,
|
|
54
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@module("@pulumi/aws") @scope("rds") @new
|
|
58
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
59
|
+
"Instance"
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** @pulumi/aws/rds/proxy
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds/proxy
|
|
3
|
+
|
|
4
|
+
RDS Proxy multiplexes many Lambda-container connections onto a small pool of
|
|
5
|
+
DB connections. At Lambda fan-out scale this is the recommended fronting for
|
|
6
|
+
RDS/Aurora; pair with the `#RowLocks` DCB strategy (advisory locks pin
|
|
7
|
+
connections and defeat the proxy — see the AWS-deployment guide).
|
|
8
|
+
*/
|
|
9
|
+
type auth = {
|
|
10
|
+
authScheme?: string,
|
|
11
|
+
iamAuth?: string,
|
|
12
|
+
secretArn?: Pulumi.Input.t<string>,
|
|
13
|
+
description?: string,
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
type t = {
|
|
17
|
+
arn: Pulumi.Output.t<string>,
|
|
18
|
+
id: Pulumi.Output.t<string>,
|
|
19
|
+
/** Proxy endpoint hostname — Lambdas connect here instead of the DB. */
|
|
20
|
+
endpoint: Pulumi.Output.t<string>,
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
type args = {
|
|
24
|
+
name?: Pulumi.Input.t<string>,
|
|
25
|
+
engineFamily: Pulumi.Input.t<string>,
|
|
26
|
+
auths: Pulumi.Input.t<array<Pulumi.Input.t<auth>>>,
|
|
27
|
+
roleArn: Pulumi.Input.t<string>,
|
|
28
|
+
vpcSubnetIds: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
29
|
+
vpcSecurityGroupIds?: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
30
|
+
requireTls?: Pulumi.Input.t<bool>,
|
|
31
|
+
idleClientTimeout?: Pulumi.Input.t<int>,
|
|
32
|
+
debugLogging?: Pulumi.Input.t<bool>,
|
|
33
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@module("@pulumi/aws") @scope("rds") @new
|
|
37
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
38
|
+
"Proxy"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** @pulumi/aws/rds/subnetgroup
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/rds/subnetgroup
|
|
3
|
+
*/
|
|
4
|
+
type t = {
|
|
5
|
+
arn: Pulumi.Output.t<string>,
|
|
6
|
+
id: Pulumi.Output.t<string>,
|
|
7
|
+
name: Pulumi.Output.t<string>,
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type args = {
|
|
11
|
+
name?: Pulumi.Input.t<string>,
|
|
12
|
+
subnetIds: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
13
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@module("@pulumi/aws") @scope("rds") @new
|
|
17
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
18
|
+
"SubnetGroup"
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** @pulumi/aws/secretsmanager/secret
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/secretsmanager/secret
|
|
3
|
+
*/
|
|
4
|
+
type t = {
|
|
5
|
+
arn: Pulumi.Output.t<string>,
|
|
6
|
+
id: Pulumi.Output.t<string>,
|
|
7
|
+
name: Pulumi.Output.t<string>,
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type args = {
|
|
11
|
+
name?: Pulumi.Input.t<string>,
|
|
12
|
+
namePrefix?: Pulumi.Input.t<string>,
|
|
13
|
+
description?: Pulumi.Input.t<string>,
|
|
14
|
+
kmsKeyId?: Pulumi.Input.t<string>,
|
|
15
|
+
/** Days before a deleted secret is irrecoverably purged. Set `0` to delete
|
|
16
|
+
immediately (handy for throwaway CI/dev stacks). */
|
|
17
|
+
recoveryWindowInDays?: Pulumi.Input.t<int>,
|
|
18
|
+
tags?: Pulumi.Input.t<Aws.tags>,
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@module("@pulumi/aws") @scope("secretsmanager") @new
|
|
22
|
+
external make: (~name: string, ~args: args=?, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
23
|
+
"Secret"
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** @pulumi/aws/secretsmanager/secretversion
|
|
2
|
+
see: https://www.pulumi.com/registry/packages/aws/api-docs/secretsmanager/secretversion
|
|
3
|
+
*/
|
|
4
|
+
type t = {
|
|
5
|
+
arn: Pulumi.Output.t<string>,
|
|
6
|
+
id: Pulumi.Output.t<string>,
|
|
7
|
+
versionId: Pulumi.Output.t<string>,
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type args = {
|
|
11
|
+
secretId: Pulumi.Input.t<string>,
|
|
12
|
+
/** Plaintext secret payload (typically a JSON connection blob). Prefer
|
|
13
|
+
`secretString` over `secretBinary`. */
|
|
14
|
+
secretString?: Pulumi.Input.t<string>,
|
|
15
|
+
secretBinary?: Pulumi.Input.t<string>,
|
|
16
|
+
versionStages?: Pulumi.Input.t<array<Pulumi.Input.t<string>>>,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@module("@pulumi/aws") @scope("secretsmanager") @new
|
|
20
|
+
external make: (~name: string, ~args: args, ~opts: Pulumi.CustomResourceOptions.t=?) => t =
|
|
21
|
+
"SecretVersion"
|