pulumi-aws-native 1.38.0a1761631437__py3-none-any.whl → 1.39.0a1762376209__py3-none-any.whl
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.
- pulumi_aws_native/__init__.py +19 -1
- pulumi_aws_native/amazonmq/_enums.py +4 -12
- pulumi_aws_native/amazonmq/_inputs.py +21 -91
- pulumi_aws_native/amazonmq/broker.py +56 -67
- pulumi_aws_native/amazonmq/get_broker.py +6 -13
- pulumi_aws_native/amazonmq/outputs.py +14 -54
- pulumi_aws_native/appstream/get_image_builder.py +0 -4
- pulumi_aws_native/appstream/image_builder.py +0 -16
- pulumi_aws_native/aps/_inputs.py +58 -0
- pulumi_aws_native/aps/outputs.py +36 -0
- pulumi_aws_native/arcregionswitch/get_plan.py +0 -3
- pulumi_aws_native/arcregionswitch/plan.py +0 -3
- pulumi_aws_native/batch/_inputs.py +34 -0
- pulumi_aws_native/batch/job_definition.py +29 -0
- pulumi_aws_native/batch/outputs.py +37 -0
- pulumi_aws_native/bedrock/automated_reasoning_policy.py +51 -0
- pulumi_aws_native/bedrock/get_automated_reasoning_policy.py +12 -1
- pulumi_aws_native/bedrockagentcore/__init__.py +2 -0
- pulumi_aws_native/bedrockagentcore/_enums.py +1 -0
- pulumi_aws_native/bedrockagentcore/get_workload_identity.py +134 -0
- pulumi_aws_native/bedrockagentcore/workload_identity.py +217 -0
- pulumi_aws_native/ce/_enums.py +3 -0
- pulumi_aws_native/cleanrooms/configured_table.py +4 -4
- pulumi_aws_native/cleanrooms/get_configured_table.py +1 -1
- pulumi_aws_native/cognito/__init__.py +2 -0
- pulumi_aws_native/cognito/_enums.py +12 -0
- pulumi_aws_native/cognito/get_terms.py +117 -0
- pulumi_aws_native/cognito/terms.py +236 -0
- pulumi_aws_native/connectcampaignsv2/_inputs.py +28 -0
- pulumi_aws_native/connectcampaignsv2/outputs.py +16 -0
- pulumi_aws_native/datazone/_inputs.py +81 -0
- pulumi_aws_native/datazone/connection.py +83 -26
- pulumi_aws_native/datazone/outputs.py +84 -0
- pulumi_aws_native/ec2/__init__.py +2 -0
- pulumi_aws_native/ec2/_enums.py +19 -0
- pulumi_aws_native/ec2/_inputs.py +15 -12
- pulumi_aws_native/ec2/capacity_manager_data_export.py +259 -0
- pulumi_aws_native/ec2/get_capacity_manager_data_export.py +92 -0
- pulumi_aws_native/ec2/get_volume.py +37 -15
- pulumi_aws_native/ec2/outputs.py +10 -8
- pulumi_aws_native/ec2/volume.py +115 -74
- pulumi_aws_native/ecs/_enums.py +23 -0
- pulumi_aws_native/ecs/_inputs.py +230 -23
- pulumi_aws_native/ecs/outputs.py +195 -15
- pulumi_aws_native/eks/_enums.py +11 -0
- pulumi_aws_native/eks/_inputs.py +199 -1
- pulumi_aws_native/eks/get_nodegroup.py +1 -0
- pulumi_aws_native/eks/nodegroup.py +1 -0
- pulumi_aws_native/eks/outputs.py +169 -1
- pulumi_aws_native/elasticloadbalancingv2/_inputs.py +12 -12
- pulumi_aws_native/elasticloadbalancingv2/load_balancer.py +4 -4
- pulumi_aws_native/elasticloadbalancingv2/outputs.py +8 -8
- pulumi_aws_native/glue/__init__.py +2 -0
- pulumi_aws_native/glue/_inputs.py +134 -0
- pulumi_aws_native/glue/get_integration_resource_property.py +127 -0
- pulumi_aws_native/glue/integration_resource_property.py +229 -0
- pulumi_aws_native/glue/outputs.py +122 -0
- pulumi_aws_native/imagebuilder/_inputs.py +37 -0
- pulumi_aws_native/imagebuilder/image.py +29 -0
- pulumi_aws_native/imagebuilder/outputs.py +40 -0
- pulumi_aws_native/kendra/_inputs.py +21 -21
- pulumi_aws_native/kendra/outputs.py +14 -14
- pulumi_aws_native/mediapackagev2/_inputs.py +7 -0
- pulumi_aws_native/mediapackagev2/outputs.py +4 -0
- pulumi_aws_native/networkfirewall/_enums.py +2 -0
- pulumi_aws_native/networkfirewall/_inputs.py +20 -0
- pulumi_aws_native/networkfirewall/firewall.py +10 -0
- pulumi_aws_native/networkfirewall/get_firewall.py +15 -1
- pulumi_aws_native/networkfirewall/outputs.py +14 -0
- pulumi_aws_native/pulumi-plugin.json +1 -1
- pulumi_aws_native/qbusiness/_inputs.py +3 -3
- pulumi_aws_native/qbusiness/application.py +4 -4
- pulumi_aws_native/qbusiness/outputs.py +2 -2
- pulumi_aws_native/quicksight/_inputs.py +9 -9
- pulumi_aws_native/quicksight/outputs.py +6 -6
- pulumi_aws_native/rtbfabric/__init__.py +2 -0
- pulumi_aws_native/rtbfabric/_enums.py +44 -0
- pulumi_aws_native/rtbfabric/_inputs.py +330 -0
- pulumi_aws_native/rtbfabric/get_link.py +199 -0
- pulumi_aws_native/rtbfabric/get_requester_gateway.py +15 -0
- pulumi_aws_native/rtbfabric/get_responder_gateway.py +30 -0
- pulumi_aws_native/rtbfabric/link.py +344 -0
- pulumi_aws_native/rtbfabric/outputs.py +306 -0
- pulumi_aws_native/rtbfabric/requester_gateway.py +40 -0
- pulumi_aws_native/rtbfabric/responder_gateway.py +80 -0
- pulumi_aws_native/s3/_enums.py +1 -1
- pulumi_aws_native/s3/_inputs.py +11 -5
- pulumi_aws_native/s3/outputs.py +10 -4
- pulumi_aws_native/s3vectors/__init__.py +17 -0
- pulumi_aws_native/s3vectors/_enums.py +39 -0
- pulumi_aws_native/s3vectors/_inputs.py +138 -0
- pulumi_aws_native/s3vectors/get_index.py +99 -0
- pulumi_aws_native/s3vectors/get_vector_bucket.py +99 -0
- pulumi_aws_native/s3vectors/get_vector_bucket_policy.py +78 -0
- pulumi_aws_native/s3vectors/index.py +367 -0
- pulumi_aws_native/s3vectors/outputs.py +129 -0
- pulumi_aws_native/s3vectors/vector_bucket.py +199 -0
- pulumi_aws_native/s3vectors/vector_bucket_policy.py +188 -0
- pulumi_aws_native/sagemaker/_enums.py +2 -171
- pulumi_aws_native/sagemaker/_inputs.py +17 -5
- pulumi_aws_native/sagemaker/outputs.py +11 -3
- pulumi_aws_native/sso/_enums.py +1 -1
- pulumi_aws_native/sso/assignment.py +8 -8
- pulumi_aws_native/transfer/_enums.py +15 -0
- pulumi_aws_native/transfer/_inputs.py +86 -0
- pulumi_aws_native/transfer/connector.py +86 -19
- pulumi_aws_native/transfer/get_connector.py +43 -1
- pulumi_aws_native/transfer/outputs.py +86 -0
- pulumi_aws_native/wafv2/_inputs.py +72 -0
- pulumi_aws_native/wafv2/get_web_acl.py +15 -1
- pulumi_aws_native/wafv2/outputs.py +45 -0
- pulumi_aws_native/wafv2/web_acl.py +29 -0
- {pulumi_aws_native-1.38.0a1761631437.dist-info → pulumi_aws_native-1.39.0a1762376209.dist-info}/METADATA +1 -1
- {pulumi_aws_native-1.38.0a1761631437.dist-info → pulumi_aws_native-1.39.0a1762376209.dist-info}/RECORD +116 -96
- {pulumi_aws_native-1.38.0a1761631437.dist-info → pulumi_aws_native-1.39.0a1762376209.dist-info}/WHEEL +0 -0
- {pulumi_aws_native-1.38.0a1761631437.dist-info → pulumi_aws_native-1.39.0a1762376209.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from .. import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._enums import *
|
|
18
|
+
from ._inputs import *
|
|
19
|
+
|
|
20
|
+
__all__ = ['IndexArgs', 'Index']
|
|
21
|
+
|
|
22
|
+
@pulumi.input_type
|
|
23
|
+
class IndexArgs:
|
|
24
|
+
def __init__(__self__, *,
|
|
25
|
+
data_type: pulumi.Input['IndexDataType'],
|
|
26
|
+
dimension: pulumi.Input[_builtins.int],
|
|
27
|
+
distance_metric: pulumi.Input['IndexDistanceMetric'],
|
|
28
|
+
index_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
29
|
+
metadata_configuration: Optional[pulumi.Input['IndexMetadataConfigurationArgs']] = None,
|
|
30
|
+
vector_bucket_arn: Optional[pulumi.Input[_builtins.str]] = None,
|
|
31
|
+
vector_bucket_name: Optional[pulumi.Input[_builtins.str]] = None):
|
|
32
|
+
"""
|
|
33
|
+
The set of arguments for constructing a Index resource.
|
|
34
|
+
:param pulumi.Input['IndexDataType'] data_type: The data type of the vectors to be inserted into the vector index. Currently, only `float32` is supported, which represents 32-bit floating-point numbers.
|
|
35
|
+
:param pulumi.Input[_builtins.int] dimension: The dimensions of the vectors to be inserted into the vector index. This value must be between 1 and 4096, inclusive. All vectors stored in the index must have the same number of dimensions.
|
|
36
|
+
|
|
37
|
+
The dimension value affects the storage requirements and search performance. Higher dimensions require more storage space and may impact search latency.
|
|
38
|
+
:param pulumi.Input['IndexDistanceMetric'] distance_metric: The distance metric to be used for similarity search. Valid values are:
|
|
39
|
+
|
|
40
|
+
- `cosine` - Measures the cosine of the angle between two vectors.
|
|
41
|
+
- `euclidean` - Measures the straight-line distance between two points in multi-dimensional space. Lower values indicate greater similarity.
|
|
42
|
+
:param pulumi.Input[_builtins.str] index_name: The name of the vector index to create. The index name must be between 3 and 63 characters long and can contain only lowercase letters, numbers, hyphens (-), and dots (.). The index name must be unique within the vector bucket.
|
|
43
|
+
|
|
44
|
+
If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the index name.
|
|
45
|
+
|
|
46
|
+
> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
|
|
47
|
+
:param pulumi.Input['IndexMetadataConfigurationArgs'] metadata_configuration: The metadata configuration for the vector index.
|
|
48
|
+
:param pulumi.Input[_builtins.str] vector_bucket_arn: The Amazon Resource Name (ARN) of the vector bucket that contains the vector index.
|
|
49
|
+
:param pulumi.Input[_builtins.str] vector_bucket_name: The name of the vector bucket that contains the vector index.
|
|
50
|
+
"""
|
|
51
|
+
pulumi.set(__self__, "data_type", data_type)
|
|
52
|
+
pulumi.set(__self__, "dimension", dimension)
|
|
53
|
+
pulumi.set(__self__, "distance_metric", distance_metric)
|
|
54
|
+
if index_name is not None:
|
|
55
|
+
pulumi.set(__self__, "index_name", index_name)
|
|
56
|
+
if metadata_configuration is not None:
|
|
57
|
+
pulumi.set(__self__, "metadata_configuration", metadata_configuration)
|
|
58
|
+
if vector_bucket_arn is not None:
|
|
59
|
+
pulumi.set(__self__, "vector_bucket_arn", vector_bucket_arn)
|
|
60
|
+
if vector_bucket_name is not None:
|
|
61
|
+
pulumi.set(__self__, "vector_bucket_name", vector_bucket_name)
|
|
62
|
+
|
|
63
|
+
@_builtins.property
|
|
64
|
+
@pulumi.getter(name="dataType")
|
|
65
|
+
def data_type(self) -> pulumi.Input['IndexDataType']:
|
|
66
|
+
"""
|
|
67
|
+
The data type of the vectors to be inserted into the vector index. Currently, only `float32` is supported, which represents 32-bit floating-point numbers.
|
|
68
|
+
"""
|
|
69
|
+
return pulumi.get(self, "data_type")
|
|
70
|
+
|
|
71
|
+
@data_type.setter
|
|
72
|
+
def data_type(self, value: pulumi.Input['IndexDataType']):
|
|
73
|
+
pulumi.set(self, "data_type", value)
|
|
74
|
+
|
|
75
|
+
@_builtins.property
|
|
76
|
+
@pulumi.getter
|
|
77
|
+
def dimension(self) -> pulumi.Input[_builtins.int]:
|
|
78
|
+
"""
|
|
79
|
+
The dimensions of the vectors to be inserted into the vector index. This value must be between 1 and 4096, inclusive. All vectors stored in the index must have the same number of dimensions.
|
|
80
|
+
|
|
81
|
+
The dimension value affects the storage requirements and search performance. Higher dimensions require more storage space and may impact search latency.
|
|
82
|
+
"""
|
|
83
|
+
return pulumi.get(self, "dimension")
|
|
84
|
+
|
|
85
|
+
@dimension.setter
|
|
86
|
+
def dimension(self, value: pulumi.Input[_builtins.int]):
|
|
87
|
+
pulumi.set(self, "dimension", value)
|
|
88
|
+
|
|
89
|
+
@_builtins.property
|
|
90
|
+
@pulumi.getter(name="distanceMetric")
|
|
91
|
+
def distance_metric(self) -> pulumi.Input['IndexDistanceMetric']:
|
|
92
|
+
"""
|
|
93
|
+
The distance metric to be used for similarity search. Valid values are:
|
|
94
|
+
|
|
95
|
+
- `cosine` - Measures the cosine of the angle between two vectors.
|
|
96
|
+
- `euclidean` - Measures the straight-line distance between two points in multi-dimensional space. Lower values indicate greater similarity.
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "distance_metric")
|
|
99
|
+
|
|
100
|
+
@distance_metric.setter
|
|
101
|
+
def distance_metric(self, value: pulumi.Input['IndexDistanceMetric']):
|
|
102
|
+
pulumi.set(self, "distance_metric", value)
|
|
103
|
+
|
|
104
|
+
@_builtins.property
|
|
105
|
+
@pulumi.getter(name="indexName")
|
|
106
|
+
def index_name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
107
|
+
"""
|
|
108
|
+
The name of the vector index to create. The index name must be between 3 and 63 characters long and can contain only lowercase letters, numbers, hyphens (-), and dots (.). The index name must be unique within the vector bucket.
|
|
109
|
+
|
|
110
|
+
If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the index name.
|
|
111
|
+
|
|
112
|
+
> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
|
|
113
|
+
"""
|
|
114
|
+
return pulumi.get(self, "index_name")
|
|
115
|
+
|
|
116
|
+
@index_name.setter
|
|
117
|
+
def index_name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
118
|
+
pulumi.set(self, "index_name", value)
|
|
119
|
+
|
|
120
|
+
@_builtins.property
|
|
121
|
+
@pulumi.getter(name="metadataConfiguration")
|
|
122
|
+
def metadata_configuration(self) -> Optional[pulumi.Input['IndexMetadataConfigurationArgs']]:
|
|
123
|
+
"""
|
|
124
|
+
The metadata configuration for the vector index.
|
|
125
|
+
"""
|
|
126
|
+
return pulumi.get(self, "metadata_configuration")
|
|
127
|
+
|
|
128
|
+
@metadata_configuration.setter
|
|
129
|
+
def metadata_configuration(self, value: Optional[pulumi.Input['IndexMetadataConfigurationArgs']]):
|
|
130
|
+
pulumi.set(self, "metadata_configuration", value)
|
|
131
|
+
|
|
132
|
+
@_builtins.property
|
|
133
|
+
@pulumi.getter(name="vectorBucketArn")
|
|
134
|
+
def vector_bucket_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
135
|
+
"""
|
|
136
|
+
The Amazon Resource Name (ARN) of the vector bucket that contains the vector index.
|
|
137
|
+
"""
|
|
138
|
+
return pulumi.get(self, "vector_bucket_arn")
|
|
139
|
+
|
|
140
|
+
@vector_bucket_arn.setter
|
|
141
|
+
def vector_bucket_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
142
|
+
pulumi.set(self, "vector_bucket_arn", value)
|
|
143
|
+
|
|
144
|
+
@_builtins.property
|
|
145
|
+
@pulumi.getter(name="vectorBucketName")
|
|
146
|
+
def vector_bucket_name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
147
|
+
"""
|
|
148
|
+
The name of the vector bucket that contains the vector index.
|
|
149
|
+
"""
|
|
150
|
+
return pulumi.get(self, "vector_bucket_name")
|
|
151
|
+
|
|
152
|
+
@vector_bucket_name.setter
|
|
153
|
+
def vector_bucket_name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
154
|
+
pulumi.set(self, "vector_bucket_name", value)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
@pulumi.type_token("aws-native:s3vectors:Index")
|
|
158
|
+
class Index(pulumi.CustomResource):
|
|
159
|
+
@overload
|
|
160
|
+
def __init__(__self__,
|
|
161
|
+
resource_name: str,
|
|
162
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
163
|
+
data_type: Optional[pulumi.Input['IndexDataType']] = None,
|
|
164
|
+
dimension: Optional[pulumi.Input[_builtins.int]] = None,
|
|
165
|
+
distance_metric: Optional[pulumi.Input['IndexDistanceMetric']] = None,
|
|
166
|
+
index_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
167
|
+
metadata_configuration: Optional[pulumi.Input[Union['IndexMetadataConfigurationArgs', 'IndexMetadataConfigurationArgsDict']]] = None,
|
|
168
|
+
vector_bucket_arn: Optional[pulumi.Input[_builtins.str]] = None,
|
|
169
|
+
vector_bucket_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
170
|
+
__props__=None):
|
|
171
|
+
"""
|
|
172
|
+
Resource Type definition for AWS::S3Vectors::Index
|
|
173
|
+
|
|
174
|
+
:param str resource_name: The name of the resource.
|
|
175
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
176
|
+
:param pulumi.Input['IndexDataType'] data_type: The data type of the vectors to be inserted into the vector index. Currently, only `float32` is supported, which represents 32-bit floating-point numbers.
|
|
177
|
+
:param pulumi.Input[_builtins.int] dimension: The dimensions of the vectors to be inserted into the vector index. This value must be between 1 and 4096, inclusive. All vectors stored in the index must have the same number of dimensions.
|
|
178
|
+
|
|
179
|
+
The dimension value affects the storage requirements and search performance. Higher dimensions require more storage space and may impact search latency.
|
|
180
|
+
:param pulumi.Input['IndexDistanceMetric'] distance_metric: The distance metric to be used for similarity search. Valid values are:
|
|
181
|
+
|
|
182
|
+
- `cosine` - Measures the cosine of the angle between two vectors.
|
|
183
|
+
- `euclidean` - Measures the straight-line distance between two points in multi-dimensional space. Lower values indicate greater similarity.
|
|
184
|
+
:param pulumi.Input[_builtins.str] index_name: The name of the vector index to create. The index name must be between 3 and 63 characters long and can contain only lowercase letters, numbers, hyphens (-), and dots (.). The index name must be unique within the vector bucket.
|
|
185
|
+
|
|
186
|
+
If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the index name.
|
|
187
|
+
|
|
188
|
+
> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
|
|
189
|
+
:param pulumi.Input[Union['IndexMetadataConfigurationArgs', 'IndexMetadataConfigurationArgsDict']] metadata_configuration: The metadata configuration for the vector index.
|
|
190
|
+
:param pulumi.Input[_builtins.str] vector_bucket_arn: The Amazon Resource Name (ARN) of the vector bucket that contains the vector index.
|
|
191
|
+
:param pulumi.Input[_builtins.str] vector_bucket_name: The name of the vector bucket that contains the vector index.
|
|
192
|
+
"""
|
|
193
|
+
...
|
|
194
|
+
@overload
|
|
195
|
+
def __init__(__self__,
|
|
196
|
+
resource_name: str,
|
|
197
|
+
args: IndexArgs,
|
|
198
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
199
|
+
"""
|
|
200
|
+
Resource Type definition for AWS::S3Vectors::Index
|
|
201
|
+
|
|
202
|
+
:param str resource_name: The name of the resource.
|
|
203
|
+
:param IndexArgs args: The arguments to use to populate this resource's properties.
|
|
204
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
205
|
+
"""
|
|
206
|
+
...
|
|
207
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
208
|
+
resource_args, opts = _utilities.get_resource_args_opts(IndexArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
209
|
+
if resource_args is not None:
|
|
210
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
211
|
+
else:
|
|
212
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
213
|
+
|
|
214
|
+
def _internal_init(__self__,
|
|
215
|
+
resource_name: str,
|
|
216
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
217
|
+
data_type: Optional[pulumi.Input['IndexDataType']] = None,
|
|
218
|
+
dimension: Optional[pulumi.Input[_builtins.int]] = None,
|
|
219
|
+
distance_metric: Optional[pulumi.Input['IndexDistanceMetric']] = None,
|
|
220
|
+
index_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
221
|
+
metadata_configuration: Optional[pulumi.Input[Union['IndexMetadataConfigurationArgs', 'IndexMetadataConfigurationArgsDict']]] = None,
|
|
222
|
+
vector_bucket_arn: Optional[pulumi.Input[_builtins.str]] = None,
|
|
223
|
+
vector_bucket_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
224
|
+
__props__=None):
|
|
225
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
226
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
227
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
228
|
+
if opts.id is None:
|
|
229
|
+
if __props__ is not None:
|
|
230
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
231
|
+
__props__ = IndexArgs.__new__(IndexArgs)
|
|
232
|
+
|
|
233
|
+
if data_type is None and not opts.urn:
|
|
234
|
+
raise TypeError("Missing required property 'data_type'")
|
|
235
|
+
__props__.__dict__["data_type"] = data_type
|
|
236
|
+
if dimension is None and not opts.urn:
|
|
237
|
+
raise TypeError("Missing required property 'dimension'")
|
|
238
|
+
__props__.__dict__["dimension"] = dimension
|
|
239
|
+
if distance_metric is None and not opts.urn:
|
|
240
|
+
raise TypeError("Missing required property 'distance_metric'")
|
|
241
|
+
__props__.__dict__["distance_metric"] = distance_metric
|
|
242
|
+
__props__.__dict__["index_name"] = index_name
|
|
243
|
+
__props__.__dict__["metadata_configuration"] = metadata_configuration
|
|
244
|
+
__props__.__dict__["vector_bucket_arn"] = vector_bucket_arn
|
|
245
|
+
__props__.__dict__["vector_bucket_name"] = vector_bucket_name
|
|
246
|
+
__props__.__dict__["creation_time"] = None
|
|
247
|
+
__props__.__dict__["index_arn"] = None
|
|
248
|
+
replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["dataType", "dimension", "distanceMetric", "indexName", "metadataConfiguration", "vectorBucketArn", "vectorBucketName"])
|
|
249
|
+
opts = pulumi.ResourceOptions.merge(opts, replace_on_changes)
|
|
250
|
+
super(Index, __self__).__init__(
|
|
251
|
+
'aws-native:s3vectors:Index',
|
|
252
|
+
resource_name,
|
|
253
|
+
__props__,
|
|
254
|
+
opts)
|
|
255
|
+
|
|
256
|
+
@staticmethod
|
|
257
|
+
def get(resource_name: str,
|
|
258
|
+
id: pulumi.Input[str],
|
|
259
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'Index':
|
|
260
|
+
"""
|
|
261
|
+
Get an existing Index resource's state with the given name, id, and optional extra
|
|
262
|
+
properties used to qualify the lookup.
|
|
263
|
+
|
|
264
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
265
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
266
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
267
|
+
"""
|
|
268
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
269
|
+
|
|
270
|
+
__props__ = IndexArgs.__new__(IndexArgs)
|
|
271
|
+
|
|
272
|
+
__props__.__dict__["creation_time"] = None
|
|
273
|
+
__props__.__dict__["data_type"] = None
|
|
274
|
+
__props__.__dict__["dimension"] = None
|
|
275
|
+
__props__.__dict__["distance_metric"] = None
|
|
276
|
+
__props__.__dict__["index_arn"] = None
|
|
277
|
+
__props__.__dict__["index_name"] = None
|
|
278
|
+
__props__.__dict__["metadata_configuration"] = None
|
|
279
|
+
__props__.__dict__["vector_bucket_arn"] = None
|
|
280
|
+
__props__.__dict__["vector_bucket_name"] = None
|
|
281
|
+
return Index(resource_name, opts=opts, __props__=__props__)
|
|
282
|
+
|
|
283
|
+
@_builtins.property
|
|
284
|
+
@pulumi.getter(name="creationTime")
|
|
285
|
+
def creation_time(self) -> pulumi.Output[_builtins.str]:
|
|
286
|
+
"""
|
|
287
|
+
Returns the date and time when the vector index was created.
|
|
288
|
+
|
|
289
|
+
Example: `2024-12-21T10:30:00Z`
|
|
290
|
+
"""
|
|
291
|
+
return pulumi.get(self, "creation_time")
|
|
292
|
+
|
|
293
|
+
@_builtins.property
|
|
294
|
+
@pulumi.getter(name="dataType")
|
|
295
|
+
def data_type(self) -> pulumi.Output['IndexDataType']:
|
|
296
|
+
"""
|
|
297
|
+
The data type of the vectors to be inserted into the vector index. Currently, only `float32` is supported, which represents 32-bit floating-point numbers.
|
|
298
|
+
"""
|
|
299
|
+
return pulumi.get(self, "data_type")
|
|
300
|
+
|
|
301
|
+
@_builtins.property
|
|
302
|
+
@pulumi.getter
|
|
303
|
+
def dimension(self) -> pulumi.Output[_builtins.int]:
|
|
304
|
+
"""
|
|
305
|
+
The dimensions of the vectors to be inserted into the vector index. This value must be between 1 and 4096, inclusive. All vectors stored in the index must have the same number of dimensions.
|
|
306
|
+
|
|
307
|
+
The dimension value affects the storage requirements and search performance. Higher dimensions require more storage space and may impact search latency.
|
|
308
|
+
"""
|
|
309
|
+
return pulumi.get(self, "dimension")
|
|
310
|
+
|
|
311
|
+
@_builtins.property
|
|
312
|
+
@pulumi.getter(name="distanceMetric")
|
|
313
|
+
def distance_metric(self) -> pulumi.Output['IndexDistanceMetric']:
|
|
314
|
+
"""
|
|
315
|
+
The distance metric to be used for similarity search. Valid values are:
|
|
316
|
+
|
|
317
|
+
- `cosine` - Measures the cosine of the angle between two vectors.
|
|
318
|
+
- `euclidean` - Measures the straight-line distance between two points in multi-dimensional space. Lower values indicate greater similarity.
|
|
319
|
+
"""
|
|
320
|
+
return pulumi.get(self, "distance_metric")
|
|
321
|
+
|
|
322
|
+
@_builtins.property
|
|
323
|
+
@pulumi.getter(name="indexArn")
|
|
324
|
+
def index_arn(self) -> pulumi.Output[_builtins.str]:
|
|
325
|
+
"""
|
|
326
|
+
Returns the Amazon Resource Name (ARN) of the specified index.
|
|
327
|
+
|
|
328
|
+
Example: `arn:aws:s3vectors:us-east-1:123456789012:bucket/amzn-s3-demo-vector-bucket/index/my-index`
|
|
329
|
+
"""
|
|
330
|
+
return pulumi.get(self, "index_arn")
|
|
331
|
+
|
|
332
|
+
@_builtins.property
|
|
333
|
+
@pulumi.getter(name="indexName")
|
|
334
|
+
def index_name(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
335
|
+
"""
|
|
336
|
+
The name of the vector index to create. The index name must be between 3 and 63 characters long and can contain only lowercase letters, numbers, hyphens (-), and dots (.). The index name must be unique within the vector bucket.
|
|
337
|
+
|
|
338
|
+
If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the index name.
|
|
339
|
+
|
|
340
|
+
> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
|
|
341
|
+
"""
|
|
342
|
+
return pulumi.get(self, "index_name")
|
|
343
|
+
|
|
344
|
+
@_builtins.property
|
|
345
|
+
@pulumi.getter(name="metadataConfiguration")
|
|
346
|
+
def metadata_configuration(self) -> pulumi.Output[Optional['outputs.IndexMetadataConfiguration']]:
|
|
347
|
+
"""
|
|
348
|
+
The metadata configuration for the vector index.
|
|
349
|
+
"""
|
|
350
|
+
return pulumi.get(self, "metadata_configuration")
|
|
351
|
+
|
|
352
|
+
@_builtins.property
|
|
353
|
+
@pulumi.getter(name="vectorBucketArn")
|
|
354
|
+
def vector_bucket_arn(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
355
|
+
"""
|
|
356
|
+
The Amazon Resource Name (ARN) of the vector bucket that contains the vector index.
|
|
357
|
+
"""
|
|
358
|
+
return pulumi.get(self, "vector_bucket_arn")
|
|
359
|
+
|
|
360
|
+
@_builtins.property
|
|
361
|
+
@pulumi.getter(name="vectorBucketName")
|
|
362
|
+
def vector_bucket_name(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
363
|
+
"""
|
|
364
|
+
The name of the vector bucket that contains the vector index.
|
|
365
|
+
"""
|
|
366
|
+
return pulumi.get(self, "vector_bucket_name")
|
|
367
|
+
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from .. import _utilities
|
|
16
|
+
from ._enums import *
|
|
17
|
+
|
|
18
|
+
__all__ = [
|
|
19
|
+
'IndexMetadataConfiguration',
|
|
20
|
+
'VectorBucketEncryptionConfiguration',
|
|
21
|
+
'VectorBucketPolicyPolicy',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class IndexMetadataConfiguration(dict):
|
|
26
|
+
"""
|
|
27
|
+
The metadata configuration for the vector index.
|
|
28
|
+
"""
|
|
29
|
+
@staticmethod
|
|
30
|
+
def __key_warning(key: str):
|
|
31
|
+
suggest = None
|
|
32
|
+
if key == "nonFilterableMetadataKeys":
|
|
33
|
+
suggest = "non_filterable_metadata_keys"
|
|
34
|
+
|
|
35
|
+
if suggest:
|
|
36
|
+
pulumi.log.warn(f"Key '{key}' not found in IndexMetadataConfiguration. Access the value via the '{suggest}' property getter instead.")
|
|
37
|
+
|
|
38
|
+
def __getitem__(self, key: str) -> Any:
|
|
39
|
+
IndexMetadataConfiguration.__key_warning(key)
|
|
40
|
+
return super().__getitem__(key)
|
|
41
|
+
|
|
42
|
+
def get(self, key: str, default = None) -> Any:
|
|
43
|
+
IndexMetadataConfiguration.__key_warning(key)
|
|
44
|
+
return super().get(key, default)
|
|
45
|
+
|
|
46
|
+
def __init__(__self__, *,
|
|
47
|
+
non_filterable_metadata_keys: Optional[Sequence[_builtins.str]] = None):
|
|
48
|
+
"""
|
|
49
|
+
The metadata configuration for the vector index.
|
|
50
|
+
:param Sequence[_builtins.str] non_filterable_metadata_keys: Non-filterable metadata keys allow you to enrich vectors with additional context during storage and retrieval. Unlike default metadata keys, these keys cannot be used as query filters. Non-filterable metadata keys can be retrieved but cannot be searched, queried, or filtered. You can access non-filterable metadata keys of your vectors after finding the vectors.
|
|
51
|
+
"""
|
|
52
|
+
if non_filterable_metadata_keys is not None:
|
|
53
|
+
pulumi.set(__self__, "non_filterable_metadata_keys", non_filterable_metadata_keys)
|
|
54
|
+
|
|
55
|
+
@_builtins.property
|
|
56
|
+
@pulumi.getter(name="nonFilterableMetadataKeys")
|
|
57
|
+
def non_filterable_metadata_keys(self) -> Optional[Sequence[_builtins.str]]:
|
|
58
|
+
"""
|
|
59
|
+
Non-filterable metadata keys allow you to enrich vectors with additional context during storage and retrieval. Unlike default metadata keys, these keys cannot be used as query filters. Non-filterable metadata keys can be retrieved but cannot be searched, queried, or filtered. You can access non-filterable metadata keys of your vectors after finding the vectors.
|
|
60
|
+
"""
|
|
61
|
+
return pulumi.get(self, "non_filterable_metadata_keys")
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
@pulumi.output_type
|
|
65
|
+
class VectorBucketEncryptionConfiguration(dict):
|
|
66
|
+
"""
|
|
67
|
+
The encryption configuration for the vector bucket.
|
|
68
|
+
"""
|
|
69
|
+
@staticmethod
|
|
70
|
+
def __key_warning(key: str):
|
|
71
|
+
suggest = None
|
|
72
|
+
if key == "kmsKeyArn":
|
|
73
|
+
suggest = "kms_key_arn"
|
|
74
|
+
elif key == "sseType":
|
|
75
|
+
suggest = "sse_type"
|
|
76
|
+
|
|
77
|
+
if suggest:
|
|
78
|
+
pulumi.log.warn(f"Key '{key}' not found in VectorBucketEncryptionConfiguration. Access the value via the '{suggest}' property getter instead.")
|
|
79
|
+
|
|
80
|
+
def __getitem__(self, key: str) -> Any:
|
|
81
|
+
VectorBucketEncryptionConfiguration.__key_warning(key)
|
|
82
|
+
return super().__getitem__(key)
|
|
83
|
+
|
|
84
|
+
def get(self, key: str, default = None) -> Any:
|
|
85
|
+
VectorBucketEncryptionConfiguration.__key_warning(key)
|
|
86
|
+
return super().get(key, default)
|
|
87
|
+
|
|
88
|
+
def __init__(__self__, *,
|
|
89
|
+
kms_key_arn: Optional[_builtins.str] = None,
|
|
90
|
+
sse_type: Optional['VectorBucketEncryptionConfigurationSseType'] = None):
|
|
91
|
+
"""
|
|
92
|
+
The encryption configuration for the vector bucket.
|
|
93
|
+
:param _builtins.str kms_key_arn: AWS Key Management Service (KMS) customer managed key ID to use for the encryption configuration. This parameter is allowed if and only if sseType is set to aws:kms
|
|
94
|
+
:param 'VectorBucketEncryptionConfigurationSseType' sse_type: The server-side encryption type to use for the encryption configuration of the vector bucket. By default, if you don't specify, all new vectors in Amazon S3 vector buckets use server-side encryption with Amazon S3 managed keys (SSE-S3), specifically AES256.
|
|
95
|
+
"""
|
|
96
|
+
if kms_key_arn is not None:
|
|
97
|
+
pulumi.set(__self__, "kms_key_arn", kms_key_arn)
|
|
98
|
+
if sse_type is not None:
|
|
99
|
+
pulumi.set(__self__, "sse_type", sse_type)
|
|
100
|
+
|
|
101
|
+
@_builtins.property
|
|
102
|
+
@pulumi.getter(name="kmsKeyArn")
|
|
103
|
+
def kms_key_arn(self) -> Optional[_builtins.str]:
|
|
104
|
+
"""
|
|
105
|
+
AWS Key Management Service (KMS) customer managed key ID to use for the encryption configuration. This parameter is allowed if and only if sseType is set to aws:kms
|
|
106
|
+
"""
|
|
107
|
+
return pulumi.get(self, "kms_key_arn")
|
|
108
|
+
|
|
109
|
+
@_builtins.property
|
|
110
|
+
@pulumi.getter(name="sseType")
|
|
111
|
+
def sse_type(self) -> Optional['VectorBucketEncryptionConfigurationSseType']:
|
|
112
|
+
"""
|
|
113
|
+
The server-side encryption type to use for the encryption configuration of the vector bucket. By default, if you don't specify, all new vectors in Amazon S3 vector buckets use server-side encryption with Amazon S3 managed keys (SSE-S3), specifically AES256.
|
|
114
|
+
"""
|
|
115
|
+
return pulumi.get(self, "sse_type")
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
@pulumi.output_type
|
|
119
|
+
class VectorBucketPolicyPolicy(dict):
|
|
120
|
+
"""
|
|
121
|
+
A policy document containing permissions to add to the specified vector bucket. In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM.
|
|
122
|
+
"""
|
|
123
|
+
def __init__(__self__):
|
|
124
|
+
"""
|
|
125
|
+
A policy document containing permissions to add to the specified vector bucket. In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM.
|
|
126
|
+
"""
|
|
127
|
+
pass
|
|
128
|
+
|
|
129
|
+
|