@webda/aws 4.0.0-beta.3 → 4.0.0-beta.5
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/lib/deployers/awsdeployer.d.ts +340 -0
- package/lib/deployers/awsdeployer.d.ts.map +1 -0
- package/lib/deployers/awsdeployer.js +673 -0
- package/lib/deployers/awsdeployer.js.map +1 -0
- package/lib/deployers/cloudformation.service.d.ts +438 -0
- package/lib/deployers/cloudformation.service.d.ts.map +1 -0
- package/lib/deployers/cloudformation.service.js +889 -0
- package/lib/deployers/cloudformation.service.js.map +1 -0
- package/lib/deployers/index.d.ts +5 -0
- package/lib/deployers/index.d.ts.map +1 -0
- package/lib/deployers/index.js +5 -0
- package/lib/deployers/index.js.map +1 -0
- package/lib/deployers/lambda-entrypoint.d.ts +34 -0
- package/lib/deployers/lambda-entrypoint.d.ts.map +1 -0
- package/lib/deployers/lambda-entrypoint.js +47 -0
- package/lib/deployers/lambda-entrypoint.js.map +1 -0
- package/lib/deployers/lambdapackager.service.d.ts +123 -0
- package/lib/deployers/lambdapackager.service.d.ts.map +1 -0
- package/lib/deployers/lambdapackager.service.js +149 -0
- package/lib/deployers/lambdapackager.service.js.map +1 -0
- package/lib/deployers/zip.d.ts +42 -0
- package/lib/deployers/zip.d.ts.map +1 -0
- package/lib/deployers/zip.js +129 -0
- package/lib/deployers/zip.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/services/contributors.d.ts +1 -2
- package/lib/services/contributors.d.ts.map +1 -1
- package/lib/services/dynamodb.service.d.ts +2 -1
- package/lib/services/dynamodb.service.d.ts.map +1 -1
- package/lib/services/dynamodb.service.js +5 -4
- package/lib/services/dynamodb.service.js.map +1 -1
- package/lib/services/s3binary.service.d.ts.map +1 -1
- package/lib/services/s3binary.service.js +21 -20
- package/lib/services/s3binary.service.js.map +1 -1
- package/package.json +12 -14
- package/webda.module.json +698 -4
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
import { CertificateDetail } from "@aws-sdk/client-acm";
|
|
2
|
+
import { HostedZone, RRType } from "@aws-sdk/client-route-53";
|
|
3
|
+
import { S3 } from "@aws-sdk/client-s3";
|
|
4
|
+
import { GetCallerIdentityResponse } from "@aws-sdk/client-sts";
|
|
5
|
+
import { Service, ServiceParameters } from "@webda/core";
|
|
6
|
+
/**
|
|
7
|
+
* Tags as an AWS array or as a map
|
|
8
|
+
*/
|
|
9
|
+
export type TagsDefinition = {
|
|
10
|
+
Key: string;
|
|
11
|
+
Value: string;
|
|
12
|
+
}[] | {
|
|
13
|
+
[key: string]: string;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* AWS clients a deployer can target with a custom endpoint
|
|
17
|
+
*/
|
|
18
|
+
export type AWSDeployerEndpoint = "ACM" | "S3" | "STS" | "EC2" | "Route53" | "CloudFormation" | "APIGateway" | "CloudFront";
|
|
19
|
+
/**
|
|
20
|
+
* Common parameters of the AWS deployers
|
|
21
|
+
*
|
|
22
|
+
* A deployer is declared as a unit of a deployment (`deployments/<name>.json`),
|
|
23
|
+
* its parameters can use the `${...}` deployment variables ({@link getDeploymentVariables})
|
|
24
|
+
*/
|
|
25
|
+
export declare class AWSDeployerParameters extends ServiceParameters {
|
|
26
|
+
/**
|
|
27
|
+
* Name of the unit
|
|
28
|
+
*/
|
|
29
|
+
name?: string;
|
|
30
|
+
/**
|
|
31
|
+
* AWS_ACCESS_KEY_ID to use
|
|
32
|
+
*
|
|
33
|
+
* Using static key is not recommended
|
|
34
|
+
*/
|
|
35
|
+
accessKeyId?: string;
|
|
36
|
+
/**
|
|
37
|
+
* AWS_SECRET_ACCESS_KEY to use
|
|
38
|
+
*
|
|
39
|
+
* Using static key is not recommended
|
|
40
|
+
*/
|
|
41
|
+
secretAccessKey?: string;
|
|
42
|
+
/**
|
|
43
|
+
* AWS_SESSION_TOKEN Token
|
|
44
|
+
*
|
|
45
|
+
* Even if it is possible to add it here
|
|
46
|
+
* It is not sustainable as this token at its best will
|
|
47
|
+
* have a lifetime of 12 hours
|
|
48
|
+
*/
|
|
49
|
+
sessionToken?: string;
|
|
50
|
+
/**
|
|
51
|
+
* AWS_REGION to use
|
|
52
|
+
*
|
|
53
|
+
* @default "us-east-1"
|
|
54
|
+
*/
|
|
55
|
+
region?: string;
|
|
56
|
+
/**
|
|
57
|
+
* AWS Account Id
|
|
58
|
+
*/
|
|
59
|
+
AWSAccountId?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Endpoints to use by differents services
|
|
62
|
+
* Usefull to test with localstack or other AWS emulations
|
|
63
|
+
*/
|
|
64
|
+
endpoints?: {
|
|
65
|
+
[key in AWSDeployerEndpoint]?: string;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Default Tags to use with resources created by deployers
|
|
69
|
+
*/
|
|
70
|
+
Tags?: TagsDefinition;
|
|
71
|
+
/**
|
|
72
|
+
* SSL certificates to create
|
|
73
|
+
*
|
|
74
|
+
* Sample
|
|
75
|
+
* ```
|
|
76
|
+
* Certificates: {
|
|
77
|
+
* "test.webda.io": {
|
|
78
|
+
* SubjectAlternativeNames: ["test2.webda.io"]
|
|
79
|
+
* }
|
|
80
|
+
* }
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
Certificates?: {
|
|
84
|
+
[key: string]: {
|
|
85
|
+
/**
|
|
86
|
+
* Any alternative names to add to the certificate
|
|
87
|
+
*/
|
|
88
|
+
SubjectAlternativeNames?: string[];
|
|
89
|
+
Tags?: TagsDefinition;
|
|
90
|
+
[key: string]: any;
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Plain resources of a deployer: its parameters with the deployment variables replaced
|
|
96
|
+
*/
|
|
97
|
+
export type DeployerResources<T> = Omit<T, "load" | "update" | "with" | "watch">;
|
|
98
|
+
/**
|
|
99
|
+
* Abstract AWS Deployer
|
|
100
|
+
*
|
|
101
|
+
* It includes some basic utilities methods to be used by
|
|
102
|
+
* final deployers. A final deployer declares `implements Deployer` itself.
|
|
103
|
+
*/
|
|
104
|
+
export declare abstract class AWSDeployer<T extends AWSDeployerParameters = AWSDeployerParameters> extends Service<T> {
|
|
105
|
+
/**
|
|
106
|
+
* Parameters of the deployer with the deployment variables replaced and the defaults applied
|
|
107
|
+
*
|
|
108
|
+
* Computed by {@link AWSDeployer.prepare}
|
|
109
|
+
*/
|
|
110
|
+
resources: DeployerResources<T> & {
|
|
111
|
+
[key: string]: any;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Compute the resources from the parameters
|
|
115
|
+
*
|
|
116
|
+
* @param extra - additional deployment variables
|
|
117
|
+
* @returns the resources
|
|
118
|
+
*/
|
|
119
|
+
prepare(extra?: Record<string, any>): Promise<this["resources"]>;
|
|
120
|
+
/**
|
|
121
|
+
* Parameters as a plain object
|
|
122
|
+
* @returns a copy of the parameters
|
|
123
|
+
*/
|
|
124
|
+
protected getRawParameters(): any;
|
|
125
|
+
/**
|
|
126
|
+
* Apply the default resources
|
|
127
|
+
*/
|
|
128
|
+
defaultResources(): Promise<void>;
|
|
129
|
+
/**
|
|
130
|
+
* Configuration of an AWS client
|
|
131
|
+
*
|
|
132
|
+
* @param endpoint - the client, to use its custom endpoint
|
|
133
|
+
* @param region - force a region
|
|
134
|
+
* @returns the client configuration
|
|
135
|
+
*/
|
|
136
|
+
getClientConfig(endpoint?: AWSDeployerEndpoint, region?: string): any;
|
|
137
|
+
/**
|
|
138
|
+
* Return AWS region
|
|
139
|
+
* @returns the region
|
|
140
|
+
*/
|
|
141
|
+
getRegion(): string;
|
|
142
|
+
/**
|
|
143
|
+
* Return the current AWS Identity used
|
|
144
|
+
* @returns the identity
|
|
145
|
+
*/
|
|
146
|
+
getAWSIdentity(): Promise<GetCallerIdentityResponse>;
|
|
147
|
+
/**
|
|
148
|
+
* Return the default VPC for the current region
|
|
149
|
+
* @returns the VPC id and its subnets, undefined if there is no default VPC
|
|
150
|
+
*/
|
|
151
|
+
getDefaultVpc(): Promise<{
|
|
152
|
+
Id: string;
|
|
153
|
+
Subnets: any[];
|
|
154
|
+
} | undefined>;
|
|
155
|
+
/**
|
|
156
|
+
* Generate a MD5 in hex
|
|
157
|
+
* @param str - to hash
|
|
158
|
+
* @returns the hash
|
|
159
|
+
*/
|
|
160
|
+
protected md5(str: string): string;
|
|
161
|
+
/**
|
|
162
|
+
* Hash the string
|
|
163
|
+
*
|
|
164
|
+
* @param str - to hash
|
|
165
|
+
* @param type - of hash
|
|
166
|
+
* @param format - hex or b64
|
|
167
|
+
* @returns the hash
|
|
168
|
+
*/
|
|
169
|
+
protected hash(str: string | Buffer, type?: string, format?: "hex" | "base64"): string;
|
|
170
|
+
/**
|
|
171
|
+
* Replace / by _ as theses ID are not allowed in AWS
|
|
172
|
+
*
|
|
173
|
+
* @param id - to replace
|
|
174
|
+
* @returns the AWS compatible id
|
|
175
|
+
*/
|
|
176
|
+
_replaceForAWS(id: string): string;
|
|
177
|
+
/**
|
|
178
|
+
* Get a certificate or create it
|
|
179
|
+
*
|
|
180
|
+
* @param domain - to get certificate for
|
|
181
|
+
* @param region - of the certificate
|
|
182
|
+
* @returns the certificate
|
|
183
|
+
*/
|
|
184
|
+
getCertificate(domain: string, region?: string): Promise<any>;
|
|
185
|
+
/**
|
|
186
|
+
* Get the closest zone to the domain
|
|
187
|
+
*
|
|
188
|
+
* @param domain - to get zone for
|
|
189
|
+
* @returns the zone
|
|
190
|
+
*/
|
|
191
|
+
getZoneForDomainName(domain: string): Promise<HostedZone>;
|
|
192
|
+
/**
|
|
193
|
+
* Transform a tag map into a tag array
|
|
194
|
+
*
|
|
195
|
+
* @param tags - to transform
|
|
196
|
+
* @returns the tags array
|
|
197
|
+
*/
|
|
198
|
+
transformMapTagsToArray(tags: TagsDefinition): {
|
|
199
|
+
Key: string;
|
|
200
|
+
Value: string;
|
|
201
|
+
}[];
|
|
202
|
+
/**
|
|
203
|
+
* Transform a tag array into a tag map
|
|
204
|
+
*
|
|
205
|
+
* @param tags - to transform
|
|
206
|
+
* @returns the tags map
|
|
207
|
+
*/
|
|
208
|
+
transformArrayTagsToMap(tags: TagsDefinition): {
|
|
209
|
+
[key: string]: string;
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
* Take this.resources[key].Tags and add all remaining Tags from this.resources.Tags
|
|
213
|
+
*
|
|
214
|
+
* @param key - of the resources to add, or the tags themselves
|
|
215
|
+
* @returns the tags array
|
|
216
|
+
*/
|
|
217
|
+
getDefaultTags(key?: string | TagsDefinition): {
|
|
218
|
+
Key: string;
|
|
219
|
+
Value: string;
|
|
220
|
+
}[];
|
|
221
|
+
/**
|
|
222
|
+
* Take this.resources[key].Tags and add all remaining Tags from this.resources.Tags
|
|
223
|
+
*
|
|
224
|
+
* @param key - of the resources to add
|
|
225
|
+
* @returns the tags map
|
|
226
|
+
*/
|
|
227
|
+
getDefaultTagsAsMap(key?: string | TagsDefinition): {
|
|
228
|
+
[key: string]: string;
|
|
229
|
+
};
|
|
230
|
+
/**
|
|
231
|
+
* Return the S3 Tagging string
|
|
232
|
+
* @param key - of the resources to add
|
|
233
|
+
* @returns the url encoded tags
|
|
234
|
+
*/
|
|
235
|
+
getDefaultTagsAsS3Tagging(key?: string | TagsDefinition): string;
|
|
236
|
+
/**
|
|
237
|
+
* Wait for a condition with a linear delay
|
|
238
|
+
*
|
|
239
|
+
* @param callback - resolve when done, return true to stop
|
|
240
|
+
* @param retries - maximum number of tries
|
|
241
|
+
* @param title - of the wait
|
|
242
|
+
* @param delay - between tries in ms
|
|
243
|
+
* @returns the resolved value
|
|
244
|
+
*/
|
|
245
|
+
waitFor(callback: (resolve?: (value?: any) => void, reject?: (reason?: any) => void) => Promise<boolean>, retries: number, title: string, delay: number): Promise<any>;
|
|
246
|
+
/**
|
|
247
|
+
* Create a certificate for a domain
|
|
248
|
+
* Will use Route 53 to do the validation
|
|
249
|
+
*
|
|
250
|
+
* @param domain - to create the certificate for
|
|
251
|
+
* @param zone - to create the validation record in
|
|
252
|
+
* @param region - of the certificate
|
|
253
|
+
* @returns the certificate
|
|
254
|
+
*/
|
|
255
|
+
doCreateCertificate(domain: string, zone: HostedZone, region?: string): Promise<CertificateDetail>;
|
|
256
|
+
/**
|
|
257
|
+
* Create DNS entry
|
|
258
|
+
*
|
|
259
|
+
* @param domain - to create
|
|
260
|
+
* @param type - of DNS
|
|
261
|
+
* @param value - the value of the record
|
|
262
|
+
* @param targetZone - the zone, found from the domain if not provided
|
|
263
|
+
*/
|
|
264
|
+
createDNSEntry(domain: string, type: RRType, value: string, targetZone?: HostedZone): Promise<void>;
|
|
265
|
+
/**
|
|
266
|
+
* Permissions needed by the deployed application itself
|
|
267
|
+
*
|
|
268
|
+
* @param accountId - the account
|
|
269
|
+
* @param region - the region
|
|
270
|
+
* @returns the policy statements
|
|
271
|
+
*/
|
|
272
|
+
getARNPolicy(accountId: string, region: string): any[];
|
|
273
|
+
/**
|
|
274
|
+
* Generate the `PolicyDocument`
|
|
275
|
+
*
|
|
276
|
+
* It will browse all services for a method `getARNPolicy`
|
|
277
|
+
* Allowing you to write some specific Service or Bean that
|
|
278
|
+
* requires specific AWS permissions
|
|
279
|
+
*
|
|
280
|
+
* @param additionalStatements - statements to add
|
|
281
|
+
* @returns the optimized policy document
|
|
282
|
+
*/
|
|
283
|
+
getPolicyDocument(additionalStatements?: any[]): Promise<any>;
|
|
284
|
+
/**
|
|
285
|
+
* Services of the application, the deployers excluded
|
|
286
|
+
*
|
|
287
|
+
* @returns the services
|
|
288
|
+
*/
|
|
289
|
+
getApplicationServices(): Service[];
|
|
290
|
+
/**
|
|
291
|
+
* Create a bucket if it does not exist
|
|
292
|
+
*
|
|
293
|
+
* @param Bucket - to create
|
|
294
|
+
*/
|
|
295
|
+
createBucket(Bucket: string): Promise<void>;
|
|
296
|
+
/**
|
|
297
|
+
* S3 client
|
|
298
|
+
* @returns the client
|
|
299
|
+
*/
|
|
300
|
+
protected getS3(): S3;
|
|
301
|
+
/**
|
|
302
|
+
* Send a full folder (recursive) on bucket
|
|
303
|
+
*
|
|
304
|
+
* @param bucket - to send data to
|
|
305
|
+
* @param folder - path to local folder to send
|
|
306
|
+
* @param prefix - prefix on the bucket
|
|
307
|
+
*/
|
|
308
|
+
putFolderOnBucket(bucket: string, folder: string, prefix?: string): Promise<void>;
|
|
309
|
+
/**
|
|
310
|
+
* Find the common prefix between two strings
|
|
311
|
+
*
|
|
312
|
+
* Example
|
|
313
|
+
* ```
|
|
314
|
+
* commonPrefix("/test/plop1", "/templates/") => "/te"
|
|
315
|
+
* ```
|
|
316
|
+
*
|
|
317
|
+
* @param str1 - to compare
|
|
318
|
+
* @param str2 - to compare
|
|
319
|
+
* @returns the common prefix
|
|
320
|
+
*/
|
|
321
|
+
commonPrefix(str1: string, str2: string): string;
|
|
322
|
+
/**
|
|
323
|
+
* Add files to a bucket
|
|
324
|
+
*
|
|
325
|
+
* It uses hash and ETag to avoid uploading files already present
|
|
326
|
+
*
|
|
327
|
+
* The files src can be either:
|
|
328
|
+
* - a string representing the local path
|
|
329
|
+
* - a Buffer with the dynamic content
|
|
330
|
+
*
|
|
331
|
+
* @param bucket - to send bucket
|
|
332
|
+
* @param files - to send
|
|
333
|
+
*/
|
|
334
|
+
putFilesOnBucket(bucket: string, files: {
|
|
335
|
+
key?: string;
|
|
336
|
+
src: any;
|
|
337
|
+
mimetype?: string;
|
|
338
|
+
}[]): Promise<void>;
|
|
339
|
+
}
|
|
340
|
+
//# sourceMappingURL=awsdeployer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"awsdeployer.d.ts","sourceRoot":"","sources":["../../src/deployers/awsdeployer.ts"],"names":[],"mappings":"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"}
|