@ez4/aws-bucket 0.5.0 → 0.6.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.
- package/README.md +30 -0
- package/dist/main.cjs +1 -1
- package/dist/main.mjs +1 -1
- package/package.json +18 -8
package/README.md
CHANGED
|
@@ -10,6 +10,36 @@ It provides all the components to manage buckets and objects on AWS.
|
|
|
10
10
|
npm install @ez4/aws-bucket -D
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
+
#### Permission
|
|
14
|
+
|
|
15
|
+
Ensure the user performing deployments has the permissions below:
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"Version": "2012-10-17",
|
|
20
|
+
"Statement": [
|
|
21
|
+
{
|
|
22
|
+
"Sid": "StorageManagement",
|
|
23
|
+
"Effect": "Allow",
|
|
24
|
+
"Action": [
|
|
25
|
+
"s3:CreateBucket",
|
|
26
|
+
"s3:DeleteBucket",
|
|
27
|
+
"s3:PutObject",
|
|
28
|
+
"s3:GetObject",
|
|
29
|
+
"s3:ListBucket",
|
|
30
|
+
"s3:DeleteObject",
|
|
31
|
+
"s3:PutLifecycleConfiguration",
|
|
32
|
+
"s3:PutBucketPolicy",
|
|
33
|
+
"s3:DeleteBucketPolicy",
|
|
34
|
+
"s3:PutBucketTagging",
|
|
35
|
+
"s3:PutObjectTagging"
|
|
36
|
+
],
|
|
37
|
+
"Resource": ["arn:aws:s3:::{prefix}-*"]
|
|
38
|
+
}
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
13
43
|
## License
|
|
14
44
|
|
|
15
45
|
MIT License
|
package/dist/main.cjs
CHANGED
|
@@ -38,7 +38,7 @@ result&&e.result.bucketName===t.result?.bucketName,tt=async()=>{},rt=async(e,t,r
|
|
|
38
38
|
if(t.result)throw new Y.ReplaceResourceError(f,e.entryId,t.entryId);return ee(e,
|
|
39
39
|
r)},ee=async(e,t)=>{let r=e.parameters,o=b(f,"policy",t),c=await r.getRole(t);return await V(
|
|
40
40
|
{bucketName:o,role:c}),{bucketName:o}},ot=async()=>{},ct=async e=>{let t=e.result;
|
|
41
|
-
t&&await X(t.bucketName)};var re=()=>{(0,te.registerProvider)(u,_())};var ye=require("@ez4/aws-common");var ne=require("node:fs/promises"),ie=require("@ez4/aws-common"),C=require("@ez4/utils");var d=require("@ez4/aws-common"),oe=require("node:fs"),ce=Ge(require("mime
|
|
41
|
+
t&&await X(t.bucketName)};var re=()=>{(0,te.registerProvider)(u,_())};var ye=require("@ez4/aws-common");var ne=require("node:fs/promises"),ie=require("@ez4/aws-common"),C=require("@ez4/utils");var d=require("@ez4/aws-common"),oe=require("node:fs"),ce=Ge(require("mime"),1),
|
|
42
42
|
l=require("@aws-sdk/client-s3");var y="AWS:S3/Object",p="aws:s3.object";var st=e=>e.type===p,P=(e,t)=>`${e}/${t}`,at=e=>e.getDependencies(p).map(({result:r})=>({
|
|
43
43
|
lastModified:r?.lastModified,objectKey:r?.objectKey}));var v=new l.S3Client({}),T=async(e,t)=>{let{objectKey:r,filePath:o}=t;d.Logger.logCreate(
|
|
44
44
|
y,P(e,r));let c=ce.default.getType(o);return await v.send(new l.PutObjectCommand(
|
package/dist/main.mjs
CHANGED
|
@@ -31,7 +31,7 @@ if(t.result)throw new Ce(y,e.entryId,t.entryId);return q(e,r)},q=async(e,t)=>{le
|
|
|
31
31
|
parameters,o=g(y,"policy",t),c=await r.getRole(t);return await z({bucketName:o,role:c}),
|
|
32
32
|
{bucketName:o}},he=async()=>{},Ne=async e=>{let t=e.result;t&&await I(t.bucketName)};var K=()=>{De(p,L())};import{registerProvider as Xe}from"@ez4/aws-common";import{stat as $e}from"node:fs/promises";import{ReplaceResourceError as Fe}from"@ez4/aws-common";
|
|
33
33
|
import{deepCompare as Ae,deepEqual as Ue}from"@ez4/utils";import{getTagList as ze,Logger as k}from"@ez4/aws-common";import{createReadStream as Ie}from"node:fs";
|
|
34
|
-
import Le from"mime
|
|
34
|
+
import Le from"mime";import{PutObjectCommand as qe,PutObjectTaggingCommand as Ke,
|
|
35
35
|
DeleteObjectCommand as He,S3Client as Me}from"@aws-sdk/client-s3";var m="AWS:S3/Object",i="aws:s3.object";var rr=e=>e.type===i,S=(e,t)=>`${e}/${t}`,or=e=>e.getDependencies(i).map(({result:r})=>({
|
|
36
36
|
lastModified:r?.lastModified,objectKey:r?.objectKey}));var b=new Me({}),P=async(e,t)=>{let{objectKey:r,filePath:o}=t;k.logCreate(m,S(e,
|
|
37
37
|
r));let c=Le.getType(o);return await b.send(new qe({Bucket:e,Key:r,Body:Ie(o),...c&&
|
package/package.json
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ez4/aws-bucket",
|
|
3
|
-
"description": "EZ4: Self-managed AWS S3
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "EZ4: Self-managed AWS S3 bucket provider",
|
|
4
|
+
"version": "0.6.0",
|
|
5
5
|
"author": "Silas B.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
8
|
+
"keywords": [
|
|
9
|
+
"ez4"
|
|
10
|
+
],
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/sbalmt/ez4.git",
|
|
14
|
+
"directory": "packages/aws-bucket"
|
|
15
|
+
},
|
|
8
16
|
"engines": {
|
|
9
17
|
"node": ">=20.15.0"
|
|
10
18
|
},
|
|
@@ -36,15 +44,17 @@
|
|
|
36
44
|
"devDependencies": {
|
|
37
45
|
"@types/mime": "^3.0.0"
|
|
38
46
|
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"@ez4/project": "^0.6.0"
|
|
49
|
+
},
|
|
39
50
|
"dependencies": {
|
|
40
51
|
"@aws-sdk/client-s3": "^3.614.0",
|
|
41
52
|
"@aws-sdk/s3-request-presigner": "^3.651.0",
|
|
42
|
-
"@ez4/aws-common": "^0.
|
|
43
|
-
"@ez4/aws-identity": "^0.
|
|
44
|
-
"@ez4/
|
|
45
|
-
"@ez4/
|
|
46
|
-
"@ez4/
|
|
47
|
-
"@ez4/utils": "^0.5.0",
|
|
53
|
+
"@ez4/aws-common": "^0.6.0",
|
|
54
|
+
"@ez4/aws-identity": "^0.6.0",
|
|
55
|
+
"@ez4/stateful": "^0.6.0",
|
|
56
|
+
"@ez4/storage": "^0.6.0",
|
|
57
|
+
"@ez4/utils": "^0.6.0",
|
|
48
58
|
"mime": "^3.0.0"
|
|
49
59
|
}
|
|
50
60
|
}
|