pulumi-gcp 7.28.0a1718863699__py3-none-any.whl → 7.28.0a1718995220__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_gcp/__init__.py +59 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +58 -74
- pulumi_gcp/accesscontextmanager/access_levels.py +0 -20
- pulumi_gcp/accesscontextmanager/outputs.py +58 -74
- pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
- pulumi_gcp/bigtable/_inputs.py +40 -0
- pulumi_gcp/bigtable/outputs.py +49 -0
- pulumi_gcp/bigtable/table.py +54 -0
- pulumi_gcp/cloudbuildv2/_inputs.py +383 -0
- pulumi_gcp/cloudbuildv2/connection.py +110 -2
- pulumi_gcp/cloudbuildv2/outputs.py +421 -0
- pulumi_gcp/composer/__init__.py +3 -0
- pulumi_gcp/composer/get_user_workloads_config_map.py +190 -0
- pulumi_gcp/composer/get_user_workloads_secret.py +188 -0
- pulumi_gcp/composer/user_workloads_config_map.py +475 -0
- pulumi_gcp/compute/_inputs.py +4 -2
- pulumi_gcp/compute/backend_service.py +28 -48
- pulumi_gcp/compute/interconnect.py +4 -4
- pulumi_gcp/compute/outputs.py +10 -4
- pulumi_gcp/compute/region_backend_service.py +35 -48
- pulumi_gcp/compute/region_network_endpoint.py +187 -0
- pulumi_gcp/compute/region_network_endpoint_group.py +49 -9
- pulumi_gcp/compute/region_target_https_proxy.py +7 -14
- pulumi_gcp/compute/target_https_proxy.py +28 -14
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +2 -2
- pulumi_gcp/container/outputs.py +4 -4
- pulumi_gcp/discoveryengine/_inputs.py +227 -0
- pulumi_gcp/discoveryengine/data_store.py +108 -0
- pulumi_gcp/discoveryengine/outputs.py +280 -0
- pulumi_gcp/edgecontainer/_inputs.py +107 -1
- pulumi_gcp/edgecontainer/outputs.py +123 -1
- pulumi_gcp/gkehub/_inputs.py +16 -0
- pulumi_gcp/gkehub/outputs.py +15 -1
- pulumi_gcp/logging/folder_sink.py +14 -14
- pulumi_gcp/logging/organization_sink.py +14 -14
- pulumi_gcp/managedkafka/__init__.py +11 -0
- pulumi_gcp/managedkafka/_inputs.py +169 -0
- pulumi_gcp/managedkafka/cluster.py +807 -0
- pulumi_gcp/managedkafka/outputs.py +197 -0
- pulumi_gcp/managedkafka/topic.py +599 -0
- pulumi_gcp/netapp/__init__.py +1 -0
- pulumi_gcp/netapp/active_directory.py +55 -0
- pulumi_gcp/netapp/backup.py +903 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securitycenter/__init__.py +3 -0
- pulumi_gcp/securitycenter/_inputs.py +1105 -0
- pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +725 -0
- pulumi_gcp/securitycenter/management_organization_security_health_analytics_custom_module.py +713 -0
- pulumi_gcp/securitycenter/management_project_security_health_analytics_custom_module.py +706 -0
- pulumi_gcp/securitycenter/outputs.py +1048 -0
- pulumi_gcp/vertex/ai_feature_online_store.py +37 -8
- {pulumi_gcp-7.28.0a1718863699.dist-info → pulumi_gcp-7.28.0a1718995220.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.28.0a1718863699.dist-info → pulumi_gcp-7.28.0a1718995220.dist-info}/RECORD +58 -46
- {pulumi_gcp-7.28.0a1718863699.dist-info → pulumi_gcp-7.28.0a1718995220.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.28.0a1718863699.dist-info → pulumi_gcp-7.28.0a1718995220.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,599 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import pulumi
|
8
|
+
import pulumi.runtime
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
10
|
+
from .. import _utilities
|
11
|
+
|
12
|
+
__all__ = ['TopicArgs', 'Topic']
|
13
|
+
|
14
|
+
@pulumi.input_type
|
15
|
+
class TopicArgs:
|
16
|
+
def __init__(__self__, *,
|
17
|
+
cluster: pulumi.Input[str],
|
18
|
+
location: pulumi.Input[str],
|
19
|
+
replication_factor: pulumi.Input[int],
|
20
|
+
topic_id: pulumi.Input[str],
|
21
|
+
configs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
22
|
+
partition_count: Optional[pulumi.Input[int]] = None,
|
23
|
+
project: Optional[pulumi.Input[str]] = None):
|
24
|
+
"""
|
25
|
+
The set of arguments for constructing a Topic resource.
|
26
|
+
:param pulumi.Input[str] cluster: The cluster name.
|
27
|
+
:param pulumi.Input[str] location: ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
28
|
+
:param pulumi.Input[int] replication_factor: The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
29
|
+
:param pulumi.Input[str] topic_id: The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
30
|
+
|
31
|
+
|
32
|
+
- - -
|
33
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] configs: Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
34
|
+
:param pulumi.Input[int] partition_count: The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
35
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
36
|
+
If it is not provided, the provider project is used.
|
37
|
+
"""
|
38
|
+
pulumi.set(__self__, "cluster", cluster)
|
39
|
+
pulumi.set(__self__, "location", location)
|
40
|
+
pulumi.set(__self__, "replication_factor", replication_factor)
|
41
|
+
pulumi.set(__self__, "topic_id", topic_id)
|
42
|
+
if configs is not None:
|
43
|
+
pulumi.set(__self__, "configs", configs)
|
44
|
+
if partition_count is not None:
|
45
|
+
pulumi.set(__self__, "partition_count", partition_count)
|
46
|
+
if project is not None:
|
47
|
+
pulumi.set(__self__, "project", project)
|
48
|
+
|
49
|
+
@property
|
50
|
+
@pulumi.getter
|
51
|
+
def cluster(self) -> pulumi.Input[str]:
|
52
|
+
"""
|
53
|
+
The cluster name.
|
54
|
+
"""
|
55
|
+
return pulumi.get(self, "cluster")
|
56
|
+
|
57
|
+
@cluster.setter
|
58
|
+
def cluster(self, value: pulumi.Input[str]):
|
59
|
+
pulumi.set(self, "cluster", value)
|
60
|
+
|
61
|
+
@property
|
62
|
+
@pulumi.getter
|
63
|
+
def location(self) -> pulumi.Input[str]:
|
64
|
+
"""
|
65
|
+
ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
66
|
+
"""
|
67
|
+
return pulumi.get(self, "location")
|
68
|
+
|
69
|
+
@location.setter
|
70
|
+
def location(self, value: pulumi.Input[str]):
|
71
|
+
pulumi.set(self, "location", value)
|
72
|
+
|
73
|
+
@property
|
74
|
+
@pulumi.getter(name="replicationFactor")
|
75
|
+
def replication_factor(self) -> pulumi.Input[int]:
|
76
|
+
"""
|
77
|
+
The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
78
|
+
"""
|
79
|
+
return pulumi.get(self, "replication_factor")
|
80
|
+
|
81
|
+
@replication_factor.setter
|
82
|
+
def replication_factor(self, value: pulumi.Input[int]):
|
83
|
+
pulumi.set(self, "replication_factor", value)
|
84
|
+
|
85
|
+
@property
|
86
|
+
@pulumi.getter(name="topicId")
|
87
|
+
def topic_id(self) -> pulumi.Input[str]:
|
88
|
+
"""
|
89
|
+
The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
90
|
+
|
91
|
+
|
92
|
+
- - -
|
93
|
+
"""
|
94
|
+
return pulumi.get(self, "topic_id")
|
95
|
+
|
96
|
+
@topic_id.setter
|
97
|
+
def topic_id(self, value: pulumi.Input[str]):
|
98
|
+
pulumi.set(self, "topic_id", value)
|
99
|
+
|
100
|
+
@property
|
101
|
+
@pulumi.getter
|
102
|
+
def configs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
103
|
+
"""
|
104
|
+
Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
105
|
+
"""
|
106
|
+
return pulumi.get(self, "configs")
|
107
|
+
|
108
|
+
@configs.setter
|
109
|
+
def configs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
110
|
+
pulumi.set(self, "configs", value)
|
111
|
+
|
112
|
+
@property
|
113
|
+
@pulumi.getter(name="partitionCount")
|
114
|
+
def partition_count(self) -> Optional[pulumi.Input[int]]:
|
115
|
+
"""
|
116
|
+
The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
117
|
+
"""
|
118
|
+
return pulumi.get(self, "partition_count")
|
119
|
+
|
120
|
+
@partition_count.setter
|
121
|
+
def partition_count(self, value: Optional[pulumi.Input[int]]):
|
122
|
+
pulumi.set(self, "partition_count", value)
|
123
|
+
|
124
|
+
@property
|
125
|
+
@pulumi.getter
|
126
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
127
|
+
"""
|
128
|
+
The ID of the project in which the resource belongs.
|
129
|
+
If it is not provided, the provider project is used.
|
130
|
+
"""
|
131
|
+
return pulumi.get(self, "project")
|
132
|
+
|
133
|
+
@project.setter
|
134
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
135
|
+
pulumi.set(self, "project", value)
|
136
|
+
|
137
|
+
|
138
|
+
@pulumi.input_type
|
139
|
+
class _TopicState:
|
140
|
+
def __init__(__self__, *,
|
141
|
+
cluster: Optional[pulumi.Input[str]] = None,
|
142
|
+
configs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
143
|
+
location: Optional[pulumi.Input[str]] = None,
|
144
|
+
name: Optional[pulumi.Input[str]] = None,
|
145
|
+
partition_count: Optional[pulumi.Input[int]] = None,
|
146
|
+
project: Optional[pulumi.Input[str]] = None,
|
147
|
+
replication_factor: Optional[pulumi.Input[int]] = None,
|
148
|
+
topic_id: Optional[pulumi.Input[str]] = None):
|
149
|
+
"""
|
150
|
+
Input properties used for looking up and filtering Topic resources.
|
151
|
+
:param pulumi.Input[str] cluster: The cluster name.
|
152
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] configs: Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
153
|
+
:param pulumi.Input[str] location: ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
154
|
+
:param pulumi.Input[str] name: The name of the topic. The `topic` segment is used when connecting directly to the cluster. Must be in the format `projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID`.
|
155
|
+
:param pulumi.Input[int] partition_count: The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
156
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
157
|
+
If it is not provided, the provider project is used.
|
158
|
+
:param pulumi.Input[int] replication_factor: The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
159
|
+
:param pulumi.Input[str] topic_id: The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
160
|
+
|
161
|
+
|
162
|
+
- - -
|
163
|
+
"""
|
164
|
+
if cluster is not None:
|
165
|
+
pulumi.set(__self__, "cluster", cluster)
|
166
|
+
if configs is not None:
|
167
|
+
pulumi.set(__self__, "configs", configs)
|
168
|
+
if location is not None:
|
169
|
+
pulumi.set(__self__, "location", location)
|
170
|
+
if name is not None:
|
171
|
+
pulumi.set(__self__, "name", name)
|
172
|
+
if partition_count is not None:
|
173
|
+
pulumi.set(__self__, "partition_count", partition_count)
|
174
|
+
if project is not None:
|
175
|
+
pulumi.set(__self__, "project", project)
|
176
|
+
if replication_factor is not None:
|
177
|
+
pulumi.set(__self__, "replication_factor", replication_factor)
|
178
|
+
if topic_id is not None:
|
179
|
+
pulumi.set(__self__, "topic_id", topic_id)
|
180
|
+
|
181
|
+
@property
|
182
|
+
@pulumi.getter
|
183
|
+
def cluster(self) -> Optional[pulumi.Input[str]]:
|
184
|
+
"""
|
185
|
+
The cluster name.
|
186
|
+
"""
|
187
|
+
return pulumi.get(self, "cluster")
|
188
|
+
|
189
|
+
@cluster.setter
|
190
|
+
def cluster(self, value: Optional[pulumi.Input[str]]):
|
191
|
+
pulumi.set(self, "cluster", value)
|
192
|
+
|
193
|
+
@property
|
194
|
+
@pulumi.getter
|
195
|
+
def configs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
196
|
+
"""
|
197
|
+
Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
198
|
+
"""
|
199
|
+
return pulumi.get(self, "configs")
|
200
|
+
|
201
|
+
@configs.setter
|
202
|
+
def configs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
203
|
+
pulumi.set(self, "configs", value)
|
204
|
+
|
205
|
+
@property
|
206
|
+
@pulumi.getter
|
207
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
208
|
+
"""
|
209
|
+
ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
210
|
+
"""
|
211
|
+
return pulumi.get(self, "location")
|
212
|
+
|
213
|
+
@location.setter
|
214
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
215
|
+
pulumi.set(self, "location", value)
|
216
|
+
|
217
|
+
@property
|
218
|
+
@pulumi.getter
|
219
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
220
|
+
"""
|
221
|
+
The name of the topic. The `topic` segment is used when connecting directly to the cluster. Must be in the format `projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID`.
|
222
|
+
"""
|
223
|
+
return pulumi.get(self, "name")
|
224
|
+
|
225
|
+
@name.setter
|
226
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
227
|
+
pulumi.set(self, "name", value)
|
228
|
+
|
229
|
+
@property
|
230
|
+
@pulumi.getter(name="partitionCount")
|
231
|
+
def partition_count(self) -> Optional[pulumi.Input[int]]:
|
232
|
+
"""
|
233
|
+
The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
234
|
+
"""
|
235
|
+
return pulumi.get(self, "partition_count")
|
236
|
+
|
237
|
+
@partition_count.setter
|
238
|
+
def partition_count(self, value: Optional[pulumi.Input[int]]):
|
239
|
+
pulumi.set(self, "partition_count", value)
|
240
|
+
|
241
|
+
@property
|
242
|
+
@pulumi.getter
|
243
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
244
|
+
"""
|
245
|
+
The ID of the project in which the resource belongs.
|
246
|
+
If it is not provided, the provider project is used.
|
247
|
+
"""
|
248
|
+
return pulumi.get(self, "project")
|
249
|
+
|
250
|
+
@project.setter
|
251
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
252
|
+
pulumi.set(self, "project", value)
|
253
|
+
|
254
|
+
@property
|
255
|
+
@pulumi.getter(name="replicationFactor")
|
256
|
+
def replication_factor(self) -> Optional[pulumi.Input[int]]:
|
257
|
+
"""
|
258
|
+
The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
259
|
+
"""
|
260
|
+
return pulumi.get(self, "replication_factor")
|
261
|
+
|
262
|
+
@replication_factor.setter
|
263
|
+
def replication_factor(self, value: Optional[pulumi.Input[int]]):
|
264
|
+
pulumi.set(self, "replication_factor", value)
|
265
|
+
|
266
|
+
@property
|
267
|
+
@pulumi.getter(name="topicId")
|
268
|
+
def topic_id(self) -> Optional[pulumi.Input[str]]:
|
269
|
+
"""
|
270
|
+
The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
271
|
+
|
272
|
+
|
273
|
+
- - -
|
274
|
+
"""
|
275
|
+
return pulumi.get(self, "topic_id")
|
276
|
+
|
277
|
+
@topic_id.setter
|
278
|
+
def topic_id(self, value: Optional[pulumi.Input[str]]):
|
279
|
+
pulumi.set(self, "topic_id", value)
|
280
|
+
|
281
|
+
|
282
|
+
class Topic(pulumi.CustomResource):
|
283
|
+
@overload
|
284
|
+
def __init__(__self__,
|
285
|
+
resource_name: str,
|
286
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
287
|
+
cluster: Optional[pulumi.Input[str]] = None,
|
288
|
+
configs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
289
|
+
location: Optional[pulumi.Input[str]] = None,
|
290
|
+
partition_count: Optional[pulumi.Input[int]] = None,
|
291
|
+
project: Optional[pulumi.Input[str]] = None,
|
292
|
+
replication_factor: Optional[pulumi.Input[int]] = None,
|
293
|
+
topic_id: Optional[pulumi.Input[str]] = None,
|
294
|
+
__props__=None):
|
295
|
+
"""
|
296
|
+
## Example Usage
|
297
|
+
|
298
|
+
### Managedkafka Topic Basic
|
299
|
+
|
300
|
+
```python
|
301
|
+
import pulumi
|
302
|
+
import pulumi_gcp as gcp
|
303
|
+
|
304
|
+
project = gcp.organizations.get_project()
|
305
|
+
cluster = gcp.managedkafka.Cluster("cluster",
|
306
|
+
cluster_id="my-cluster",
|
307
|
+
location="us-central1",
|
308
|
+
capacity_config=gcp.managedkafka.ClusterCapacityConfigArgs(
|
309
|
+
vcpu_count="3",
|
310
|
+
memory_bytes="3221225472",
|
311
|
+
),
|
312
|
+
gcp_config=gcp.managedkafka.ClusterGcpConfigArgs(
|
313
|
+
access_config=gcp.managedkafka.ClusterGcpConfigAccessConfigArgs(
|
314
|
+
network_configs=[gcp.managedkafka.ClusterGcpConfigAccessConfigNetworkConfigArgs(
|
315
|
+
subnet=f"projects/{project.number}/regions/us-central1/subnetworks/default",
|
316
|
+
)],
|
317
|
+
),
|
318
|
+
))
|
319
|
+
example = gcp.managedkafka.Topic("example",
|
320
|
+
topic_id="my-topic",
|
321
|
+
cluster=cluster.cluster_id,
|
322
|
+
location="us-central1",
|
323
|
+
partition_count=2,
|
324
|
+
replication_factor=3,
|
325
|
+
configs={
|
326
|
+
"cleanup.policy": "compact",
|
327
|
+
})
|
328
|
+
```
|
329
|
+
|
330
|
+
## Import
|
331
|
+
|
332
|
+
Topic can be imported using any of these accepted formats:
|
333
|
+
|
334
|
+
* `projects/{{project}}/locations/{{location}}/clusters/{{cluster}}/topics/{{topic_id}}`
|
335
|
+
|
336
|
+
* `{{project}}/{{location}}/{{cluster}}/{{topic_id}}`
|
337
|
+
|
338
|
+
* `{{location}}/{{cluster}}/{{topic_id}}`
|
339
|
+
|
340
|
+
When using the `pulumi import` command, Topic can be imported using one of the formats above. For example:
|
341
|
+
|
342
|
+
```sh
|
343
|
+
$ pulumi import gcp:managedkafka/topic:Topic default projects/{{project}}/locations/{{location}}/clusters/{{cluster}}/topics/{{topic_id}}
|
344
|
+
```
|
345
|
+
|
346
|
+
```sh
|
347
|
+
$ pulumi import gcp:managedkafka/topic:Topic default {{project}}/{{location}}/{{cluster}}/{{topic_id}}
|
348
|
+
```
|
349
|
+
|
350
|
+
```sh
|
351
|
+
$ pulumi import gcp:managedkafka/topic:Topic default {{location}}/{{cluster}}/{{topic_id}}
|
352
|
+
```
|
353
|
+
|
354
|
+
:param str resource_name: The name of the resource.
|
355
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
356
|
+
:param pulumi.Input[str] cluster: The cluster name.
|
357
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] configs: Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
358
|
+
:param pulumi.Input[str] location: ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
359
|
+
:param pulumi.Input[int] partition_count: The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
360
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
361
|
+
If it is not provided, the provider project is used.
|
362
|
+
:param pulumi.Input[int] replication_factor: The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
363
|
+
:param pulumi.Input[str] topic_id: The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
364
|
+
|
365
|
+
|
366
|
+
- - -
|
367
|
+
"""
|
368
|
+
...
|
369
|
+
@overload
|
370
|
+
def __init__(__self__,
|
371
|
+
resource_name: str,
|
372
|
+
args: TopicArgs,
|
373
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
374
|
+
"""
|
375
|
+
## Example Usage
|
376
|
+
|
377
|
+
### Managedkafka Topic Basic
|
378
|
+
|
379
|
+
```python
|
380
|
+
import pulumi
|
381
|
+
import pulumi_gcp as gcp
|
382
|
+
|
383
|
+
project = gcp.organizations.get_project()
|
384
|
+
cluster = gcp.managedkafka.Cluster("cluster",
|
385
|
+
cluster_id="my-cluster",
|
386
|
+
location="us-central1",
|
387
|
+
capacity_config=gcp.managedkafka.ClusterCapacityConfigArgs(
|
388
|
+
vcpu_count="3",
|
389
|
+
memory_bytes="3221225472",
|
390
|
+
),
|
391
|
+
gcp_config=gcp.managedkafka.ClusterGcpConfigArgs(
|
392
|
+
access_config=gcp.managedkafka.ClusterGcpConfigAccessConfigArgs(
|
393
|
+
network_configs=[gcp.managedkafka.ClusterGcpConfigAccessConfigNetworkConfigArgs(
|
394
|
+
subnet=f"projects/{project.number}/regions/us-central1/subnetworks/default",
|
395
|
+
)],
|
396
|
+
),
|
397
|
+
))
|
398
|
+
example = gcp.managedkafka.Topic("example",
|
399
|
+
topic_id="my-topic",
|
400
|
+
cluster=cluster.cluster_id,
|
401
|
+
location="us-central1",
|
402
|
+
partition_count=2,
|
403
|
+
replication_factor=3,
|
404
|
+
configs={
|
405
|
+
"cleanup.policy": "compact",
|
406
|
+
})
|
407
|
+
```
|
408
|
+
|
409
|
+
## Import
|
410
|
+
|
411
|
+
Topic can be imported using any of these accepted formats:
|
412
|
+
|
413
|
+
* `projects/{{project}}/locations/{{location}}/clusters/{{cluster}}/topics/{{topic_id}}`
|
414
|
+
|
415
|
+
* `{{project}}/{{location}}/{{cluster}}/{{topic_id}}`
|
416
|
+
|
417
|
+
* `{{location}}/{{cluster}}/{{topic_id}}`
|
418
|
+
|
419
|
+
When using the `pulumi import` command, Topic can be imported using one of the formats above. For example:
|
420
|
+
|
421
|
+
```sh
|
422
|
+
$ pulumi import gcp:managedkafka/topic:Topic default projects/{{project}}/locations/{{location}}/clusters/{{cluster}}/topics/{{topic_id}}
|
423
|
+
```
|
424
|
+
|
425
|
+
```sh
|
426
|
+
$ pulumi import gcp:managedkafka/topic:Topic default {{project}}/{{location}}/{{cluster}}/{{topic_id}}
|
427
|
+
```
|
428
|
+
|
429
|
+
```sh
|
430
|
+
$ pulumi import gcp:managedkafka/topic:Topic default {{location}}/{{cluster}}/{{topic_id}}
|
431
|
+
```
|
432
|
+
|
433
|
+
:param str resource_name: The name of the resource.
|
434
|
+
:param TopicArgs args: The arguments to use to populate this resource's properties.
|
435
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
436
|
+
"""
|
437
|
+
...
|
438
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
439
|
+
resource_args, opts = _utilities.get_resource_args_opts(TopicArgs, pulumi.ResourceOptions, *args, **kwargs)
|
440
|
+
if resource_args is not None:
|
441
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
442
|
+
else:
|
443
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
444
|
+
|
445
|
+
def _internal_init(__self__,
|
446
|
+
resource_name: str,
|
447
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
448
|
+
cluster: Optional[pulumi.Input[str]] = None,
|
449
|
+
configs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
450
|
+
location: Optional[pulumi.Input[str]] = None,
|
451
|
+
partition_count: Optional[pulumi.Input[int]] = None,
|
452
|
+
project: Optional[pulumi.Input[str]] = None,
|
453
|
+
replication_factor: Optional[pulumi.Input[int]] = None,
|
454
|
+
topic_id: Optional[pulumi.Input[str]] = None,
|
455
|
+
__props__=None):
|
456
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
457
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
458
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
459
|
+
if opts.id is None:
|
460
|
+
if __props__ is not None:
|
461
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
462
|
+
__props__ = TopicArgs.__new__(TopicArgs)
|
463
|
+
|
464
|
+
if cluster is None and not opts.urn:
|
465
|
+
raise TypeError("Missing required property 'cluster'")
|
466
|
+
__props__.__dict__["cluster"] = cluster
|
467
|
+
__props__.__dict__["configs"] = configs
|
468
|
+
if location is None and not opts.urn:
|
469
|
+
raise TypeError("Missing required property 'location'")
|
470
|
+
__props__.__dict__["location"] = location
|
471
|
+
__props__.__dict__["partition_count"] = partition_count
|
472
|
+
__props__.__dict__["project"] = project
|
473
|
+
if replication_factor is None and not opts.urn:
|
474
|
+
raise TypeError("Missing required property 'replication_factor'")
|
475
|
+
__props__.__dict__["replication_factor"] = replication_factor
|
476
|
+
if topic_id is None and not opts.urn:
|
477
|
+
raise TypeError("Missing required property 'topic_id'")
|
478
|
+
__props__.__dict__["topic_id"] = topic_id
|
479
|
+
__props__.__dict__["name"] = None
|
480
|
+
super(Topic, __self__).__init__(
|
481
|
+
'gcp:managedkafka/topic:Topic',
|
482
|
+
resource_name,
|
483
|
+
__props__,
|
484
|
+
opts)
|
485
|
+
|
486
|
+
@staticmethod
|
487
|
+
def get(resource_name: str,
|
488
|
+
id: pulumi.Input[str],
|
489
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
490
|
+
cluster: Optional[pulumi.Input[str]] = None,
|
491
|
+
configs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
492
|
+
location: Optional[pulumi.Input[str]] = None,
|
493
|
+
name: Optional[pulumi.Input[str]] = None,
|
494
|
+
partition_count: Optional[pulumi.Input[int]] = None,
|
495
|
+
project: Optional[pulumi.Input[str]] = None,
|
496
|
+
replication_factor: Optional[pulumi.Input[int]] = None,
|
497
|
+
topic_id: Optional[pulumi.Input[str]] = None) -> 'Topic':
|
498
|
+
"""
|
499
|
+
Get an existing Topic resource's state with the given name, id, and optional extra
|
500
|
+
properties used to qualify the lookup.
|
501
|
+
|
502
|
+
:param str resource_name: The unique name of the resulting resource.
|
503
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
504
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
505
|
+
:param pulumi.Input[str] cluster: The cluster name.
|
506
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] configs: Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
507
|
+
:param pulumi.Input[str] location: ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
508
|
+
:param pulumi.Input[str] name: The name of the topic. The `topic` segment is used when connecting directly to the cluster. Must be in the format `projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID`.
|
509
|
+
:param pulumi.Input[int] partition_count: The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
510
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
511
|
+
If it is not provided, the provider project is used.
|
512
|
+
:param pulumi.Input[int] replication_factor: The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
513
|
+
:param pulumi.Input[str] topic_id: The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
514
|
+
|
515
|
+
|
516
|
+
- - -
|
517
|
+
"""
|
518
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
519
|
+
|
520
|
+
__props__ = _TopicState.__new__(_TopicState)
|
521
|
+
|
522
|
+
__props__.__dict__["cluster"] = cluster
|
523
|
+
__props__.__dict__["configs"] = configs
|
524
|
+
__props__.__dict__["location"] = location
|
525
|
+
__props__.__dict__["name"] = name
|
526
|
+
__props__.__dict__["partition_count"] = partition_count
|
527
|
+
__props__.__dict__["project"] = project
|
528
|
+
__props__.__dict__["replication_factor"] = replication_factor
|
529
|
+
__props__.__dict__["topic_id"] = topic_id
|
530
|
+
return Topic(resource_name, opts=opts, __props__=__props__)
|
531
|
+
|
532
|
+
@property
|
533
|
+
@pulumi.getter
|
534
|
+
def cluster(self) -> pulumi.Output[str]:
|
535
|
+
"""
|
536
|
+
The cluster name.
|
537
|
+
"""
|
538
|
+
return pulumi.get(self, "cluster")
|
539
|
+
|
540
|
+
@property
|
541
|
+
@pulumi.getter
|
542
|
+
def configs(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
543
|
+
"""
|
544
|
+
Configuration for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: `cleanup.policy=compact`, `compression.type=producer`.
|
545
|
+
"""
|
546
|
+
return pulumi.get(self, "configs")
|
547
|
+
|
548
|
+
@property
|
549
|
+
@pulumi.getter
|
550
|
+
def location(self) -> pulumi.Output[str]:
|
551
|
+
"""
|
552
|
+
ID of the location of the Apache Kafka for BigQuery resource. See https://cloud.google.com/managed-kafka/docs/locations for a list of supported locations.
|
553
|
+
"""
|
554
|
+
return pulumi.get(self, "location")
|
555
|
+
|
556
|
+
@property
|
557
|
+
@pulumi.getter
|
558
|
+
def name(self) -> pulumi.Output[str]:
|
559
|
+
"""
|
560
|
+
The name of the topic. The `topic` segment is used when connecting directly to the cluster. Must be in the format `projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID`.
|
561
|
+
"""
|
562
|
+
return pulumi.get(self, "name")
|
563
|
+
|
564
|
+
@property
|
565
|
+
@pulumi.getter(name="partitionCount")
|
566
|
+
def partition_count(self) -> pulumi.Output[Optional[int]]:
|
567
|
+
"""
|
568
|
+
The number of partitions in a topic. You can increase the partition count for a topic, but you cannot decrease it. Increasing partitions for a topic that uses a key might change how messages are distributed.
|
569
|
+
"""
|
570
|
+
return pulumi.get(self, "partition_count")
|
571
|
+
|
572
|
+
@property
|
573
|
+
@pulumi.getter
|
574
|
+
def project(self) -> pulumi.Output[str]:
|
575
|
+
"""
|
576
|
+
The ID of the project in which the resource belongs.
|
577
|
+
If it is not provided, the provider project is used.
|
578
|
+
"""
|
579
|
+
return pulumi.get(self, "project")
|
580
|
+
|
581
|
+
@property
|
582
|
+
@pulumi.getter(name="replicationFactor")
|
583
|
+
def replication_factor(self) -> pulumi.Output[int]:
|
584
|
+
"""
|
585
|
+
The number of replicas of each partition. A replication factor of 3 is recommended for high availability.
|
586
|
+
"""
|
587
|
+
return pulumi.get(self, "replication_factor")
|
588
|
+
|
589
|
+
@property
|
590
|
+
@pulumi.getter(name="topicId")
|
591
|
+
def topic_id(self) -> pulumi.Output[str]:
|
592
|
+
"""
|
593
|
+
The ID to use for the topic, which will become the final component of the topic's name. This value is structured like: `my-topic-name`.
|
594
|
+
|
595
|
+
|
596
|
+
- - -
|
597
|
+
"""
|
598
|
+
return pulumi.get(self, "topic_id")
|
599
|
+
|
pulumi_gcp/netapp/__init__.py
CHANGED