@goldstack/template-s3 0.4.16 → 0.5.2
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.
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { S3Client } from '@aws-sdk/client-s3';
|
|
2
|
+
import { MetadataBearer, RequestPresigningArguments } from '@smithy/types';
|
|
3
|
+
import { Client, Command } from '@smithy/smithy-client';
|
|
4
|
+
export declare const connect: (goldstackConfig: any, packageSchema: any, deploymentName?: string) => Promise<S3Client>;
|
|
5
|
+
export declare const isMocked: (client: S3Client) => boolean;
|
|
6
|
+
export declare const getSignedUrlS3: <InputTypesUnion extends object, InputType extends InputTypesUnion, OutputType extends MetadataBearer = MetadataBearer>(client: Client<any, InputTypesUnion, MetadataBearer, any>, command: Command<InputType, OutputType, any, InputTypesUnion, MetadataBearer>, options?: RequestPresigningArguments) => Promise<string>;
|
|
3
7
|
export declare const getBucketName: (goldstackConfig: any, packageSchema: any, deploymentName?: string) => Promise<string>;
|
|
4
8
|
//# sourceMappingURL=templateS3Bucket.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateS3Bucket.d.ts","sourceRoot":"","sources":["../../src/templateS3Bucket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"templateS3Bucket.d.ts","sourceRoot":"","sources":["../../src/templateS3Bucket.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAO9C,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAIxD,eAAO,MAAM,OAAO,oBACD,GAAG,iBACL,GAAG,mBACD,MAAM,KACtB,QAAQ,QAAQ,CAuClB,CAAC;AAEF,eAAO,MAAM,QAAQ,WAAY,QAAQ,KAAG,OAE3C,CAAC;AAEF,eAAO,MAAM,cAAc,8QAOhB,0BAA0B,KAClC,QAAQ,MAAM,CAKhB,CAAC;AAEF,eAAO,MAAM,aAAa,oBACP,GAAG,iBACL,GAAG,mBACD,MAAM,KACtB,QAAQ,MAAM,CAiBhB,CAAC"}
|
|
@@ -3,10 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getBucketName = exports.connect = void 0;
|
|
7
|
-
|
|
8
|
-
const
|
|
6
|
+
exports.getBucketName = exports.getSignedUrlS3 = exports.isMocked = exports.connect = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
8
|
+
const credential_providers_1 = require("@aws-sdk/credential-providers");
|
|
9
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
9
10
|
const utils_esbuild_1 = require("@goldstack/utils-esbuild");
|
|
11
|
+
const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
|
|
10
12
|
const assert_1 = __importDefault(require("assert"));
|
|
11
13
|
const utils_package_config_embedded_1 = require("@goldstack/utils-package-config-embedded");
|
|
12
14
|
const connect = async (goldstackConfig, packageSchema, deploymentName) => {
|
|
@@ -21,17 +23,15 @@ const connect = async (goldstackConfig, packageSchema, deploymentName) => {
|
|
|
21
23
|
if (deploymentName === 'local') {
|
|
22
24
|
// only require this for local testing
|
|
23
25
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
params: {},
|
|
28
|
-
});
|
|
26
|
+
const MockS3 = require((0, utils_esbuild_1.excludeInBundle)('mock-aws-s3-v3'));
|
|
27
|
+
const s3 = MockS3.createS3Client('goldstackLocal/s3');
|
|
28
|
+
s3._goldstackIsMocked = true;
|
|
29
29
|
return s3;
|
|
30
30
|
}
|
|
31
31
|
const deployment = packageConfig.getDeployment(deploymentName);
|
|
32
32
|
let awsUser;
|
|
33
33
|
if (process.env.AWS_ACCESS_KEY_ID) {
|
|
34
|
-
awsUser =
|
|
34
|
+
awsUser = (0, credential_providers_1.fromEnv)();
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
37
37
|
// load this in lazy to enable omitting the dependency when bundling lambdas
|
|
@@ -39,14 +39,24 @@ const connect = async (goldstackConfig, packageSchema, deploymentName) => {
|
|
|
39
39
|
const infraAWSLib = require((0, utils_esbuild_1.excludeInBundle)('@goldstack/infra-aws'));
|
|
40
40
|
awsUser = await infraAWSLib.getAWSUser(deployment.awsUser);
|
|
41
41
|
}
|
|
42
|
-
const s3 = new
|
|
43
|
-
apiVersion: '2006-03-01',
|
|
42
|
+
const s3 = new client_s3_1.S3Client({
|
|
44
43
|
credentials: awsUser,
|
|
45
44
|
region: deployment.awsRegion,
|
|
46
45
|
});
|
|
47
46
|
return s3;
|
|
48
47
|
};
|
|
49
48
|
exports.connect = connect;
|
|
49
|
+
const isMocked = (client) => {
|
|
50
|
+
return client._goldstackIsMocked === true;
|
|
51
|
+
};
|
|
52
|
+
exports.isMocked = isMocked;
|
|
53
|
+
const getSignedUrlS3 = async (client, command, options = {}) => {
|
|
54
|
+
if ((0, exports.isMocked)(client)) {
|
|
55
|
+
return 'http://localhost/mockedAWSS3';
|
|
56
|
+
}
|
|
57
|
+
return (0, s3_request_presigner_1.getSignedUrl)(client, command, options);
|
|
58
|
+
};
|
|
59
|
+
exports.getSignedUrlS3 = getSignedUrlS3;
|
|
50
60
|
const getBucketName = async (goldstackConfig, packageSchema, deploymentName) => {
|
|
51
61
|
const packageConfig = new utils_package_config_embedded_1.EmbeddedPackageConfig({
|
|
52
62
|
goldstackJson: goldstackConfig,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateS3Bucket.js","sourceRoot":"","sources":["../../src/templateS3Bucket.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"templateS3Bucket.js","sourceRoot":"","sources":["../../src/templateS3Bucket.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@goldstack/template-s3",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Building blocks for linking a package to an AWS S3 bucket.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"goldstack",
|
|
@@ -38,15 +38,20 @@
|
|
|
38
38
|
"version:apply:force": "yarn version $@ && yarn version apply"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
+
"@aws-sdk/client-s3": "3.485.0",
|
|
42
|
+
"@aws-sdk/credential-providers": "3.485.0",
|
|
43
|
+
"@aws-sdk/s3-request-presigner": "3.485.0",
|
|
44
|
+
"@aws-sdk/types": "^3.485.0",
|
|
41
45
|
"@goldstack/infra": "0.4.9",
|
|
42
|
-
"@goldstack/infra-aws": "0.4.
|
|
46
|
+
"@goldstack/infra-aws": "0.4.15",
|
|
43
47
|
"@goldstack/utils-esbuild": "0.5.9",
|
|
44
48
|
"@goldstack/utils-package": "0.4.9",
|
|
45
49
|
"@goldstack/utils-package-config-embedded": "0.5.10",
|
|
46
50
|
"@goldstack/utils-template": "0.4.9",
|
|
47
|
-
"@goldstack/utils-terraform": "0.4.
|
|
48
|
-
"
|
|
49
|
-
"
|
|
51
|
+
"@goldstack/utils-terraform": "0.4.16",
|
|
52
|
+
"@smithy/smithy-client": "^2.2.1",
|
|
53
|
+
"@smithy/types": "^2.8.0",
|
|
54
|
+
"mock-aws-s3-v3": "5.0.2",
|
|
50
55
|
"source-map-support": "^0.5.21"
|
|
51
56
|
},
|
|
52
57
|
"devDependencies": {
|
|
@@ -56,7 +61,6 @@
|
|
|
56
61
|
"@swc/core": "^1.3.74",
|
|
57
62
|
"@swc/jest": "^0.2.27",
|
|
58
63
|
"@types/jest": "^29.0.1",
|
|
59
|
-
"@types/mock-aws-s3": "^2.6.3",
|
|
60
64
|
"@types/node": "^18.7.13",
|
|
61
65
|
"@types/yargs": "^17.0.10",
|
|
62
66
|
"jest": "^29.3.1",
|