aws-cdk.aws-s3tables-alpha 2.196.0a0__tar.gz → 2.232.2a0__tar.gz

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.
Files changed (20) hide show
  1. {aws_cdk_aws_s3tables_alpha-2.196.0a0/src/aws_cdk.aws_s3tables_alpha.egg-info → aws_cdk_aws_s3tables_alpha-2.232.2a0}/PKG-INFO +84 -6
  2. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/README.md +80 -2
  3. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/pyproject.toml +1 -1
  4. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/setup.py +5 -5
  5. aws_cdk_aws_s3tables_alpha-2.232.2a0/src/aws_cdk/aws_s3tables_alpha/__init__.py +3873 -0
  6. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/src/aws_cdk/aws_s3tables_alpha/_jsii/__init__.py +2 -2
  7. aws_cdk_aws_s3tables_alpha-2.232.2a0/src/aws_cdk/aws_s3tables_alpha/_jsii/aws-s3tables-alpha@2.232.2-alpha.0.jsii.tgz +0 -0
  8. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0/src/aws_cdk.aws_s3tables_alpha.egg-info}/PKG-INFO +84 -6
  9. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/src/aws_cdk.aws_s3tables_alpha.egg-info/SOURCES.txt +1 -1
  10. aws_cdk_aws_s3tables_alpha-2.232.2a0/src/aws_cdk.aws_s3tables_alpha.egg-info/requires.txt +5 -0
  11. aws_cdk_aws_s3tables_alpha-2.196.0a0/src/aws_cdk/aws_s3tables_alpha/__init__.py +0 -1626
  12. aws_cdk_aws_s3tables_alpha-2.196.0a0/src/aws_cdk/aws_s3tables_alpha/_jsii/aws-s3tables-alpha@2.196.0-alpha.0.jsii.tgz +0 -0
  13. aws_cdk_aws_s3tables_alpha-2.196.0a0/src/aws_cdk.aws_s3tables_alpha.egg-info/requires.txt +0 -5
  14. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/LICENSE +0 -0
  15. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/MANIFEST.in +0 -0
  16. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/NOTICE +0 -0
  17. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/setup.cfg +0 -0
  18. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/src/aws_cdk/aws_s3tables_alpha/py.typed +0 -0
  19. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/src/aws_cdk.aws_s3tables_alpha.egg-info/dependency_links.txt +0 -0
  20. {aws_cdk_aws_s3tables_alpha-2.196.0a0 → aws_cdk_aws_s3tables_alpha-2.232.2a0}/src/aws_cdk.aws_s3tables_alpha.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws-cdk.aws-s3tables-alpha
3
- Version: 2.196.0a0
3
+ Version: 2.232.2a0
4
4
  Summary: CDK Constructs for S3 Tables
5
5
  Home-page: https://github.com/aws/aws-cdk
6
6
  Author: Amazon Web Services
@@ -22,11 +22,11 @@ Requires-Python: ~=3.9
22
22
  Description-Content-Type: text/markdown
23
23
  License-File: LICENSE
24
24
  License-File: NOTICE
25
- Requires-Dist: aws-cdk-lib<3.0.0,>=2.196.0
25
+ Requires-Dist: aws-cdk-lib<3.0.0,>=2.232.2
26
26
  Requires-Dist: constructs<11.0.0,>=10.0.0
27
- Requires-Dist: jsii<2.0.0,>=1.112.0
27
+ Requires-Dist: jsii<2.0.0,>=1.120.0
28
28
  Requires-Dist: publication>=0.0.3
29
- Requires-Dist: typeguard<4.3.0,>=2.13.3
29
+ Requires-Dist: typeguard==2.13.3
30
30
 
31
31
  # Amazon S3 Tables Construct Library
32
32
 
@@ -67,6 +67,57 @@ sample_table_bucket = TableBucket(scope, "ExampleTableBucket",
67
67
  )
