@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 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/lite"),1),
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/lite";import{PutObjectCommand as qe,PutObjectTaggingCommand as Ke,
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 buckets",
4
- "version": "0.5.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.5.0",
43
- "@ez4/aws-identity": "^0.5.0",
44
- "@ez4/project": "^0.5.0",
45
- "@ez4/stateful": "^0.5.0",
46
- "@ez4/storage": "^0.5.0",
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
  }