pulumi-gcp 8.34.0a1749484438__py3-none-any.whl → 8.34.0a1749648575__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 +32 -0
- pulumi_gcp/alloydb/cluster.py +16 -64
- pulumi_gcp/apigee/_inputs.py +89 -0
- pulumi_gcp/apigee/environment.py +68 -2
- pulumi_gcp/apigee/outputs.py +88 -0
- pulumi_gcp/apihub/__init__.py +1 -0
- pulumi_gcp/apihub/_inputs.py +184 -0
- pulumi_gcp/apihub/curation.py +812 -0
- pulumi_gcp/apihub/outputs.py +165 -0
- pulumi_gcp/beyondcorp/get_security_gateway.py +12 -1
- pulumi_gcp/beyondcorp/security_gateway.py +28 -0
- pulumi_gcp/cloudrunv2/_inputs.py +463 -0
- pulumi_gcp/cloudrunv2/outputs.py +581 -1
- pulumi_gcp/cloudrunv2/worker_pool.py +0 -8
- pulumi_gcp/colab/runtime_template.py +4 -26
- pulumi_gcp/compute/__init__.py +3 -0
- pulumi_gcp/compute/_inputs.py +1551 -0
- pulumi_gcp/compute/interconnect.py +32 -0
- pulumi_gcp/compute/interconnect_attachment.py +28 -0
- pulumi_gcp/compute/interconnect_attachment_group.py +636 -0
- pulumi_gcp/compute/interconnect_group.py +586 -0
- pulumi_gcp/compute/outputs.py +1087 -0
- pulumi_gcp/compute/snapshot_settings.py +285 -0
- pulumi_gcp/container/_inputs.py +51 -18
- pulumi_gcp/container/cluster.py +47 -0
- pulumi_gcp/container/get_cluster.py +12 -1
- pulumi_gcp/container/outputs.py +71 -16
- pulumi_gcp/dataplex/_inputs.py +20 -0
- pulumi_gcp/dataplex/datascan.py +2 -0
- pulumi_gcp/dataplex/outputs.py +15 -1
- pulumi_gcp/eventarc/_inputs.py +12 -5
- pulumi_gcp/eventarc/outputs.py +8 -3
- pulumi_gcp/eventarc/pipeline.py +0 -12
- pulumi_gcp/gemini/data_sharing_with_google_setting.py +58 -9
- pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +11 -16
- pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +51 -2
- pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +11 -16
- pulumi_gcp/gkehub/_inputs.py +84 -7
- pulumi_gcp/gkehub/feature.py +38 -0
- pulumi_gcp/gkehub/outputs.py +102 -7
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +54 -2
- pulumi_gcp/gkeonprem/_inputs.py +54 -0
- pulumi_gcp/gkeonprem/outputs.py +49 -0
- pulumi_gcp/gkeonprem/vmware_admin_cluster.py +71 -0
- pulumi_gcp/iam/workload_identity_pool_namespace.py +4 -4
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/managedkafka/connect_cluster.py +4 -4
- pulumi_gcp/managedkafka/connector.py +4 -4
- pulumi_gcp/networkconnectivity/spoke.py +14 -14
- pulumi_gcp/networksecurity/backend_authentication_config.py +64 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/pubsub/_inputs.py +392 -0
- pulumi_gcp/pubsub/get_subscription.py +12 -1
- pulumi_gcp/pubsub/get_topic.py +12 -1
- pulumi_gcp/pubsub/outputs.py +548 -0
- pulumi_gcp/pubsub/subscription.py +67 -6
- pulumi_gcp/pubsub/topic.py +61 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/RECORD +65 -61
- {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py
CHANGED
@@ -974,6 +974,14 @@ _utilities.register(
|
|
974
974
|
"gcp:apihub/apiHubInstance:ApiHubInstance": "ApiHubInstance"
|
975
975
|
}
|
976
976
|
},
|
977
|
+
{
|
978
|
+
"pkg": "gcp",
|
979
|
+
"mod": "apihub/curation",
|
980
|
+
"fqn": "pulumi_gcp.apihub",
|
981
|
+
"classes": {
|
982
|
+
"gcp:apihub/curation:Curation": "Curation"
|
983
|
+
}
|
984
|
+
},
|
977
985
|
{
|
978
986
|
"pkg": "gcp",
|
979
987
|
"mod": "apihub/hostProjectRegistration",
|
@@ -3038,6 +3046,22 @@ _utilities.register(
|
|
3038
3046
|
"gcp:compute/interconnectAttachment:InterconnectAttachment": "InterconnectAttachment"
|
3039
3047
|
}
|
3040
3048
|
},
|
3049
|
+
{
|
3050
|
+
"pkg": "gcp",
|
3051
|
+
"mod": "compute/interconnectAttachmentGroup",
|
3052
|
+
"fqn": "pulumi_gcp.compute",
|
3053
|
+
"classes": {
|
3054
|
+
"gcp:compute/interconnectAttachmentGroup:InterconnectAttachmentGroup": "InterconnectAttachmentGroup"
|
3055
|
+
}
|
3056
|
+
},
|
3057
|
+
{
|
3058
|
+
"pkg": "gcp",
|
3059
|
+
"mod": "compute/interconnectGroup",
|
3060
|
+
"fqn": "pulumi_gcp.compute",
|
3061
|
+
"classes": {
|
3062
|
+
"gcp:compute/interconnectGroup:InterconnectGroup": "InterconnectGroup"
|
3063
|
+
}
|
3064
|
+
},
|
3041
3065
|
{
|
3042
3066
|
"pkg": "gcp",
|
3043
3067
|
"mod": "compute/machineImage",
|
@@ -3718,6 +3742,14 @@ _utilities.register(
|
|
3718
3742
|
"gcp:compute/snapshotIamPolicy:SnapshotIamPolicy": "SnapshotIamPolicy"
|
3719
3743
|
}
|
3720
3744
|
},
|
3745
|
+
{
|
3746
|
+
"pkg": "gcp",
|
3747
|
+
"mod": "compute/snapshotSettings",
|
3748
|
+
"fqn": "pulumi_gcp.compute",
|
3749
|
+
"classes": {
|
3750
|
+
"gcp:compute/snapshotSettings:SnapshotSettings": "SnapshotSettings"
|
3751
|
+
}
|
3752
|
+
},
|
3721
3753
|
{
|
3722
3754
|
"pkg": "gcp",
|
3723
3755
|
"mod": "compute/storagePool",
|
pulumi_gcp/alloydb/cluster.py
CHANGED
@@ -1116,36 +1116,24 @@ class Cluster(pulumi.CustomResource):
|
|
1116
1116
|
import pulumi
|
1117
1117
|
import pulumi_gcp as gcp
|
1118
1118
|
|
1119
|
-
|
1119
|
+
default = gcp.compute.get_network(name="alloydb-network")
|
1120
1120
|
default_cluster = gcp.alloydb.Cluster("default",
|
1121
1121
|
cluster_id="alloydb-cluster",
|
1122
1122
|
location="us-central1",
|
1123
1123
|
network_config={
|
1124
|
-
"network":
|
1124
|
+
"network": default.id,
|
1125
1125
|
},
|
1126
1126
|
database_version="POSTGRES_14",
|
1127
1127
|
initial_user={
|
1128
1128
|
"password": "alloydb-cluster",
|
1129
1129
|
})
|
1130
|
-
|
1131
|
-
name="alloydb-cluster",
|
1132
|
-
address_type="INTERNAL",
|
1133
|
-
purpose="VPC_PEERING",
|
1134
|
-
prefix_length=16,
|
1135
|
-
network=default_network.id)
|
1136
|
-
vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
|
1137
|
-
network=default_network.id,
|
1138
|
-
service="servicenetworking.googleapis.com",
|
1139
|
-
reserved_peering_ranges=[private_ip_alloc.name])
|
1140
|
-
default = gcp.alloydb.Instance("default",
|
1130
|
+
default_instance = gcp.alloydb.Instance("default",
|
1141
1131
|
cluster=default_cluster.name,
|
1142
1132
|
instance_id="alloydb-instance",
|
1143
1133
|
instance_type="PRIMARY",
|
1144
1134
|
machine_config={
|
1145
1135
|
"cpu_count": 2,
|
1146
|
-
}
|
1147
|
-
opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
|
1148
|
-
project = gcp.organizations.get_project()
|
1136
|
+
})
|
1149
1137
|
```
|
1150
1138
|
### Alloydb Cluster After Upgrade
|
1151
1139
|
|
@@ -1153,36 +1141,24 @@ class Cluster(pulumi.CustomResource):
|
|
1153
1141
|
import pulumi
|
1154
1142
|
import pulumi_gcp as gcp
|
1155
1143
|
|
1156
|
-
|
1144
|
+
default = gcp.compute.get_network(name="alloydb-network")
|
1157
1145
|
default_cluster = gcp.alloydb.Cluster("default",
|
1158
1146
|
cluster_id="alloydb-cluster",
|
1159
1147
|
location="us-central1",
|
1160
1148
|
network_config={
|
1161
|
-
"network":
|
1149
|
+
"network": default.id,
|
1162
1150
|
},
|
1163
1151
|
database_version="POSTGRES_15",
|
1164
1152
|
initial_user={
|
1165
1153
|
"password": "alloydb-cluster",
|
1166
1154
|
})
|
1167
|
-
|
1168
|
-
name="alloydb-cluster",
|
1169
|
-
address_type="INTERNAL",
|
1170
|
-
purpose="VPC_PEERING",
|
1171
|
-
prefix_length=16,
|
1172
|
-
network=default_network.id)
|
1173
|
-
vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
|
1174
|
-
network=default_network.id,
|
1175
|
-
service="servicenetworking.googleapis.com",
|
1176
|
-
reserved_peering_ranges=[private_ip_alloc.name])
|
1177
|
-
default = gcp.alloydb.Instance("default",
|
1155
|
+
default_instance = gcp.alloydb.Instance("default",
|
1178
1156
|
cluster=default_cluster.name,
|
1179
1157
|
instance_id="alloydb-instance",
|
1180
1158
|
instance_type="PRIMARY",
|
1181
1159
|
machine_config={
|
1182
1160
|
"cpu_count": 2,
|
1183
|
-
}
|
1184
|
-
opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
|
1185
|
-
project = gcp.organizations.get_project()
|
1161
|
+
})
|
1186
1162
|
```
|
1187
1163
|
### Alloydb Cluster Full
|
1188
1164
|
|
@@ -1394,36 +1370,24 @@ class Cluster(pulumi.CustomResource):
|
|
1394
1370
|
import pulumi
|
1395
1371
|
import pulumi_gcp as gcp
|
1396
1372
|
|
1397
|
-
|
1373
|
+
default = gcp.compute.get_network(name="alloydb-network")
|
1398
1374
|
default_cluster = gcp.alloydb.Cluster("default",
|
1399
1375
|
cluster_id="alloydb-cluster",
|
1400
1376
|
location="us-central1",
|
1401
1377
|
network_config={
|
1402
|
-
"network":
|
1378
|
+
"network": default.id,
|
1403
1379
|
},
|
1404
1380
|
database_version="POSTGRES_14",
|
1405
1381
|
initial_user={
|
1406
1382
|
"password": "alloydb-cluster",
|
1407
1383
|
})
|
1408
|
-
|
1409
|
-
name="alloydb-cluster",
|
1410
|
-
address_type="INTERNAL",
|
1411
|
-
purpose="VPC_PEERING",
|
1412
|
-
prefix_length=16,
|
1413
|
-
network=default_network.id)
|
1414
|
-
vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
|
1415
|
-
network=default_network.id,
|
1416
|
-
service="servicenetworking.googleapis.com",
|
1417
|
-
reserved_peering_ranges=[private_ip_alloc.name])
|
1418
|
-
default = gcp.alloydb.Instance("default",
|
1384
|
+
default_instance = gcp.alloydb.Instance("default",
|
1419
1385
|
cluster=default_cluster.name,
|
1420
1386
|
instance_id="alloydb-instance",
|
1421
1387
|
instance_type="PRIMARY",
|
1422
1388
|
machine_config={
|
1423
1389
|
"cpu_count": 2,
|
1424
|
-
}
|
1425
|
-
opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
|
1426
|
-
project = gcp.organizations.get_project()
|
1390
|
+
})
|
1427
1391
|
```
|
1428
1392
|
### Alloydb Cluster After Upgrade
|
1429
1393
|
|
@@ -1431,36 +1395,24 @@ class Cluster(pulumi.CustomResource):
|
|
1431
1395
|
import pulumi
|
1432
1396
|
import pulumi_gcp as gcp
|
1433
1397
|
|
1434
|
-
|
1398
|
+
default = gcp.compute.get_network(name="alloydb-network")
|
1435
1399
|
default_cluster = gcp.alloydb.Cluster("default",
|
1436
1400
|
cluster_id="alloydb-cluster",
|
1437
1401
|
location="us-central1",
|
1438
1402
|
network_config={
|
1439
|
-
"network":
|
1403
|
+
"network": default.id,
|
1440
1404
|
},
|
1441
1405
|
database_version="POSTGRES_15",
|
1442
1406
|
initial_user={
|
1443
1407
|
"password": "alloydb-cluster",
|
1444
1408
|
})
|
1445
|
-
|
1446
|
-
name="alloydb-cluster",
|
1447
|
-
address_type="INTERNAL",
|
1448
|
-
purpose="VPC_PEERING",
|
1449
|
-
prefix_length=16,
|
1450
|
-
network=default_network.id)
|
1451
|
-
vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
|
1452
|
-
network=default_network.id,
|
1453
|
-
service="servicenetworking.googleapis.com",
|
1454
|
-
reserved_peering_ranges=[private_ip_alloc.name])
|
1455
|
-
default = gcp.alloydb.Instance("default",
|
1409
|
+
default_instance = gcp.alloydb.Instance("default",
|
1456
1410
|
cluster=default_cluster.name,
|
1457
1411
|
instance_id="alloydb-instance",
|
1458
1412
|
instance_type="PRIMARY",
|
1459
1413
|
machine_config={
|
1460
1414
|
"cpu_count": 2,
|
1461
|
-
}
|
1462
|
-
opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
|
1463
|
-
project = gcp.organizations.get_project()
|
1415
|
+
})
|
1464
1416
|
```
|
1465
1417
|
### Alloydb Cluster Full
|
1466
1418
|
|
pulumi_gcp/apigee/_inputs.py
CHANGED
@@ -36,6 +36,10 @@ __all__ = [
|
|
36
36
|
'DeveloperAttributeArgsDict',
|
37
37
|
'DnsZonePeeringConfigArgs',
|
38
38
|
'DnsZonePeeringConfigArgsDict',
|
39
|
+
'EnvironmentClientIpResolutionConfigArgs',
|
40
|
+
'EnvironmentClientIpResolutionConfigArgsDict',
|
41
|
+
'EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs',
|
42
|
+
'EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgsDict',
|
39
43
|
'EnvironmentIamBindingConditionArgs',
|
40
44
|
'EnvironmentIamBindingConditionArgsDict',
|
41
45
|
'EnvironmentIamMemberConditionArgs',
|
@@ -645,6 +649,91 @@ class DnsZonePeeringConfigArgs:
|
|
645
649
|
pulumi.set(self, "target_project_id", value)
|
646
650
|
|
647
651
|
|
652
|
+
if not MYPY:
|
653
|
+
class EnvironmentClientIpResolutionConfigArgsDict(TypedDict):
|
654
|
+
header_index_algorithm: NotRequired[pulumi.Input['EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgsDict']]
|
655
|
+
"""
|
656
|
+
Resolves the client ip based on a custom header.
|
657
|
+
Structure is documented below.
|
658
|
+
"""
|
659
|
+
elif False:
|
660
|
+
EnvironmentClientIpResolutionConfigArgsDict: TypeAlias = Mapping[str, Any]
|
661
|
+
|
662
|
+
@pulumi.input_type
|
663
|
+
class EnvironmentClientIpResolutionConfigArgs:
|
664
|
+
def __init__(__self__, *,
|
665
|
+
header_index_algorithm: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs']] = None):
|
666
|
+
"""
|
667
|
+
:param pulumi.Input['EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs'] header_index_algorithm: Resolves the client ip based on a custom header.
|
668
|
+
Structure is documented below.
|
669
|
+
"""
|
670
|
+
if header_index_algorithm is not None:
|
671
|
+
pulumi.set(__self__, "header_index_algorithm", header_index_algorithm)
|
672
|
+
|
673
|
+
@property
|
674
|
+
@pulumi.getter(name="headerIndexAlgorithm")
|
675
|
+
def header_index_algorithm(self) -> Optional[pulumi.Input['EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs']]:
|
676
|
+
"""
|
677
|
+
Resolves the client ip based on a custom header.
|
678
|
+
Structure is documented below.
|
679
|
+
"""
|
680
|
+
return pulumi.get(self, "header_index_algorithm")
|
681
|
+
|
682
|
+
@header_index_algorithm.setter
|
683
|
+
def header_index_algorithm(self, value: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs']]):
|
684
|
+
pulumi.set(self, "header_index_algorithm", value)
|
685
|
+
|
686
|
+
|
687
|
+
if not MYPY:
|
688
|
+
class EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgsDict(TypedDict):
|
689
|
+
ip_header_index: pulumi.Input[builtins.int]
|
690
|
+
"""
|
691
|
+
The index of the ip in the header. Positive indices 0, 1, 2, 3 chooses indices from the left (first ips). Negative indices -1, -2, -3 chooses indices from the right (last ips).
|
692
|
+
"""
|
693
|
+
ip_header_name: pulumi.Input[builtins.str]
|
694
|
+
"""
|
695
|
+
The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.
|
696
|
+
"""
|
697
|
+
elif False:
|
698
|
+
EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgsDict: TypeAlias = Mapping[str, Any]
|
699
|
+
|
700
|
+
@pulumi.input_type
|
701
|
+
class EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs:
|
702
|
+
def __init__(__self__, *,
|
703
|
+
ip_header_index: pulumi.Input[builtins.int],
|
704
|
+
ip_header_name: pulumi.Input[builtins.str]):
|
705
|
+
"""
|
706
|
+
:param pulumi.Input[builtins.int] ip_header_index: The index of the ip in the header. Positive indices 0, 1, 2, 3 chooses indices from the left (first ips). Negative indices -1, -2, -3 chooses indices from the right (last ips).
|
707
|
+
:param pulumi.Input[builtins.str] ip_header_name: The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.
|
708
|
+
"""
|
709
|
+
pulumi.set(__self__, "ip_header_index", ip_header_index)
|
710
|
+
pulumi.set(__self__, "ip_header_name", ip_header_name)
|
711
|
+
|
712
|
+
@property
|
713
|
+
@pulumi.getter(name="ipHeaderIndex")
|
714
|
+
def ip_header_index(self) -> pulumi.Input[builtins.int]:
|
715
|
+
"""
|
716
|
+
The index of the ip in the header. Positive indices 0, 1, 2, 3 chooses indices from the left (first ips). Negative indices -1, -2, -3 chooses indices from the right (last ips).
|
717
|
+
"""
|
718
|
+
return pulumi.get(self, "ip_header_index")
|
719
|
+
|
720
|
+
@ip_header_index.setter
|
721
|
+
def ip_header_index(self, value: pulumi.Input[builtins.int]):
|
722
|
+
pulumi.set(self, "ip_header_index", value)
|
723
|
+
|
724
|
+
@property
|
725
|
+
@pulumi.getter(name="ipHeaderName")
|
726
|
+
def ip_header_name(self) -> pulumi.Input[builtins.str]:
|
727
|
+
"""
|
728
|
+
The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.
|
729
|
+
"""
|
730
|
+
return pulumi.get(self, "ip_header_name")
|
731
|
+
|
732
|
+
@ip_header_name.setter
|
733
|
+
def ip_header_name(self, value: pulumi.Input[builtins.str]):
|
734
|
+
pulumi.set(self, "ip_header_name", value)
|
735
|
+
|
736
|
+
|
648
737
|
if not MYPY:
|
649
738
|
class EnvironmentIamBindingConditionArgsDict(TypedDict):
|
650
739
|
expression: pulumi.Input[builtins.str]
|
pulumi_gcp/apigee/environment.py
CHANGED
@@ -24,6 +24,7 @@ class EnvironmentArgs:
|
|
24
24
|
def __init__(__self__, *,
|
25
25
|
org_id: pulumi.Input[builtins.str],
|
26
26
|
api_proxy_type: Optional[pulumi.Input[builtins.str]] = None,
|
27
|
+
client_ip_resolution_config: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']] = None,
|
27
28
|
deployment_type: Optional[pulumi.Input[builtins.str]] = None,
|
28
29
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
29
30
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -42,6 +43,8 @@ class EnvironmentArgs:
|
|
42
43
|
:param pulumi.Input[builtins.str] api_proxy_type: Optional. API Proxy type supported by the environment. The type can be set when creating
|
43
44
|
the Environment and cannot be changed.
|
44
45
|
Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
|
46
|
+
:param pulumi.Input['EnvironmentClientIpResolutionConfigArgs'] client_ip_resolution_config: The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
47
|
+
Structure is documented below.
|
45
48
|
:param pulumi.Input[builtins.str] deployment_type: Optional. Deployment type supported by the environment. The deployment type can be
|
46
49
|
set when creating the environment and cannot be changed. When you enable archive
|
47
50
|
deployment, you will be prevented from performing a subset of actions within the
|
@@ -67,6 +70,8 @@ class EnvironmentArgs:
|
|
67
70
|
pulumi.set(__self__, "org_id", org_id)
|
68
71
|
if api_proxy_type is not None:
|
69
72
|
pulumi.set(__self__, "api_proxy_type", api_proxy_type)
|
73
|
+
if client_ip_resolution_config is not None:
|
74
|
+
pulumi.set(__self__, "client_ip_resolution_config", client_ip_resolution_config)
|
70
75
|
if deployment_type is not None:
|
71
76
|
pulumi.set(__self__, "deployment_type", deployment_type)
|
72
77
|
if description is not None:
|
@@ -114,6 +119,19 @@ class EnvironmentArgs:
|
|
114
119
|
def api_proxy_type(self, value: Optional[pulumi.Input[builtins.str]]):
|
115
120
|
pulumi.set(self, "api_proxy_type", value)
|
116
121
|
|
122
|
+
@property
|
123
|
+
@pulumi.getter(name="clientIpResolutionConfig")
|
124
|
+
def client_ip_resolution_config(self) -> Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']]:
|
125
|
+
"""
|
126
|
+
The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
127
|
+
Structure is documented below.
|
128
|
+
"""
|
129
|
+
return pulumi.get(self, "client_ip_resolution_config")
|
130
|
+
|
131
|
+
@client_ip_resolution_config.setter
|
132
|
+
def client_ip_resolution_config(self, value: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']]):
|
133
|
+
pulumi.set(self, "client_ip_resolution_config", value)
|
134
|
+
|
117
135
|
@property
|
118
136
|
@pulumi.getter(name="deploymentType")
|
119
137
|
def deployment_type(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -228,6 +246,7 @@ class EnvironmentArgs:
|
|
228
246
|
class _EnvironmentState:
|
229
247
|
def __init__(__self__, *,
|
230
248
|
api_proxy_type: Optional[pulumi.Input[builtins.str]] = None,
|
249
|
+
client_ip_resolution_config: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']] = None,
|
231
250
|
deployment_type: Optional[pulumi.Input[builtins.str]] = None,
|
232
251
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
233
252
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -242,6 +261,8 @@ class _EnvironmentState:
|
|
242
261
|
:param pulumi.Input[builtins.str] api_proxy_type: Optional. API Proxy type supported by the environment. The type can be set when creating
|
243
262
|
the Environment and cannot be changed.
|
244
263
|
Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
|
264
|
+
:param pulumi.Input['EnvironmentClientIpResolutionConfigArgs'] client_ip_resolution_config: The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
265
|
+
Structure is documented below.
|
245
266
|
:param pulumi.Input[builtins.str] deployment_type: Optional. Deployment type supported by the environment. The deployment type can be
|
246
267
|
set when creating the environment and cannot be changed. When you enable archive
|
247
268
|
deployment, you will be prevented from performing a subset of actions within the
|
@@ -271,6 +292,8 @@ class _EnvironmentState:
|
|
271
292
|
"""
|
272
293
|
if api_proxy_type is not None:
|
273
294
|
pulumi.set(__self__, "api_proxy_type", api_proxy_type)
|
295
|
+
if client_ip_resolution_config is not None:
|
296
|
+
pulumi.set(__self__, "client_ip_resolution_config", client_ip_resolution_config)
|
274
297
|
if deployment_type is not None:
|
275
298
|
pulumi.set(__self__, "deployment_type", deployment_type)
|
276
299
|
if description is not None:
|
@@ -304,6 +327,19 @@ class _EnvironmentState:
|
|
304
327
|
def api_proxy_type(self, value: Optional[pulumi.Input[builtins.str]]):
|
305
328
|
pulumi.set(self, "api_proxy_type", value)
|
306
329
|
|
330
|
+
@property
|
331
|
+
@pulumi.getter(name="clientIpResolutionConfig")
|
332
|
+
def client_ip_resolution_config(self) -> Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']]:
|
333
|
+
"""
|
334
|
+
The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
335
|
+
Structure is documented below.
|
336
|
+
"""
|
337
|
+
return pulumi.get(self, "client_ip_resolution_config")
|
338
|
+
|
339
|
+
@client_ip_resolution_config.setter
|
340
|
+
def client_ip_resolution_config(self, value: Optional[pulumi.Input['EnvironmentClientIpResolutionConfigArgs']]):
|
341
|
+
pulumi.set(self, "client_ip_resolution_config", value)
|
342
|
+
|
307
343
|
@property
|
308
344
|
@pulumi.getter(name="deploymentType")
|
309
345
|
def deployment_type(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -437,6 +473,7 @@ class Environment(pulumi.CustomResource):
|
|
437
473
|
resource_name: str,
|
438
474
|
opts: Optional[pulumi.ResourceOptions] = None,
|
439
475
|
api_proxy_type: Optional[pulumi.Input[builtins.str]] = None,
|
476
|
+
client_ip_resolution_config: Optional[pulumi.Input[Union['EnvironmentClientIpResolutionConfigArgs', 'EnvironmentClientIpResolutionConfigArgsDict']]] = None,
|
440
477
|
deployment_type: Optional[pulumi.Input[builtins.str]] = None,
|
441
478
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
442
479
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -485,7 +522,13 @@ class Environment(pulumi.CustomResource):
|
|
485
522
|
name="my-environment",
|
486
523
|
description="Apigee Environment",
|
487
524
|
display_name="environment-1",
|
488
|
-
org_id=apigee_org.id
|
525
|
+
org_id=apigee_org.id,
|
526
|
+
client_ip_resolution_config={
|
527
|
+
"header_index_algorithm": {
|
528
|
+
"ip_header_name": "X-Forwarded-For",
|
529
|
+
"ip_header_index": 1,
|
530
|
+
},
|
531
|
+
})
|
489
532
|
```
|
490
533
|
|
491
534
|
## Import
|
@@ -511,6 +554,8 @@ class Environment(pulumi.CustomResource):
|
|
511
554
|
:param pulumi.Input[builtins.str] api_proxy_type: Optional. API Proxy type supported by the environment. The type can be set when creating
|
512
555
|
the Environment and cannot be changed.
|
513
556
|
Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
|
557
|
+
:param pulumi.Input[Union['EnvironmentClientIpResolutionConfigArgs', 'EnvironmentClientIpResolutionConfigArgsDict']] client_ip_resolution_config: The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
558
|
+
Structure is documented below.
|
514
559
|
:param pulumi.Input[builtins.str] deployment_type: Optional. Deployment type supported by the environment. The deployment type can be
|
515
560
|
set when creating the environment and cannot be changed. When you enable archive
|
516
561
|
deployment, you will be prevented from performing a subset of actions within the
|
@@ -582,7 +627,13 @@ class Environment(pulumi.CustomResource):
|
|
582
627
|
name="my-environment",
|
583
628
|
description="Apigee Environment",
|
584
629
|
display_name="environment-1",
|
585
|
-
org_id=apigee_org.id
|
630
|
+
org_id=apigee_org.id,
|
631
|
+
client_ip_resolution_config={
|
632
|
+
"header_index_algorithm": {
|
633
|
+
"ip_header_name": "X-Forwarded-For",
|
634
|
+
"ip_header_index": 1,
|
635
|
+
},
|
636
|
+
})
|
586
637
|
```
|
587
638
|
|
588
639
|
## Import
|
@@ -619,6 +670,7 @@ class Environment(pulumi.CustomResource):
|
|
619
670
|
resource_name: str,
|
620
671
|
opts: Optional[pulumi.ResourceOptions] = None,
|
621
672
|
api_proxy_type: Optional[pulumi.Input[builtins.str]] = None,
|
673
|
+
client_ip_resolution_config: Optional[pulumi.Input[Union['EnvironmentClientIpResolutionConfigArgs', 'EnvironmentClientIpResolutionConfigArgsDict']]] = None,
|
622
674
|
deployment_type: Optional[pulumi.Input[builtins.str]] = None,
|
623
675
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
624
676
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -638,6 +690,7 @@ class Environment(pulumi.CustomResource):
|
|
638
690
|
__props__ = EnvironmentArgs.__new__(EnvironmentArgs)
|
639
691
|
|
640
692
|
__props__.__dict__["api_proxy_type"] = api_proxy_type
|
693
|
+
__props__.__dict__["client_ip_resolution_config"] = client_ip_resolution_config
|
641
694
|
__props__.__dict__["deployment_type"] = deployment_type
|
642
695
|
__props__.__dict__["description"] = description
|
643
696
|
__props__.__dict__["display_name"] = display_name
|
@@ -660,6 +713,7 @@ class Environment(pulumi.CustomResource):
|
|
660
713
|
id: pulumi.Input[str],
|
661
714
|
opts: Optional[pulumi.ResourceOptions] = None,
|
662
715
|
api_proxy_type: Optional[pulumi.Input[builtins.str]] = None,
|
716
|
+
client_ip_resolution_config: Optional[pulumi.Input[Union['EnvironmentClientIpResolutionConfigArgs', 'EnvironmentClientIpResolutionConfigArgsDict']]] = None,
|
663
717
|
deployment_type: Optional[pulumi.Input[builtins.str]] = None,
|
664
718
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
665
719
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -679,6 +733,8 @@ class Environment(pulumi.CustomResource):
|
|
679
733
|
:param pulumi.Input[builtins.str] api_proxy_type: Optional. API Proxy type supported by the environment. The type can be set when creating
|
680
734
|
the Environment and cannot be changed.
|
681
735
|
Possible values are: `API_PROXY_TYPE_UNSPECIFIED`, `PROGRAMMABLE`, `CONFIGURABLE`.
|
736
|
+
:param pulumi.Input[Union['EnvironmentClientIpResolutionConfigArgs', 'EnvironmentClientIpResolutionConfigArgsDict']] client_ip_resolution_config: The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
737
|
+
Structure is documented below.
|
682
738
|
:param pulumi.Input[builtins.str] deployment_type: Optional. Deployment type supported by the environment. The deployment type can be
|
683
739
|
set when creating the environment and cannot be changed. When you enable archive
|
684
740
|
deployment, you will be prevented from performing a subset of actions within the
|
@@ -711,6 +767,7 @@ class Environment(pulumi.CustomResource):
|
|
711
767
|
__props__ = _EnvironmentState.__new__(_EnvironmentState)
|
712
768
|
|
713
769
|
__props__.__dict__["api_proxy_type"] = api_proxy_type
|
770
|
+
__props__.__dict__["client_ip_resolution_config"] = client_ip_resolution_config
|
714
771
|
__props__.__dict__["deployment_type"] = deployment_type
|
715
772
|
__props__.__dict__["description"] = description
|
716
773
|
__props__.__dict__["display_name"] = display_name
|
@@ -732,6 +789,15 @@ class Environment(pulumi.CustomResource):
|
|
732
789
|
"""
|
733
790
|
return pulumi.get(self, "api_proxy_type")
|
734
791
|
|
792
|
+
@property
|
793
|
+
@pulumi.getter(name="clientIpResolutionConfig")
|
794
|
+
def client_ip_resolution_config(self) -> pulumi.Output[Optional['outputs.EnvironmentClientIpResolutionConfig']]:
|
795
|
+
"""
|
796
|
+
The algorithm to resolve IP. This will affect Analytics, API Security, and other features that use the client ip. To remove a client ip resolution config, update the field to an empty value. Example: '{ "clientIpResolutionConfig" = {} }' For more information, see: https://cloud.google.com/apigee/docs/api-platform/system-administration/client-ip-resolution
|
797
|
+
Structure is documented below.
|
798
|
+
"""
|
799
|
+
return pulumi.get(self, "client_ip_resolution_config")
|
800
|
+
|
735
801
|
@property
|
736
802
|
@pulumi.getter(name="deploymentType")
|
737
803
|
def deployment_type(self) -> pulumi.Output[builtins.str]:
|
pulumi_gcp/apigee/outputs.py
CHANGED
@@ -27,6 +27,8 @@ __all__ = [
|
|
27
27
|
'AppGroupAttribute',
|
28
28
|
'DeveloperAttribute',
|
29
29
|
'DnsZonePeeringConfig',
|
30
|
+
'EnvironmentClientIpResolutionConfig',
|
31
|
+
'EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm',
|
30
32
|
'EnvironmentIamBindingCondition',
|
31
33
|
'EnvironmentIamMemberCondition',
|
32
34
|
'EnvironmentNodeConfig',
|
@@ -486,6 +488,92 @@ class DnsZonePeeringConfig(dict):
|
|
486
488
|
return pulumi.get(self, "target_project_id")
|
487
489
|
|
488
490
|
|
491
|
+
@pulumi.output_type
|
492
|
+
class EnvironmentClientIpResolutionConfig(dict):
|
493
|
+
@staticmethod
|
494
|
+
def __key_warning(key: str):
|
495
|
+
suggest = None
|
496
|
+
if key == "headerIndexAlgorithm":
|
497
|
+
suggest = "header_index_algorithm"
|
498
|
+
|
499
|
+
if suggest:
|
500
|
+
pulumi.log.warn(f"Key '{key}' not found in EnvironmentClientIpResolutionConfig. Access the value via the '{suggest}' property getter instead.")
|
501
|
+
|
502
|
+
def __getitem__(self, key: str) -> Any:
|
503
|
+
EnvironmentClientIpResolutionConfig.__key_warning(key)
|
504
|
+
return super().__getitem__(key)
|
505
|
+
|
506
|
+
def get(self, key: str, default = None) -> Any:
|
507
|
+
EnvironmentClientIpResolutionConfig.__key_warning(key)
|
508
|
+
return super().get(key, default)
|
509
|
+
|
510
|
+
def __init__(__self__, *,
|
511
|
+
header_index_algorithm: Optional['outputs.EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm'] = None):
|
512
|
+
"""
|
513
|
+
:param 'EnvironmentClientIpResolutionConfigHeaderIndexAlgorithmArgs' header_index_algorithm: Resolves the client ip based on a custom header.
|
514
|
+
Structure is documented below.
|
515
|
+
"""
|
516
|
+
if header_index_algorithm is not None:
|
517
|
+
pulumi.set(__self__, "header_index_algorithm", header_index_algorithm)
|
518
|
+
|
519
|
+
@property
|
520
|
+
@pulumi.getter(name="headerIndexAlgorithm")
|
521
|
+
def header_index_algorithm(self) -> Optional['outputs.EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm']:
|
522
|
+
"""
|
523
|
+
Resolves the client ip based on a custom header.
|
524
|
+
Structure is documented below.
|
525
|
+
"""
|
526
|
+
return pulumi.get(self, "header_index_algorithm")
|
527
|
+
|
528
|
+
|
529
|
+
@pulumi.output_type
|
530
|
+
class EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm(dict):
|
531
|
+
@staticmethod
|
532
|
+
def __key_warning(key: str):
|
533
|
+
suggest = None
|
534
|
+
if key == "ipHeaderIndex":
|
535
|
+
suggest = "ip_header_index"
|
536
|
+
elif key == "ipHeaderName":
|
537
|
+
suggest = "ip_header_name"
|
538
|
+
|
539
|
+
if suggest:
|
540
|
+
pulumi.log.warn(f"Key '{key}' not found in EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm. Access the value via the '{suggest}' property getter instead.")
|
541
|
+
|
542
|
+
def __getitem__(self, key: str) -> Any:
|
543
|
+
EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm.__key_warning(key)
|
544
|
+
return super().__getitem__(key)
|
545
|
+
|
546
|
+
def get(self, key: str, default = None) -> Any:
|
547
|
+
EnvironmentClientIpResolutionConfigHeaderIndexAlgorithm.__key_warning(key)
|
548
|
+
return super().get(key, default)
|
549
|
+
|
550
|
+
def __init__(__self__, *,
|
551
|
+
ip_header_index: builtins.int,
|
552
|
+
ip_header_name: builtins.str):
|
553
|
+
"""
|
554
|
+
:param builtins.int ip_header_index: The index of the ip in the header. Positive indices 0, 1, 2, 3 chooses indices from the left (first ips). Negative indices -1, -2, -3 chooses indices from the right (last ips).
|
555
|
+
:param builtins.str ip_header_name: The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.
|
556
|
+
"""
|
557
|
+
pulumi.set(__self__, "ip_header_index", ip_header_index)
|
558
|
+
pulumi.set(__self__, "ip_header_name", ip_header_name)
|
559
|
+
|
560
|
+
@property
|
561
|
+
@pulumi.getter(name="ipHeaderIndex")
|
562
|
+
def ip_header_index(self) -> builtins.int:
|
563
|
+
"""
|
564
|
+
The index of the ip in the header. Positive indices 0, 1, 2, 3 chooses indices from the left (first ips). Negative indices -1, -2, -3 chooses indices from the right (last ips).
|
565
|
+
"""
|
566
|
+
return pulumi.get(self, "ip_header_index")
|
567
|
+
|
568
|
+
@property
|
569
|
+
@pulumi.getter(name="ipHeaderName")
|
570
|
+
def ip_header_name(self) -> builtins.str:
|
571
|
+
"""
|
572
|
+
The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.
|
573
|
+
"""
|
574
|
+
return pulumi.get(self, "ip_header_name")
|
575
|
+
|
576
|
+
|
489
577
|
@pulumi.output_type
|
490
578
|
class EnvironmentIamBindingCondition(dict):
|
491
579
|
def __init__(__self__, *,
|
pulumi_gcp/apihub/__init__.py
CHANGED