68
68
  ```
69
69
 
70
+ ### Define an S3 Tables Namespace
71
+
72
+ ```python
73
+ # Build a namespace
74
+ sample_namespace = Namespace(scope, "ExampleNamespace",
75
+ namespace_name="example-namespace-1",
76
+ table_bucket=table_bucket
77
+ )
78
+ ```
79
+
80
+ ### Define an S3 Table
81
+
82
+ ```python
83
+ # Build a table
84
+ sample_table = Table(scope, "ExampleTable",
85
+ table_name="example_table",
86
+ namespace=namespace,
87
+ open_table_format=OpenTableFormat.ICEBERG,
88
+ without_metadata=True
89
+ )
90
+
91
+ # Build a table with an Iceberg Schema
92
+ sample_table_with_schema = Table(scope, "ExampleSchemaTable",
93
+ table_name="example_table_with_schema",
94
+ namespace=namespace,
95
+ open_table_format=OpenTableFormat.ICEBERG,
96
+ iceberg_metadata=IcebergMetadataProperty(
97
+ iceberg_schema=IcebergSchemaProperty(
98
+ schema_field_list=[SchemaFieldProperty(
99
+ name="id",
100
+ type="int",
101
+ required=True
102
+ ), SchemaFieldProperty(
103
+ name="name",
104
+ type="string"
105
+ )
106
+ ]
107
+ )
108
+ ),
109
+ compaction=CompactionProperty(
110
+ status=Status.ENABLED,
111
+ target_file_size_mb=128
112
+ ),
113
+ snapshot_management=SnapshotManagementProperty(
114
+ status=Status.ENABLED,
115
+ max_snapshot_age_hours=48,
116
+ min_snapshots_to_keep=5
117
+ )
118
+ )
119
+ ```
120
+
70
121
  Learn more about table buckets maintenance operations and default behavior from the [S3 Tables User Guide](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html)
71
122
 
72
123
  ### Controlling Table Bucket Permissions
@@ -134,9 +185,36 @@ encrypted_bucket_auto = TableBucket(scope, "EncryptedTableBucketAuto",
134
185
  )
135
186
  ```
136
187
 
188
+ ### Controlling Table Permissions
189
+
190
+ ```python
191
+ # Grant the principal read permissions to the table
192
+ account_id = "123456789012"
193
+ table.grant_read(iam.AccountPrincipal(account_id))
194
+
195
+ # Grant the role write permissions to the table
196
+ role = iam.Role(stack, "MyRole", assumed_by=iam.ServicePrincipal("sample"))
197
+ table.grant_write(role)
198
+
199
+ # Grant the user read and write permissions to the table
200
+ table.grant_read_write(iam.User(stack, "MyUser"))
201
+
202
+ # Grant an account permissions to the table
203
+ table.grant_read_write(iam.AccountPrincipal(account_id))
204
+
205
+ # Add custom resource policy statements
206
+ permissions = iam.PolicyStatement(
207
+ effect=iam.Effect.ALLOW,
208
+ actions=["s3tables:*"],
209
+ principals=[iam.ServicePrincipal("example.aws.internal")],
210
+ resources=["*"]
211
+ )
212
+
213
+ table.add_to_resource_policy(permissions)
214
+ ```
215
+
137
216
  ## Coming Soon
138
217
 
139
218
  L2 Construct support for:
140
219
 
141
- * Namespaces
142
- * Tables
220
+ * KMS encryption support for Tables
@@ -37,6 +37,57 @@ sample_table_bucket = TableBucket(scope, "ExampleTableBucket",
37
37
  )
38
38
  ```
39
39
 
40
+ ### Define an S3 Tables Namespace
41
+
42
+ ```python
43
+ # Build a namespace
44
+ sample_namespace = Namespace(scope, "ExampleNamespace",
45
+ namespace_name="example-namespace-1",
46
+ table_bucket=table_bucket
47
+ )
48
+ ```
49
+
50
+ ### Define an S3 Table
51
+
52
+ ```python
53
+ # Build a table
54
+ sample_table = Table(scope, "ExampleTable",
55
+ table_name="example_table",
56
+ namespace=namespace,
57
+ open_table_format=OpenTableFormat.ICEBERG,
58
+ without_metadata=True
59
+ )
60
+
61
+ # Build a table with an Iceberg Schema
62
+ sample_table_with_schema = Table(scope, "ExampleSchemaTable",
63
+ table_name="example_table_with_schema",
64
+ namespace=namespace,
65
+ open_table_format=OpenTableFormat.ICEBERG,
66
+ iceberg_metadata=IcebergMetadataProperty(
67
+ iceberg_schema=IcebergSchemaProperty(
68
+ schema_field_list=[SchemaFieldProperty(
69
+ name="id",
70
+ type="int",
71
+ required=True
72
+ ), SchemaFieldProperty(
73
+ name="name",
74
+ type="string"
75
+ )
76
+ ]
77
+ )
78
+ ),
79
+ compaction=CompactionProperty(
80
+ status=Status.ENABLED,
81
+ target_file_size_mb=128
82
+ ),
83
+ snapshot_management=SnapshotManagementProperty(
84
+ status=Status.ENABLED,
85
+ max_snapshot_age_hours=48,
86
+ min_snapshots_to_keep=5
87
+ )
88
+ )
89
+ ```
90
+
40
91
  Learn more about table buckets maintenance operations and default behavior from the [S3 Tables User Guide](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-table-buckets-maintenance.html)
41
92
 
42
93
  ### Controlling Table Bucket Permissions
@@ -104,9 +155,36 @@ encrypted_bucket_auto = TableBucket(scope, "EncryptedTableBucketAuto",
104
155
  )
105
156
  ```
