@remotion/lambda 4.0.0-copy.4 → 4.0.0-esm.17
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/LICENSE.md +1 -1
- package/dist/admin/bundle-lambda.js +20 -4
- package/dist/admin/generate-etag-list.d.ts +1 -0
- package/dist/admin/generate-etag-list.js +14 -0
- package/dist/admin/make-layer-public.js +23 -1
- package/dist/api/deploy-function.js +3 -1
- package/dist/api/deploy-site.d.ts +5 -0
- package/dist/api/deploy-site.js +39 -21
- package/dist/api/get-aws-client.d.ts +2 -0
- package/dist/api/get-aws-client.js +2 -0
- package/dist/api/get-buckets.js +26 -9
- package/dist/api/get-compositions-on-lambda.d.ts +2 -1
- package/dist/api/get-compositions-on-lambda.js +1 -3
- package/dist/api/get-or-create-bucket.js +2 -7
- package/dist/api/get-regions.d.ts +5 -1
- package/dist/api/get-regions.js +5 -2
- package/dist/api/iam-validation/simulate-rule.js +0 -22
- package/dist/api/iam-validation/simulate.js +24 -5
- package/dist/api/iam-validation/user-permissions.js +0 -8
- package/dist/api/render-media-on-lambda.d.ts +2 -1
- package/dist/api/render-media-on-lambda.js +6 -10
- package/dist/api/render-still-on-lambda.d.ts +2 -1
- package/dist/api/render-still-on-lambda.js +1 -3
- package/dist/api/upload-dir.d.ts +4 -3
- package/dist/api/upload-dir.js +33 -19
- package/dist/cli/args.d.ts +1 -0
- package/dist/cli/commands/compositions/index.js +1 -3
- package/dist/cli/commands/regions.js +5 -1
- package/dist/cli/commands/render/progress.d.ts +6 -3
- package/dist/cli/commands/render/progress.js +49 -39
- package/dist/cli/commands/render/render.js +17 -4
- package/dist/cli/commands/sites/create.js +12 -4
- package/dist/cli/commands/still.js +5 -9
- package/dist/cli/helpers/progress-bar.d.ts +9 -3
- package/dist/cli/helpers/progress-bar.js +19 -3
- package/dist/cli/index.js +6 -1
- package/dist/functions/compositions.js +10 -3
- package/dist/functions/helpers/concat-videos.d.ts +10 -6
- package/dist/functions/helpers/concat-videos.js +8 -25
- package/dist/functions/helpers/create-post-render-data.js +0 -12
- package/dist/functions/helpers/expected-out-name.js +1 -1
- package/dist/functions/helpers/get-chromium-executable-path.js +2 -1
- package/dist/functions/helpers/get-current-region.d.ts +1 -1
- package/dist/functions/helpers/get-encoding-metadata.d.ts +4 -8
- package/dist/functions/helpers/get-encoding-metadata.js +4 -18
- package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -4
- package/dist/functions/helpers/get-final-encoding-status.js +1 -4
- package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +1 -5
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +1 -9
- package/dist/functions/helpers/get-overall-progress.d.ts +2 -1
- package/dist/functions/helpers/get-overall-progress.js +7 -5
- package/dist/functions/helpers/get-progress.js +40 -26
- package/dist/functions/helpers/get-rendered-frames-progress.d.ts +8 -0
- package/dist/functions/helpers/get-rendered-frames-progress.js +37 -0
- package/dist/functions/launch.js +50 -38
- package/dist/functions/renderer.js +19 -24
- package/dist/functions/start.js +9 -2
- package/dist/functions/still.js +16 -5
- package/dist/index.d.ts +9 -2
- package/dist/index.js +10 -2
- package/dist/pricing/aws-regions.d.ts +2 -1
- package/dist/pricing/aws-regions.js +31 -1
- package/dist/pricing/price-per-1-s.js +413 -39
- package/dist/shared/aws-clients.d.ts +3 -0
- package/dist/shared/aws-clients.js +75 -13
- package/dist/shared/check-credentials.js +3 -0
- package/dist/shared/chunk-progress.d.ts +9 -0
- package/dist/shared/chunk-progress.js +2034 -0
- package/dist/shared/constants.d.ts +13 -12
- package/dist/shared/convert-to-serve-url.d.ts +5 -1
- package/dist/shared/convert-to-serve-url.js +1 -5
- package/dist/shared/deserialize-input-props.d.ts +1 -1
- package/dist/shared/deserialize-input-props.js +1 -1
- package/dist/shared/function-zip-path.d.ts +2 -1
- package/dist/shared/function-zip-path.js +3 -2
- package/dist/shared/get-account-id.js +4 -6
- package/dist/shared/get-etag.d.ts +1 -0
- package/dist/shared/get-etag.js +24 -0
- package/dist/shared/get-s3-operations.d.ts +10 -0
- package/dist/shared/get-s3-operations.js +36 -0
- package/dist/shared/hosted-layers.js +368 -60
- package/dist/shared/invoke-webhook.d.ts +2 -0
- package/dist/shared/parse-chunk-key.d.ts +4 -0
- package/dist/shared/parse-chunk-key.js +14 -0
- package/dist/shared/read-dir.d.ts +9 -0
- package/dist/shared/read-dir.js +57 -0
- package/dist/shared/validate-bucketname.d.ts +5 -0
- package/dist/shared/validate-bucketname.js +19 -1
- package/dist/shared/validate-lambda-codec.d.ts +1 -1
- package/dist/shared/validate-lambda-codec.js +0 -1
- package/package.json +18 -14
- package/remotionlambda-arm64.zip +0 -0
- package/remotionlambda-x64.zip +0 -0
- package/remotionlambda.zip +0 -0
- package/.prettierrc.js +0 -14
- package/dist/api/enable-s3-website.d.ts +0 -5
- package/dist/api/enable-s3-website.js +0 -16
- package/dist/shared/get-cloudwatch-stream-url.d.ts +0 -8
- package/dist/shared/get-cloudwatch-stream-url.js +0 -7
- package/tsconfig.json +0 -16
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getServiceQuotasClient = exports.getIamClient = exports.getLambdaClient = exports.getS3Client = exports.getCloudWatchLogsClient = exports.getServiceClient = void 0;
|
|
3
|
+
exports.getStsClient = exports.getServiceQuotasClient = exports.getIamClient = exports.getLambdaClient = exports.getS3Client = exports.getCloudWatchLogsClient = exports.getServiceClient = void 0;
|
|
4
4
|
const client_cloudwatch_logs_1 = require("@aws-sdk/client-cloudwatch-logs");
|
|
5
5
|
const client_iam_1 = require("@aws-sdk/client-iam");
|
|
6
6
|
const client_lambda_1 = require("@aws-sdk/client-lambda");
|
|
7
7
|
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
8
8
|
const client_service_quotas_1 = require("@aws-sdk/client-service-quotas");
|
|
9
|
+
const client_sts_1 = require("@aws-sdk/client-sts");
|
|
10
|
+
const credential_providers_1 = require("@aws-sdk/credential-providers");
|
|
11
|
+
const crypto_1 = require("crypto");
|
|
9
12
|
const check_credentials_1 = require("./check-credentials");
|
|
10
13
|
const is_in_lambda_1 = require("./is-in-lambda");
|
|
11
14
|
const _clients = {};
|
|
@@ -13,6 +16,21 @@ const getCredentials = () => {
|
|
|
13
16
|
if ((0, is_in_lambda_1.isInsideLambda)()) {
|
|
14
17
|
return undefined;
|
|
15
18
|
}
|
|
19
|
+
if (process.env.REMOTION_AWS_PROFILE) {
|
|
20
|
+
return (0, credential_providers_1.fromIni)({
|
|
21
|
+
profile: process.env.REMOTION_AWS_PROFILE,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
|
|
25
|
+
process.env.REMOTION_AWS_SECRET_ACCESS_KEY &&
|
|
26
|
+
process.env.REMOTION_AWS_SESSION_TOKEN) {
|
|
27
|
+
console.log('Using credentials from Remotion assumed role.');
|
|
28
|
+
return {
|
|
29
|
+
accessKeyId: process.env.REMOTION_AWS_ACCESS_KEY_ID,
|
|
30
|
+
secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
|
|
31
|
+
sessionToken: process.env.REMOTION_AWS_SESSION_TOKEN,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
16
34
|
if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
|
|
17
35
|
process.env.REMOTION_AWS_SECRET_ACCESS_KEY) {
|
|
18
36
|
return {
|
|
@@ -20,6 +38,21 @@ const getCredentials = () => {
|
|
|
20
38
|
secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
|
|
21
39
|
};
|
|
22
40
|
}
|
|
41
|
+
if (process.env.AWS_PROFILE) {
|
|
42
|
+
return (0, credential_providers_1.fromIni)({
|
|
43
|
+
profile: process.env.AWS_PROFILE,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
if (process.env.AWS_ACCESS_KEY_ID &&
|
|
47
|
+
process.env.AWS_SECRET_ACCESS_KEY &&
|
|
48
|
+
process.env.AWS_SESSION_TOKEN) {
|
|
49
|
+
console.log('Using credentials from AWS STS');
|
|
50
|
+
return {
|
|
51
|
+
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
|
|
52
|
+
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
|
|
53
|
+
sessionToken: process.env.AWS_SESSION_TOKEN,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
23
56
|
if (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) {
|
|
24
57
|
return {
|
|
25
58
|
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
|
|
@@ -28,17 +61,40 @@ const getCredentials = () => {
|
|
|
28
61
|
}
|
|
29
62
|
return undefined;
|
|
30
63
|
};
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
64
|
+
const getCredentialsHash = ({ customCredentials, region, service, }) => {
|
|
65
|
+
const hashComponents = {};
|
|
66
|
+
if (process.env.REMOTION_AWS_PROFILE) {
|
|
67
|
+
hashComponents.credentials = {
|
|
68
|
+
awsProfile: process.env.REMOTION_AWS_PROFILE,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
else if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
|
|
72
|
+
process.env.REMOTION_AWS_SECRET_ACCESS_KEY) {
|
|
73
|
+
hashComponents.credentials = {
|
|
74
|
+
accessKeyId: process.env.REMOTION_AWS_ACCESS_KEY_ID,
|
|
75
|
+
secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
else if (process.env.AWS_PROFILE) {
|
|
79
|
+
hashComponents.credentials = {
|
|
80
|
+
awsProfile: process.env.AWS_PROFILE,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
else if (process.env.AWS_ACCESS_KEY_ID &&
|
|
84
|
+
process.env.AWS_SECRET_ACCESS_KEY) {
|
|
85
|
+
hashComponents.credentials = {
|
|
86
|
+
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
|
|
87
|
+
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
hashComponents.customCredentials = customCredentials;
|
|
91
|
+
hashComponents.region = region;
|
|
92
|
+
hashComponents.service = service;
|
|
93
|
+
return (0, crypto_1.createHash)('sha256')
|
|
94
|
+
.update(JSON.stringify(hashComponents))
|
|
95
|
+
.digest('base64');
|
|
96
|
+
};
|
|
40
97
|
const getServiceClient = ({ region, service, customCredentials, }) => {
|
|
41
|
-
var _a;
|
|
42
98
|
const Client = (() => {
|
|
43
99
|
if (service === 'cloudwatch') {
|
|
44
100
|
return client_cloudwatch_logs_1.CloudWatchLogsClient;
|
|
@@ -55,10 +111,12 @@ const getServiceClient = ({ region, service, customCredentials, }) => {
|
|
|
55
111
|
if (service === 'servicequotas') {
|
|
56
112
|
return client_service_quotas_1.ServiceQuotasClient;
|
|
57
113
|
}
|
|
114
|
+
if (service === 'sts') {
|
|
115
|
+
return client_sts_1.STSClient;
|
|
116
|
+
}
|
|
58
117
|
throw new TypeError('unknown client ' + service);
|
|
59
118
|
})();
|
|
60
|
-
const key =
|
|
61
|
-
credentials: (_a = getCredentials()) !== null && _a !== void 0 ? _a : null,
|
|
119
|
+
const key = getCredentialsHash({
|
|
62
120
|
region,
|
|
63
121
|
customCredentials,
|
|
64
122
|
service,
|
|
@@ -119,3 +177,7 @@ const getServiceQuotasClient = (region) => {
|
|
|
119
177
|
});
|
|
120
178
|
};
|
|
121
179
|
exports.getServiceQuotasClient = getServiceQuotasClient;
|
|
180
|
+
const getStsClient = (region) => {
|
|
181
|
+
return (0, exports.getServiceClient)({ region, service: 'sts', customCredentials: null });
|
|
182
|
+
};
|
|
183
|
+
exports.getStsClient = getStsClient;
|
|
@@ -17,6 +17,9 @@ const messageForVariable = (variable) => {
|
|
|
17
17
|
.join('\n');
|
|
18
18
|
};
|
|
19
19
|
const checkCredentials = () => {
|
|
20
|
+
if (process.env.REMOTION_AWS_PROFILE || process.env.AWS_PROFILE) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
20
23
|
if (!process.env.AWS_ACCESS_KEY_ID &&
|
|
21
24
|
!process.env.REMOTION_AWS_ACCESS_KEY_ID) {
|
|
22
25
|
throw new Error(messageForVariable('AWS_ACCESS_KEY_ID or REMOTION_AWS_ACCESS_KEY_ID'));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const writeLambdaInitializedFile: ({ bucketName, expectedBucketOwner, attempt, chunk, renderId, framesRendered, }: {
|
|
2
|
+
bucketName: string;
|
|
3
|
+
expectedBucketOwner: string;
|
|
4
|
+
renderId: string;
|
|
5
|
+
chunk: number;
|
|
6
|
+
attempt: number;
|
|
7
|
+
framesRendered: number;
|
|
8
|
+
}) => Promise<void>;
|
|
9
|
+
export declare const getProgressOfChunk: (etag: string) => number;
|