106
157
 
158
+ ### Controlling Table Permissions
159
+
160
+ ```python
161
+ # Grant the principal read permissions to the table
162
+ account_id = "123456789012"
163
+ table.grant_read(iam.AccountPrincipal(account_id))
164
+
165
+ # Grant the role write permissions to the table
166
+ role = iam.Role(stack, "MyRole", assumed_by=iam.ServicePrincipal("sample"))
167
+ table.grant_write(role)
168
+
169
+ # Grant the user read and write permissions to the table
170
+ table.grant_read_write(iam.User(stack, "MyUser"))
171
+
172
+ # Grant an account permissions to the table
173
+ table.grant_read_write(iam.AccountPrincipal(account_id))
174
+
175
+ # Add custom resource policy statements
176
+ permissions = iam.PolicyStatement(
177
+ effect=iam.Effect.ALLOW,
178
+ actions=["s3tables:*"],
179
+ principals=[iam.ServicePrincipal("example.aws.internal")],
180
+ resources=["*"]
181
+ )
182
+
183
+ table.add_to_resource_policy(permissions)
184
+ ```
185
+
107
186
  ## Coming Soon
108
187
 
109
188
  L2 Construct support for:
110
189
 
111
- * Namespaces
112
- * Tables
190
+ * KMS encryption support for Tables
@@ -1,5 +1,5 @@
1
1
  [build-system]
2
- requires = ["setuptools~=75.3.2", "wheel~=0.42"]
2
+ requires = ["setuptools~=75.3.2", "build~=1.3.0"]
3
3
  build-backend = "setuptools.build_meta"
4
4
 
5
5
  [tool.pyright]
@@ -5,7 +5,7 @@ kwargs = json.loads(
5
5
  """
6
6
  {
7
7
  "name": "aws-cdk.aws-s3tables-alpha",
8
- "version": "2.196.0.a0",
8
+ "version": "2.232.2.a0",
9
9
  "description": "CDK Constructs for S3 Tables",
10
10
  "license": "Apache-2.0",
11
11
  "url": "https://github.com/aws/aws-cdk",
@@ -26,7 +26,7 @@ kwargs = json.loads(
26
26
  ],
27
27
  "package_data": {
28
28
  "aws_cdk.aws_s3tables_alpha._jsii": [
29
- "aws-s3tables-alpha@2.196.0-alpha.0.jsii.tgz"
29
+ "aws-s3tables-alpha@2.232.2-alpha.0.jsii.tgz"
30
30
  ],
31
31
  "aws_cdk.aws_s3tables_alpha": [
32
32
  "py.typed"
@@ -34,11 +34,11 @@ kwargs = json.loads(
34
34
  },
35
35
  "python_requires": "~=3.9",
36
36
  "install_requires": [
37
- "aws-cdk-lib>=2.196.0, <3.0.0",
37
+ "aws-cdk-lib>=2.232.2, <3.0.0",
38
38
  "constructs>=10.0.0, <11.0.0",
39
- "jsii>=1.112.0, <2.0.0",
39
+ "jsii>=1.120.0, <2.0.0",
40
40
  "publication>=0.0.3",
41
- "typeguard>=2.13.3,<4.3.0"
41
+ "typeguard==2.13.3"
42
42
  ],
43
43
  "classifiers": [
44
44
  "Intended Audience :: Developers",