From 5cd8d3b9e2134e5b9bb2cabe8bc52e67d5128950 Mon Sep 17 00:00:00 2001 From: Tim Hogarty Date: Mon, 21 Oct 2024 16:55:44 -0700 Subject: [PATCH 1/3] Manually add mappings for newly created fabric route filter resources and data sources --- provider/resources.go | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/provider/resources.go b/provider/resources.go index 3294b0090..b1122ae79 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -149,6 +149,15 @@ func Provider() tfbridge.ProviderInfo { }, Resources: map[string]*tfbridge.ResourceInfo{ // Equinix Fabric v4 + "equinix_fabric_connection_route_filter": { + Tok: makeEquinixResource(fabricMod, "ConnectionRouteFilter"), + }, + "equinix_fabric_route_filter": { + Tok: makeEquinixResource(fabricMod, "RouteFilter"), + }, + "equinix_fabric_route_filter_rule": { + Tok: makeEquinixResource(fabricMod, "RouteFilterRule"), + }, "equinix_fabric_connection": { Tok: makeEquinixResource(fabricMod, "Connection"), Docs: &tfbridge.DocInfo{ @@ -1157,6 +1166,24 @@ func Provider() tfbridge.ProviderInfo { }, DataSources: map[string]*tfbridge.DataSourceInfo{ // Equinix Fabric v4 + "equinix_fabric_connection_route_filter": { + Tok: makeEquinixDataSource(fabricMod, "ConnectionRouteFilter"), + }, + "equinix_fabric_connection_route_filters": { + Tok: makeEquinixDataSource(fabricMod, "ConnectionRouteFilters"), + }, + "equinix_fabric_route_filter": { + Tok: makeEquinixDataSource(fabricMod, "RouteFilter"), + }, + "equinix_fabric_route_filters": { + Tok: makeEquinixDataSource(fabricMod, "RouteFilters"), + }, + "equinix_fabric_route_filter_rule": { + Tok: makeEquinixDataSource(fabricMod, "RouteFilterRule"), + }, + "equinix_fabric_route_filter_rules": { + Tok: makeEquinixDataSource(fabricMod, "RouteFilterRules"), + }, "equinix_fabric_connection": { Tok: makeEquinixDataSource(fabricMod, "Connection"), Fields: map[string]*tfbridge.SchemaInfo{ From 44c7dc4b7b7281bba3e0f49142b46b8f8bb92b48 Mon Sep 17 00:00:00 2001 From: Tim Hogarty Date: Mon, 21 Oct 2024 23:27:21 -0700 Subject: [PATCH 2/3] Code generation for newly mapped fabric route filter resources and data sources with make build command --- ...fabric_connection_route_filter.examples.md | 50 +- ...uinix_fabric_route_filter_rule.examples.md | 58 +- ...uinix-fabric-cloud_router-example_1.csproj | 2 +- .../cloud_router/example_1/java/pom.xml | 2 +- .../example_1/python/requirements.txt | 2 +- .../example_1/typescript/package.json | 2 +- ...uinix-fabric-cloud_router-example_2.csproj | 2 +- .../cloud_router/example_2/java/pom.xml | 2 +- .../example_2/python/requirements.txt | 2 +- .../example_2/typescript/package.json | 2 +- ...ric-connection-example_fcr_to_azure.csproj | 2 +- .../example_fcr_to_azure/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ric-connection-example_fcr_to_metal.csproj | 2 +- .../example_fcr_to_metal/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...c-connection-example_fcr_to_network.csproj | 2 +- .../example_fcr_to_network/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...bric-connection-example_fcr_to_port.csproj | 2 +- .../example_fcr_to_port/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ric-connection-example_metal_to_aws.csproj | 2 +- .../example_metal_to_aws/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...bric-connection-example_port_to_aws.csproj | 2 +- .../example_port_to_aws/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ction-example_port_to_network_eplan.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...tion-example_port_to_network_evplan.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ric-connection-example_port_to_port.csproj | 2 +- .../example_port_to_port/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ion-example_port_to_port_access_epl.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...connection-example_port_to_port_epl.csproj | 2 +- .../example_port_to_port_epl/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...abric-connection-example_port_to_vd.csproj | 2 +- .../example_port_to_vd/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ric-connection-example_token_to_aws.csproj | 2 +- .../example_token_to_aws/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...bric-connection-example_vd_to_azure.csproj | 2 +- .../example_vd_to_azure/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ction-example_vd_to_azure_redundant.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...ic-connection-example_vd_to_network.csproj | 2 +- .../example_vd_to_network/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...bric-connection-example_vd_to_token.csproj | 2 +- .../example_vd_to_token/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../connection_route_filter/Pulumi.yaml | 2 +- .../connection_route_filter/csharp/Program.cs | 8 + ...inix-fabric-connection_route_filter.csproj | 1 + .../fabric/connection_route_filter/go/go.mod | 116 +- .../fabric/connection_route_filter/go/main.go | 11 +- .../connection_route_filter/java/pom.xml | 6 +- .../src/main/java/generated_program/App.java | 8 + .../python/__main__.py | 15 +- .../python/requirements.txt | 1 + .../typescript/index.ts | 6 + .../typescript/package.json | 3 +- .../csharp/equinix-fabric-network.csproj | 2 +- examples/fabric/network/java/pom.xml | 2 +- .../fabric/network/python/requirements.txt | 2 +- .../fabric/network/typescript/package.json | 2 +- examples/fabric/route_filter_rule/Pulumi.yaml | 2 +- .../route_filter_rule/csharp/Program.cs | 10 + .../equinix-fabric-route_filter_rule.csproj | 1 + examples/fabric/route_filter_rule/go/go.mod | 116 +- examples/fabric/route_filter_rule/go/main.go | 13 +- .../fabric/route_filter_rule/java/pom.xml | 6 +- .../src/main/java/generated_program/App.java | 10 + .../route_filter_rule/python/__main__.py | 15 +- .../route_filter_rule/python/requirements.txt | 1 + .../route_filter_rule/typescript/index.ts | 8 + .../route_filter_rule/typescript/package.json | 3 +- ...x-fabric-routing_protocol-example_1.csproj | 2 +- .../routing_protocol/example_1/java/pom.xml | 2 +- .../example_1/python/requirements.txt | 2 +- .../example_1/typescript/package.json | 2 +- ...x-fabric-routing_protocol-example_2.csproj | 2 +- .../routing_protocol/example_2/java/pom.xml | 2 +- .../example_2/python/requirements.txt | 2 +- .../example_2/typescript/package.json | 2 +- ...x-fabric-routing_protocol-example_3.csproj | 2 +- .../routing_protocol/example_3/java/pom.xml | 2 +- .../example_3/python/requirements.txt | 2 +- .../example_3/typescript/package.json | 2 +- .../equinix-fabric-service_profile.csproj | 2 +- examples/fabric/service_profile/java/pom.xml | 2 +- .../service_profile/python/requirements.txt | 2 +- .../service_profile/typescript/package.json | 2 +- .../csharp/equinix-metal-bgp_session.csproj | 2 +- examples/metal/bgp_session/java/pom.xml | 2 +- .../metal/bgp_session/python/requirements.txt | 2 +- .../metal/bgp_session/typescript/package.json | 2 +- ...abric_billed_metal_from_fabric_port.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...xample_fabric_billed_metal_from_fcr.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...bric_billed_metal_from_network_edge.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...e_metal_billed_metal_to_fabric_port.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../equinix-metal-device-example_1.csproj | 2 +- examples/metal/device/example_1/java/pom.xml | 2 +- .../device/example_1/python/requirements.txt | 2 +- .../device/example_1/typescript/package.json | 2 +- .../equinix-metal-device-example_2.csproj | 2 +- examples/metal/device/example_2/java/pom.xml | 2 +- .../device/example_2/python/requirements.txt | 2 +- .../device/example_2/typescript/package.json | 2 +- .../equinix-metal-device-example_3.csproj | 2 +- examples/metal/device/example_3/java/pom.xml | 2 +- .../device/example_3/python/requirements.txt | 2 +- .../device/example_3/typescript/package.json | 2 +- .../equinix-metal-device-example_4.csproj | 2 +- examples/metal/device/example_4/java/pom.xml | 2 +- .../device/example_4/python/requirements.txt | 2 +- .../device/example_4/typescript/package.json | 2 +- .../equinix-metal-device-example_5.csproj | 2 +- examples/metal/device/example_5/java/pom.xml | 2 +- .../device/example_5/python/requirements.txt | 2 +- .../device/example_5/typescript/package.json | 2 +- .../equinix-metal-device-network-type.csproj | 2 +- .../metal/device_network_type/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../equinix-metal-gateway-example_1.csproj | 2 +- examples/metal/gateway/example_1/java/pom.xml | 2 +- .../gateway/example_1/python/requirements.txt | 2 +- .../gateway/example_1/typescript/package.json | 2 +- .../equinix-metal-gateway-example_2.csproj | 2 +- examples/metal/gateway/example_2/java/pom.xml | 2 +- .../gateway/example_2/python/requirements.txt | 2 +- .../gateway/example_2/typescript/package.json | 2 +- .../csharp/equinix-metal-ip_attachment.csproj | 2 +- examples/metal/ip_attachment/java/pom.xml | 2 +- .../ip_attachment/python/requirements.txt | 2 +- .../ip_attachment/typescript/package.json | 2 +- .../csharp/equinix-metal-organization.csproj | 2 +- examples/metal/organization/java/pom.xml | 2 +- .../organization/python/requirements.txt | 2 +- .../organization/typescript/package.json | 2 +- ...metal-organization_member-example_1.csproj | 2 +- .../example_1/java/pom.xml | 2 +- .../example_1/python/requirements.txt | 2 +- .../example_1/typescript/package.json | 2 +- ...metal-organization_member-example_2.csproj | 2 +- .../example_2/java/pom.xml | 2 +- .../example_2/python/requirements.txt | 2 +- .../example_2/typescript/package.json | 2 +- ...etal-port_vlan_attachment-example_1.csproj | 2 +- .../example_1/java/pom.xml | 2 +- .../example_1/python/requirements.txt | 2 +- .../example_1/typescript/package.json | 2 +- ...etal-port_vlan_attachment-example_2.csproj | 2 +- .../example_2/java/pom.xml | 2 +- .../example_2/python/requirements.txt | 2 +- .../example_2/typescript/package.json | 2 +- .../equinix-metal-project-example_1.csproj | 2 +- examples/metal/project/example_1/java/pom.xml | 2 +- .../project/example_1/python/requirements.txt | 2 +- .../project/example_1/typescript/package.json | 2 +- .../equinix-metal-project-example_2.csproj | 2 +- examples/metal/project/example_2/java/pom.xml | 2 +- .../project/example_2/python/requirements.txt | 2 +- .../project/example_2/typescript/package.json | 2 +- .../equinix-metal-project-example_3.csproj | 2 +- examples/metal/project/example_3/java/pom.xml | 2 +- .../project/example_3/python/requirements.txt | 2 +- .../project/example_3/typescript/package.json | 2 +- .../equinix-metal-project_api_key.csproj | 2 +- examples/metal/project_api_key/java/pom.xml | 2 +- .../project_api_key/python/requirements.txt | 2 +- .../project_api_key/typescript/package.json | 2 +- .../equinix-metal-project_ssh_key.csproj | 2 +- examples/metal/project_ssh_key/java/pom.xml | 2 +- .../project_ssh_key/python/requirements.txt | 2 +- .../project_ssh_key/typescript/package.json | 2 +- ...x-metal-reserved_ip_block-example_1.csproj | 2 +- .../reserved_ip_block/example_1/java/pom.xml | 2 +- .../example_1/python/requirements.txt | 2 +- .../example_1/typescript/package.json | 2 +- ...x-metal-reserved_ip_block-example_2.csproj | 2 +- .../reserved_ip_block/example_2/java/pom.xml | 2 +- .../example_2/python/requirements.txt | 2 +- .../example_2/typescript/package.json | 2 +- .../equinix-metal-spot_market_request.csproj | 2 +- .../metal/spot_market_request/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../csharp/equinix-metal-ssh_key.csproj | 2 +- examples/metal/ssh_key/java/pom.xml | 2 +- .../metal/ssh_key/python/requirements.txt | 2 +- .../metal/ssh_key/typescript/package.json | 2 +- .../csharp/equinix-metal-user_api_key.csproj | 2 +- examples/metal/user_api_key/java/pom.xml | 2 +- .../user_api_key/python/requirements.txt | 2 +- .../user_api_key/typescript/package.json | 2 +- .../equinix-metal-virtual_circuit.csproj | 2 +- examples/metal/virtual_circuit/java/pom.xml | 2 +- .../virtual_circuit/python/requirements.txt | 2 +- .../virtual_circuit/typescript/package.json | 2 +- .../vlan/csharp/equinix-metal-vlan.csproj | 2 +- examples/metal/vlan/java/pom.xml | 2 +- examples/metal/vlan/python/requirements.txt | 2 +- examples/metal/vlan/typescript/package.json | 2 +- .../csharp/equinix-metal-vrf-example_1.csproj | 2 +- examples/metal/vrf/example_1/java/pom.xml | 2 +- .../vrf/example_1/python/requirements.txt | 2 +- .../vrf/example_1/typescript/package.json | 2 +- .../csharp/equinix-metal-vrf-example_2.csproj | 2 +- examples/metal/vrf/example_2/java/pom.xml | 2 +- .../vrf/example_2/python/requirements.txt | 2 +- .../vrf/example_2/typescript/package.json | 2 +- .../csharp/equinix-metal-vrf-example_3.csproj | 2 +- examples/metal/vrf/example_3/java/pom.xml | 2 +- .../vrf/example_3/python/requirements.txt | 2 +- .../vrf/example_3/typescript/package.json | 2 +- .../equinix-network-acl_template.csproj | 2 +- examples/network/acl_template/java/pom.xml | 2 +- .../acl_template/python/requirements.txt | 2 +- .../acl_template/typescript/package.json | 2 +- .../bgp/csharp/equinix-network-bgp.csproj | 2 +- examples/network/bgp/java/pom.xml | 2 +- examples/network/bgp/python/requirements.txt | 2 +- examples/network/bgp/typescript/package.json | 2 +- .../equinix-network-device-example_1.csproj | 2 +- .../network/device/example_1/java/pom.xml | 2 +- .../device/example_1/python/requirements.txt | 2 +- .../device/example_1/typescript/package.json | 2 +- .../equinix-network-device-example_2.csproj | 2 +- .../network/device/example_2/java/pom.xml | 2 +- .../device/example_2/python/requirements.txt | 2 +- .../device/example_2/typescript/package.json | 2 +- .../equinix-network-device-example_3.csproj | 2 +- .../network/device/example_3/java/pom.xml | 2 +- .../device/example_3/python/requirements.txt | 2 +- .../device/example_3/typescript/package.json | 2 +- .../equinix-network-device-example_4.csproj | 2 +- .../network/device/example_4/java/pom.xml | 2 +- .../device/example_4/python/requirements.txt | 2 +- .../device/example_4/typescript/package.json | 2 +- .../equinix-network-device-example_5.csproj | 2 +- .../network/device/example_5/java/pom.xml | 2 +- .../device/example_5/python/requirements.txt | 2 +- .../device/example_5/typescript/package.json | 2 +- .../equinix-network-device-example_6.csproj | 2 +- .../network/device/example_6/java/pom.xml | 2 +- .../device/example_6/python/requirements.txt | 2 +- .../device/example_6/typescript/package.json | 2 +- .../equinix-network-device-example_7.csproj | 2 +- .../network/device/example_7/java/pom.xml | 2 +- .../device/example_7/python/requirements.txt | 2 +- .../device/example_7/typescript/package.json | 2 +- .../equinix-network-device-example_8.csproj | 2 +- .../network/device/example_8/java/pom.xml | 2 +- .../device/example_8/python/requirements.txt | 2 +- .../device/example_8/typescript/package.json | 2 +- .../equinix-network-device-example_9.csproj | 2 +- .../network/device/example_9/java/pom.xml | 2 +- .../device/example_9/python/requirements.txt | 2 +- .../device/example_9/typescript/package.json | 2 +- ...evice-example_Aviatrix_Transit_Edge.csproj | 2 +- .../java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../csharp/equinix-network-device_link.csproj | 2 +- examples/network/device_link/java/pom.xml | 2 +- .../device_link/python/requirements.txt | 2 +- .../device_link/typescript/package.json | 2 +- .../file/csharp/equinix-network-file.csproj | 2 +- examples/network/file/java/pom.xml | 2 +- examples/network/file/python/requirements.txt | 2 +- examples/network/file/typescript/package.json | 2 +- .../csharp/equinix-network-ssh_key.csproj | 2 +- examples/network/ssh_key/java/pom.xml | 2 +- .../network/ssh_key/python/requirements.txt | 2 +- .../network/ssh_key/typescript/package.json | 2 +- .../csharp/equinix-network-ssh_user.csproj | 2 +- examples/network/ssh_user/java/pom.xml | 2 +- .../network/ssh_user/python/requirements.txt | 2 +- .../network/ssh_user/typescript/package.json | 2 +- .../bridge-metadata.json | 9 + .../cmd/pulumi-resource-equinix/schema.json | 9392 +++++++----- sdk/dotnet/Fabric/ConnectionRouteFilter.cs | 212 + sdk/dotnet/Fabric/GetConnectionRouteFilter.cs | 195 + .../Fabric/GetConnectionRouteFilters.cs | 101 + sdk/dotnet/Fabric/GetRouteFilter.cs | 215 + sdk/dotnet/Fabric/GetRouteFilterRule.cs | 225 + sdk/dotnet/Fabric/GetRouteFilterRules.cs | 193 + sdk/dotnet/Fabric/GetRouteFilters.cs | 296 + .../Fabric/Inputs/GetRouteFiltersFilter.cs | 44 + .../Inputs/GetRouteFiltersFilterArgs.cs | 44 + .../Inputs/GetRouteFiltersPagination.cs | 50 + .../Inputs/GetRouteFiltersPaginationArgs.cs | 50 + .../Fabric/Inputs/GetRouteFiltersSort.cs | 32 + .../Fabric/Inputs/GetRouteFiltersSortArgs.cs | 32 + .../Fabric/Inputs/RouteFilterChangeArgs.cs | 38 + .../Fabric/Inputs/RouteFilterChangeGetArgs.cs | 38 + .../Fabric/Inputs/RouteFilterChangeLogArgs.cs | 92 + .../Inputs/RouteFilterChangeLogGetArgs.cs | 92 + .../Fabric/Inputs/RouteFilterProjectArgs.cs | 32 + .../Inputs/RouteFilterProjectGetArgs.cs | 32 + .../Inputs/RouteFilterRuleChangeArgs.cs | 38 + .../Inputs/RouteFilterRuleChangeGetArgs.cs | 38 + .../Inputs/RouteFilterRuleChangeLogArgs.cs | 92 + .../Inputs/RouteFilterRuleChangeLogGetArgs.cs | 92 + .../GetConnectionRouteFiltersDataResult.cs | 56 + ...tConnectionRouteFiltersPaginationResult.cs | 56 + .../Outputs/GetRouteFilterChangeLogResult.cs | 105 + .../Outputs/GetRouteFilterChangeResult.cs | 42 + .../Outputs/GetRouteFilterProjectResult.cs | 35 + .../GetRouteFilterRuleChangeLogResult.cs | 105 + .../Outputs/GetRouteFilterRuleChangeResult.cs | 42 + .../GetRouteFilterRulesDataChangeLogResult.cs | 105 + .../GetRouteFilterRulesDataChangeResult.cs | 42 + .../Outputs/GetRouteFilterRulesDataResult.cs | 95 + .../GetRouteFilterRulesPaginationResult.cs | 56 + .../GetRouteFiltersDataChangeLogResult.cs | 105 + .../GetRouteFiltersDataChangeResult.cs | 42 + .../GetRouteFiltersDataProjectResult.cs | 35 + .../Outputs/GetRouteFiltersDataResult.cs | 102 + .../Outputs/GetRouteFiltersFilterResult.cs | 42 + .../GetRouteFiltersPaginationResult.cs | 56 + .../Outputs/GetRouteFiltersSortResult.cs | 35 + .../Fabric/Outputs/RouteFilterChange.cs | 42 + .../Fabric/Outputs/RouteFilterChangeLog.cs | 105 + .../Fabric/Outputs/RouteFilterProject.cs | 35 + .../Fabric/Outputs/RouteFilterRuleChange.cs | 42 + .../Outputs/RouteFilterRuleChangeLog.cs | 105 + sdk/dotnet/Fabric/RouteFilter.cs | 255 + sdk/dotnet/Fabric/RouteFilterRule.cs | 289 + .../equinix/fabric/connectionRouteFilter.go | 337 + .../fabric/getConnectionRouteFilter.go | 177 + .../fabric/getConnectionRouteFilters.go | 113 + sdk/go/equinix/fabric/getRouteFilter.go | 206 + sdk/go/equinix/fabric/getRouteFilterRule.go | 209 + sdk/go/equinix/fabric/getRouteFilterRules.go | 167 + sdk/go/equinix/fabric/getRouteFilters.go | 193 + sdk/go/equinix/fabric/init.go | 21 + sdk/go/equinix/fabric/pulumiTypes.go | 3536 +++++ sdk/go/equinix/fabric/routeFilter.go | 356 + sdk/go/equinix/fabric/routeFilterRule.go | 393 + .../pulumi/fabric/ConnectionRouteFilter.java | 222 + .../fabric/ConnectionRouteFilterArgs.java | 165 + .../pulumi/fabric/FabricFunctions.java | 1198 ++ .../equinix/pulumi/fabric/RouteFilter.java | 247 + .../pulumi/fabric/RouteFilterArgs.java | 202 + .../pulumi/fabric/RouteFilterRule.java | 287 + .../pulumi/fabric/RouteFilterRuleArgs.java | 238 + .../inputs/ConnectionRouteFilterState.java | 305 + .../inputs/GetConnectionRouteFilterArgs.java | 125 + .../GetConnectionRouteFilterPlainArgs.java | 104 + .../inputs/GetConnectionRouteFiltersArgs.java | 85 + .../GetConnectionRouteFiltersPlainArgs.java | 74 + .../fabric/inputs/GetRouteFilterArgs.java | 85 + .../inputs/GetRouteFilterPlainArgs.java | 74 + .../fabric/inputs/GetRouteFilterRuleArgs.java | 125 + .../inputs/GetRouteFilterRulePlainArgs.java | 104 + .../inputs/GetRouteFilterRulesArgs.java | 162 + .../inputs/GetRouteFilterRulesPlainArgs.java | 131 + .../fabric/inputs/GetRouteFiltersArgs.java | 184 + .../fabric/inputs/GetRouteFiltersFilter.java | 145 + .../inputs/GetRouteFiltersFilterArgs.java | 176 + .../inputs/GetRouteFiltersPagination.java | 195 + .../inputs/GetRouteFiltersPaginationArgs.java | 246 + .../inputs/GetRouteFiltersPlainArgs.java | 153 + .../fabric/inputs/GetRouteFiltersSort.java | 99 + .../inputs/GetRouteFiltersSortArgs.java | 120 + .../fabric/inputs/RouteFilterChangeArgs.java | 157 + .../inputs/RouteFilterChangeLogArgs.java | 490 + .../fabric/inputs/RouteFilterProjectArgs.java | 124 + .../inputs/RouteFilterRuleChangeArgs.java | 157 + .../inputs/RouteFilterRuleChangeLogArgs.java | 490 + .../fabric/inputs/RouteFilterRuleState.java | 487 + .../fabric/inputs/RouteFilterState.java | 489 + .../GetConnectionRouteFilterResult.java | 219 + .../GetConnectionRouteFiltersData.java | 150 + .../GetConnectionRouteFiltersPagination.java | 151 + .../GetConnectionRouteFiltersResult.java | 136 + .../fabric/outputs/GetRouteFilterChange.java | 104 + .../outputs/GetRouteFilterChangeLog.java | 311 + .../fabric/outputs/GetRouteFilterProject.java | 81 + .../fabric/outputs/GetRouteFilterResult.java | 340 + .../outputs/GetRouteFilterRuleChange.java | 104 + .../outputs/GetRouteFilterRuleChangeLog.java | 311 + .../outputs/GetRouteFilterRuleResult.java | 335 + .../outputs/GetRouteFilterRulesData.java | 289 + .../GetRouteFilterRulesDataChange.java | 104 + .../GetRouteFilterRulesDataChangeLog.java | 311 + .../GetRouteFilterRulesPagination.java | 151 + .../outputs/GetRouteFilterRulesResult.java | 181 + .../fabric/outputs/GetRouteFiltersData.java | 317 + .../outputs/GetRouteFiltersDataChange.java | 104 + .../outputs/GetRouteFiltersDataChangeLog.java | 311 + .../outputs/GetRouteFiltersDataProject.java | 81 + .../fabric/outputs/GetRouteFiltersFilter.java | 108 + .../outputs/GetRouteFiltersPagination.java | 151 + .../fabric/outputs/GetRouteFiltersResult.java | 162 + .../fabric/outputs/GetRouteFiltersSort.java | 78 + .../fabric/outputs/RouteFilterChange.java | 99 + .../fabric/outputs/RouteFilterChangeLog.java | 288 + .../fabric/outputs/RouteFilterProject.java | 81 + .../fabric/outputs/RouteFilterRuleChange.java | 99 + .../outputs/RouteFilterRuleChangeLog.java | 288 + sdk/nodejs/fabric/connectionRouteFilter.ts | 183 + sdk/nodejs/fabric/getConnectionRouteFilter.ts | 134 + .../fabric/getConnectionRouteFilters.ts | 77 + sdk/nodejs/fabric/getRouteFilter.ts | 144 + sdk/nodejs/fabric/getRouteFilterRule.ts | 152 + sdk/nodejs/fabric/getRouteFilterRules.ts | 139 + sdk/nodejs/fabric/getRouteFilters.ts | 185 + sdk/nodejs/fabric/index.ts | 54 + sdk/nodejs/fabric/routeFilter.ts | 213 + sdk/nodejs/fabric/routeFilterRule.ts | 235 + sdk/nodejs/tsconfig.json | 9 + sdk/nodejs/types/input.ts | 241 + sdk/nodejs/types/output.ts | 913 +- sdk/python/pulumi_equinix/__init__.py | 24 + sdk/python/pulumi_equinix/fabric/__init__.py | 9 + sdk/python/pulumi_equinix/fabric/_inputs.py | 727 + .../fabric/connection_route_filter.py | 396 + .../fabric/get_connection_route_filter.py | 207 + .../fabric/get_connection_route_filters.py | 121 + .../pulumi_equinix/fabric/get_route_filter.py | 265 + .../fabric/get_route_filter_rule.py | 268 + .../fabric/get_route_filter_rules.py | 187 + .../fabric/get_route_filters.py | 225 + sdk/python/pulumi_equinix/fabric/outputs.py | 12634 +++++++++------- .../pulumi_equinix/fabric/route_filter.py | 514 + .../fabric/route_filter_rule.py | 567 + 469 files changed, 42704 insertions(+), 9682 deletions(-) create mode 100644 sdk/dotnet/Fabric/ConnectionRouteFilter.cs create mode 100644 sdk/dotnet/Fabric/GetConnectionRouteFilter.cs create mode 100644 sdk/dotnet/Fabric/GetConnectionRouteFilters.cs create mode 100644 sdk/dotnet/Fabric/GetRouteFilter.cs create mode 100644 sdk/dotnet/Fabric/GetRouteFilterRule.cs create mode 100644 sdk/dotnet/Fabric/GetRouteFilterRules.cs create mode 100644 sdk/dotnet/Fabric/GetRouteFilters.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilter.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilterArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersPagination.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersPaginationArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersSort.cs create mode 100644 sdk/dotnet/Fabric/Inputs/GetRouteFiltersSortArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterChangeArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterChangeGetArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogGetArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterProjectArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterProjectGetArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeGetArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogArgs.cs create mode 100644 sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogGetArgs.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersDataResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersPaginationResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeLogResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterProjectResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeLogResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeLogResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesPaginationResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeLogResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataProjectResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersFilterResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersPaginationResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/GetRouteFiltersSortResult.cs create mode 100644 sdk/dotnet/Fabric/Outputs/RouteFilterChange.cs create mode 100644 sdk/dotnet/Fabric/Outputs/RouteFilterChangeLog.cs create mode 100644 sdk/dotnet/Fabric/Outputs/RouteFilterProject.cs create mode 100644 sdk/dotnet/Fabric/Outputs/RouteFilterRuleChange.cs create mode 100644 sdk/dotnet/Fabric/Outputs/RouteFilterRuleChangeLog.cs create mode 100644 sdk/dotnet/Fabric/RouteFilter.cs create mode 100644 sdk/dotnet/Fabric/RouteFilterRule.cs create mode 100644 sdk/go/equinix/fabric/connectionRouteFilter.go create mode 100644 sdk/go/equinix/fabric/getConnectionRouteFilter.go create mode 100644 sdk/go/equinix/fabric/getConnectionRouteFilters.go create mode 100644 sdk/go/equinix/fabric/getRouteFilter.go create mode 100644 sdk/go/equinix/fabric/getRouteFilterRule.go create mode 100644 sdk/go/equinix/fabric/getRouteFilterRules.go create mode 100644 sdk/go/equinix/fabric/getRouteFilters.go create mode 100644 sdk/go/equinix/fabric/routeFilter.go create mode 100644 sdk/go/equinix/fabric/routeFilterRule.go create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilter.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilterArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilter.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRule.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRuleArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/ConnectionRouteFilterState.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterPlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersPlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterPlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRuleArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulePlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesPlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilter.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilterArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPagination.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPaginationArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPlainArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSort.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSortArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeLogArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterProjectArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeLogArgs.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleState.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterState.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFilterResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersData.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersPagination.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChangeLog.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterProject.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChangeLog.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesData.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChangeLog.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesPagination.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersData.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChangeLog.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataProject.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersFilter.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersPagination.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersResult.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersSort.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChangeLog.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterProject.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChange.java create mode 100644 sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChangeLog.java create mode 100644 sdk/nodejs/fabric/connectionRouteFilter.ts create mode 100644 sdk/nodejs/fabric/getConnectionRouteFilter.ts create mode 100644 sdk/nodejs/fabric/getConnectionRouteFilters.ts create mode 100644 sdk/nodejs/fabric/getRouteFilter.ts create mode 100644 sdk/nodejs/fabric/getRouteFilterRule.ts create mode 100644 sdk/nodejs/fabric/getRouteFilterRules.ts create mode 100644 sdk/nodejs/fabric/getRouteFilters.ts create mode 100644 sdk/nodejs/fabric/routeFilter.ts create mode 100644 sdk/nodejs/fabric/routeFilterRule.ts create mode 100644 sdk/python/pulumi_equinix/fabric/connection_route_filter.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_connection_route_filter.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_connection_route_filters.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_route_filter.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_route_filter_rule.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_route_filter_rules.py create mode 100644 sdk/python/pulumi_equinix/fabric/get_route_filters.py create mode 100644 sdk/python/pulumi_equinix/fabric/route_filter.py create mode 100644 sdk/python/pulumi_equinix/fabric/route_filter_rule.py diff --git a/docs/resource/equinix_fabric_connection_route_filter.examples.md b/docs/resource/equinix_fabric_connection_route_filter.examples.md index a58e722a8..7a2b124a5 100644 --- a/docs/resource/equinix_fabric_connection_route_filter.examples.md +++ b/docs/resource/equinix_fabric_connection_route_filter.examples.md @@ -2,7 +2,13 @@ {{% example %}} ```typescript import * as pulumi from "@pulumi/pulumi"; +import * as equinix from "@equinix-labs/pulumi-equinix"; +const policyAttachment = new equinix.fabric.ConnectionRouteFilter("policyAttachment", { + connectionId: "", + routeFilterId: "", + direction: "INBOUND", +}); export const connectionRouteFilterId = policyAttachment.id; export const connectionRouteFilterConnectionId = policyAttachment.connectionId; export const connectionRouteFilterDirection = policyAttachment.direction; @@ -11,23 +17,37 @@ export const connectionRouteFilterAttachmentStatus = policyAttachment.attachment ``` ```python import pulumi +import pulumi_equinix as equinix -pulumi.export("connectionRouteFilterId", policy_attachment["id"]) -pulumi.export("connectionRouteFilterConnectionId", policy_attachment["connectionId"]) -pulumi.export("connectionRouteFilterDirection", policy_attachment["direction"]) -pulumi.export("connectionRouteFilterType", policy_attachment["type"]) -pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment["attachmentStatus"]) +policy_attachment = equinix.fabric.ConnectionRouteFilter("policyAttachment", + connection_id="", + route_filter_id="", + direction="INBOUND") +pulumi.export("connectionRouteFilterId", policy_attachment.id) +pulumi.export("connectionRouteFilterConnectionId", policy_attachment.connection_id) +pulumi.export("connectionRouteFilterDirection", policy_attachment.direction) +pulumi.export("connectionRouteFilterType", policy_attachment.type) +pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment.attachment_status) ``` ```go package main import ( + "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { - ctx.Export("connectionRouteFilterId", policyAttachment.Id) + policyAttachment, err := fabric.NewConnectionRouteFilter(ctx, "policyAttachment", &fabric.ConnectionRouteFilterArgs{ + ConnectionId: pulumi.String(""), + RouteFilterId: pulumi.String(""), + Direction: pulumi.String("INBOUND"), + }) + if err != nil { + return err + } + ctx.Export("connectionRouteFilterId", policyAttachment.ID()) ctx.Export("connectionRouteFilterConnectionId", policyAttachment.ConnectionId) ctx.Export("connectionRouteFilterDirection", policyAttachment.Direction) ctx.Export("connectionRouteFilterType", policyAttachment.Type) @@ -40,9 +60,17 @@ func main() { using System.Collections.Generic; using System.Linq; using Pulumi; +using Equinix = Pulumi.Equinix; return await Deployment.RunAsync(() => { + var policyAttachment = new Equinix.Fabric.ConnectionRouteFilter("policyAttachment", new() + { + ConnectionId = "", + RouteFilterId = "", + Direction = "INBOUND", + }); + return new Dictionary { ["connectionRouteFilterId"] = policyAttachment.Id, @@ -59,6 +87,8 @@ package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; +import com.pulumi.equinix.fabric.ConnectionRouteFilter; +import com.pulumi.equinix.fabric.ConnectionRouteFilterArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; @@ -72,6 +102,12 @@ public class App { } public static void stack(Context ctx) { + var policyAttachment = new ConnectionRouteFilter("policyAttachment", ConnectionRouteFilterArgs.builder() + .connectionId("") + .routeFilterId("") + .direction("INBOUND") + .build()); + ctx.export("connectionRouteFilterId", policyAttachment.id()); ctx.export("connectionRouteFilterConnectionId", policyAttachment.connectionId()); ctx.export("connectionRouteFilterDirection", policyAttachment.direction()); @@ -83,7 +119,7 @@ public class App { ```yaml resources: policyAttachment: - type: equinix:fabricConnectionRouteFilter + type: equinix:fabric:ConnectionRouteFilter name: policy_attachment properties: connectionId: diff --git a/docs/resource/equinix_fabric_route_filter_rule.examples.md b/docs/resource/equinix_fabric_route_filter_rule.examples.md index 92162f759..a845f46b2 100644 --- a/docs/resource/equinix_fabric_route_filter_rule.examples.md +++ b/docs/resource/equinix_fabric_route_filter_rule.examples.md @@ -2,7 +2,15 @@ {{% example %}} ```typescript import * as pulumi from "@pulumi/pulumi"; +import * as equinix from "@equinix-labs/pulumi-equinix"; +const rfRule = new equinix.fabric.RouteFilterRule("rfRule", { + routeFilterId: "", + name: "Route Filter Rule Name", + prefix: "192.168.0.0/24", + prefixMatch: "exact", + description: "Route Filter Rule for X Purpose", +}); export const routeFilterRuleId = rfRule.id; export const routeFilterId = rfRule.routeFilterId; export const routeFilterRulePrefix = rfRule.prefix; @@ -10,22 +18,40 @@ export const routeFilterRulePrefixMatch = rfRule.prefixMatch; ``` ```python import pulumi +import pulumi_equinix as equinix -pulumi.export("routeFilterRuleId", rf_rule["id"]) -pulumi.export("routeFilterId", rf_rule["routeFilterId"]) -pulumi.export("routeFilterRulePrefix", rf_rule["prefix"]) -pulumi.export("routeFilterRulePrefixMatch", rf_rule["prefixMatch"]) +rf_rule = equinix.fabric.RouteFilterRule("rfRule", + route_filter_id="", + name="Route Filter Rule Name", + prefix="192.168.0.0/24", + prefix_match="exact", + description="Route Filter Rule for X Purpose") +pulumi.export("routeFilterRuleId", rf_rule.id) +pulumi.export("routeFilterId", rf_rule.route_filter_id) +pulumi.export("routeFilterRulePrefix", rf_rule.prefix) +pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) ``` ```go package main import ( + "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { - ctx.Export("routeFilterRuleId", rfRule.Id) + rfRule, err := fabric.NewRouteFilterRule(ctx, "rfRule", &fabric.RouteFilterRuleArgs{ + RouteFilterId: pulumi.String(""), + Name: pulumi.String("Route Filter Rule Name"), + Prefix: pulumi.String("192.168.0.0/24"), + PrefixMatch: pulumi.String("exact"), + Description: pulumi.String("Route Filter Rule for X Purpose"), + }) + if err != nil { + return err + } + ctx.Export("routeFilterRuleId", rfRule.ID()) ctx.Export("routeFilterId", rfRule.RouteFilterId) ctx.Export("routeFilterRulePrefix", rfRule.Prefix) ctx.Export("routeFilterRulePrefixMatch", rfRule.PrefixMatch) @@ -37,9 +63,19 @@ func main() { using System.Collections.Generic; using System.Linq; using Pulumi; +using Equinix = Pulumi.Equinix; return await Deployment.RunAsync(() => { + var rfRule = new Equinix.Fabric.RouteFilterRule("rfRule", new() + { + RouteFilterId = "", + Name = "Route Filter Rule Name", + Prefix = "192.168.0.0/24", + PrefixMatch = "exact", + Description = "Route Filter Rule for X Purpose", + }); + return new Dictionary { ["routeFilterRuleId"] = rfRule.Id, @@ -55,6 +91,8 @@ package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; +import com.pulumi.equinix.fabric.RouteFilterRule; +import com.pulumi.equinix.fabric.RouteFilterRuleArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; @@ -68,6 +106,14 @@ public class App { } public static void stack(Context ctx) { + var rfRule = new RouteFilterRule("rfRule", RouteFilterRuleArgs.builder() + .routeFilterId("") + .name("Route Filter Rule Name") + .prefix("192.168.0.0/24") + .prefixMatch("exact") + .description("Route Filter Rule for X Purpose") + .build()); + ctx.export("routeFilterRuleId", rfRule.id()); ctx.export("routeFilterId", rfRule.routeFilterId()); ctx.export("routeFilterRulePrefix", rfRule.prefix()); @@ -78,7 +124,7 @@ public class App { ```yaml resources: rfRule: - type: equinix:fabricRouteFilterRule + type: equinix:fabric:RouteFilterRule name: rf_rule properties: routeFilterId: diff --git a/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj b/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj +++ b/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_1/java/pom.xml b/examples/fabric/cloud_router/example_1/java/pom.xml index 98b7bb627..f9d8d49c3 100644 --- a/examples/fabric/cloud_router/example_1/java/pom.xml +++ b/examples/fabric/cloud_router/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/cloud_router/example_1/python/requirements.txt b/examples/fabric/cloud_router/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/cloud_router/example_1/python/requirements.txt +++ b/examples/fabric/cloud_router/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/cloud_router/example_1/typescript/package.json b/examples/fabric/cloud_router/example_1/typescript/package.json index 017a20430..233308eb1 100644 --- a/examples/fabric/cloud_router/example_1/typescript/package.json +++ b/examples/fabric/cloud_router/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj b/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj +++ b/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_2/java/pom.xml b/examples/fabric/cloud_router/example_2/java/pom.xml index e5e9ca574..ed292e268 100644 --- a/examples/fabric/cloud_router/example_2/java/pom.xml +++ b/examples/fabric/cloud_router/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/cloud_router/example_2/python/requirements.txt b/examples/fabric/cloud_router/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/cloud_router/example_2/python/requirements.txt +++ b/examples/fabric/cloud_router/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/cloud_router/example_2/typescript/package.json b/examples/fabric/cloud_router/example_2/typescript/package.json index 920cf97be..2ecfe9bc3 100644 --- a/examples/fabric/cloud_router/example_2/typescript/package.json +++ b/examples/fabric/cloud_router/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj b/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj +++ b/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_azure/java/pom.xml b/examples/fabric/connection/example_fcr_to_azure/java/pom.xml index 1633cc335..407d608ff 100644 --- a/examples/fabric/connection/example_fcr_to_azure/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_azure/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt b/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_azure/typescript/package.json b/examples/fabric/connection/example_fcr_to_azure/typescript/package.json index cd71d5043..26895db62 100644 --- a/examples/fabric/connection/example_fcr_to_azure/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_azure/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj b/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj +++ b/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_metal/java/pom.xml b/examples/fabric/connection/example_fcr_to_metal/java/pom.xml index b1e08bcd3..2fb2dd652 100644 --- a/examples/fabric/connection/example_fcr_to_metal/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_metal/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt b/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_metal/typescript/package.json b/examples/fabric/connection/example_fcr_to_metal/typescript/package.json index dee62b30b..b6de052ca 100644 --- a/examples/fabric/connection/example_fcr_to_metal/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_metal/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj b/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj +++ b/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_network/java/pom.xml b/examples/fabric/connection/example_fcr_to_network/java/pom.xml index a1ce2da2f..31180716a 100644 --- a/examples/fabric/connection/example_fcr_to_network/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_network/python/requirements.txt b/examples/fabric/connection/example_fcr_to_network/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_fcr_to_network/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_network/typescript/package.json b/examples/fabric/connection/example_fcr_to_network/typescript/package.json index c4b95bf85..8609141b7 100644 --- a/examples/fabric/connection/example_fcr_to_network/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj b/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj +++ b/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_port/java/pom.xml b/examples/fabric/connection/example_fcr_to_port/java/pom.xml index 7549a049a..abd8ce689 100644 --- a/examples/fabric/connection/example_fcr_to_port/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_port/python/requirements.txt b/examples/fabric/connection/example_fcr_to_port/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_fcr_to_port/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_fcr_to_port/typescript/package.json b/examples/fabric/connection/example_fcr_to_port/typescript/package.json index dc47989f0..f6392cbab 100644 --- a/examples/fabric/connection/example_fcr_to_port/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj b/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj +++ b/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_metal_to_aws/java/pom.xml b/examples/fabric/connection/example_metal_to_aws/java/pom.xml index c59ab98af..ff2ea7234 100644 --- a/examples/fabric/connection/example_metal_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_metal_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_metal_to_aws/python/requirements.txt b/examples/fabric/connection/example_metal_to_aws/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_metal_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_metal_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_metal_to_aws/typescript/package.json b/examples/fabric/connection/example_metal_to_aws/typescript/package.json index 4a0142ec1..e2e0183a6 100644 --- a/examples/fabric/connection/example_metal_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_metal_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj b/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj +++ b/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_aws/java/pom.xml b/examples/fabric/connection/example_port_to_aws/java/pom.xml index 2cf8118c7..1d4c6bea4 100644 --- a/examples/fabric/connection/example_port_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_port_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_aws/python/requirements.txt b/examples/fabric/connection/example_port_to_aws/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_aws/typescript/package.json b/examples/fabric/connection/example_port_to_aws/typescript/package.json index 8d25e126f..1b83f8039 100644 --- a/examples/fabric/connection/example_port_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_port_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj b/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj +++ b/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml b/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml index d32f925df..0fc71dd15 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml +++ b/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt b/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json b/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json index 0309784b4..bef557fd4 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json +++ b/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj b/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj +++ b/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml b/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml index f5f9bd853..892ba6bcf 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml +++ b/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt b/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json b/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json index 69e4ba9ec..ac96f88bf 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json +++ b/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj b/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj +++ b/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port/java/pom.xml b/examples/fabric/connection/example_port_to_port/java/pom.xml index d48ea5c51..3d8ba36df 100644 --- a/examples/fabric/connection/example_port_to_port/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port/python/requirements.txt b/examples/fabric/connection/example_port_to_port/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_port/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port/typescript/package.json b/examples/fabric/connection/example_port_to_port/typescript/package.json index 9f6b9582b..4a01253b9 100644 --- a/examples/fabric/connection/example_port_to_port/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj b/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj +++ b/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml b/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml index 0f7007ead..82dbdbf4e 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt b/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json b/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json index c592d0be1..24c07fb2d 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj b/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj +++ b/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_epl/java/pom.xml b/examples/fabric/connection/example_port_to_port_epl/java/pom.xml index deb0ed8bf..b81a5a06a 100644 --- a/examples/fabric/connection/example_port_to_port_epl/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port_epl/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt b/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_port_epl/typescript/package.json b/examples/fabric/connection/example_port_to_port_epl/typescript/package.json index 6ab8a08fe..029ab572c 100644 --- a/examples/fabric/connection/example_port_to_port_epl/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port_epl/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj b/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj +++ b/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_vd/java/pom.xml b/examples/fabric/connection/example_port_to_vd/java/pom.xml index 5ce1b79a0..03c841eb1 100644 --- a/examples/fabric/connection/example_port_to_vd/java/pom.xml +++ b/examples/fabric/connection/example_port_to_vd/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_vd/python/requirements.txt b/examples/fabric/connection/example_port_to_vd/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_port_to_vd/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_vd/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_port_to_vd/typescript/package.json b/examples/fabric/connection/example_port_to_vd/typescript/package.json index 7eca5c91e..aee84e21d 100644 --- a/examples/fabric/connection/example_port_to_vd/typescript/package.json +++ b/examples/fabric/connection/example_port_to_vd/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj b/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj +++ b/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_token_to_aws/java/pom.xml b/examples/fabric/connection/example_token_to_aws/java/pom.xml index f6bbee686..0b5ba13e9 100644 --- a/examples/fabric/connection/example_token_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_token_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_token_to_aws/python/requirements.txt b/examples/fabric/connection/example_token_to_aws/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_token_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_token_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_token_to_aws/typescript/package.json b/examples/fabric/connection/example_token_to_aws/typescript/package.json index 6fa51840e..3b30e65b4 100644 --- a/examples/fabric/connection/example_token_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_token_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj b/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj +++ b/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure/java/pom.xml b/examples/fabric/connection/example_vd_to_azure/java/pom.xml index 6337f3861..fd4fa5338 100644 --- a/examples/fabric/connection/example_vd_to_azure/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_azure/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_azure/python/requirements.txt b/examples/fabric/connection/example_vd_to_azure/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_vd_to_azure/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_azure/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_azure/typescript/package.json b/examples/fabric/connection/example_vd_to_azure/typescript/package.json index 4a82b43f3..ccffd9e34 100644 --- a/examples/fabric/connection/example_vd_to_azure/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_azure/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj b/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj +++ b/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml b/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml index f4771cc5b..7c979e6f9 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt b/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json b/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json index a3c21c14a..17355b152 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj b/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj +++ b/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_network/java/pom.xml b/examples/fabric/connection/example_vd_to_network/java/pom.xml index 663742cbb..5b63381a8 100644 --- a/examples/fabric/connection/example_vd_to_network/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_network/python/requirements.txt b/examples/fabric/connection/example_vd_to_network/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_vd_to_network/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_network/typescript/package.json b/examples/fabric/connection/example_vd_to_network/typescript/package.json index 84e1f3678..a0b9a31a3 100644 --- a/examples/fabric/connection/example_vd_to_network/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj b/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj +++ b/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_token/java/pom.xml b/examples/fabric/connection/example_vd_to_token/java/pom.xml index 5b9bdbff2..0b2380b22 100644 --- a/examples/fabric/connection/example_vd_to_token/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_token/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_token/python/requirements.txt b/examples/fabric/connection/example_vd_to_token/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/connection/example_vd_to_token/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_token/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection/example_vd_to_token/typescript/package.json b/examples/fabric/connection/example_vd_to_token/typescript/package.json index 50d13d9df..13f108bb8 100644 --- a/examples/fabric/connection/example_vd_to_token/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_token/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/connection_route_filter/Pulumi.yaml b/examples/fabric/connection_route_filter/Pulumi.yaml index ccd0320e9..826666ace 100644 --- a/examples/fabric/connection_route_filter/Pulumi.yaml +++ b/examples/fabric/connection_route_filter/Pulumi.yaml @@ -3,7 +3,7 @@ name: equinix-fabric-connection_route_filter runtime: yaml resources: policyAttachment: - type: equinix:fabricConnectionRouteFilter + type: equinix:fabric:ConnectionRouteFilter name: policy_attachment properties: connectionId: diff --git a/examples/fabric/connection_route_filter/csharp/Program.cs b/examples/fabric/connection_route_filter/csharp/Program.cs index c646042d0..2ceb9f57d 100644 --- a/examples/fabric/connection_route_filter/csharp/Program.cs +++ b/examples/fabric/connection_route_filter/csharp/Program.cs @@ -1,9 +1,17 @@ using System.Collections.Generic; using System.Linq; using Pulumi; +using Equinix = Pulumi.Equinix; return await Deployment.RunAsync(() => { + var policyAttachment = new Equinix.Fabric.ConnectionRouteFilter("policyAttachment", new() + { + ConnectionId = "", + RouteFilterId = "", + Direction = "INBOUND", + }); + return new Dictionary { ["connectionRouteFilterId"] = policyAttachment.Id, diff --git a/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj b/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj index aa5aca6d7..aa0909a64 100644 --- a/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj +++ b/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj @@ -7,6 +7,7 @@ + \ No newline at end of file diff --git a/examples/fabric/connection_route_filter/go/go.mod b/examples/fabric/connection_route_filter/go/go.mod index 318b64823..fec827bba 100644 --- a/examples/fabric/connection_route_filter/go/go.mod +++ b/examples/fabric/connection_route_filter/go/go.mod @@ -1,55 +1,93 @@ module equinix-fabric-connection_route_filter -go 1.20 +go 1.21 -require github.com/pulumi/pulumi/sdk/v3 v3.30.0 +toolchain go1.22.6 require ( + github.com/equinix/pulumi-equinix/sdk latest + github.com/pulumi/pulumi/sdk/v3 v3.133.0 +) + +require ( + dario.cat/mergo v1.0.0 // indirect + github.com/BurntSushi/toml v1.2.1 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.2 // indirect + github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + github.com/agext/levenshtein v1.2.3 // indirect + github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect + github.com/atotto/clipboard v0.1.4 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/blang/semver v3.5.1+incompatible // indirect - github.com/cheggaaa/pb v1.0.18 // indirect - github.com/djherbis/times v1.2.0 // indirect - github.com/emirpasic/gods v1.12.0 // indirect - github.com/gofrs/uuid v3.3.0+incompatible // indirect + github.com/charmbracelet/bubbles v0.16.1 // indirect + github.com/charmbracelet/bubbletea v0.25.0 // indirect + github.com/charmbracelet/lipgloss v0.7.1 // indirect + github.com/cheggaaa/pb v1.0.29 // indirect + github.com/cloudflare/circl v1.3.7 // indirect + github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect + github.com/cyphar/filepath-securejoin v0.2.4 // indirect + github.com/djherbis/times v1.5.0 // indirect + github.com/emirpasic/gods v1.18.1 // indirect + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/go-git/go-git/v5 v5.12.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b // indirect - github.com/golang/protobuf v1.4.2 // indirect + github.com/golang/glog v1.2.0 // indirect + github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect + github.com/google/uuid v1.6.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect - github.com/hashicorp/errwrap v1.0.0 // indirect - github.com/hashicorp/go-multierror v1.0.0 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/hashicorp/hcl/v2 v2.20.1 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect - github.com/kevinburke/ssh_config v0.0.0-20190725054713-01f96b0aa0cd // indirect + github.com/kevinburke/ssh_config v1.2.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-runewidth v0.0.8 // indirect - github.com/mitchellh/go-homedir v1.1.0 // indirect + github.com/mattn/go-localereader v0.0.1 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect - github.com/opentracing/basictracer-go v1.0.0 // indirect - github.com/opentracing/opentracing-go v1.1.0 // indirect + github.com/mitchellh/go-wordwrap v1.0.1 // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect + github.com/muesli/cancelreader v0.2.2 // indirect + github.com/muesli/reflow v0.3.0 // indirect + github.com/muesli/termenv v0.15.2 // indirect + github.com/opentracing/basictracer-go v1.1.0 // indirect + github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect - github.com/rivo/uniseg v0.2.0 // indirect - github.com/rogpeppe/go-internal v1.8.1 // indirect - github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94 // indirect - github.com/sergi/go-diff v1.1.0 // indirect - github.com/spf13/cobra v1.4.0 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.9.1 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect + github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect + github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect + github.com/skeema/knownhosts v1.2.2 // indirect + github.com/spf13/cobra v1.8.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/src-d/gcfg v1.4.0 // indirect - github.com/texttheater/golang-levenshtein v0.0.0-20191208221605-eb6844b05fc6 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect - github.com/uber/jaeger-client-go v2.22.1+incompatible // indirect - github.com/uber/jaeger-lib v2.2.0+incompatible // indirect - github.com/xanzy/ssh-agent v0.2.1 // indirect - go.uber.org/atomic v1.6.0 // indirect - golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 // indirect - golang.org/x/net v0.0.0-20201021035429-f5854403a974 // indirect - golang.org/x/sys v0.6.0 // indirect - golang.org/x/text v0.3.3 // indirect - google.golang.org/genproto v0.0.0-20200608115520-7c474a2e3482 // indirect - google.golang.org/grpc v1.29.1 // indirect - google.golang.org/protobuf v1.24.0 // indirect - gopkg.in/src-d/go-billy.v4 v4.3.2 // indirect - gopkg.in/src-d/go-git.v4 v4.13.1 // indirect + github.com/texttheater/golang-levenshtein v1.0.1 // indirect + github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect + github.com/uber/jaeger-lib v2.4.1+incompatible // indirect + github.com/xanzy/ssh-agent v0.3.3 // indirect + github.com/zclconf/go-cty v1.14.4 // indirect + go.uber.org/atomic v1.11.0 // indirect + golang.org/x/crypto v0.24.0 // indirect + golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 // indirect + golang.org/x/mod v0.18.0 // indirect + golang.org/x/net v0.26.0 // indirect + golang.org/x/sync v0.7.0 // indirect + golang.org/x/sys v0.21.0 // indirect + golang.org/x/term v0.21.0 // indirect + golang.org/x/text v0.16.0 // indirect + golang.org/x/tools v0.22.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 // indirect + google.golang.org/grpc v1.63.2 // indirect + google.golang.org/protobuf v1.34.0 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + lukechampine.com/frand v1.4.2 // indirect ) diff --git a/examples/fabric/connection_route_filter/go/main.go b/examples/fabric/connection_route_filter/go/main.go index a971ac0f9..08036ff54 100644 --- a/examples/fabric/connection_route_filter/go/main.go +++ b/examples/fabric/connection_route_filter/go/main.go @@ -1,12 +1,21 @@ package main import ( + "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { - ctx.Export("connectionRouteFilterId", policyAttachment.Id) + policyAttachment, err := fabric.NewConnectionRouteFilter(ctx, "policyAttachment", &fabric.ConnectionRouteFilterArgs{ + ConnectionId: pulumi.String(""), + RouteFilterId: pulumi.String(""), + Direction: pulumi.String("INBOUND"), + }) + if err != nil { + return err + } + ctx.Export("connectionRouteFilterId", policyAttachment.ID()) ctx.Export("connectionRouteFilterConnectionId", policyAttachment.ConnectionId) ctx.Export("connectionRouteFilterDirection", policyAttachment.Direction) ctx.Export("connectionRouteFilterType", policyAttachment.Type) diff --git a/examples/fabric/connection_route_filter/java/pom.xml b/examples/fabric/connection_route_filter/java/pom.xml index 7980f6852..83fa65e70 100644 --- a/examples/fabric/connection_route_filter/java/pom.xml +++ b/examples/fabric/connection_route_filter/java/pom.xml @@ -23,7 +23,11 @@ pulumi (,1.0] - + + com.pulumi + equinix + 0.18.1-alpha.1729554944+37549499 + diff --git a/examples/fabric/connection_route_filter/java/src/main/java/generated_program/App.java b/examples/fabric/connection_route_filter/java/src/main/java/generated_program/App.java index 54501c8d9..4f1092be5 100644 --- a/examples/fabric/connection_route_filter/java/src/main/java/generated_program/App.java +++ b/examples/fabric/connection_route_filter/java/src/main/java/generated_program/App.java @@ -3,6 +3,8 @@ import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; +import com.pulumi.equinix.fabric.ConnectionRouteFilter; +import com.pulumi.equinix.fabric.ConnectionRouteFilterArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; @@ -16,6 +18,12 @@ public static void main(String[] args) { } public static void stack(Context ctx) { + var policyAttachment = new ConnectionRouteFilter("policyAttachment", ConnectionRouteFilterArgs.builder() + .connectionId("") + .routeFilterId("") + .direction("INBOUND") + .build()); + ctx.export("connectionRouteFilterId", policyAttachment.id()); ctx.export("connectionRouteFilterConnectionId", policyAttachment.connectionId()); ctx.export("connectionRouteFilterDirection", policyAttachment.direction()); diff --git a/examples/fabric/connection_route_filter/python/__main__.py b/examples/fabric/connection_route_filter/python/__main__.py index d284e3916..8939a4790 100644 --- a/examples/fabric/connection_route_filter/python/__main__.py +++ b/examples/fabric/connection_route_filter/python/__main__.py @@ -1,7 +1,12 @@ import pulumi +import pulumi_equinix as equinix -pulumi.export("connectionRouteFilterId", policy_attachment["id"]) -pulumi.export("connectionRouteFilterConnectionId", policy_attachment["connectionId"]) -pulumi.export("connectionRouteFilterDirection", policy_attachment["direction"]) -pulumi.export("connectionRouteFilterType", policy_attachment["type"]) -pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment["attachmentStatus"]) +policy_attachment = equinix.fabric.ConnectionRouteFilter("policyAttachment", + connection_id="", + route_filter_id="", + direction="INBOUND") +pulumi.export("connectionRouteFilterId", policy_attachment.id) +pulumi.export("connectionRouteFilterConnectionId", policy_attachment.connection_id) +pulumi.export("connectionRouteFilterDirection", policy_attachment.direction) +pulumi.export("connectionRouteFilterType", policy_attachment.type) +pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment.attachment_status) diff --git a/examples/fabric/connection_route_filter/python/requirements.txt b/examples/fabric/connection_route_filter/python/requirements.txt index bc4e43087..ba4c8d1e9 100644 --- a/examples/fabric/connection_route_filter/python/requirements.txt +++ b/examples/fabric/connection_route_filter/python/requirements.txt @@ -1 +1,2 @@ pulumi>=3.0.0,<4.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/connection_route_filter/typescript/index.ts b/examples/fabric/connection_route_filter/typescript/index.ts index 042050f0a..3df35aeee 100644 --- a/examples/fabric/connection_route_filter/typescript/index.ts +++ b/examples/fabric/connection_route_filter/typescript/index.ts @@ -1,5 +1,11 @@ import * as pulumi from "@pulumi/pulumi"; +import * as equinix from "@equinix-labs/pulumi-equinix"; +const policyAttachment = new equinix.fabric.ConnectionRouteFilter("policyAttachment", { + connectionId: "", + routeFilterId: "", + direction: "INBOUND", +}); export const connectionRouteFilterId = policyAttachment.id; export const connectionRouteFilterConnectionId = policyAttachment.connectionId; export const connectionRouteFilterDirection = policyAttachment.direction; diff --git a/examples/fabric/connection_route_filter/typescript/package.json b/examples/fabric/connection_route_filter/typescript/package.json index e84085e64..670cd193e 100644 --- a/examples/fabric/connection_route_filter/typescript/package.json +++ b/examples/fabric/connection_route_filter/typescript/package.json @@ -5,6 +5,7 @@ }, "dependencies": { "typescript": "^4.0.0", - "@pulumi/pulumi": "^3.0.0" + "@pulumi/pulumi": "^3.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/network/csharp/equinix-fabric-network.csproj b/examples/fabric/network/csharp/equinix-fabric-network.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/network/csharp/equinix-fabric-network.csproj +++ b/examples/fabric/network/csharp/equinix-fabric-network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/network/java/pom.xml b/examples/fabric/network/java/pom.xml index 0e7030f06..774b77ff6 100644 --- a/examples/fabric/network/java/pom.xml +++ b/examples/fabric/network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/network/python/requirements.txt b/examples/fabric/network/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/network/python/requirements.txt +++ b/examples/fabric/network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/network/typescript/package.json b/examples/fabric/network/typescript/package.json index 84ea6ec86..c87b588f4 100644 --- a/examples/fabric/network/typescript/package.json +++ b/examples/fabric/network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/route_filter_rule/Pulumi.yaml b/examples/fabric/route_filter_rule/Pulumi.yaml index e753fd52b..e9ee91ac5 100644 --- a/examples/fabric/route_filter_rule/Pulumi.yaml +++ b/examples/fabric/route_filter_rule/Pulumi.yaml @@ -3,7 +3,7 @@ name: equinix-fabric-route_filter_rule runtime: yaml resources: rfRule: - type: equinix:fabricRouteFilterRule + type: equinix:fabric:RouteFilterRule name: rf_rule properties: routeFilterId: diff --git a/examples/fabric/route_filter_rule/csharp/Program.cs b/examples/fabric/route_filter_rule/csharp/Program.cs index e68ffd5a4..164c520be 100644 --- a/examples/fabric/route_filter_rule/csharp/Program.cs +++ b/examples/fabric/route_filter_rule/csharp/Program.cs @@ -1,9 +1,19 @@ using System.Collections.Generic; using System.Linq; using Pulumi; +using Equinix = Pulumi.Equinix; return await Deployment.RunAsync(() => { + var rfRule = new Equinix.Fabric.RouteFilterRule("rfRule", new() + { + RouteFilterId = "", + Name = "Route Filter Rule Name", + Prefix = "192.168.0.0/24", + PrefixMatch = "exact", + Description = "Route Filter Rule for X Purpose", + }); + return new Dictionary { ["routeFilterRuleId"] = rfRule.Id, diff --git a/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj b/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj index aa5aca6d7..aa0909a64 100644 --- a/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj +++ b/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj @@ -7,6 +7,7 @@ + \ No newline at end of file diff --git a/examples/fabric/route_filter_rule/go/go.mod b/examples/fabric/route_filter_rule/go/go.mod index 4b06a284d..21bc165ca 100644 --- a/examples/fabric/route_filter_rule/go/go.mod +++ b/examples/fabric/route_filter_rule/go/go.mod @@ -1,55 +1,93 @@ module equinix-fabric-route_filter_rule -go 1.20 +go 1.21 -require github.com/pulumi/pulumi/sdk/v3 v3.30.0 +toolchain go1.22.6 require ( + github.com/equinix/pulumi-equinix/sdk latest + github.com/pulumi/pulumi/sdk/v3 v3.133.0 +) + +require ( + dario.cat/mergo v1.0.0 // indirect + github.com/BurntSushi/toml v1.2.1 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.2 // indirect + github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + github.com/agext/levenshtein v1.2.3 // indirect + github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect + github.com/atotto/clipboard v0.1.4 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/blang/semver v3.5.1+incompatible // indirect - github.com/cheggaaa/pb v1.0.18 // indirect - github.com/djherbis/times v1.2.0 // indirect - github.com/emirpasic/gods v1.12.0 // indirect - github.com/gofrs/uuid v3.3.0+incompatible // indirect + github.com/charmbracelet/bubbles v0.16.1 // indirect + github.com/charmbracelet/bubbletea v0.25.0 // indirect + github.com/charmbracelet/lipgloss v0.7.1 // indirect + github.com/cheggaaa/pb v1.0.29 // indirect + github.com/cloudflare/circl v1.3.7 // indirect + github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect + github.com/cyphar/filepath-securejoin v0.2.4 // indirect + github.com/djherbis/times v1.5.0 // indirect + github.com/emirpasic/gods v1.18.1 // indirect + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/go-git/go-git/v5 v5.12.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b // indirect - github.com/golang/protobuf v1.4.2 // indirect + github.com/golang/glog v1.2.0 // indirect + github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect + github.com/google/uuid v1.6.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect - github.com/hashicorp/errwrap v1.0.0 // indirect - github.com/hashicorp/go-multierror v1.0.0 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/hashicorp/hcl/v2 v2.20.1 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect - github.com/kevinburke/ssh_config v0.0.0-20190725054713-01f96b0aa0cd // indirect + github.com/kevinburke/ssh_config v1.2.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-runewidth v0.0.8 // indirect - github.com/mitchellh/go-homedir v1.1.0 // indirect + github.com/mattn/go-localereader v0.0.1 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect - github.com/opentracing/basictracer-go v1.0.0 // indirect - github.com/opentracing/opentracing-go v1.1.0 // indirect + github.com/mitchellh/go-wordwrap v1.0.1 // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect + github.com/muesli/cancelreader v0.2.2 // indirect + github.com/muesli/reflow v0.3.0 // indirect + github.com/muesli/termenv v0.15.2 // indirect + github.com/opentracing/basictracer-go v1.1.0 // indirect + github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect - github.com/rivo/uniseg v0.2.0 // indirect - github.com/rogpeppe/go-internal v1.8.1 // indirect - github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94 // indirect - github.com/sergi/go-diff v1.1.0 // indirect - github.com/spf13/cobra v1.4.0 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.9.1 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect + github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect + github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect + github.com/skeema/knownhosts v1.2.2 // indirect + github.com/spf13/cobra v1.8.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/src-d/gcfg v1.4.0 // indirect - github.com/texttheater/golang-levenshtein v0.0.0-20191208221605-eb6844b05fc6 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect - github.com/uber/jaeger-client-go v2.22.1+incompatible // indirect - github.com/uber/jaeger-lib v2.2.0+incompatible // indirect - github.com/xanzy/ssh-agent v0.2.1 // indirect - go.uber.org/atomic v1.6.0 // indirect - golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 // indirect - golang.org/x/net v0.0.0-20201021035429-f5854403a974 // indirect - golang.org/x/sys v0.6.0 // indirect - golang.org/x/text v0.3.3 // indirect - google.golang.org/genproto v0.0.0-20200608115520-7c474a2e3482 // indirect - google.golang.org/grpc v1.29.1 // indirect - google.golang.org/protobuf v1.24.0 // indirect - gopkg.in/src-d/go-billy.v4 v4.3.2 // indirect - gopkg.in/src-d/go-git.v4 v4.13.1 // indirect + github.com/texttheater/golang-levenshtein v1.0.1 // indirect + github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect + github.com/uber/jaeger-lib v2.4.1+incompatible // indirect + github.com/xanzy/ssh-agent v0.3.3 // indirect + github.com/zclconf/go-cty v1.14.4 // indirect + go.uber.org/atomic v1.11.0 // indirect + golang.org/x/crypto v0.24.0 // indirect + golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 // indirect + golang.org/x/mod v0.18.0 // indirect + golang.org/x/net v0.26.0 // indirect + golang.org/x/sync v0.7.0 // indirect + golang.org/x/sys v0.21.0 // indirect + golang.org/x/term v0.21.0 // indirect + golang.org/x/text v0.16.0 // indirect + golang.org/x/tools v0.22.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 // indirect + google.golang.org/grpc v1.63.2 // indirect + google.golang.org/protobuf v1.34.0 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + lukechampine.com/frand v1.4.2 // indirect ) diff --git a/examples/fabric/route_filter_rule/go/main.go b/examples/fabric/route_filter_rule/go/main.go index 0c541eee5..3ea6de35e 100644 --- a/examples/fabric/route_filter_rule/go/main.go +++ b/examples/fabric/route_filter_rule/go/main.go @@ -1,12 +1,23 @@ package main import ( + "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { - ctx.Export("routeFilterRuleId", rfRule.Id) + rfRule, err := fabric.NewRouteFilterRule(ctx, "rfRule", &fabric.RouteFilterRuleArgs{ + RouteFilterId: pulumi.String(""), + Name: pulumi.String("Route Filter Rule Name"), + Prefix: pulumi.String("192.168.0.0/24"), + PrefixMatch: pulumi.String("exact"), + Description: pulumi.String("Route Filter Rule for X Purpose"), + }) + if err != nil { + return err + } + ctx.Export("routeFilterRuleId", rfRule.ID()) ctx.Export("routeFilterId", rfRule.RouteFilterId) ctx.Export("routeFilterRulePrefix", rfRule.Prefix) ctx.Export("routeFilterRulePrefixMatch", rfRule.PrefixMatch) diff --git a/examples/fabric/route_filter_rule/java/pom.xml b/examples/fabric/route_filter_rule/java/pom.xml index 120c2a9ae..f9c0ff23f 100644 --- a/examples/fabric/route_filter_rule/java/pom.xml +++ b/examples/fabric/route_filter_rule/java/pom.xml @@ -23,7 +23,11 @@ pulumi (,1.0] - + + com.pulumi + equinix + 0.18.1-alpha.1729554944+37549499 + diff --git a/examples/fabric/route_filter_rule/java/src/main/java/generated_program/App.java b/examples/fabric/route_filter_rule/java/src/main/java/generated_program/App.java index 6cf6f5963..f78673ef1 100644 --- a/examples/fabric/route_filter_rule/java/src/main/java/generated_program/App.java +++ b/examples/fabric/route_filter_rule/java/src/main/java/generated_program/App.java @@ -3,6 +3,8 @@ import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; +import com.pulumi.equinix.fabric.RouteFilterRule; +import com.pulumi.equinix.fabric.RouteFilterRuleArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; @@ -16,6 +18,14 @@ public static void main(String[] args) { } public static void stack(Context ctx) { + var rfRule = new RouteFilterRule("rfRule", RouteFilterRuleArgs.builder() + .routeFilterId("") + .name("Route Filter Rule Name") + .prefix("192.168.0.0/24") + .prefixMatch("exact") + .description("Route Filter Rule for X Purpose") + .build()); + ctx.export("routeFilterRuleId", rfRule.id()); ctx.export("routeFilterId", rfRule.routeFilterId()); ctx.export("routeFilterRulePrefix", rfRule.prefix()); diff --git a/examples/fabric/route_filter_rule/python/__main__.py b/examples/fabric/route_filter_rule/python/__main__.py index 60c207479..9a7352a69 100644 --- a/examples/fabric/route_filter_rule/python/__main__.py +++ b/examples/fabric/route_filter_rule/python/__main__.py @@ -1,6 +1,13 @@ import pulumi +import pulumi_equinix as equinix -pulumi.export("routeFilterRuleId", rf_rule["id"]) -pulumi.export("routeFilterId", rf_rule["routeFilterId"]) -pulumi.export("routeFilterRulePrefix", rf_rule["prefix"]) -pulumi.export("routeFilterRulePrefixMatch", rf_rule["prefixMatch"]) +rf_rule = equinix.fabric.RouteFilterRule("rfRule", + route_filter_id="", + name="Route Filter Rule Name", + prefix="192.168.0.0/24", + prefix_match="exact", + description="Route Filter Rule for X Purpose") +pulumi.export("routeFilterRuleId", rf_rule.id) +pulumi.export("routeFilterId", rf_rule.route_filter_id) +pulumi.export("routeFilterRulePrefix", rf_rule.prefix) +pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) diff --git a/examples/fabric/route_filter_rule/python/requirements.txt b/examples/fabric/route_filter_rule/python/requirements.txt index bc4e43087..ba4c8d1e9 100644 --- a/examples/fabric/route_filter_rule/python/requirements.txt +++ b/examples/fabric/route_filter_rule/python/requirements.txt @@ -1 +1,2 @@ pulumi>=3.0.0,<4.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/route_filter_rule/typescript/index.ts b/examples/fabric/route_filter_rule/typescript/index.ts index 059dc2386..78abf1080 100644 --- a/examples/fabric/route_filter_rule/typescript/index.ts +++ b/examples/fabric/route_filter_rule/typescript/index.ts @@ -1,5 +1,13 @@ import * as pulumi from "@pulumi/pulumi"; +import * as equinix from "@equinix-labs/pulumi-equinix"; +const rfRule = new equinix.fabric.RouteFilterRule("rfRule", { + routeFilterId: "", + name: "Route Filter Rule Name", + prefix: "192.168.0.0/24", + prefixMatch: "exact", + description: "Route Filter Rule for X Purpose", +}); export const routeFilterRuleId = rfRule.id; export const routeFilterId = rfRule.routeFilterId; export const routeFilterRulePrefix = rfRule.prefix; diff --git a/examples/fabric/route_filter_rule/typescript/package.json b/examples/fabric/route_filter_rule/typescript/package.json index 6a09bee1f..b16ffb20d 100644 --- a/examples/fabric/route_filter_rule/typescript/package.json +++ b/examples/fabric/route_filter_rule/typescript/package.json @@ -5,6 +5,7 @@ }, "dependencies": { "typescript": "^4.0.0", - "@pulumi/pulumi": "^3.0.0" + "@pulumi/pulumi": "^3.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj b/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj +++ b/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_1/java/pom.xml b/examples/fabric/routing_protocol/example_1/java/pom.xml index bfe093ac7..c4489d6ce 100644 --- a/examples/fabric/routing_protocol/example_1/java/pom.xml +++ b/examples/fabric/routing_protocol/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_1/python/requirements.txt b/examples/fabric/routing_protocol/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/routing_protocol/example_1/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_1/typescript/package.json b/examples/fabric/routing_protocol/example_1/typescript/package.json index 81171ffe7..9fbcdf6de 100644 --- a/examples/fabric/routing_protocol/example_1/typescript/package.json +++ b/examples/fabric/routing_protocol/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj b/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj +++ b/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_2/java/pom.xml b/examples/fabric/routing_protocol/example_2/java/pom.xml index f52c761a1..e16335b8d 100644 --- a/examples/fabric/routing_protocol/example_2/java/pom.xml +++ b/examples/fabric/routing_protocol/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_2/python/requirements.txt b/examples/fabric/routing_protocol/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/routing_protocol/example_2/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_2/typescript/package.json b/examples/fabric/routing_protocol/example_2/typescript/package.json index 64ebc8ed0..af9f63486 100644 --- a/examples/fabric/routing_protocol/example_2/typescript/package.json +++ b/examples/fabric/routing_protocol/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj b/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj +++ b/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_3/java/pom.xml b/examples/fabric/routing_protocol/example_3/java/pom.xml index d6e6344e7..0b79c0e9e 100644 --- a/examples/fabric/routing_protocol/example_3/java/pom.xml +++ b/examples/fabric/routing_protocol/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_3/python/requirements.txt b/examples/fabric/routing_protocol/example_3/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/routing_protocol/example_3/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/routing_protocol/example_3/typescript/package.json b/examples/fabric/routing_protocol/example_3/typescript/package.json index b9f31ad9e..b79b94742 100644 --- a/examples/fabric/routing_protocol/example_3/typescript/package.json +++ b/examples/fabric/routing_protocol/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj b/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj index 361821045..aa0909a64 100644 --- a/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj +++ b/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/service_profile/java/pom.xml b/examples/fabric/service_profile/java/pom.xml index d4aeb3f1f..aba7445b2 100644 --- a/examples/fabric/service_profile/java/pom.xml +++ b/examples/fabric/service_profile/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/service_profile/python/requirements.txt b/examples/fabric/service_profile/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/fabric/service_profile/python/requirements.txt +++ b/examples/fabric/service_profile/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/fabric/service_profile/typescript/package.json b/examples/fabric/service_profile/typescript/package.json index 17c1f4416..bad9e40fc 100644 --- a/examples/fabric/service_profile/typescript/package.json +++ b/examples/fabric/service_profile/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj b/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj index c23bc1439..cd97dd023 100644 --- a/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj +++ b/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/metal/bgp_session/java/pom.xml b/examples/metal/bgp_session/java/pom.xml index 969f37705..51365dcaf 100644 --- a/examples/metal/bgp_session/java/pom.xml +++ b/examples/metal/bgp_session/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi null diff --git a/examples/metal/bgp_session/python/requirements.txt b/examples/metal/bgp_session/python/requirements.txt index 89c83f72f..3c0e06217 100644 --- a/examples/metal/bgp_session/python/requirements.txt +++ b/examples/metal/bgp_session/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-null==0.0.8 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/bgp_session/typescript/package.json b/examples/metal/bgp_session/typescript/package.json index 981ac6af4..5ad34442e 100644 --- a/examples/metal/bgp_session/typescript/package.json +++ b/examples/metal/bgp_session/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/null": "0.0.8" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml index a6f4d6c58..0bc7c93e8 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json index 22fc41283..4c7891cb2 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj b/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml index 484f039c4..634e92269 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json index 4c4c13ca3..63ead3387 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml index 9afc1269e..bf3dbe617 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json index 37615728a..74ae18a80 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml index 9bdeae3c1..8cfe4e5df 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json index e266fd1b2..659898578 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj b/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj +++ b/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_1/java/pom.xml b/examples/metal/device/example_1/java/pom.xml index 6728e2292..c8ab91bac 100644 --- a/examples/metal/device/example_1/java/pom.xml +++ b/examples/metal/device/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_1/python/requirements.txt b/examples/metal/device/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device/example_1/python/requirements.txt +++ b/examples/metal/device/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_1/typescript/package.json b/examples/metal/device/example_1/typescript/package.json index 770383f8c..c8d66caa4 100644 --- a/examples/metal/device/example_1/typescript/package.json +++ b/examples/metal/device/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj b/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj +++ b/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_2/java/pom.xml b/examples/metal/device/example_2/java/pom.xml index fec0bbe09..9b9aac353 100644 --- a/examples/metal/device/example_2/java/pom.xml +++ b/examples/metal/device/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_2/python/requirements.txt b/examples/metal/device/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device/example_2/python/requirements.txt +++ b/examples/metal/device/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_2/typescript/package.json b/examples/metal/device/example_2/typescript/package.json index 4eab5d4e3..1c04b5783 100644 --- a/examples/metal/device/example_2/typescript/package.json +++ b/examples/metal/device/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj b/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj +++ b/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_3/java/pom.xml b/examples/metal/device/example_3/java/pom.xml index 9f0061965..0f52d6210 100644 --- a/examples/metal/device/example_3/java/pom.xml +++ b/examples/metal/device/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_3/python/requirements.txt b/examples/metal/device/example_3/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device/example_3/python/requirements.txt +++ b/examples/metal/device/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_3/typescript/package.json b/examples/metal/device/example_3/typescript/package.json index 09d924378..ea55e2e0f 100644 --- a/examples/metal/device/example_3/typescript/package.json +++ b/examples/metal/device/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj b/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj +++ b/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_4/java/pom.xml b/examples/metal/device/example_4/java/pom.xml index 46a1d3499..abb1583e0 100644 --- a/examples/metal/device/example_4/java/pom.xml +++ b/examples/metal/device/example_4/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_4/python/requirements.txt b/examples/metal/device/example_4/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device/example_4/python/requirements.txt +++ b/examples/metal/device/example_4/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_4/typescript/package.json b/examples/metal/device/example_4/typescript/package.json index e9883982e..fa33f7401 100644 --- a/examples/metal/device/example_4/typescript/package.json +++ b/examples/metal/device/example_4/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj b/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj +++ b/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_5/java/pom.xml b/examples/metal/device/example_5/java/pom.xml index fa508ba8c..66bfc8417 100644 --- a/examples/metal/device/example_5/java/pom.xml +++ b/examples/metal/device/example_5/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_5/python/requirements.txt b/examples/metal/device/example_5/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device/example_5/python/requirements.txt +++ b/examples/metal/device/example_5/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device/example_5/typescript/package.json b/examples/metal/device/example_5/typescript/package.json index 783ce0d02..b454377c2 100644 --- a/examples/metal/device/example_5/typescript/package.json +++ b/examples/metal/device/example_5/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj b/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj +++ b/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device_network_type/java/pom.xml b/examples/metal/device_network_type/java/pom.xml index 7b25a5adb..55276d057 100644 --- a/examples/metal/device_network_type/java/pom.xml +++ b/examples/metal/device_network_type/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device_network_type/python/requirements.txt b/examples/metal/device_network_type/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/device_network_type/python/requirements.txt +++ b/examples/metal/device_network_type/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/device_network_type/typescript/package.json b/examples/metal/device_network_type/typescript/package.json index 26f12c66a..7bb209aa1 100644 --- a/examples/metal/device_network_type/typescript/package.json +++ b/examples/metal/device_network_type/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj b/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj +++ b/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/gateway/example_1/java/pom.xml b/examples/metal/gateway/example_1/java/pom.xml index 0285d0df4..ec0b7b0d0 100644 --- a/examples/metal/gateway/example_1/java/pom.xml +++ b/examples/metal/gateway/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/gateway/example_1/python/requirements.txt b/examples/metal/gateway/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/gateway/example_1/python/requirements.txt +++ b/examples/metal/gateway/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/gateway/example_1/typescript/package.json b/examples/metal/gateway/example_1/typescript/package.json index e2e2cf00a..b404e61eb 100644 --- a/examples/metal/gateway/example_1/typescript/package.json +++ b/examples/metal/gateway/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj b/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj +++ b/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/gateway/example_2/java/pom.xml b/examples/metal/gateway/example_2/java/pom.xml index 7361da23e..00551de3e 100644 --- a/examples/metal/gateway/example_2/java/pom.xml +++ b/examples/metal/gateway/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/gateway/example_2/python/requirements.txt b/examples/metal/gateway/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/gateway/example_2/python/requirements.txt +++ b/examples/metal/gateway/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/gateway/example_2/typescript/package.json b/examples/metal/gateway/example_2/typescript/package.json index c528e8943..5e07cb00e 100644 --- a/examples/metal/gateway/example_2/typescript/package.json +++ b/examples/metal/gateway/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj b/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj index 9bd721565..3e1af7971 100644 --- a/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj +++ b/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/metal/ip_attachment/java/pom.xml b/examples/metal/ip_attachment/java/pom.xml index e2fca90c0..6d51df231 100644 --- a/examples/metal/ip_attachment/java/pom.xml +++ b/examples/metal/ip_attachment/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/metal/ip_attachment/python/requirements.txt b/examples/metal/ip_attachment/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/metal/ip_attachment/python/requirements.txt +++ b/examples/metal/ip_attachment/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/ip_attachment/typescript/package.json b/examples/metal/ip_attachment/typescript/package.json index 1cfd12840..405930c7b 100644 --- a/examples/metal/ip_attachment/typescript/package.json +++ b/examples/metal/ip_attachment/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/metal/organization/csharp/equinix-metal-organization.csproj b/examples/metal/organization/csharp/equinix-metal-organization.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/organization/csharp/equinix-metal-organization.csproj +++ b/examples/metal/organization/csharp/equinix-metal-organization.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization/java/pom.xml b/examples/metal/organization/java/pom.xml index 767a5bc5a..8ac334f8b 100644 --- a/examples/metal/organization/java/pom.xml +++ b/examples/metal/organization/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization/python/requirements.txt b/examples/metal/organization/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/organization/python/requirements.txt +++ b/examples/metal/organization/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization/typescript/package.json b/examples/metal/organization/typescript/package.json index f759bcb70..bbd7a526e 100644 --- a/examples/metal/organization/typescript/package.json +++ b/examples/metal/organization/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj b/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj +++ b/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization_member/example_1/java/pom.xml b/examples/metal/organization_member/example_1/java/pom.xml index 359996d71..5b81f185d 100644 --- a/examples/metal/organization_member/example_1/java/pom.xml +++ b/examples/metal/organization_member/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization_member/example_1/python/requirements.txt b/examples/metal/organization_member/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/organization_member/example_1/python/requirements.txt +++ b/examples/metal/organization_member/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization_member/example_1/typescript/package.json b/examples/metal/organization_member/example_1/typescript/package.json index 6b465ddc9..d8428bf01 100644 --- a/examples/metal/organization_member/example_1/typescript/package.json +++ b/examples/metal/organization_member/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj b/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj +++ b/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization_member/example_2/java/pom.xml b/examples/metal/organization_member/example_2/java/pom.xml index 42e2f611a..b2eaae7f4 100644 --- a/examples/metal/organization_member/example_2/java/pom.xml +++ b/examples/metal/organization_member/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization_member/example_2/python/requirements.txt b/examples/metal/organization_member/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/organization_member/example_2/python/requirements.txt +++ b/examples/metal/organization_member/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/organization_member/example_2/typescript/package.json b/examples/metal/organization_member/example_2/typescript/package.json index eea191827..a086a577d 100644 --- a/examples/metal/organization_member/example_2/typescript/package.json +++ b/examples/metal/organization_member/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj b/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj +++ b/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_1/java/pom.xml b/examples/metal/port_vlan_attachment/example_1/java/pom.xml index 661e99a8f..15c44ba8d 100644 --- a/examples/metal/port_vlan_attachment/example_1/java/pom.xml +++ b/examples/metal/port_vlan_attachment/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/port_vlan_attachment/example_1/python/requirements.txt b/examples/metal/port_vlan_attachment/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/port_vlan_attachment/example_1/python/requirements.txt +++ b/examples/metal/port_vlan_attachment/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/port_vlan_attachment/example_1/typescript/package.json b/examples/metal/port_vlan_attachment/example_1/typescript/package.json index 81a12b69d..f187404b5 100644 --- a/examples/metal/port_vlan_attachment/example_1/typescript/package.json +++ b/examples/metal/port_vlan_attachment/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj b/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj +++ b/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_2/java/pom.xml b/examples/metal/port_vlan_attachment/example_2/java/pom.xml index 148a6bfae..3fdb498f8 100644 --- a/examples/metal/port_vlan_attachment/example_2/java/pom.xml +++ b/examples/metal/port_vlan_attachment/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/port_vlan_attachment/example_2/python/requirements.txt b/examples/metal/port_vlan_attachment/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/port_vlan_attachment/example_2/python/requirements.txt +++ b/examples/metal/port_vlan_attachment/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/port_vlan_attachment/example_2/typescript/package.json b/examples/metal/port_vlan_attachment/example_2/typescript/package.json index 2529e0396..e4fa073e2 100644 --- a/examples/metal/port_vlan_attachment/example_2/typescript/package.json +++ b/examples/metal/port_vlan_attachment/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj b/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj +++ b/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_1/java/pom.xml b/examples/metal/project/example_1/java/pom.xml index f2a41c6a7..f3061ef73 100644 --- a/examples/metal/project/example_1/java/pom.xml +++ b/examples/metal/project/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_1/python/requirements.txt b/examples/metal/project/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/project/example_1/python/requirements.txt +++ b/examples/metal/project/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_1/typescript/package.json b/examples/metal/project/example_1/typescript/package.json index 8bb6e0343..95477f2a8 100644 --- a/examples/metal/project/example_1/typescript/package.json +++ b/examples/metal/project/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj b/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj +++ b/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_2/java/pom.xml b/examples/metal/project/example_2/java/pom.xml index 51df2f714..4c88d40c5 100644 --- a/examples/metal/project/example_2/java/pom.xml +++ b/examples/metal/project/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_2/python/requirements.txt b/examples/metal/project/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/project/example_2/python/requirements.txt +++ b/examples/metal/project/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_2/typescript/package.json b/examples/metal/project/example_2/typescript/package.json index 7757daf99..8a913a3ec 100644 --- a/examples/metal/project/example_2/typescript/package.json +++ b/examples/metal/project/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj b/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj +++ b/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_3/java/pom.xml b/examples/metal/project/example_3/java/pom.xml index 3a6253976..6f36bd9bc 100644 --- a/examples/metal/project/example_3/java/pom.xml +++ b/examples/metal/project/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_3/python/requirements.txt b/examples/metal/project/example_3/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/project/example_3/python/requirements.txt +++ b/examples/metal/project/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project/example_3/typescript/package.json b/examples/metal/project/example_3/typescript/package.json index a047c945c..f71af61ef 100644 --- a/examples/metal/project/example_3/typescript/package.json +++ b/examples/metal/project/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj b/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj +++ b/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project_api_key/java/pom.xml b/examples/metal/project_api_key/java/pom.xml index 0ddadd4f9..3f1e3d4b7 100644 --- a/examples/metal/project_api_key/java/pom.xml +++ b/examples/metal/project_api_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project_api_key/python/requirements.txt b/examples/metal/project_api_key/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/project_api_key/python/requirements.txt +++ b/examples/metal/project_api_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project_api_key/typescript/package.json b/examples/metal/project_api_key/typescript/package.json index 29fa61be4..23faee63e 100644 --- a/examples/metal/project_api_key/typescript/package.json +++ b/examples/metal/project_api_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj b/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj +++ b/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project_ssh_key/java/pom.xml b/examples/metal/project_ssh_key/java/pom.xml index fa6b34300..f2171ad0f 100644 --- a/examples/metal/project_ssh_key/java/pom.xml +++ b/examples/metal/project_ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project_ssh_key/python/requirements.txt b/examples/metal/project_ssh_key/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/project_ssh_key/python/requirements.txt +++ b/examples/metal/project_ssh_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/project_ssh_key/typescript/package.json b/examples/metal/project_ssh_key/typescript/package.json index 27a6dacde..1789c686e 100644 --- a/examples/metal/project_ssh_key/typescript/package.json +++ b/examples/metal/project_ssh_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj b/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj +++ b/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_1/java/pom.xml b/examples/metal/reserved_ip_block/example_1/java/pom.xml index 5959f4144..c319f2473 100644 --- a/examples/metal/reserved_ip_block/example_1/java/pom.xml +++ b/examples/metal/reserved_ip_block/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/reserved_ip_block/example_1/python/requirements.txt b/examples/metal/reserved_ip_block/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/reserved_ip_block/example_1/python/requirements.txt +++ b/examples/metal/reserved_ip_block/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/reserved_ip_block/example_1/typescript/package.json b/examples/metal/reserved_ip_block/example_1/typescript/package.json index cee95de3a..94875be1c 100644 --- a/examples/metal/reserved_ip_block/example_1/typescript/package.json +++ b/examples/metal/reserved_ip_block/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj b/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj +++ b/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_2/java/pom.xml b/examples/metal/reserved_ip_block/example_2/java/pom.xml index e922b6af6..be8f5fed2 100644 --- a/examples/metal/reserved_ip_block/example_2/java/pom.xml +++ b/examples/metal/reserved_ip_block/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/reserved_ip_block/example_2/python/requirements.txt b/examples/metal/reserved_ip_block/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/reserved_ip_block/example_2/python/requirements.txt +++ b/examples/metal/reserved_ip_block/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/reserved_ip_block/example_2/typescript/package.json b/examples/metal/reserved_ip_block/example_2/typescript/package.json index 4ee9cf36e..72636ed52 100644 --- a/examples/metal/reserved_ip_block/example_2/typescript/package.json +++ b/examples/metal/reserved_ip_block/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj b/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj +++ b/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/spot_market_request/java/pom.xml b/examples/metal/spot_market_request/java/pom.xml index d92f52e7e..33907e87d 100644 --- a/examples/metal/spot_market_request/java/pom.xml +++ b/examples/metal/spot_market_request/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/spot_market_request/python/requirements.txt b/examples/metal/spot_market_request/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/spot_market_request/python/requirements.txt +++ b/examples/metal/spot_market_request/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/spot_market_request/typescript/package.json b/examples/metal/spot_market_request/typescript/package.json index 67868a63c..68cf2cc13 100644 --- a/examples/metal/spot_market_request/typescript/package.json +++ b/examples/metal/spot_market_request/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj b/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj index d9bc35afd..3e1af7971 100644 --- a/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj +++ b/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj @@ -7,8 +7,8 @@ + - \ No newline at end of file diff --git a/examples/metal/ssh_key/java/pom.xml b/examples/metal/ssh_key/java/pom.xml index 1863b561f..083683f02 100644 --- a/examples/metal/ssh_key/java/pom.xml +++ b/examples/metal/ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/metal/ssh_key/python/requirements.txt b/examples/metal/ssh_key/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/metal/ssh_key/python/requirements.txt +++ b/examples/metal/ssh_key/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/ssh_key/typescript/package.json b/examples/metal/ssh_key/typescript/package.json index 67266a4f4..f47c8af1c 100644 --- a/examples/metal/ssh_key/typescript/package.json +++ b/examples/metal/ssh_key/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj b/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj +++ b/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/user_api_key/java/pom.xml b/examples/metal/user_api_key/java/pom.xml index 612278caf..0876684b7 100644 --- a/examples/metal/user_api_key/java/pom.xml +++ b/examples/metal/user_api_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/user_api_key/python/requirements.txt b/examples/metal/user_api_key/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/user_api_key/python/requirements.txt +++ b/examples/metal/user_api_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/user_api_key/typescript/package.json b/examples/metal/user_api_key/typescript/package.json index 822973b69..a3e92027e 100644 --- a/examples/metal/user_api_key/typescript/package.json +++ b/examples/metal/user_api_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj b/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj +++ b/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/virtual_circuit/java/pom.xml b/examples/metal/virtual_circuit/java/pom.xml index a3f41921d..f8801820c 100644 --- a/examples/metal/virtual_circuit/java/pom.xml +++ b/examples/metal/virtual_circuit/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/virtual_circuit/python/requirements.txt b/examples/metal/virtual_circuit/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/virtual_circuit/python/requirements.txt +++ b/examples/metal/virtual_circuit/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/virtual_circuit/typescript/package.json b/examples/metal/virtual_circuit/typescript/package.json index aa7b79025..9b6e9d822 100644 --- a/examples/metal/virtual_circuit/typescript/package.json +++ b/examples/metal/virtual_circuit/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/vlan/csharp/equinix-metal-vlan.csproj b/examples/metal/vlan/csharp/equinix-metal-vlan.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/vlan/csharp/equinix-metal-vlan.csproj +++ b/examples/metal/vlan/csharp/equinix-metal-vlan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vlan/java/pom.xml b/examples/metal/vlan/java/pom.xml index fbd452cff..64375429c 100644 --- a/examples/metal/vlan/java/pom.xml +++ b/examples/metal/vlan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vlan/python/requirements.txt b/examples/metal/vlan/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/vlan/python/requirements.txt +++ b/examples/metal/vlan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vlan/typescript/package.json b/examples/metal/vlan/typescript/package.json index 075363353..27e3ad794 100644 --- a/examples/metal/vlan/typescript/package.json +++ b/examples/metal/vlan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj b/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj +++ b/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_1/java/pom.xml b/examples/metal/vrf/example_1/java/pom.xml index bb9fb1d42..b3a61c29d 100644 --- a/examples/metal/vrf/example_1/java/pom.xml +++ b/examples/metal/vrf/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_1/python/requirements.txt b/examples/metal/vrf/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/vrf/example_1/python/requirements.txt +++ b/examples/metal/vrf/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_1/typescript/package.json b/examples/metal/vrf/example_1/typescript/package.json index 8d4b4ab2e..065e6f8b1 100644 --- a/examples/metal/vrf/example_1/typescript/package.json +++ b/examples/metal/vrf/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj b/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj +++ b/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_2/java/pom.xml b/examples/metal/vrf/example_2/java/pom.xml index c5d6f501f..8a2ffff4e 100644 --- a/examples/metal/vrf/example_2/java/pom.xml +++ b/examples/metal/vrf/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_2/python/requirements.txt b/examples/metal/vrf/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/vrf/example_2/python/requirements.txt +++ b/examples/metal/vrf/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_2/typescript/package.json b/examples/metal/vrf/example_2/typescript/package.json index 0296bbe80..7cdd0656f 100644 --- a/examples/metal/vrf/example_2/typescript/package.json +++ b/examples/metal/vrf/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj b/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj index 361821045..aa0909a64 100644 --- a/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj +++ b/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_3/java/pom.xml b/examples/metal/vrf/example_3/java/pom.xml index f2b3d2f38..8edb16a1a 100644 --- a/examples/metal/vrf/example_3/java/pom.xml +++ b/examples/metal/vrf/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_3/python/requirements.txt b/examples/metal/vrf/example_3/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/metal/vrf/example_3/python/requirements.txt +++ b/examples/metal/vrf/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/metal/vrf/example_3/typescript/package.json b/examples/metal/vrf/example_3/typescript/package.json index 62730721c..48dbdb765 100644 --- a/examples/metal/vrf/example_3/typescript/package.json +++ b/examples/metal/vrf/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/acl_template/csharp/equinix-network-acl_template.csproj b/examples/network/acl_template/csharp/equinix-network-acl_template.csproj index 361821045..aa0909a64 100644 --- a/examples/network/acl_template/csharp/equinix-network-acl_template.csproj +++ b/examples/network/acl_template/csharp/equinix-network-acl_template.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/acl_template/java/pom.xml b/examples/network/acl_template/java/pom.xml index b86cf0526..39392941f 100644 --- a/examples/network/acl_template/java/pom.xml +++ b/examples/network/acl_template/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/acl_template/python/requirements.txt b/examples/network/acl_template/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/acl_template/python/requirements.txt +++ b/examples/network/acl_template/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/acl_template/typescript/package.json b/examples/network/acl_template/typescript/package.json index e347e7ad4..097a5813a 100644 --- a/examples/network/acl_template/typescript/package.json +++ b/examples/network/acl_template/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/bgp/csharp/equinix-network-bgp.csproj b/examples/network/bgp/csharp/equinix-network-bgp.csproj index 361821045..aa0909a64 100644 --- a/examples/network/bgp/csharp/equinix-network-bgp.csproj +++ b/examples/network/bgp/csharp/equinix-network-bgp.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/bgp/java/pom.xml b/examples/network/bgp/java/pom.xml index b8dcd674a..7120d0a24 100644 --- a/examples/network/bgp/java/pom.xml +++ b/examples/network/bgp/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/bgp/python/requirements.txt b/examples/network/bgp/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/bgp/python/requirements.txt +++ b/examples/network/bgp/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/bgp/typescript/package.json b/examples/network/bgp/typescript/package.json index 7bd118a32..8abb151f1 100644 --- a/examples/network/bgp/typescript/package.json +++ b/examples/network/bgp/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj b/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj +++ b/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_1/java/pom.xml b/examples/network/device/example_1/java/pom.xml index 74fcd2530..5ab2125b9 100644 --- a/examples/network/device/example_1/java/pom.xml +++ b/examples/network/device/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_1/python/requirements.txt b/examples/network/device/example_1/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_1/python/requirements.txt +++ b/examples/network/device/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_1/typescript/package.json b/examples/network/device/example_1/typescript/package.json index 6fd4209b5..2bf49a025 100644 --- a/examples/network/device/example_1/typescript/package.json +++ b/examples/network/device/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj b/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj +++ b/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_2/java/pom.xml b/examples/network/device/example_2/java/pom.xml index 1026b9f96..e69595273 100644 --- a/examples/network/device/example_2/java/pom.xml +++ b/examples/network/device/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_2/python/requirements.txt b/examples/network/device/example_2/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_2/python/requirements.txt +++ b/examples/network/device/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_2/typescript/package.json b/examples/network/device/example_2/typescript/package.json index 274d280bb..0799ad826 100644 --- a/examples/network/device/example_2/typescript/package.json +++ b/examples/network/device/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj b/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj index 9bd721565..3e1af7971 100644 --- a/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj +++ b/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/device/example_3/java/pom.xml b/examples/network/device/example_3/java/pom.xml index cc217c78e..bee7defb0 100644 --- a/examples/network/device/example_3/java/pom.xml +++ b/examples/network/device/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/network/device/example_3/python/requirements.txt b/examples/network/device/example_3/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/network/device/example_3/python/requirements.txt +++ b/examples/network/device/example_3/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_3/typescript/package.json b/examples/network/device/example_3/typescript/package.json index 3a11d5364..b33ef4016 100644 --- a/examples/network/device/example_3/typescript/package.json +++ b/examples/network/device/example_3/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj b/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj +++ b/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_4/java/pom.xml b/examples/network/device/example_4/java/pom.xml index 7f35cfd65..482442fa8 100644 --- a/examples/network/device/example_4/java/pom.xml +++ b/examples/network/device/example_4/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_4/python/requirements.txt b/examples/network/device/example_4/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_4/python/requirements.txt +++ b/examples/network/device/example_4/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_4/typescript/package.json b/examples/network/device/example_4/typescript/package.json index d4ea28b3b..ca10b3551 100644 --- a/examples/network/device/example_4/typescript/package.json +++ b/examples/network/device/example_4/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj b/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj +++ b/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_5/java/pom.xml b/examples/network/device/example_5/java/pom.xml index cca765fc3..cacdbd0a5 100644 --- a/examples/network/device/example_5/java/pom.xml +++ b/examples/network/device/example_5/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_5/python/requirements.txt b/examples/network/device/example_5/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_5/python/requirements.txt +++ b/examples/network/device/example_5/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_5/typescript/package.json b/examples/network/device/example_5/typescript/package.json index 19be9def7..a7b8d0491 100644 --- a/examples/network/device/example_5/typescript/package.json +++ b/examples/network/device/example_5/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj b/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj +++ b/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_6/java/pom.xml b/examples/network/device/example_6/java/pom.xml index 2923cded8..57e40e60e 100644 --- a/examples/network/device/example_6/java/pom.xml +++ b/examples/network/device/example_6/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_6/python/requirements.txt b/examples/network/device/example_6/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_6/python/requirements.txt +++ b/examples/network/device/example_6/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_6/typescript/package.json b/examples/network/device/example_6/typescript/package.json index 1ffba8a07..618fafd7f 100644 --- a/examples/network/device/example_6/typescript/package.json +++ b/examples/network/device/example_6/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj b/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj +++ b/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_7/java/pom.xml b/examples/network/device/example_7/java/pom.xml index 62cdded13..4ffd0ccc2 100644 --- a/examples/network/device/example_7/java/pom.xml +++ b/examples/network/device/example_7/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_7/python/requirements.txt b/examples/network/device/example_7/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_7/python/requirements.txt +++ b/examples/network/device/example_7/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_7/typescript/package.json b/examples/network/device/example_7/typescript/package.json index d41f0460c..d2ee1eaad 100644 --- a/examples/network/device/example_7/typescript/package.json +++ b/examples/network/device/example_7/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj b/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj index d9bc35afd..3e1af7971 100644 --- a/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj +++ b/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj @@ -7,8 +7,8 @@ + - \ No newline at end of file diff --git a/examples/network/device/example_8/java/pom.xml b/examples/network/device/example_8/java/pom.xml index eac3dc88f..89f3e8194 100644 --- a/examples/network/device/example_8/java/pom.xml +++ b/examples/network/device/example_8/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/network/device/example_8/python/requirements.txt b/examples/network/device/example_8/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/network/device/example_8/python/requirements.txt +++ b/examples/network/device/example_8/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_8/typescript/package.json b/examples/network/device/example_8/typescript/package.json index a1f118b78..4d65e7030 100644 --- a/examples/network/device/example_8/typescript/package.json +++ b/examples/network/device/example_8/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj b/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj +++ b/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_9/java/pom.xml b/examples/network/device/example_9/java/pom.xml index c66341dfa..0cfd72b94 100644 --- a/examples/network/device/example_9/java/pom.xml +++ b/examples/network/device/example_9/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_9/python/requirements.txt b/examples/network/device/example_9/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device/example_9/python/requirements.txt +++ b/examples/network/device/example_9/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_9/typescript/package.json b/examples/network/device/example_9/typescript/package.json index 012a90e60..567762165 100644 --- a/examples/network/device/example_9/typescript/package.json +++ b/examples/network/device/example_9/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj b/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj index 9bd721565..3e1af7971 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj +++ b/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml b/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml index c50053a6b..53e0360cc 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml +++ b/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt b/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt +++ b/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json b/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json index ce8a3234f..8a999f07e 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json +++ b/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device_link/csharp/equinix-network-device_link.csproj b/examples/network/device_link/csharp/equinix-network-device_link.csproj index 361821045..aa0909a64 100644 --- a/examples/network/device_link/csharp/equinix-network-device_link.csproj +++ b/examples/network/device_link/csharp/equinix-network-device_link.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device_link/java/pom.xml b/examples/network/device_link/java/pom.xml index c1e3cf7ca..7d2350d44 100644 --- a/examples/network/device_link/java/pom.xml +++ b/examples/network/device_link/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device_link/python/requirements.txt b/examples/network/device_link/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/device_link/python/requirements.txt +++ b/examples/network/device_link/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/device_link/typescript/package.json b/examples/network/device_link/typescript/package.json index 791407a10..dbdb6e29a 100644 --- a/examples/network/device_link/typescript/package.json +++ b/examples/network/device_link/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/file/csharp/equinix-network-file.csproj b/examples/network/file/csharp/equinix-network-file.csproj index 9bd721565..3e1af7971 100644 --- a/examples/network/file/csharp/equinix-network-file.csproj +++ b/examples/network/file/csharp/equinix-network-file.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/file/java/pom.xml b/examples/network/file/java/pom.xml index 4d0a03db6..9b1156a24 100644 --- a/examples/network/file/java/pom.xml +++ b/examples/network/file/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 com.pulumi std diff --git a/examples/network/file/python/requirements.txt b/examples/network/file/python/requirements.txt index fc62473fd..0ae719dad 100644 --- a/examples/network/file/python/requirements.txt +++ b/examples/network/file/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/file/typescript/package.json b/examples/network/file/typescript/package.json index 6a815cd05..3fe61d282 100644 --- a/examples/network/file/typescript/package.json +++ b/examples/network/file/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0", + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj b/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj index 361821045..aa0909a64 100644 --- a/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj +++ b/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/ssh_key/java/pom.xml b/examples/network/ssh_key/java/pom.xml index 8d9329ea7..625051248 100644 --- a/examples/network/ssh_key/java/pom.xml +++ b/examples/network/ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/ssh_key/python/requirements.txt b/examples/network/ssh_key/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/ssh_key/python/requirements.txt +++ b/examples/network/ssh_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/ssh_key/typescript/package.json b/examples/network/ssh_key/typescript/package.json index 4016e91b3..10edf5528 100644 --- a/examples/network/ssh_key/typescript/package.json +++ b/examples/network/ssh_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj b/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj index 361821045..aa0909a64 100644 --- a/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj +++ b/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/ssh_user/java/pom.xml b/examples/network/ssh_user/java/pom.xml index 3875caf75..2d45468ce 100644 --- a/examples/network/ssh_user/java/pom.xml +++ b/examples/network/ssh_user/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - (,1.0) + 0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/ssh_user/python/requirements.txt b/examples/network/ssh_user/python/requirements.txt index 317d94a17..ba4c8d1e9 100644 --- a/examples/network/ssh_user/python/requirements.txt +++ b/examples/network/ssh_user/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==<1.0.0 +pulumi_equinix==0.18.1-alpha.1729554944+37549499 diff --git a/examples/network/ssh_user/typescript/package.json b/examples/network/ssh_user/typescript/package.json index f939285fb..3ce919b6e 100644 --- a/examples/network/ssh_user/typescript/package.json +++ b/examples/network/ssh_user/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "<1.0.0" + "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" } } \ No newline at end of file diff --git a/provider/cmd/pulumi-resource-equinix/bridge-metadata.json b/provider/cmd/pulumi-resource-equinix/bridge-metadata.json index c7b32e417..810e00560 100644 --- a/provider/cmd/pulumi-resource-equinix/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-equinix/bridge-metadata.json @@ -3,7 +3,10 @@ "resources": { "equinix:fabric/cloudRouter:CloudRouter": 0, "equinix:fabric/connection:Connection": 0, + "equinix:fabric/connectionRouteFilter:ConnectionRouteFilter": 0, "equinix:fabric/network:Network": 0, + "equinix:fabric/routeFilter:RouteFilter": 0, + "equinix:fabric/routeFilterRule:RouteFilterRule": 0, "equinix:fabric/routingProtocol:RoutingProtocol": 0, "equinix:fabric/serviceProfile:ServiceProfile": 0, "equinix:metal/bgpSession:BgpSession": 0, @@ -38,12 +41,18 @@ "equinix:fabric/getCloudRouter:getCloudRouter": 0, "equinix:fabric/getCloudRouters:getCloudRouters": 0, "equinix:fabric/getConnection:getConnection": 0, + "equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter": 0, + "equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters": 0, "equinix:fabric/getConnections:getConnections": 0, "equinix:fabric/getMarketplaceSubscription:getMarketplaceSubscription": 0, "equinix:fabric/getNetwork:getNetwork": 0, "equinix:fabric/getNetworks:getNetworks": 0, "equinix:fabric/getPort:getPort": 0, "equinix:fabric/getPorts:getPorts": 0, + "equinix:fabric/getRouteFilter:getRouteFilter": 0, + "equinix:fabric/getRouteFilterRule:getRouteFilterRule": 0, + "equinix:fabric/getRouteFilterRules:getRouteFilterRules": 0, + "equinix:fabric/getRouteFilters:getRouteFilters": 0, "equinix:fabric/getRoutingProtocol:getRoutingProtocol": 0, "equinix:fabric/getServiceProfile:getServiceProfile": 0, "equinix:fabric/getServiceProfiles:getServiceProfiles": 0, diff --git a/provider/cmd/pulumi-resource-equinix/schema.json b/provider/cmd/pulumi-resource-equinix/schema.json index 4d74f312d..46919593e 100644 --- a/provider/cmd/pulumi-resource-equinix/schema.json +++ b/provider/cmd/pulumi-resource-equinix/schema.json @@ -1917,6 +1917,224 @@ "projectId" ] }, + "equinix:fabric/RouteFilterChange:RouteFilterChange": { + "properties": { + "href": { + "type": "string", + "description": "The URI of the previous Route Filter Change\n" + }, + "type": { + "type": "string", + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_CREATION\",\"BGP_IPv4_PREFIX_FILTER_DELETION\",\"BGP_IPv6_PREFIX_FILTER_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_CREATION\",\"BGP_IPv6_PREFIX_FILTER_DELETION\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Unique identifier for the previous change\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "href", + "type", + "uuid" + ] + } + } + }, + "equinix:fabric/RouteFilterChangeLog:RouteFilterChangeLog": { + "properties": { + "createdBy": { + "type": "string", + "description": "Created by User Key\n" + }, + "createdByEmail": { + "type": "string", + "description": "Created by User Email Address\n" + }, + "createdByFullName": { + "type": "string", + "description": "Created by User Full Name\n" + }, + "createdDateTime": { + "type": "string", + "description": "Created by Date and Time\n" + }, + "deletedBy": { + "type": "string", + "description": "Deleted by User Key\n" + }, + "deletedByEmail": { + "type": "string", + "description": "Deleted by User Email Address\n" + }, + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" + }, + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" + }, + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" + }, + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" + }, + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" + }, + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" + ] + } + } + }, + "equinix:fabric/RouteFilterProject:RouteFilterProject": { + "properties": { + "href": { + "type": "string", + "description": "URI of the Fabric Project\n" + }, + "projectId": { + "type": "string", + "description": "Project id associated with Fabric Project\n" + } + }, + "type": "object", + "required": [ + "projectId" + ], + "language": { + "nodejs": { + "requiredOutputs": [ + "href", + "projectId" + ] + } + } + }, + "equinix:fabric/RouteFilterRuleChange:RouteFilterRuleChange": { + "properties": { + "href": { + "type": "string", + "description": "The URI of the previous Route Filter Rule Change\n" + }, + "type": { + "type": "string", + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv4_PREFIX_FILTER_RULE_DELETION\",\"BGP_IPv6_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv6_PREFIX_FILTER_RULE_DELETION\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Unique identifier for the previous change\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "href", + "type", + "uuid" + ] + } + } + }, + "equinix:fabric/RouteFilterRuleChangeLog:RouteFilterRuleChangeLog": { + "properties": { + "createdBy": { + "type": "string", + "description": "Created by User Key\n" + }, + "createdByEmail": { + "type": "string", + "description": "Created by User Email Address\n" + }, + "createdByFullName": { + "type": "string", + "description": "Created by User Full Name\n" + }, + "createdDateTime": { + "type": "string", + "description": "Created by Date and Time\n" + }, + "deletedBy": { + "type": "string", + "description": "Deleted by User Key\n" + }, + "deletedByEmail": { + "type": "string", + "description": "Deleted by User Email Address\n" + }, + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" + }, + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" + }, + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" + }, + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" + }, + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" + }, + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" + ] + } + } + }, "equinix:fabric/RoutingProtocolBfd:RoutingProtocolBfd": { "properties": { "enabled": { @@ -4391,41 +4609,115 @@ } } }, - "equinix:fabric/getConnectionZSide:getConnectionZSide": { + "equinix:fabric/getConnectionRouteFiltersData:getConnectionRouteFiltersData": { "properties": { - "accessPoint": { - "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPoint:getConnectionZSideAccessPoint", - "description": "Point of access details\n" + "attachmentStatus": { + "type": "string", + "description": "Status of the Route Filter Policy attachment lifecycle\n" }, - "additionalInfos": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getConnectionZSideAdditionalInfo:getConnectionZSideAdditionalInfo" - }, - "description": "Connection side additional information\n" + "direction": { + "type": "string", + "description": "Direction of the filtering of the attached Route Filter Policy\n" }, - "serviceToken": { - "$ref": "#/types/equinix:fabric/getConnectionZSideServiceToken:getConnectionZSideServiceToken", - "description": "For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets\n" + "href": { + "type": "string", + "description": "URI to the attached Route Filter Policy on the Connection\n" + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ \"BGP_IPv4_PREFIX_FILTER\", \"BGP_IPv6_PREFIX_FILTER\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Policy\n" } }, - "type": "object" + "type": "object", + "required": [ + "attachmentStatus", + "direction", + "href", + "type", + "uuid" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } }, - "equinix:fabric/getConnectionZSideAccessPoint:getConnectionZSideAccessPoint": { + "equinix:fabric/getConnectionRouteFiltersPagination:getConnectionRouteFiltersPagination": { "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPointAccount:getConnectionZSideAccessPointAccount" - }, - "description": "Account\n" + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" }, - "authenticationKey": { + "next": { "type": "string", - "description": "Authentication key for provider based connections or Metal-Fabric Integration connections\n" + "description": "URL relative to the last item in the response.\n" }, - "gateway": { - "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPointGateway:getConnectionZSideAccessPointGateway", + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + }, + "previous": { + "type": "string", + "description": "URL relative to the first item in the response.\n" + }, + "total": { + "type": "integer", + "description": "Total number of elements returned.\n" + } + }, + "type": "object", + "required": [ + "limit", + "next", + "offset", + "previous", + "total" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getConnectionZSide:getConnectionZSide": { + "properties": { + "accessPoint": { + "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPoint:getConnectionZSideAccessPoint", + "description": "Point of access details\n" + }, + "additionalInfos": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getConnectionZSideAdditionalInfo:getConnectionZSideAdditionalInfo" + }, + "description": "Connection side additional information\n" + }, + "serviceToken": { + "$ref": "#/types/equinix:fabric/getConnectionZSideServiceToken:getConnectionZSideServiceToken", + "description": "For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets\n" + } + }, + "type": "object" + }, + "equinix:fabric/getConnectionZSideAccessPoint:getConnectionZSideAccessPoint": { + "properties": { + "accounts": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPointAccount:getConnectionZSideAccessPointAccount" + }, + "description": "Account\n" + }, + "authenticationKey": { + "type": "string", + "description": "Authentication key for provider based connections or Metal-Fabric Integration connections\n" + }, + "gateway": { + "$ref": "#/types/equinix:fabric/getConnectionZSideAccessPointGateway:getConnectionZSideAccessPointGateway", "description": "**Deprecated** `gateway` Use `router` attribute instead\n", "deprecationMessage": "use router attribute instead; gateway is no longer a part of the supported backend" }, @@ -7761,20 +8053,26 @@ "name" ] }, - "equinix:fabric/getRoutingProtocolBfd:getRoutingProtocolBfd": { + "equinix:fabric/getRouteFilterChange:getRouteFilterChange": { "properties": { - "enabled": { - "type": "boolean", - "description": "Bidirectional Forwarding Detection enablement\n" + "href": { + "type": "string", + "description": "The URI of the previous Route Filter Change\n" }, - "interval": { + "type": { "type": "string", - "description": "Interval range between the received BFD control packets\n" + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_CREATION\",\"BGP_IPv4_PREFIX_FILTER_DELETION\",\"BGP_IPv6_PREFIX_FILTER_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_CREATION\",\"BGP_IPv6_PREFIX_FILTER_DELETION\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Unique identifier for the previous change\n" } }, "type": "object", "required": [ - "enabled" + "href", + "type", + "uuid" ], "language": { "nodejs": { @@ -7782,40 +8080,71 @@ } } }, - "equinix:fabric/getRoutingProtocolBgpIpv4:getRoutingProtocolBgpIpv4": { + "equinix:fabric/getRouteFilterChangeLog:getRouteFilterChangeLog": { "properties": { - "customerPeerIp": { + "createdBy": { "type": "string", - "description": "Customer side peering ip\n" + "description": "Created by User Key\n" }, - "enabled": { - "type": "boolean", - "description": "Admin status for the BGP session\n" + "createdByEmail": { + "type": "string", + "description": "Created by User Email Address\n" }, - "equinixPeerIp": { + "createdByFullName": { "type": "string", - "description": "Equinix side peering ip\n" + "description": "Created by User Full Name\n" }, - "inboundMed": { - "type": "integer", - "description": "Inbound Multi Exit Discriminator attribute\n" + "createdDateTime": { + "type": "string", + "description": "Created by Date and Time\n" }, - "outboundAsPrependCount": { + "deletedBy": { "type": "string", - "description": "AS path prepend count. One of: 0, 1, 3, 5\n" + "description": "Deleted by User Key\n" }, - "outboundMed": { - "type": "integer", - "description": "Outbound Multi Exit Discriminator attribute\n" + "deletedByEmail": { + "type": "string", + "description": "Deleted by User Email Address\n" + }, + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" + }, + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" + }, + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" + }, + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" + }, + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" + }, + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" } }, "type": "object", "required": [ - "customerPeerIp", - "equinixPeerIp", - "inboundMed", - "outboundAsPrependCount", - "outboundMed" + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" ], "language": { "nodejs": { @@ -7823,40 +8152,21 @@ } } }, - "equinix:fabric/getRoutingProtocolBgpIpv6:getRoutingProtocolBgpIpv6": { + "equinix:fabric/getRouteFilterProject:getRouteFilterProject": { "properties": { - "customerPeerIp": { - "type": "string", - "description": "Customer side peering ip\n" - }, - "enabled": { - "type": "boolean", - "description": "Admin status for the BGP session\n" - }, - "equinixPeerIp": { + "href": { "type": "string", - "description": "Equinix side peering ip\n" - }, - "inboundMed": { - "type": "integer", - "description": "Inbound Multi Exit Discriminator attribute\n" + "description": "URI of the Fabric Project\n" }, - "outboundAsPrependCount": { + "projectId": { "type": "string", - "description": "AS path prepend count. One of: 0, 1, 3, 5\n" - }, - "outboundMed": { - "type": "integer", - "description": "Outbound Multi Exit Discriminator attribute\n" + "description": "Project id associated with Fabric Project\n" } }, "type": "object", "required": [ - "customerPeerIp", - "equinixPeerIp", - "inboundMed", - "outboundAsPrependCount", - "outboundMed" + "href", + "projectId" ], "language": { "nodejs": { @@ -7864,19 +8174,19 @@ } } }, - "equinix:fabric/getRoutingProtocolChange:getRoutingProtocolChange": { + "equinix:fabric/getRouteFilterRuleChange:getRouteFilterRuleChange": { "properties": { "href": { "type": "string", - "description": "Routing Protocol Change URI\n" + "description": "The URI of the previous Route Filter Rule Change\n" }, "type": { "type": "string", - "description": "Type of change\n" + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv4_PREFIX_FILTER_RULE_DELETION\",\"BGP_IPv6_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv6_PREFIX_FILTER_RULE_DELETION\" ]\n" }, "uuid": { "type": "string", - "description": "Uniquely identifies a change\n" + "description": "Unique identifier for the previous change\n" } }, "type": "object", @@ -7891,7 +8201,7 @@ } } }, - "equinix:fabric/getRoutingProtocolChangeLog:getRoutingProtocolChangeLog": { + "equinix:fabric/getRouteFilterRuleChangeLog:getRouteFilterRuleChangeLog": { "properties": { "createdBy": { "type": "string", @@ -7963,16 +8273,71 @@ } } }, - "equinix:fabric/getRoutingProtocolDirectIpv4:getRoutingProtocolDirectIpv4": { + "equinix:fabric/getRouteFilterRulesData:getRouteFilterRulesData": { "properties": { - "equinixIfaceIp": { + "action": { "type": "string", - "description": "Equinix side Interface IP address\n" + "description": "Action that will be taken on IP Addresses matching the rule\n" + }, + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRulesDataChangeLog:getRouteFilterRulesDataChangeLog" + } + }, + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRulesDataChange:getRouteFilterRulesDataChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" + }, + "description": { + "type": "string", + "description": "Optional description to add to the Route Filter you will be creating\n" + }, + "href": { + "type": "string", + "description": "Route filter rules URI\n" + }, + "name": { + "type": "string", + "description": "Name of the Route Filter\n" + }, + "prefix": { + "type": "string", + "description": "IP Address Prefix to Filter on\n" + }, + "prefixMatch": { + "type": "string", + "description": "Prefix matching operator. One of [ orlonger, exact ] Default: \"orlonger\"\n" + }, + "state": { + "type": "string", + "description": "State of the Route Filter Rule in its lifecycle\n" + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Rule to retrieve data for\n" } }, "type": "object", "required": [ - "equinixIfaceIp" + "action", + "changes", + "changeLogs", + "description", + "href", + "name", + "prefix", + "prefixMatch", + "state", + "type", + "uuid" ], "language": { "nodejs": { @@ -7980,28 +8345,26 @@ } } }, - "equinix:fabric/getRoutingProtocolDirectIpv6:getRoutingProtocolDirectIpv6": { + "equinix:fabric/getRouteFilterRulesDataChange:getRouteFilterRulesDataChange": { "properties": { - "equinixIfaceIp": { + "href": { "type": "string", - "description": "Equinix side Interface IP address\n" - } - }, - "type": "object" - }, - "equinix:fabric/getRoutingProtocolOperation:getRoutingProtocolOperation": { - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getRoutingProtocolOperationError:getRoutingProtocolOperationError" - }, - "description": "Errors occurred\n" + "description": "The URI of the previous Route Filter Rule Change\n" + }, + "type": { + "type": "string", + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv4_PREFIX_FILTER_RULE_DELETION\",\"BGP_IPv6_PREFIX_FILTER_RULE_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_RULE_CREATION\",\"BGP_IPv6_PREFIX_FILTER_RULE_DELETION\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Unique identifier for the previous change\n" } }, "type": "object", "required": [ - "errors" + "href", + "type", + "uuid" ], "language": { "nodejs": { @@ -8009,44 +8372,71 @@ } } }, - "equinix:fabric/getRoutingProtocolOperationError:getRoutingProtocolOperationError": { + "equinix:fabric/getRouteFilterRulesDataChangeLog:getRouteFilterRulesDataChangeLog": { "properties": { - "additionalInfos": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getRoutingProtocolOperationErrorAdditionalInfo:getRoutingProtocolOperationErrorAdditionalInfo" - }, - "description": "Pricing error additional Info\n" - }, - "correlationId": { + "createdBy": { "type": "string", - "description": "CorrelationId\n" + "description": "Created by User Key\n" }, - "details": { + "createdByEmail": { "type": "string", - "description": "Details\n" + "description": "Created by User Email Address\n" }, - "errorCode": { + "createdByFullName": { "type": "string", - "description": "Error code\n" + "description": "Created by User Full Name\n" }, - "errorMessage": { + "createdDateTime": { "type": "string", - "description": "Error Message\n" + "description": "Created by Date and Time\n" }, - "help": { + "deletedBy": { "type": "string", - "description": "Help\n" + "description": "Deleted by User Key\n" + }, + "deletedByEmail": { + "type": "string", + "description": "Deleted by User Email Address\n" + }, + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" + }, + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" + }, + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" + }, + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" + }, + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" + }, + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" } }, "type": "object", "required": [ - "additionalInfos", - "correlationId", - "details", - "errorCode", - "errorMessage", - "help" + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" ], "language": { "nodejs": { @@ -8054,21 +8444,36 @@ } } }, - "equinix:fabric/getRoutingProtocolOperationErrorAdditionalInfo:getRoutingProtocolOperationErrorAdditionalInfo": { + "equinix:fabric/getRouteFilterRulesPagination:getRouteFilterRulesPagination": { "properties": { - "property": { + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" + }, + "next": { "type": "string", - "description": "Property at which the error potentially occurred\n" + "description": "URL relative to the last item in the response.\n" }, - "reason": { + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + }, + "previous": { "type": "string", - "description": "Reason for the error\n" + "description": "URL relative to the first item in the response.\n" + }, + "total": { + "type": "integer", + "description": "Total number of elements returned.\n" } }, "type": "object", "required": [ - "property", - "reason" + "limit", + "next", + "offset", + "previous", + "total" ], "language": { "nodejs": { @@ -8076,70 +8481,77 @@ } } }, - "equinix:fabric/getServiceProfileAccessPointTypeConfig:getServiceProfileAccessPointTypeConfig": { + "equinix:fabric/getRouteFiltersData:getRouteFiltersData": { "properties": { - "allowBandwidthAutoApproval": { - "type": "boolean", - "description": "Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller\n" - }, - "allowBandwidthUpgrade": { - "type": "boolean", - "description": "Availability of a bandwidth upgrade. The default is false\n" - }, - "allowCustomBandwidth": { - "type": "boolean", - "description": "Setting to enable or disable the ability of the buyer to customize the bandwidth\n" - }, - "allowRemoteConnections": { - "type": "boolean", - "description": "Setting to allow or prohibit remote connections to the service profile\n" - }, - "apiConfig": { - "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigApiConfig:getServiceProfileAccessPointTypeConfigApiConfig", - "description": "Api configuration details\n" + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersDataChangeLog:getRouteFiltersDataChangeLog" + } }, - "authenticationKey": { - "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigAuthenticationKey:getServiceProfileAccessPointTypeConfigAuthenticationKey", - "description": "Authentication key details\n" + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersDataChange:getRouteFiltersDataChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" }, - "bandwidthAlertThreshold": { - "type": "number", - "description": "Percentage of port bandwidth at which an allocation alert is generated\n" + "connectionsCount": { + "type": "integer", + "description": "The number of Fabric Connections that this Route Filter is attached to\n" }, - "connectionLabel": { + "description": { "type": "string", - "description": "Custom name for Connection\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, - "connectionRedundancyRequired": { - "type": "boolean", - "description": "Mandate redundant connections\n" + "href": { + "type": "string", + "description": "Route filter URI\n" }, - "enableAutoGenerateServiceKey": { - "type": "boolean", - "description": "Enable auto generate service key\n" + "name": { + "type": "string", + "description": "Name of the Route Filter\n" }, - "linkProtocolConfig": { - "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigLinkProtocolConfig:getServiceProfileAccessPointTypeConfigLinkProtocolConfig", - "description": "Link protocol configuration details\n" + "notMatchedRuleAction": { + "type": "string", + "description": "The action that will be taken on ip ranges that don't match the rules present within the Route Filter\n" }, - "supportedBandwidths": { + "projects": { "type": "array", "items": { - "type": "integer" + "$ref": "#/types/equinix:fabric/getRouteFiltersDataProject:getRouteFiltersDataProject" }, - "description": "Supported bandwidths\n" + "description": "The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to\n" + }, + "rulesCount": { + "type": "integer", + "description": "The number of Route Filter Rules attached to this Route Filter\n" + }, + "state": { + "type": "string", + "description": "State of the Route Filter in its lifecycle\n" }, "type": { "type": "string", - "description": "Type of access point type config - VD, COLO\n" + "description": "Route Filter Type. One of [ \"BGP_IPv4_PREFIX_FILTER\", \"BGP_IPv6_PREFIX_FILTER\" ]\n" }, "uuid": { "type": "string", - "description": "Colo/Port Uuid\n" + "description": "Equinix Assigned ID for Route Filter\n" } }, "type": "object", "required": [ + "changes", + "changeLogs", + "connectionsCount", + "description", + "href", + "name", + "notMatchedRuleAction", + "projects", + "rulesCount", + "state", "type", "uuid" ], @@ -8149,156 +8561,64 @@ } } }, - "equinix:fabric/getServiceProfileAccessPointTypeConfigApiConfig:getServiceProfileAccessPointTypeConfigApiConfig": { + "equinix:fabric/getRouteFiltersDataChange:getRouteFiltersDataChange": { "properties": { - "allowOverSubscription": { - "type": "boolean", - "description": "Setting showing that oversubscription support is available (true) or not (false). The default is false\n" - }, - "apiAvailable": { - "type": "boolean", - "description": "Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API.\n" - }, - "bandwidthFromApi": { - "type": "boolean", - "description": "Indicates if the connection bandwidth can be obtained directly from the cloud service provider.\n" - }, - "equinixManagedPort": { - "type": "boolean", - "description": "Setting indicating that the port is managed by Equinix (true) or not (false)\n" - }, - "equinixManagedVlan": { - "type": "boolean", - "description": "Setting indicating that the VLAN is managed by Equinix (true) or not (false)\n" - }, - "integrationId": { + "href": { "type": "string", - "description": "A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API.\n" + "description": "The URI of the previous Route Filter Change\n" }, - "overSubscriptionLimit": { - "type": "integer", - "description": "Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps.\n" - } - }, - "type": "object" - }, - "equinix:fabric/getServiceProfileAccessPointTypeConfigAuthenticationKey:getServiceProfileAccessPointTypeConfigAuthenticationKey": { - "properties": { - "description": { + "type": { "type": "string", - "description": "Description of authorization key\n" + "description": "Type of change. One of [ \"BGP_IPv4_PREFIX_FILTER_UPDATE\",\"BGP_IPv4_PREFIX_FILTER_CREATION\",\"BGP_IPv4_PREFIX_FILTER_DELETION\",\"BGP_IPv6_PREFIX_FILTER_UPDATE\",\"BGP_IPv6_PREFIX_FILTER_CREATION\",\"BGP_IPv6_PREFIX_FILTER_DELETION\" ]\n" }, - "label": { + "uuid": { "type": "string", - "description": "Name of the parameter that must be provided to authorize the connection.\n" - }, - "required": { - "type": "boolean", - "description": "Requirement to configure an authentication key.\n" + "description": "Unique identifier for the previous change\n" } }, - "type": "object" + "type": "object", + "required": [ + "href", + "type", + "uuid" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } }, - "equinix:fabric/getServiceProfileAccessPointTypeConfigLinkProtocolConfig:getServiceProfileAccessPointTypeConfigLinkProtocolConfig": { + "equinix:fabric/getRouteFiltersDataChangeLog:getRouteFiltersDataChangeLog": { "properties": { - "encapsulation": { + "createdBy": { "type": "string", - "description": "Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard.\n" + "description": "Created by User Key\n" }, - "encapsulationStrategy": { + "createdByEmail": { "type": "string", - "description": "Additional tagging information required by the seller profile.\n" + "description": "Created by User Email Address\n" }, - "reuseVlanSTag": { - "type": "boolean", - "description": "Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection.\n" - } - }, - "type": "object" - }, - "equinix:fabric/getServiceProfileAccount:getServiceProfileAccount": { - "properties": { - "accountName": { + "createdByFullName": { "type": "string", - "description": "Legal name of the accountholder.\n" - }, - "accountNumber": { - "type": "integer", - "description": "Equinix-assigned account number.\n" + "description": "Created by User Full Name\n" }, - "globalCustId": { + "createdDateTime": { "type": "string", - "description": "Equinix-assigned ID of the subscriber's parent organization.\n" + "description": "Created by Date and Time\n" }, - "globalOrgId": { + "deletedBy": { "type": "string", - "description": "Equinix-assigned ID of the subscriber's parent organization.\n" + "description": "Deleted by User Key\n" }, - "globalOrganizationName": { + "deletedByEmail": { "type": "string", - "description": "Equinix-assigned name of the subscriber's parent organization.\n" - }, - "orgId": { - "type": "integer", - "description": "Equinix-assigned ID of the subscriber's organization.\n" + "description": "Deleted by User Email Address\n" }, - "organizationName": { + "deletedByFullName": { "type": "string", - "description": "Equinix-assigned name of the subscriber's organization.\n" + "description": "Deleted by User Full Name\n" }, - "ucmId": { - "type": "string", - "description": "Enterprise datastore id\n" - } - }, - "type": "object", - "required": [ - "accountName", - "accountNumber", - "globalCustId", - "globalOrgId", - "globalOrganizationName", - "orgId", - "organizationName", - "ucmId" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:fabric/getServiceProfileChangeLog:getServiceProfileChangeLog": { - "properties": { - "createdBy": { - "type": "string", - "description": "Created by User Key\n" - }, - "createdByEmail": { - "type": "string", - "description": "Created by User Email Address\n" - }, - "createdByFullName": { - "type": "string", - "description": "Created by User Full Name\n" - }, - "createdDateTime": { - "type": "string", - "description": "Created by Date and Time\n" - }, - "deletedBy": { - "type": "string", - "description": "Deleted by User Key\n" - }, - "deletedByEmail": { - "type": "string", - "description": "Deleted by User Email Address\n" - }, - "deletedByFullName": { - "type": "string", - "description": "Deleted by User Full Name\n" - }, - "deletedDateTime": { + "deletedDateTime": { "type": "string", "description": "Deleted by Date and Time\n" }, @@ -8340,41 +8660,21 @@ } } }, - "equinix:fabric/getServiceProfileCustomField:getServiceProfileCustomField": { + "equinix:fabric/getRouteFiltersDataProject:getRouteFiltersDataProject": { "properties": { - "captureInEmail": { - "type": "boolean", - "description": "Required field\n" - }, - "dataType": { - "type": "string", - "description": "Data type\n" - }, - "description": { + "href": { "type": "string", - "description": "Description\n" + "description": "URI of the Fabric Project\n" }, - "label": { + "projectId": { "type": "string", - "description": "Label\n" - }, - "options": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Options\n" - }, - "required": { - "type": "boolean", - "description": "Required field\n" + "description": "Project id associated with Fabric Project\n" } }, "type": "object", "required": [ - "dataType", - "label", - "required" + "href", + "projectId" ], "language": { "nodejs": { @@ -8382,100 +8682,95 @@ } } }, - "equinix:fabric/getServiceProfileMarketingInfo:getServiceProfileMarketingInfo": { + "equinix:fabric/getRouteFiltersFilter:getRouteFiltersFilter": { "properties": { - "logo": { + "operator": { "type": "string", - "description": "Logo\n" + "description": "Possible operators to use on the filter property. Can be one of the following: [ \"=\", \"!=\", \"[NOT] LIKE\", \"[NOT] IN\", \"ILIKE\" ]\n" }, - "processSteps": { + "property": { + "type": "string", + "description": "The API response property which you want to filter your request on. Can be one of the following: \"/type\", \"/name\", \"/project/projectId\", \"/uuid\", \"/state\"\n" + }, + "values": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/getServiceProfileMarketingInfoProcessStep:getServiceProfileMarketingInfoProcessStep" + "type": "string" }, - "description": "Process Step\n" - }, - "promotion": { - "type": "boolean", - "description": "Promotion\n" + "description": "The values that you want to apply the property+operator combination to in order to filter your data search\n" } }, - "type": "object" + "type": "object", + "required": [ + "operator", + "property", + "values" + ] }, - "equinix:fabric/getServiceProfileMarketingInfoProcessStep:getServiceProfileMarketingInfoProcessStep": { + "equinix:fabric/getRouteFiltersPagination:getRouteFiltersPagination": { "properties": { - "description": { - "type": "string", - "description": "Description\n" + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" }, - "subTitle": { + "next": { "type": "string", - "description": "Sub Title\n" + "description": "URL relative to the last item in the response.\n" }, - "title": { + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + }, + "previous": { "type": "string", - "description": "Title\n" + "description": "URL relative to the first item in the response.\n" + }, + "total": { + "type": "integer", + "description": "Total number of elements returned.\n" } }, - "type": "object" + "type": "object", + "required": [ + "limit", + "next", + "offset", + "previous", + "total" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } }, - "equinix:fabric/getServiceProfileMetro:getServiceProfileMetro": { + "equinix:fabric/getRouteFiltersSort:getRouteFiltersSort": { "properties": { - "code": { - "type": "string", - "description": "Metro Code - Example SV\n" - }, - "displayName": { + "direction": { "type": "string", - "description": "Display Name\n" - }, - "ibxs": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IBX- Equinix International Business Exchange list\n" - }, - "inTrail": { - "type": "boolean", - "description": "In Trail\n" + "description": "The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC\n" }, - "name": { + "property": { "type": "string", - "description": "Metro Name\n" - }, - "sellerRegions": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Seller Regions\n" + "description": "The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime\n" } }, "type": "object" }, - "equinix:fabric/getServiceProfileNotification:getServiceProfileNotification": { + "equinix:fabric/getRoutingProtocolBfd:getRoutingProtocolBfd": { "properties": { - "emails": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Array of contact emails\n" - }, - "sendInterval": { - "type": "string", - "description": "Send interval\n" + "enabled": { + "type": "boolean", + "description": "Bidirectional Forwarding Detection enablement\n" }, - "type": { + "interval": { "type": "string", - "description": "Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS\n" + "description": "Interval range between the received BFD control packets\n" } }, "type": "object", "required": [ - "emails", - "type" + "enabled" ], "language": { "nodejs": { @@ -8483,37 +8778,40 @@ } } }, - "equinix:fabric/getServiceProfilePort:getServiceProfilePort": { + "equinix:fabric/getRoutingProtocolBgpIpv4:getRoutingProtocolBgpIpv4": { "properties": { - "crossConnectId": { + "customerPeerIp": { "type": "string", - "description": "Cross Connect Id\n" + "description": "Customer side peering ip\n" }, - "location": { - "$ref": "#/types/equinix:fabric/getServiceProfilePortLocation:getServiceProfilePortLocation", - "description": "Colo/Port Location\n" + "enabled": { + "type": "boolean", + "description": "Admin status for the BGP session\n" }, - "sellerRegion": { + "equinixPeerIp": { "type": "string", - "description": "Seller Region\n" + "description": "Equinix side peering ip\n" }, - "sellerRegionDescription": { - "type": "string", - "description": "Seller Region details\n" + "inboundMed": { + "type": "integer", + "description": "Inbound Multi Exit Discriminator attribute\n" }, - "type": { + "outboundAsPrependCount": { "type": "string", - "description": "Colo/Port Type\n" + "description": "AS path prepend count. One of: 0, 1, 3, 5\n" }, - "uuid": { - "type": "string", - "description": "Colo/Port Uuid\n" + "outboundMed": { + "type": "integer", + "description": "Outbound Multi Exit Discriminator attribute\n" } }, "type": "object", "required": [ - "type", - "uuid" + "customerPeerIp", + "equinixPeerIp", + "inboundMed", + "outboundAsPrependCount", + "outboundMed" ], "language": { "nodejs": { @@ -8521,31 +8819,40 @@ } } }, - "equinix:fabric/getServiceProfilePortLocation:getServiceProfilePortLocation": { + "equinix:fabric/getRoutingProtocolBgpIpv6:getRoutingProtocolBgpIpv6": { "properties": { - "ibx": { + "customerPeerIp": { "type": "string", - "description": "IBX Code\n" + "description": "Customer side peering ip\n" }, - "metroCode": { - "type": "string", - "description": "Access point metro code\n" + "enabled": { + "type": "boolean", + "description": "Admin status for the BGP session\n" }, - "metroName": { + "equinixPeerIp": { "type": "string", - "description": "Access point metro name\n" + "description": "Equinix side peering ip\n" }, - "region": { + "inboundMed": { + "type": "integer", + "description": "Inbound Multi Exit Discriminator attribute\n" + }, + "outboundAsPrependCount": { "type": "string", - "description": "Access point region\n" + "description": "AS path prepend count. One of: 0, 1, 3, 5\n" + }, + "outboundMed": { + "type": "integer", + "description": "Outbound Multi Exit Discriminator attribute\n" } }, "type": "object", "required": [ - "ibx", - "metroCode", - "metroName", - "region" + "customerPeerIp", + "equinixPeerIp", + "inboundMed", + "outboundAsPrependCount", + "outboundMed" ], "language": { "nodejs": { @@ -8553,21 +8860,26 @@ } } }, - "equinix:fabric/getServiceProfileProject:getServiceProfileProject": { + "equinix:fabric/getRoutingProtocolChange:getRoutingProtocolChange": { "properties": { "href": { "type": "string", - "description": "Unique Resource URL\n" + "description": "Routing Protocol Change URI\n" }, - "projectId": { + "type": { "type": "string", - "description": "Project Id\n" + "description": "Type of change\n" + }, + "uuid": { + "type": "string", + "description": "Uniquely identifies a change\n" } }, "type": "object", "required": [ "href", - "projectId" + "type", + "uuid" ], "language": { "nodejs": { @@ -8575,29 +8887,71 @@ } } }, - "equinix:fabric/getServiceProfileVirtualDevice:getServiceProfileVirtualDevice": { + "equinix:fabric/getRoutingProtocolChangeLog:getRoutingProtocolChangeLog": { "properties": { - "interfaceUuid": { + "createdBy": { "type": "string", - "description": "Device Interface Uuid\n" + "description": "Created by User Key\n" }, - "location": { - "$ref": "#/types/equinix:fabric/getServiceProfileVirtualDeviceLocation:getServiceProfileVirtualDeviceLocation", - "description": "Device Location\n" + "createdByEmail": { + "type": "string", + "description": "Created by User Email Address\n" }, - "type": { + "createdByFullName": { "type": "string", - "description": "Virtual Device Type\n" + "description": "Created by User Full Name\n" }, - "uuid": { + "createdDateTime": { "type": "string", - "description": "Virtual Device Uuid\n" + "description": "Created by Date and Time\n" + }, + "deletedBy": { + "type": "string", + "description": "Deleted by User Key\n" + }, + "deletedByEmail": { + "type": "string", + "description": "Deleted by User Email Address\n" + }, + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" + }, + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" + }, + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" + }, + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" + }, + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" + }, + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" } }, "type": "object", "required": [ - "type", - "uuid" + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" ], "language": { "nodejs": { @@ -8605,31 +8959,16 @@ } } }, - "equinix:fabric/getServiceProfileVirtualDeviceLocation:getServiceProfileVirtualDeviceLocation": { + "equinix:fabric/getRoutingProtocolDirectIpv4:getRoutingProtocolDirectIpv4": { "properties": { - "ibx": { - "type": "string", - "description": "IBX Code\n" - }, - "metroCode": { - "type": "string", - "description": "Access point metro code\n" - }, - "metroName": { - "type": "string", - "description": "Access point metro name\n" - }, - "region": { + "equinixIfaceIp": { "type": "string", - "description": "Access point region\n" + "description": "Equinix side Interface IP address\n" } }, "type": "object", "required": [ - "ibx", - "metroCode", - "metroName", - "region" + "equinixIfaceIp" ], "language": { "nodejs": { @@ -8637,152 +8976,73 @@ } } }, - "equinix:fabric/getServiceProfilesDatum:getServiceProfilesDatum": { + "equinix:fabric/getRoutingProtocolDirectIpv6:getRoutingProtocolDirectIpv6": { "properties": { - "accessPointTypeConfigs": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfig:getServiceProfilesDatumAccessPointTypeConfig" - }, - "description": "Access point config information\n" - }, - "accounts": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccount:getServiceProfilesDatumAccount" - }, - "description": "Service Profile Owner Account Information\n" - }, - "allowedEmails": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Array of contact emails\n" - }, - "changeLogs": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumChangeLog:getServiceProfilesDatumChangeLog" - }, - "description": "Captures connection lifecycle change information\n" - }, - "customFields": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumCustomField:getServiceProfilesDatumCustomField" - }, - "description": "Custom Fields\n" - }, - "description": { - "type": "string", - "description": "User-provided service description\n" - }, - "href": { - "type": "string", - "description": "Service Profile URI response attribute\n" - }, - "marketingInfos": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMarketingInfo:getServiceProfilesDatumMarketingInfo" - }, - "description": "Marketing Info\n" - }, - "metros": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMetro:getServiceProfilesDatumMetro" - }, - "description": "Access point config information\n" - }, - "name": { + "equinixIfaceIp": { "type": "string", - "description": "Customer-assigned service profile name\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumNotification:getServiceProfilesDatumNotification" - }, - "description": "Preferences for notifications on connection configuration or status changes\n" - }, - "ports": { + "description": "Equinix side Interface IP address\n" + } + }, + "type": "object" + }, + "equinix:fabric/getRoutingProtocolOperation:getRoutingProtocolOperation": { + "properties": { + "errors": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumPort:getServiceProfilesDatumPort" + "$ref": "#/types/equinix:fabric/getRoutingProtocolOperationError:getRoutingProtocolOperationError" }, - "description": "Ports\n" - }, - "projects": { + "description": "Errors occurred\n" + } + }, + "type": "object", + "required": [ + "errors" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getRoutingProtocolOperationError:getRoutingProtocolOperationError": { + "properties": { + "additionalInfos": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumProject:getServiceProfilesDatumProject" + "$ref": "#/types/equinix:fabric/getRoutingProtocolOperationErrorAdditionalInfo:getRoutingProtocolOperationErrorAdditionalInfo" }, - "description": "Project information\n" - }, - "selfProfile": { - "type": "boolean", - "description": "Self Profile indicating if the profile is created for customer's self use\n" + "description": "Pricing error additional Info\n" }, - "state": { + "correlationId": { "type": "string", - "description": "Service profile state - ACTIVE, PENDING_APPROVAL, DELETED, REJECTED\n" - }, - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Tags attached to the connection\n" + "description": "CorrelationId\n" }, - "type": { + "details": { "type": "string", - "description": "Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE\n" + "description": "Details\n" }, - "uuid": { + "errorCode": { "type": "string", - "description": "Equinix assigned service profile identifier\n" + "description": "Error code\n" }, - "viewPoint": { + "errorMessage": { "type": "string", - "description": "Flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSide\n" - }, - "virtualDevices": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumVirtualDevice:getServiceProfilesDatumVirtualDevice" - }, - "description": "Virtual Devices\n" + "description": "Error Message\n" }, - "visibility": { + "help": { "type": "string", - "description": "Service profile visibility - PUBLIC, PRIVATE\n" + "description": "Help\n" } }, "type": "object", "required": [ - "accessPointTypeConfigs", - "accounts", - "allowedEmails", - "changeLogs", - "customFields", - "description", - "href", - "marketingInfos", - "metros", - "name", - "notifications", - "ports", - "projects", - "selfProfile", - "state", - "tags", - "type", - "uuid", - "viewPoint", - "virtualDevices", - "visibility" + "additionalInfos", + "correlationId", + "details", + "errorCode", + "errorMessage", + "help" ], "language": { "nodejs": { @@ -8790,7 +9050,29 @@ } } }, - "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfig:getServiceProfilesDatumAccessPointTypeConfig": { + "equinix:fabric/getRoutingProtocolOperationErrorAdditionalInfo:getRoutingProtocolOperationErrorAdditionalInfo": { + "properties": { + "property": { + "type": "string", + "description": "Property at which the error potentially occurred\n" + }, + "reason": { + "type": "string", + "description": "Reason for the error\n" + } + }, + "type": "object", + "required": [ + "property", + "reason" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfileAccessPointTypeConfig:getServiceProfileAccessPointTypeConfig": { "properties": { "allowBandwidthAutoApproval": { "type": "boolean", @@ -8809,11 +9091,11 @@ "description": "Setting to allow or prohibit remote connections to the service profile\n" }, "apiConfig": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigApiConfig:getServiceProfilesDatumAccessPointTypeConfigApiConfig", + "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigApiConfig:getServiceProfileAccessPointTypeConfigApiConfig", "description": "Api configuration details\n" }, "authenticationKey": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey:getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey", + "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigAuthenticationKey:getServiceProfileAccessPointTypeConfigAuthenticationKey", "description": "Authentication key details\n" }, "bandwidthAlertThreshold": { @@ -8833,7 +9115,7 @@ "description": "Enable auto generate service key\n" }, "linkProtocolConfig": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig:getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig", + "$ref": "#/types/equinix:fabric/getServiceProfileAccessPointTypeConfigLinkProtocolConfig:getServiceProfileAccessPointTypeConfigLinkProtocolConfig", "description": "Link protocol configuration details\n" }, "supportedBandwidths": { @@ -8863,7 +9145,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigApiConfig:getServiceProfilesDatumAccessPointTypeConfigApiConfig": { + "equinix:fabric/getServiceProfileAccessPointTypeConfigApiConfig:getServiceProfileAccessPointTypeConfigApiConfig": { "properties": { "allowOverSubscription": { "type": "boolean", @@ -8896,7 +9178,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey:getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey": { + "equinix:fabric/getServiceProfileAccessPointTypeConfigAuthenticationKey:getServiceProfileAccessPointTypeConfigAuthenticationKey": { "properties": { "description": { "type": "string", @@ -8913,7 +9195,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig:getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig": { + "equinix:fabric/getServiceProfileAccessPointTypeConfigLinkProtocolConfig:getServiceProfileAccessPointTypeConfigLinkProtocolConfig": { "properties": { "encapsulation": { "type": "string", @@ -8930,7 +9212,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumAccount:getServiceProfilesDatumAccount": { + "equinix:fabric/getServiceProfileAccount:getServiceProfileAccount": { "properties": { "accountName": { "type": "string", @@ -8982,7 +9264,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumChangeLog:getServiceProfilesDatumChangeLog": { + "equinix:fabric/getServiceProfileChangeLog:getServiceProfileChangeLog": { "properties": { "createdBy": { "type": "string", @@ -9054,7 +9336,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumCustomField:getServiceProfilesDatumCustomField": { + "equinix:fabric/getServiceProfileCustomField:getServiceProfileCustomField": { "properties": { "captureInEmail": { "type": "boolean", @@ -9096,7 +9378,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumMarketingInfo:getServiceProfilesDatumMarketingInfo": { + "equinix:fabric/getServiceProfileMarketingInfo:getServiceProfileMarketingInfo": { "properties": { "logo": { "type": "string", @@ -9105,7 +9387,7 @@ "processSteps": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMarketingInfoProcessStep:getServiceProfilesDatumMarketingInfoProcessStep" + "$ref": "#/types/equinix:fabric/getServiceProfileMarketingInfoProcessStep:getServiceProfileMarketingInfoProcessStep" }, "description": "Process Step\n" }, @@ -9116,7 +9398,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumMarketingInfoProcessStep:getServiceProfilesDatumMarketingInfoProcessStep": { + "equinix:fabric/getServiceProfileMarketingInfoProcessStep:getServiceProfileMarketingInfoProcessStep": { "properties": { "description": { "type": "string", @@ -9133,7 +9415,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumMetro:getServiceProfilesDatumMetro": { + "equinix:fabric/getServiceProfileMetro:getServiceProfileMetro": { "properties": { "code": { "type": "string", @@ -9168,7 +9450,7 @@ }, "type": "object" }, - "equinix:fabric/getServiceProfilesDatumNotification:getServiceProfilesDatumNotification": { + "equinix:fabric/getServiceProfileNotification:getServiceProfileNotification": { "properties": { "emails": { "type": "array", @@ -9197,14 +9479,14 @@ } } }, - "equinix:fabric/getServiceProfilesDatumPort:getServiceProfilesDatumPort": { + "equinix:fabric/getServiceProfilePort:getServiceProfilePort": { "properties": { "crossConnectId": { "type": "string", "description": "Cross Connect Id\n" }, "location": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumPortLocation:getServiceProfilesDatumPortLocation", + "$ref": "#/types/equinix:fabric/getServiceProfilePortLocation:getServiceProfilePortLocation", "description": "Colo/Port Location\n" }, "sellerRegion": { @@ -9235,7 +9517,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumPortLocation:getServiceProfilesDatumPortLocation": { + "equinix:fabric/getServiceProfilePortLocation:getServiceProfilePortLocation": { "properties": { "ibx": { "type": "string", @@ -9267,7 +9549,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumProject:getServiceProfilesDatumProject": { + "equinix:fabric/getServiceProfileProject:getServiceProfileProject": { "properties": { "href": { "type": "string", @@ -9289,14 +9571,14 @@ } } }, - "equinix:fabric/getServiceProfilesDatumVirtualDevice:getServiceProfilesDatumVirtualDevice": { + "equinix:fabric/getServiceProfileVirtualDevice:getServiceProfileVirtualDevice": { "properties": { "interfaceUuid": { "type": "string", "description": "Device Interface Uuid\n" }, "location": { - "$ref": "#/types/equinix:fabric/getServiceProfilesDatumVirtualDeviceLocation:getServiceProfilesDatumVirtualDeviceLocation", + "$ref": "#/types/equinix:fabric/getServiceProfileVirtualDeviceLocation:getServiceProfileVirtualDeviceLocation", "description": "Device Location\n" }, "type": { @@ -9319,7 +9601,7 @@ } } }, - "equinix:fabric/getServiceProfilesDatumVirtualDeviceLocation:getServiceProfilesDatumVirtualDeviceLocation": { + "equinix:fabric/getServiceProfileVirtualDeviceLocation:getServiceProfileVirtualDeviceLocation": { "properties": { "ibx": { "type": "string", @@ -9351,1084 +9633,1120 @@ } } }, - "equinix:fabric/getServiceProfilesFilter:getServiceProfilesFilter": { + "equinix:fabric/getServiceProfilesDatum:getServiceProfilesDatum": { "properties": { - "operator": { - "type": "string", - "description": "Operators to use on your filtered field with the values given. One of [=]\n" + "accessPointTypeConfigs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfig:getServiceProfilesDatumAccessPointTypeConfig" + }, + "description": "Access point config information\n" }, - "property": { - "type": "string", - "description": "Property to apply operator and values to. One of [/name /uuid /state /metros/code /visibility /type /project/projectId]\n" + "accounts": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccount:getServiceProfilesDatumAccount" + }, + "description": "Service Profile Owner Account Information\n" }, - "values": { + "allowedEmails": { "type": "array", "items": { "type": "string" }, - "description": "The values that you want to apply the property+operator combination to in order to filter your data search\n" - } - }, - "type": "object", - "required": [ - "operator", - "property", - "values" - ] - }, - "equinix:fabric/getServiceProfilesPagination:getServiceProfilesPagination": { - "properties": { - "limit": { - "type": "integer", - "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" + "description": "Array of contact emails\n" }, - "offset": { - "type": "integer", - "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" - } - }, - "type": "object" - }, - "equinix:fabric/getServiceProfilesSort:getServiceProfilesSort": { - "properties": { - "direction": { + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumChangeLog:getServiceProfilesDatumChangeLog" + }, + "description": "Captures connection lifecycle change information\n" + }, + "customFields": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumCustomField:getServiceProfilesDatumCustomField" + }, + "description": "Custom Fields\n" + }, + "description": { "type": "string", - "description": "The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC\n" + "description": "User-provided service description\n" }, - "property": { + "href": { "type": "string", - "description": "The property name to use in sorting. One of [/name /uuid /state /location/metroCode /location/metroName /package/code /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime\n" - } - }, - "type": "object" - }, - "equinix:fabric/notificationsType:NotificationsType": { - "type": "string", - "enum": [ - { - "name": "All", - "value": "ALL" + "description": "Service Profile URI response attribute\n" }, - { - "name": "ConnectionApproval", - "value": "CONNECTION_APPROVAL" + "marketingInfos": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMarketingInfo:getServiceProfilesDatumMarketingInfo" + }, + "description": "Marketing Info\n" }, - { - "name": "SalesNotifications", - "value": "SALES_REP_NOTIFICATIONS" + "metros": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMetro:getServiceProfilesDatumMetro" + }, + "description": "Access point config information\n" }, - { - "name": "Notifications", - "value": "NOTIFICATIONS" - } - ] - }, - "equinix:fabric/profileAccessPointType:ProfileAccessPointType": { - "type": "string", - "enum": [ - { - "name": "Colo", - "description": "Colocation", - "value": "COLO" + "name": { + "type": "string", + "description": "Customer-assigned service profile name\n" }, - { - "name": "VD", - "description": "Virtual Device", - "value": "VD" - } - ] - }, - "equinix:fabric/profileState:ProfileState": { - "type": "string", - "enum": [ - { - "name": "Active", - "value": "ACTIVE" + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumNotification:getServiceProfilesDatumNotification" + }, + "description": "Preferences for notifications on connection configuration or status changes\n" }, - { - "name": "PendingApproval", - "value": "PENDING_APPROVAL" + "ports": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumPort:getServiceProfilesDatumPort" + }, + "description": "Ports\n" }, - { - "name": "Deleted", - "value": "DELETED" + "projects": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumProject:getServiceProfilesDatumProject" + }, + "description": "Project information\n" }, - { - "name": "Rejected", - "value": "REJECTED" - } - ] - }, - "equinix:fabric/profileType:ProfileType": { - "type": "string", - "enum": [ - { - "name": "L2Profile", - "value": "L2_PROFILE" + "selfProfile": { + "type": "boolean", + "description": "Self Profile indicating if the profile is created for customer's self use\n" }, - { - "name": "L3Profile", - "value": "L3_PROFILE" - } - ] - }, - "equinix:fabric/profileVisibility:ProfileVisibility": { - "type": "string", - "enum": [ - { - "name": "Public", - "value": "PUBLIC" + "state": { + "type": "string", + "description": "Service profile state - ACTIVE, PENDING_APPROVAL, DELETED, REJECTED\n" }, - { - "name": "Private", - "value": "PRIVATE" - } - ] - }, - "equinix:fabric/serviceTokenType:ServiceTokenType": { - "type": "string", - "enum": [ - { - "name": "VCToken", - "value": "VC_TOKEN" - } - ] - }, - "equinix:index/metro:Metro": { - "type": "string", - "enum": [ - { - "name": "Amsterdam", - "value": "AM" + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Tags attached to the connection\n" }, - { - "name": "Ashburn", - "value": "DC" + "type": { + "type": "string", + "description": "Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE\n" }, - { - "name": "Atlanta", - "value": "AT" + "uuid": { + "type": "string", + "description": "Equinix assigned service profile identifier\n" }, - { - "name": "Barcelona", - "value": "BA" + "viewPoint": { + "type": "string", + "description": "Flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSide\n" }, - { - "name": "Bogota", - "value": "BG" + "virtualDevices": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumVirtualDevice:getServiceProfilesDatumVirtualDevice" + }, + "description": "Virtual Devices\n" }, - { - "name": "Bordeaux", - "value": "BX" + "visibility": { + "type": "string", + "description": "Service profile visibility - PUBLIC, PRIVATE\n" + } + }, + "type": "object", + "required": [ + "accessPointTypeConfigs", + "accounts", + "allowedEmails", + "changeLogs", + "customFields", + "description", + "href", + "marketingInfos", + "metros", + "name", + "notifications", + "ports", + "projects", + "selfProfile", + "state", + "tags", + "type", + "uuid", + "viewPoint", + "virtualDevices", + "visibility" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfig:getServiceProfilesDatumAccessPointTypeConfig": { + "properties": { + "allowBandwidthAutoApproval": { + "type": "boolean", + "description": "Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller\n" }, - { - "name": "Boston", - "value": "BO" + "allowBandwidthUpgrade": { + "type": "boolean", + "description": "Availability of a bandwidth upgrade. The default is false\n" }, - { - "name": "Brussels", - "value": "BL" + "allowCustomBandwidth": { + "type": "boolean", + "description": "Setting to enable or disable the ability of the buyer to customize the bandwidth\n" }, - { - "name": "Calgary", - "value": "CL" + "allowRemoteConnections": { + "type": "boolean", + "description": "Setting to allow or prohibit remote connections to the service profile\n" }, - { - "name": "Canberra", - "value": "CA" + "apiConfig": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigApiConfig:getServiceProfilesDatumAccessPointTypeConfigApiConfig", + "description": "Api configuration details\n" }, - { - "name": "Chicago", - "value": "CH" + "authenticationKey": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey:getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey", + "description": "Authentication key details\n" }, - { - "name": "Dallas", - "value": "DA" + "bandwidthAlertThreshold": { + "type": "number", + "description": "Percentage of port bandwidth at which an allocation alert is generated\n" }, - { - "name": "Denver", - "value": "DE" + "connectionLabel": { + "type": "string", + "description": "Custom name for Connection\n" }, - { - "name": "Dubai", - "value": "DX" + "connectionRedundancyRequired": { + "type": "boolean", + "description": "Mandate redundant connections\n" }, - { - "name": "Dublin", - "value": "DB" + "enableAutoGenerateServiceKey": { + "type": "boolean", + "description": "Enable auto generate service key\n" }, - { - "name": "Frankfurt", - "value": "FR" + "linkProtocolConfig": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig:getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig", + "description": "Link protocol configuration details\n" }, - { - "name": "Geneva", - "value": "GV" + "supportedBandwidths": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Supported bandwidths\n" }, - { - "name": "Hamburg", - "value": "HH" + "type": { + "type": "string", + "description": "Type of access point type config - VD, COLO\n" }, - { - "name": "Helsinki", - "value": "HE" + "uuid": { + "type": "string", + "description": "Colo/Port Uuid\n" + } + }, + "type": "object", + "required": [ + "type", + "uuid" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigApiConfig:getServiceProfilesDatumAccessPointTypeConfigApiConfig": { + "properties": { + "allowOverSubscription": { + "type": "boolean", + "description": "Setting showing that oversubscription support is available (true) or not (false). The default is false\n" }, - { - "name": "HongKong", - "value": "HK" + "apiAvailable": { + "type": "boolean", + "description": "Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API.\n" }, - { - "name": "Istanbul", - "value": "IL" + "bandwidthFromApi": { + "type": "boolean", + "description": "Indicates if the connection bandwidth can be obtained directly from the cloud service provider.\n" }, - { - "name": "Kamloops", - "value": "KA" + "equinixManagedPort": { + "type": "boolean", + "description": "Setting indicating that the port is managed by Equinix (true) or not (false)\n" }, - { - "name": "Lisbon", - "value": "LS" + "equinixManagedVlan": { + "type": "boolean", + "description": "Setting indicating that the VLAN is managed by Equinix (true) or not (false)\n" }, - { - "name": "London", - "value": "LD" + "integrationId": { + "type": "string", + "description": "A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API.\n" }, - { - "name": "LosAngeles", - "value": "LA" + "overSubscriptionLimit": { + "type": "integer", + "description": "Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps.\n" + } + }, + "type": "object" + }, + "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey:getServiceProfilesDatumAccessPointTypeConfigAuthenticationKey": { + "properties": { + "description": { + "type": "string", + "description": "Description of authorization key\n" }, - { - "name": "Madrid", - "value": "MD" - }, - { - "name": "Manchester", - "value": "MA" - }, - { - "name": "Melbourne", - "value": "ME" - }, - { - "name": "MexicoCity", - "value": "MX" - }, - { - "name": "Miami", - "value": "MI" - }, - { - "name": "Milan", - "value": "ML" - }, - { - "name": "Montreal", - "value": "MT" - }, - { - "name": "Mumbai", - "value": "MB" - }, - { - "name": "Munich", - "value": "MU" - }, - { - "name": "NewYork", - "value": "NY" - }, - { - "name": "Osaka", - "value": "OS" - }, - { - "name": "Paris", - "value": "PA" - }, - { - "name": "Perth", - "value": "PE" - }, - { - "name": "Philadelphia", - "value": "PH" - }, - { - "name": "RioDeJaneiro", - "value": "RJ" - }, - { - "name": "SaoPaulo", - "value": "SP" - }, - { - "name": "Seattle", - "value": "SE" - }, - { - "name": "Seoul", - "value": "SL" - }, - { - "name": "SiliconValley", - "value": "SV" - }, - { - "name": "Singapore", - "value": "SG" - }, - { - "name": "Sofia", - "value": "SO" - }, - { - "name": "Stockholm", - "value": "SK" - }, - { - "name": "Sydney", - "value": "SY" - }, - { - "name": "Tokyo", - "value": "TY" - }, - { - "name": "Toronto", - "value": "TR" - }, - { - "name": "Vancouver", - "value": "VA" - }, - { - "name": "Warsaw", - "value": "WA" - }, - { - "name": "Winnipeg", - "value": "WI" + "label": { + "type": "string", + "description": "Name of the parameter that must be provided to authorize the connection.\n" }, - { - "name": "Zurich", - "value": "ZH" - } - ] - }, - "equinix:metal/DeviceBehavior:DeviceBehavior": { - "properties": { - "allowChanges": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of attributes that are allowed to change without recreating the instance. Supported attributes: `custom_data`, `user_data`\n" + "required": { + "type": "boolean", + "description": "Requirement to configure an authentication key.\n" } }, "type": "object" }, - "equinix:metal/DeviceIpAddress:DeviceIpAddress": { + "equinix:fabric/getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig:getServiceProfilesDatumAccessPointTypeConfigLinkProtocolConfig": { "properties": { - "cidr": { - "type": "integer", - "description": "CIDR suffix for IP block assigned to this device\n" - }, - "reservationIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IDs of reservations to pick the blocks from\n" + "encapsulation": { + "type": "string", + "description": "Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard.\n" }, - "type": { + "encapsulationStrategy": { "type": "string", - "description": "one of public*ipv4,private*ipv4,public_ipv6\n" + "description": "Additional tagging information required by the seller profile.\n" + }, + "reuseVlanSTag": { + "type": "boolean", + "description": "Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection.\n" } }, - "type": "object", - "required": [ - "type" - ] + "type": "object" }, - "equinix:metal/DeviceNetwork:DeviceNetwork": { + "equinix:fabric/getServiceProfilesDatumAccount:getServiceProfilesDatumAccount": { "properties": { - "address": { + "accountName": { "type": "string", - "description": "IPv4 or IPv6 address string\n" + "description": "Legal name of the accountholder.\n" }, - "cidr": { + "accountNumber": { "type": "integer", - "description": "CIDR suffix for IP address block to be assigned, i.e. amount of addresses\n" + "description": "Equinix-assigned account number.\n" }, - "family": { + "globalCustId": { + "type": "string", + "description": "Equinix-assigned ID of the subscriber's parent organization.\n" + }, + "globalOrgId": { + "type": "string", + "description": "Equinix-assigned ID of the subscriber's parent organization.\n" + }, + "globalOrganizationName": { + "type": "string", + "description": "Equinix-assigned name of the subscriber's parent organization.\n" + }, + "orgId": { "type": "integer", - "description": "IP version - \"4\" or \"6\"\n" + "description": "Equinix-assigned ID of the subscriber's organization.\n" }, - "gateway": { + "organizationName": { "type": "string", - "description": "Address of router\n" + "description": "Equinix-assigned name of the subscriber's organization.\n" }, - "public": { - "type": "boolean", - "description": "Whether the address is routable from the Internet\n" + "ucmId": { + "type": "string", + "description": "Enterprise datastore id\n" } }, "type": "object", + "required": [ + "accountName", + "accountNumber", + "globalCustId", + "globalOrgId", + "globalOrganizationName", + "orgId", + "organizationName", + "ucmId" + ], "language": { "nodejs": { - "requiredOutputs": [ - "address", - "cidr", - "family", - "gateway", - "public" - ] + "requiredInputs": [] } } }, - "equinix:metal/DevicePort:DevicePort": { + "equinix:fabric/getServiceProfilesDatumChangeLog:getServiceProfilesDatumChangeLog": { "properties": { - "bonded": { - "type": "boolean", - "description": "Whether this port is part of a bond in bonded network setup\n" + "createdBy": { + "type": "string", + "description": "Created by User Key\n" }, - "id": { + "createdByEmail": { "type": "string", - "description": "The ID of the device\n" + "description": "Created by User Email Address\n" }, - "mac": { + "createdByFullName": { "type": "string", - "description": "MAC address assigned to the port\n" + "description": "Created by User Full Name\n" }, - "name": { + "createdDateTime": { "type": "string", - "description": "Name of the port (e.g. eth0, or bond0)\n" + "description": "Created by Date and Time\n" }, - "type": { + "deletedBy": { "type": "string", - "description": "One of [private_ipv4, public_ipv4, public_ipv6]\n" - } - }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "bonded", - "id", - "mac", - "name", - "type" - ] - } - } - }, - "equinix:metal/DeviceReinstall:DeviceReinstall": { - "properties": { - "deprovisionFast": { - "type": "boolean", - "description": "Whether the OS disk should be filled with `00h` bytes before reinstall\n" + "description": "Deleted by User Key\n" }, - "enabled": { - "type": "boolean", - "description": "Whether the device should be reinstalled instead of destroyed\n" - }, - "preserveData": { - "type": "boolean", - "description": "Whether the non-OS disks should be kept or wiped during reinstall\n" - } - }, - "type": "object" - }, - "equinix:metal/GatewayTimeouts:GatewayTimeouts": { - "properties": { - "delete": { + "deletedByEmail": { "type": "string", - "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n" - } - }, - "type": "object" - }, - "equinix:metal/InterconnectionPort:InterconnectionPort": { - "properties": { - "id": { - "type": "string" + "description": "Deleted by User Email Address\n" }, - "linkStatus": { - "type": "string" + "deletedByFullName": { + "type": "string", + "description": "Deleted by User Full Name\n" }, - "name": { - "type": "string" + "deletedDateTime": { + "type": "string", + "description": "Deleted by Date and Time\n" }, - "role": { - "type": "string" + "updatedBy": { + "type": "string", + "description": "Updated by User Key\n" }, - "speed": { - "type": "integer" + "updatedByEmail": { + "type": "string", + "description": "Updated by User Email Address\n" }, - "status": { - "type": "string" + "updatedByFullName": { + "type": "string", + "description": "Updated by User Full Name\n" }, - "virtualCircuitIds": { - "type": "array", - "items": { - "type": "string" - } + "updatedDateTime": { + "type": "string", + "description": "Updated by Date and Time\n" } }, "type": "object", "required": [ - "id", - "linkStatus", - "name", - "role", - "speed", - "status", - "virtualCircuitIds" - ] + "createdBy", + "createdByEmail", + "createdByFullName", + "createdDateTime", + "deletedBy", + "deletedByEmail", + "deletedByFullName", + "deletedDateTime", + "updatedBy", + "updatedByEmail", + "updatedByFullName", + "updatedDateTime" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } }, - "equinix:metal/InterconnectionServiceToken:InterconnectionServiceToken": { + "equinix:fabric/getServiceProfilesDatumCustomField:getServiceProfilesDatumCustomField": { "properties": { - "expiresAt": { - "type": "string" + "captureInEmail": { + "type": "boolean", + "description": "Required field\n" }, - "id": { - "type": "string" + "dataType": { + "type": "string", + "description": "Data type\n" }, - "maxAllowedSpeed": { - "type": "string" + "description": { + "type": "string", + "description": "Description\n" }, - "role": { - "type": "string" + "label": { + "type": "string", + "description": "Label\n" }, - "state": { - "type": "string" + "options": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Options\n" }, - "type": { - "type": "string" + "required": { + "type": "boolean", + "description": "Required field\n" } }, "type": "object", "required": [ - "expiresAt", - "id", - "maxAllowedSpeed", - "role", - "state", - "type" - ] + "dataType", + "label", + "required" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } }, - "equinix:metal/OrganizationAddress:OrganizationAddress": { + "equinix:fabric/getServiceProfilesDatumMarketingInfo:getServiceProfilesDatumMarketingInfo": { "properties": { - "address": { + "logo": { "type": "string", - "description": "Postal address.\n" + "description": "Logo\n" }, - "city": { - "type": "string", - "description": "City name.\n" + "processSteps": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumMarketingInfoProcessStep:getServiceProfilesDatumMarketingInfoProcessStep" + }, + "description": "Process Step\n" }, - "country": { + "promotion": { + "type": "boolean", + "description": "Promotion\n" + } + }, + "type": "object" + }, + "equinix:fabric/getServiceProfilesDatumMarketingInfoProcessStep:getServiceProfilesDatumMarketingInfoProcessStep": { + "properties": { + "description": { "type": "string", - "description": "Two letter country code (ISO 3166-1 alpha-2), e.g. US.\n" + "description": "Description\n" }, - "state": { + "subTitle": { "type": "string", - "description": "State name.\n" + "description": "Sub Title\n" }, - "zipCode": { + "title": { "type": "string", - "description": "Zip Code.\n" + "description": "Title\n" } }, - "type": "object", - "required": [ - "address", - "city", - "country", - "zipCode" - ], - "language": { - "nodejs": { - "requiredOutputs": [ - "address", - "city", - "country", - "state", - "zipCode" - ] - } - } + "type": "object" }, - "equinix:metal/ProjectBgpConfig:ProjectBgpConfig": { + "equinix:fabric/getServiceProfilesDatumMetro:getServiceProfilesDatumMetro": { "properties": { - "asn": { - "type": "integer", - "description": "Autonomous System Number for local BGP deployment.\n" + "code": { + "type": "string", + "description": "Metro Code - Example SV\n" }, - "deploymentType": { + "displayName": { "type": "string", - "description": "`local` or `global`, the `local` is likely to be usable immediately, the `global` will need to be reviewed by Equinix Metal engineers.\n" + "description": "Display Name\n" }, - "maxPrefix": { - "type": "integer", - "description": "The maximum number of route filters allowed per server.\n" + "ibxs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IBX- Equinix International Business Exchange list\n" }, - "md5": { + "inTrail": { + "type": "boolean", + "description": "In Trail\n" + }, + "name": { "type": "string", - "description": "Password for BGP session in plaintext (not a checksum).\n", - "secret": true + "description": "Metro Name\n" }, - "status": { + "sellerRegions": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Seller Regions\n" + } + }, + "type": "object" + }, + "equinix:fabric/getServiceProfilesDatumNotification:getServiceProfilesDatumNotification": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of contact emails\n" + }, + "sendInterval": { "type": "string", - "description": "status of BGP configuration in the project.\n" + "description": "Send interval\n" + }, + "type": { + "type": "string", + "description": "Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS\n" } }, "type": "object", "required": [ - "asn", - "deploymentType" + "emails", + "type" ], "language": { "nodejs": { - "requiredOutputs": [ - "asn", - "deploymentType", - "maxPrefix", - "status" - ] + "requiredInputs": [] } } }, - "equinix:metal/SpotMarketRequestInstanceParameters:SpotMarketRequestInstanceParameters": { + "equinix:fabric/getServiceProfilesDatumPort:getServiceProfilesDatumPort": { "properties": { - "alwaysPxe": { - "type": "boolean" + "crossConnectId": { + "type": "string", + "description": "Cross Connect Id\n" }, - "billingCycle": { - "type": "string" + "location": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumPortLocation:getServiceProfilesDatumPortLocation", + "description": "Colo/Port Location\n" }, - "customdata": { - "type": "string" + "sellerRegion": { + "type": "string", + "description": "Seller Region\n" }, - "description": { - "type": "string" + "sellerRegionDescription": { + "type": "string", + "description": "Seller Region details\n" }, - "features": { - "type": "array", - "items": { - "type": "string" - } + "type": { + "type": "string", + "description": "Colo/Port Type\n" }, - "hostname": { - "type": "string" + "uuid": { + "type": "string", + "description": "Colo/Port Uuid\n" + } + }, + "type": "object", + "required": [ + "type", + "uuid" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumPortLocation:getServiceProfilesDatumPortLocation": { + "properties": { + "ibx": { + "type": "string", + "description": "IBX Code\n" }, - "ipxeScriptUrl": { - "type": "string" + "metroCode": { + "type": "string", + "description": "Access point metro code\n" }, - "locked": { - "type": "boolean", - "description": "Blocks deletion of the SpotMarketRequest device until the lock is disabled.\n" + "metroName": { + "type": "string", + "description": "Access point metro name\n" }, - "operatingSystem": { - "type": "string" + "region": { + "type": "string", + "description": "Access point region\n" + } + }, + "type": "object", + "required": [ + "ibx", + "metroCode", + "metroName", + "region" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumProject:getServiceProfilesDatumProject": { + "properties": { + "href": { + "type": "string", + "description": "Unique Resource URL\n" }, - "plan": { - "type": "string" + "projectId": { + "type": "string", + "description": "Project Id\n" + } + }, + "type": "object", + "required": [ + "href", + "projectId" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumVirtualDevice:getServiceProfilesDatumVirtualDevice": { + "properties": { + "interfaceUuid": { + "type": "string", + "description": "Device Interface Uuid\n" }, - "projectSshKeys": { - "type": "array", - "items": { - "type": "string" - } + "location": { + "$ref": "#/types/equinix:fabric/getServiceProfilesDatumVirtualDeviceLocation:getServiceProfilesDatumVirtualDeviceLocation", + "description": "Device Location\n" }, - "tags": { - "type": "array", - "items": { - "type": "string" - } + "type": { + "type": "string", + "description": "Virtual Device Type\n" }, - "terminationTime": { - "type": "string" + "uuid": { + "type": "string", + "description": "Virtual Device Uuid\n" + } + }, + "type": "object", + "required": [ + "type", + "uuid" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:fabric/getServiceProfilesDatumVirtualDeviceLocation:getServiceProfilesDatumVirtualDeviceLocation": { + "properties": { + "ibx": { + "type": "string", + "description": "IBX Code\n" }, - "termintationTime": { + "metroCode": { "type": "string", - "deprecationMessage": "Use instance_parameters.termination_time instead" + "description": "Access point metro code\n" }, - "userSshKeys": { - "type": "array", - "items": { - "type": "string" - } + "metroName": { + "type": "string", + "description": "Access point metro name\n" }, - "userdata": { - "type": "string" + "region": { + "type": "string", + "description": "Access point region\n" } }, "type": "object", "required": [ - "billingCycle", - "hostname", - "operatingSystem", - "plan" + "ibx", + "metroCode", + "metroName", + "region" ], "language": { "nodejs": { - "requiredOutputs": [ - "billingCycle", - "hostname", - "operatingSystem", - "plan", - "terminationTime", - "termintationTime" - ] + "requiredInputs": [] } } }, - "equinix:metal/billingCycle:BillingCycle": { - "type": "string", - "enum": [ - { - "name": "Hourly", - "value": "hourly" + "equinix:fabric/getServiceProfilesFilter:getServiceProfilesFilter": { + "properties": { + "operator": { + "type": "string", + "description": "Operators to use on your filtered field with the values given. One of [=]\n" }, - { - "name": "Monthly", - "value": "monthly" + "property": { + "type": "string", + "description": "Property to apply operator and values to. One of [/name /uuid /state /metros/code /visibility /type /project/projectId]\n" + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The values that you want to apply the property+operator combination to in order to filter your data search\n" } + }, + "type": "object", + "required": [ + "operator", + "property", + "values" ] }, - "equinix:metal/facility:Facility": { - "description": "See https://deploy.equinix.com/developers/api/metal/#tag/Facilities/operation/findFacilities", + "equinix:fabric/getServiceProfilesPagination:getServiceProfilesPagination": { + "properties": { + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" + }, + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + } + }, + "type": "object" + }, + "equinix:fabric/getServiceProfilesSort:getServiceProfilesSort": { + "properties": { + "direction": { + "type": "string", + "description": "The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC\n" + }, + "property": { + "type": "string", + "description": "The property name to use in sorting. One of [/name /uuid /state /location/metroCode /location/metroName /package/code /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime\n" + } + }, + "type": "object" + }, + "equinix:fabric/notificationsType:NotificationsType": { "type": "string", "enum": [ { - "name": "AM2", - "description": "Amsterdam 2", - "value": "am2" + "name": "All", + "value": "ALL" }, { - "name": "AM6", - "description": "Amsterdam 6", - "value": "am6" + "name": "ConnectionApproval", + "value": "CONNECTION_APPROVAL" }, { - "name": "MA5", - "description": "Manchester 5", - "value": "ma5" + "name": "SalesNotifications", + "value": "SALES_REP_NOTIFICATIONS" }, { - "name": "NRT1", - "description": "Tokio 1", - "value": "nrt1" + "name": "Notifications", + "value": "NOTIFICATIONS" + } + ] + }, + "equinix:fabric/profileAccessPointType:ProfileAccessPointType": { + "type": "string", + "enum": [ + { + "name": "Colo", + "description": "Colocation", + "value": "COLO" }, { - "name": "PA4", - "description": "Paris 4", - "value": "pa4" + "name": "VD", + "description": "Virtual Device", + "value": "VD" + } + ] + }, + "equinix:fabric/profileState:ProfileState": { + "type": "string", + "enum": [ + { + "name": "Active", + "value": "ACTIVE" }, { - "name": "SK2", - "description": "Stockholm 2", - "value": "sk2" + "name": "PendingApproval", + "value": "PENDING_APPROVAL" }, { - "name": "ME2", - "description": "Melbourne 2", - "value": "me2" + "name": "Deleted", + "value": "DELETED" }, { - "name": "HK2", - "description": "Hong Kong 2", - "value": "hk2" + "name": "Rejected", + "value": "REJECTED" + } + ] + }, + "equinix:fabric/profileType:ProfileType": { + "type": "string", + "enum": [ + { + "name": "L2Profile", + "value": "L2_PROFILE" }, { - "name": "TY11", - "description": "Tokyo 11", - "value": "ty11" + "name": "L3Profile", + "value": "L3_PROFILE" + } + ] + }, + "equinix:fabric/profileVisibility:ProfileVisibility": { + "type": "string", + "enum": [ + { + "name": "Public", + "value": "PUBLIC" }, { - "name": "LA4", - "description": "Los Angeles 4", - "value": "la4" + "name": "Private", + "value": "PRIVATE" + } + ] + }, + "equinix:fabric/serviceTokenType:ServiceTokenType": { + "type": "string", + "enum": [ + { + "name": "VCToken", + "value": "VC_TOKEN" + } + ] + }, + "equinix:index/metro:Metro": { + "type": "string", + "enum": [ + { + "name": "Amsterdam", + "value": "AM" }, { - "name": "DA6", - "description": "Dallas 6", - "value": "da6" + "name": "Ashburn", + "value": "DC" }, { - "name": "DA11", - "description": "Dallas 11", - "value": "da11" + "name": "Atlanta", + "value": "AT" }, { - "name": "DA3", - "description": "Dallas 3", - "value": "da3" + "name": "Barcelona", + "value": "BA" }, { - "name": "SP4", - "description": "Sao Paulo 4", - "value": "sp4" + "name": "Bogota", + "value": "BG" }, { - "name": "MT1", - "description": "Montreal 1", - "value": "mt1" + "name": "Bordeaux", + "value": "BX" }, { - "name": "SV16", - "description": "Silicon Valley 16", - "value": "sv16" + "name": "Boston", + "value": "BO" }, { - "name": "SJC1", - "description": "Sunnyvale, CA 1", - "value": "sjc1" + "name": "Brussels", + "value": "BL" }, { - "name": "FRA2", - "description": "Frankfurt 2", - "value": "fra2" + "name": "Calgary", + "value": "CL" }, { - "name": "FRA8", - "description": "Frankfurt 8", - "value": "fr8" + "name": "Canberra", + "value": "CA" }, { - "name": "NY5", - "description": "New York 5", - "value": "ny5" + "name": "Chicago", + "value": "CH" }, { - "name": "NY6", - "description": "New York 6", - "value": "ny6" + "name": "Dallas", + "value": "DA" }, { - "name": "NY7", - "description": "New York 7", - "value": "ny7" + "name": "Denver", + "value": "DE" }, { - "name": "CH3", - "description": "Chicago 3", - "value": "ch3" + "name": "Dubai", + "value": "DX" }, { - "name": "SL1", - "description": "Seoul 1", - "value": "sl1" + "name": "Dublin", + "value": "DB" }, { - "name": "SY5", - "description": "Sydney 5", - "value": "sy5" + "name": "Frankfurt", + "value": "FR" }, { - "name": "OS3", - "description": "Osaka 3", - "value": "os3" + "name": "Geneva", + "value": "GV" }, { - "name": "LD7", - "description": "London 7", - "value": "ld7" + "name": "Hamburg", + "value": "HH" }, { - "name": "DC10", - "description": "Washington DC 10", - "value": "dc10" + "name": "Helsinki", + "value": "HE" }, { - "name": "AMS1", - "description": "Amsterdam 1", - "value": "ams1" + "name": "HongKong", + "value": "HK" }, { - "name": "SG4", - "description": "Singapore 4", - "value": "sg4" + "name": "Istanbul", + "value": "IL" }, { - "name": "SE4", - "description": "Seattle 4", - "value": "se4" + "name": "Kamloops", + "value": "KA" }, { - "name": "SY4", - "description": "Sydney 4", - "value": "sy4" + "name": "Lisbon", + "value": "LS" }, { - "name": "AT4", - "description": "Atlanta 4", - "value": "at4" + "name": "London", + "value": "LD" }, { - "name": "DFW2", - "description": "Dallas 2", - "value": "dfw2" + "name": "LosAngeles", + "value": "LA" }, { - "name": "TR2", - "description": "Toronto", - "value": "tr2" + "name": "Madrid", + "value": "MD" }, { - "name": "DC13", - "description": "Washington DC", - "value": "dc13" + "name": "Manchester", + "value": "MA" }, { - "name": "HE7", - "description": "Helsinki", - "value": "he7" + "name": "Melbourne", + "value": "ME" }, { - "name": "EWR1", - "description": "Parsippany, NJ 1", - "value": "ewr1" + "name": "MexicoCity", + "value": "MX" }, { - "name": "SG5", - "description": "Singapore 5", - "value": "sg5" + "name": "Miami", + "value": "MI" }, { - "name": "SG1", - "description": "Singapore 1", - "value": "sg1" + "name": "Milan", + "value": "ML" }, { - "name": "MD2", - "description": "Madrid 2", - "value": "md2" + "name": "Montreal", + "value": "MT" }, { - "name": "SV15", - "description": "Silicon Valley 15", - "value": "sv15" - } - ] - }, - "equinix:metal/getDeviceBgpNeighborsBgpNeighbor:getDeviceBgpNeighborsBgpNeighbor": { - "properties": { - "addressFamily": { - "type": "integer", - "description": "IP address version, 4 or 6.\n" + "name": "Mumbai", + "value": "MB" }, - "customerAs": { - "type": "integer", - "description": "Local autonomous system number.\n" + { + "name": "Munich", + "value": "MU" }, - "customerIp": { - "type": "string", - "description": "Local used peer IP address.\n" + { + "name": "NewYork", + "value": "NY" }, - "md5Enabled": { - "type": "boolean", - "description": "Whether BGP session is password enabled.\n" + { + "name": "Osaka", + "value": "OS" }, - "md5Password": { - "type": "string", - "description": "BGP session password in plaintext (not a checksum).\n", - "secret": true + { + "name": "Paris", + "value": "PA" }, - "multihop": { - "type": "boolean", - "description": "Whether the neighbor is in EBGP multihop session.\n" + { + "name": "Perth", + "value": "PE" }, - "peerAs": { - "type": "integer", - "description": "Peer AS number (different than customer_as for EBGP).\n" + { + "name": "Philadelphia", + "value": "PH" }, - "peerIps": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Array of IP addresses of this neighbor's peers.\n" + { + "name": "RioDeJaneiro", + "value": "RJ" }, - "routesIns": { - "type": "array", - "items": { - "$ref": "#/types/equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesIn:getDeviceBgpNeighborsBgpNeighborRoutesIn" - }, - "description": "Array of incoming routes.\n" + { + "name": "SaoPaulo", + "value": "SP" }, - "routesOuts": { + { + "name": "Seattle", + "value": "SE" + }, + { + "name": "Seoul", + "value": "SL" + }, + { + "name": "SiliconValley", + "value": "SV" + }, + { + "name": "Singapore", + "value": "SG" + }, + { + "name": "Sofia", + "value": "SO" + }, + { + "name": "Stockholm", + "value": "SK" + }, + { + "name": "Sydney", + "value": "SY" + }, + { + "name": "Tokyo", + "value": "TY" + }, + { + "name": "Toronto", + "value": "TR" + }, + { + "name": "Vancouver", + "value": "VA" + }, + { + "name": "Warsaw", + "value": "WA" + }, + { + "name": "Winnipeg", + "value": "WI" + }, + { + "name": "Zurich", + "value": "ZH" + } + ] + }, + "equinix:metal/DeviceBehavior:DeviceBehavior": { + "properties": { + "allowChanges": { "type": "array", "items": { - "$ref": "#/types/equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesOut:getDeviceBgpNeighborsBgpNeighborRoutesOut" + "type": "string" }, - "description": "Array of outgoing routes in the same format.\n" + "description": "List of attributes that are allowed to change without recreating the instance. Supported attributes: `custom_data`, `user_data`\n" } }, - "type": "object", - "required": [ - "addressFamily", - "customerAs", - "customerIp", - "md5Enabled", - "md5Password", - "multihop", - "peerAs", - "routesIns", - "routesOuts" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } + "type": "object" }, - "equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesIn:getDeviceBgpNeighborsBgpNeighborRoutesIn": { + "equinix:metal/DeviceIpAddress:DeviceIpAddress": { "properties": { - "exact": { - "type": "boolean", - "description": "(bool) Whether the route is exact.\n" + "cidr": { + "type": "integer", + "description": "CIDR suffix for IP block assigned to this device\n" }, - "route": { - "type": "string", - "description": "CIDR expression of route (IP/mask).\n" - } - }, - "type": "object", - "required": [ - "exact", - "route" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesOut:getDeviceBgpNeighborsBgpNeighborRoutesOut": { - "properties": { - "exact": { - "type": "boolean", - "description": "(bool) Whether the route is exact.\n" + "reservationIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IDs of reservations to pick the blocks from\n" }, - "route": { + "type": { "type": "string", - "description": "CIDR expression of route (IP/mask).\n" + "description": "one of public*ipv4,private*ipv4,public_ipv6\n" } }, "type": "object", "required": [ - "exact", - "route" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } + "type" + ] }, - "equinix:metal/getDeviceNetwork:getDeviceNetwork": { + "equinix:metal/DeviceNetwork:DeviceNetwork": { "properties": { "address": { "type": "string", @@ -10436,7 +10754,7 @@ }, "cidr": { "type": "integer", - "description": "Bit length of the network mask of the address\n" + "description": "CIDR suffix for IP address block to be assigned, i.e. amount of addresses\n" }, "family": { "type": "integer", @@ -10452,20 +10770,19 @@ } }, "type": "object", - "required": [ - "address", - "cidr", - "family", - "gateway", - "public" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "address", + "cidr", + "family", + "gateway", + "public" + ] } } }, - "equinix:metal/getDevicePort:getDevicePort": { + "equinix:metal/DevicePort:DevicePort": { "properties": { "bonded": { "type": "boolean", @@ -10485,3264 +10802,4352 @@ }, "type": { "type": "string", - "description": "Type of the port (e.g. NetworkPort or NetworkBondPort)\n" + "description": "One of [private_ipv4, public_ipv4, public_ipv6]\n" } }, "type": "object", - "required": [ - "bonded", - "id", - "mac", - "name", - "type" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "bonded", + "id", + "mac", + "name", + "type" + ] } } }, - "equinix:metal/getDevicesDevice:getDevicesDevice": { + "equinix:metal/DeviceReinstall:DeviceReinstall": { "properties": { - "accessPrivateIpv4": { - "type": "string", - "description": "The ipv4 private IP assigned to the device\n" + "deprovisionFast": { + "type": "boolean", + "description": "Whether the OS disk should be filled with `00h` bytes before reinstall\n" }, - "accessPublicIpv4": { - "type": "string", - "description": "The ipv4 management IP assigned to the device\n" + "enabled": { + "type": "boolean", + "description": "Whether the device should be reinstalled instead of destroyed\n" }, - "accessPublicIpv6": { + "preserveData": { + "type": "boolean", + "description": "Whether the non-OS disks should be kept or wiped during reinstall\n" + } + }, + "type": "object" + }, + "equinix:metal/GatewayTimeouts:GatewayTimeouts": { + "properties": { + "delete": { "type": "string", - "description": "The ipv6 management IP assigned to the device\n" - }, - "alwaysPxe": { - "type": "boolean" - }, - "billingCycle": { - "type": "string", - "description": "The billing cycle of the device (monthly or hourly)\n" - }, - "description": { - "type": "string", - "description": "Description string for the device\n" - }, - "deviceId": { - "type": "string", - "description": "Device ID\n" - }, - "facility": { - "type": "string", - "description": "The facility where the device is deployed\n", - "deprecationMessage": "Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices" - }, - "hardwareReservationId": { - "type": "string", - "description": "The id of hardware reservation which this device occupies\n" - }, - "hostname": { - "type": "string", - "description": "The device name\n" - }, - "ipxeScriptUrl": { + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n" + } + }, + "type": "object" + }, + "equinix:metal/InterconnectionPort:InterconnectionPort": { + "properties": { + "id": { "type": "string" }, - "metro": { - "type": "string", - "description": "The metro where the device is deployed\n" + "linkStatus": { + "type": "string" }, - "networkType": { - "type": "string", - "description": "L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded\n" + "name": { + "type": "string" }, - "networks": { - "type": "array", - "items": { - "$ref": "#/types/equinix:metal/getDevicesDeviceNetwork:getDevicesDeviceNetwork" - }, - "description": "The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).\n" + "role": { + "type": "string" }, - "operatingSystem": { - "type": "string", - "description": "The operating system running on the device\n" + "speed": { + "type": "integer" }, - "plan": { - "type": "string", - "description": "The hardware config of the device\n" + "status": { + "type": "string" }, - "ports": { + "virtualCircuitIds": { "type": "array", "items": { - "$ref": "#/types/equinix:metal/getDevicesDevicePort:getDevicesDevicePort" - }, - "description": "Ports assigned to the device\n" - }, - "projectId": { - "type": "string", - "description": "ID of project containing the devices. Exactly one of `project_id` and `organization_id` must be set.\n" + "type": "string" + } + } + }, + "type": "object", + "required": [ + "id", + "linkStatus", + "name", + "role", + "speed", + "status", + "virtualCircuitIds" + ] + }, + "equinix:metal/InterconnectionServiceToken:InterconnectionServiceToken": { + "properties": { + "expiresAt": { + "type": "string" }, - "rootPassword": { - "type": "string", - "description": "Root password to the server (if still available)\n", - "secret": true + "id": { + "type": "string" }, - "sosHostname": { - "type": "string", - "description": "The hostname to use for [Serial over SSH](https://deploy.equinix.com/developers/docs/metal/resilience-recovery/serial-over-ssh/) access to the device\n" + "maxAllowedSpeed": { + "type": "string" }, - "sshKeyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of IDs of SSH keys deployed in the device, can be both user or project SSH keys\n" + "role": { + "type": "string" }, "state": { - "type": "string", - "description": "The state of the device\n" - }, - "storage": { "type": "string" }, - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Tags attached to the device\n" + "type": { + "type": "string" } }, "type": "object", "required": [ - "accessPrivateIpv4", - "accessPublicIpv4", - "accessPublicIpv6", - "alwaysPxe", - "billingCycle", - "description", - "deviceId", - "facility", - "hardwareReservationId", - "hostname", - "ipxeScriptUrl", - "metro", - "networks", - "networkType", - "operatingSystem", - "plan", - "ports", - "projectId", - "rootPassword", - "sosHostname", - "sshKeyIds", + "expiresAt", + "id", + "maxAllowedSpeed", + "role", "state", - "storage", - "tags" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } + "type" + ] }, - "equinix:metal/getDevicesDeviceNetwork:getDevicesDeviceNetwork": { + "equinix:metal/OrganizationAddress:OrganizationAddress": { "properties": { "address": { "type": "string", - "description": "IPv4 or IPv6 address string\n" + "description": "Postal address.\n" }, - "cidr": { - "type": "integer", - "description": "Bit length of the network mask of the address\n" + "city": { + "type": "string", + "description": "City name.\n" }, - "family": { - "type": "integer", - "description": "IP version - \"4\" or \"6\"\n" + "country": { + "type": "string", + "description": "Two letter country code (ISO 3166-1 alpha-2), e.g. US.\n" }, - "gateway": { + "state": { "type": "string", - "description": "Address of router\n" + "description": "State name.\n" }, - "public": { - "type": "boolean", - "description": "Whether the address is routable from the Internet\n" + "zipCode": { + "type": "string", + "description": "Zip Code.\n" } }, "type": "object", "required": [ "address", - "cidr", - "family", - "gateway", - "public" + "city", + "country", + "zipCode" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "address", + "city", + "country", + "state", + "zipCode" + ] } } }, - "equinix:metal/getDevicesDevicePort:getDevicesDevicePort": { + "equinix:metal/ProjectBgpConfig:ProjectBgpConfig": { "properties": { - "bonded": { - "type": "boolean", - "description": "Whether this port is part of a bond in bonded network setup\n" + "asn": { + "type": "integer", + "description": "Autonomous System Number for local BGP deployment.\n" }, - "id": { + "deploymentType": { "type": "string", - "description": "The ID of the device\n" + "description": "`local` or `global`, the `local` is likely to be usable immediately, the `global` will need to be reviewed by Equinix Metal engineers.\n" }, - "mac": { - "type": "string", - "description": "MAC address assigned to the port\n" + "maxPrefix": { + "type": "integer", + "description": "The maximum number of route filters allowed per server.\n" }, - "name": { + "md5": { "type": "string", - "description": "Name of the port (e.g. eth0, or bond0)\n" + "description": "Password for BGP session in plaintext (not a checksum).\n", + "secret": true }, - "type": { + "status": { "type": "string", - "description": "Type of the port (e.g. NetworkPort or NetworkBondPort)\n" + "description": "status of BGP configuration in the project.\n" } }, "type": "object", "required": [ - "bonded", - "id", - "mac", - "name", - "type" + "asn", + "deploymentType" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "asn", + "deploymentType", + "maxPrefix", + "status" + ] } } }, - "equinix:metal/getDevicesFilter:getDevicesFilter": { + "equinix:metal/SpotMarketRequestInstanceParameters:SpotMarketRequestInstanceParameters": { "properties": { - "all": { - "type": "boolean", - "description": "If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is `false`.\n\nAll fields in the `devices` block defined below can be used as attribute for both `sort` and `filter` blocks.\n" - }, - "attribute": { - "type": "string", - "description": "The attribute used to filter. Filter attributes are case-sensitive\n" + "alwaysPxe": { + "type": "boolean" }, - "matchBy": { - "type": "string", - "description": "The type of comparison to apply. One of: `in` , `re`, `substring`, `less_than`, `less_than_or_equal`, `greater_than`, `greater_than_or_equal`. Default is `in`.\n" + "billingCycle": { + "type": "string" }, - "values": { + "customdata": { + "type": "string" + }, + "description": { + "type": "string" + }, + "features": { "type": "array", "items": { "type": "string" - }, - "description": "The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values\n" - } - }, - "type": "object", - "required": [ - "attribute", - "values" - ] - }, - "equinix:metal/getDevicesSort:getDevicesSort": { - "properties": { - "attribute": { - "type": "string", - "description": "The attribute used to sort the results. Sort attributes are case-sensitive\n" - }, - "direction": { - "type": "string", - "description": "Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc\n" - } - }, - "type": "object", - "required": [ - "attribute" - ] - }, - "equinix:metal/getFacilityCapacity:getFacilityCapacity": { - "properties": { - "plan": { - "type": "string", - "description": "Device plan that must be available in selected location.\n" + } }, - "quantity": { - "type": "integer", - "description": "Minimun number of devices that must be available in selected location. Default is `1`.\n" - } - }, - "type": "object", - "required": [ - "plan" - ] - }, - "equinix:metal/getInterconnectionPort:getInterconnectionPort": { - "properties": { - "id": { - "type": "string", - "description": "Port UUID.\n" + "hostname": { + "type": "string" }, - "linkStatus": { - "type": "string", - "description": "Port link status.\n" + "ipxeScriptUrl": { + "type": "string" }, - "name": { - "type": "string", - "description": "Port name.\n" + "locked": { + "type": "boolean", + "description": "Blocks deletion of the SpotMarketRequest device until the lock is disabled.\n" }, - "role": { - "type": "string", - "description": "Port role - primary or secondary.\n" + "operatingSystem": { + "type": "string" }, - "speed": { - "type": "integer", - "description": "Port speed in bits per second.\n" + "plan": { + "type": "string" }, - "status": { - "type": "string", - "description": "Port status.\n" + "projectSshKeys": { + "type": "array", + "items": { + "type": "string" + } }, - "virtualCircuitIds": { + "tags": { "type": "array", "items": { "type": "string" - }, - "description": "List of IDs of virtual cicruits attached to this port.\n" - } - }, - "type": "object", - "required": [ - "id", - "linkStatus", - "name", - "role", - "speed", - "status", - "virtualCircuitIds" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:metal/getInterconnectionServiceToken:getInterconnectionServiceToken": { - "properties": { - "expiresAt": { - "type": "string", - "description": "Expiration date of the service token.\n" + } }, - "id": { - "type": "string", - "description": "Port UUID.\n" + "terminationTime": { + "type": "string" }, - "maxAllowedSpeed": { + "termintationTime": { "type": "string", - "description": "Maximum allowed speed for the service token, string like in the `speed` attribute.\n" + "deprecationMessage": "Use instance_parameters.termination_time instead" }, - "role": { - "type": "string", - "description": "Port role - primary or secondary.\n" + "userSshKeys": { + "type": "array", + "items": { + "type": "string" + } }, - "state": { + "userdata": { "type": "string" - }, - "type": { - "type": "string", - "description": "Token type, `a_side` or `z_side`.\n" } }, "type": "object", "required": [ - "expiresAt", - "id", - "maxAllowedSpeed", - "role", - "state", - "type" + "billingCycle", + "hostname", + "operatingSystem", + "plan" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "billingCycle", + "hostname", + "operatingSystem", + "plan", + "terminationTime", + "termintationTime" + ] } } }, - "equinix:metal/getMetroCapacity:getMetroCapacity": { - "properties": { - "plan": { - "type": "string", - "description": "Device plan that must be available in selected location.\n" + "equinix:metal/billingCycle:BillingCycle": { + "type": "string", + "enum": [ + { + "name": "Hourly", + "value": "hourly" }, - "quantity": { - "type": "integer", - "description": "Minimum number of devices that must be available in selected location. Default is `1`.\n" + { + "name": "Monthly", + "value": "monthly" } - }, - "type": "object", - "required": [ - "plan" ] }, - "equinix:metal/getOrganizationAddress:getOrganizationAddress": { - "properties": { - "address": { - "type": "string", - "description": "Postal address.\n" + "equinix:metal/facility:Facility": { + "description": "See https://deploy.equinix.com/developers/api/metal/#tag/Facilities/operation/findFacilities", + "type": "string", + "enum": [ + { + "name": "AM2", + "description": "Amsterdam 2", + "value": "am2" }, - "city": { - "type": "string", - "description": "City name.\n" + { + "name": "AM6", + "description": "Amsterdam 6", + "value": "am6" }, - "country": { - "type": "string", - "description": "Two letter country code (ISO 3166-1 alpha-2), e.g. US.\n" + { + "name": "MA5", + "description": "Manchester 5", + "value": "ma5" }, - "state": { - "type": "string", - "description": "State name.\n" + { + "name": "NRT1", + "description": "Tokio 1", + "value": "nrt1" }, - "zipCode": { - "type": "string", - "description": "Zip Code.\n" - } - }, - "type": "object", - "required": [ - "address", - "city", - "country", - "state", - "zipCode" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:metal/getPlansFilter:getPlansFilter": { - "properties": { - "all": { - "type": "boolean", - "description": "If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is `false`.\n\nAll fields in the `plans` block defined below can be used as attribute for both `sort` and `filter` blocks.\n" + { + "name": "PA4", + "description": "Paris 4", + "value": "pa4" }, - "attribute": { - "type": "string", - "description": "The attribute used to filter. Filter attributes are case-sensitive\n" + { + "name": "SK2", + "description": "Stockholm 2", + "value": "sk2" }, - "matchBy": { - "type": "string", - "description": "The type of comparison to apply. One of: `in` , `re`, `substring`, `less_than`, `less_than_or_equal`, `greater_than`, `greater_than_or_equal`. Default is `in`.\n" + { + "name": "ME2", + "description": "Melbourne 2", + "value": "me2" }, - "values": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values\n" - } - }, - "type": "object", - "required": [ - "attribute", - "values" - ] - }, - "equinix:metal/getPlansPlan:getPlansPlan": { - "properties": { - "availableInMetros": { - "type": "array", - "items": { - "type": "string" - }, - "description": "list of metros where the plan is available\n" - }, - "availableIns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(**Deprecated**) list of facilities where the plan is available\n", - "deprecationMessage": "Use available_in_metros instead. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices" - }, - "class": { - "type": "string", - "description": "plan class\n" - }, - "deploymentTypes": { - "type": "array", - "items": { - "type": "string" - }, - "description": "list of deployment types, e.g. on_demand, spot_market\n" - }, - "description": { - "type": "string", - "description": "description of the plan\n" - }, - "id": { - "type": "string", - "description": "id of the plan\n" - }, - "legacy": { - "type": "boolean", - "description": "flag showing if it's a legacy plan\n" - }, - "line": { - "type": "string", - "description": "plan line, e.g. baremetal\n" - }, - "name": { - "type": "string", - "description": "name of the plan\n" - }, - "pricingHour": { - "type": "number", - "description": "plan hourly price\n" - }, - "pricingMonth": { - "type": "number", - "description": "plan monthly price\n" - }, - "slug": { - "type": "string", - "description": "plan slug\n" - } - }, - "type": "object", - "required": [ - "availableIns", - "availableInMetros", - "class", - "deploymentTypes", - "description", - "id", - "legacy", - "line", - "name", - "pricingHour", - "pricingMonth", - "slug" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:metal/getPlansSort:getPlansSort": { - "properties": { - "attribute": { - "type": "string", - "description": "The attribute used to sort the results. Sort attributes are case-sensitive\n" - }, - "direction": { - "type": "string", - "description": "Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc\n" - } - }, - "type": "object", - "required": [ - "attribute" - ] - }, - "equinix:metal/getProjectBgpConfig:getProjectBgpConfig": { - "properties": { - "asn": { - "type": "integer", - "description": "Autonomous System Number for local BGP deployment.\n" - }, - "deploymentType": { - "type": "string", - "description": "One of `private`, `public`.\n" - }, - "maxPrefix": { - "type": "integer", - "description": "The maximum number of route filters allowed per server.\n" - }, - "md5": { - "type": "string", - "description": "Password for BGP session in plaintext (not a checksum).\n" - }, - "status": { - "type": "string", - "description": "Status of BGP configuration in the project.\n" - } - }, - "type": "object", - "required": [ - "asn", - "deploymentType", - "maxPrefix", - "md5", - "status" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:metal/ipBlockType:IpBlockType": { - "type": "string", - "enum": [ { - "name": "GlobalIPv4", - "value": "global_ipv4" + "name": "HK2", + "description": "Hong Kong 2", + "value": "hk2" }, { - "name": "PublicIPv4", - "value": "public_ipv4" - } - ] - }, - "equinix:metal/networkType:NetworkType": { - "type": "string", - "enum": [ - { - "name": "Layer3", - "value": "layer3" + "name": "TY11", + "description": "Tokyo 11", + "value": "ty11" }, { - "name": "Layer2Individual", - "value": "layer2-individual" + "name": "LA4", + "description": "Los Angeles 4", + "value": "la4" }, { - "name": "Layer2Bonded", - "value": "layer2-bonded" + "name": "DA6", + "description": "Dallas 6", + "value": "da6" }, { - "name": "Hybrid", - "value": "hybrid" - } - ] - }, - "equinix:metal/operatingSystem:OperatingSystem": { - "description": "See https://deploy.equinix.com/developers/api/metal/#tag/OperatingSystems/operation/findOperatingSystems", - "type": "string", - "enum": [ + "name": "DA11", + "description": "Dallas 11", + "value": "da11" + }, { - "name": "Alma8", - "value": "alma_8" + "name": "DA3", + "description": "Dallas 3", + "value": "da3" }, { - "name": "Alma9", - "value": "alma_9" + "name": "SP4", + "description": "Sao Paulo 4", + "value": "sp4" }, { - "name": "Alpine3", - "value": "alpine_3" + "name": "MT1", + "description": "Montreal 1", + "value": "mt1" }, { - "name": "CentOS6", - "value": "centos_6" + "name": "SV16", + "description": "Silicon Valley 16", + "value": "sv16" }, { - "name": "CentOS7", - "value": "centos_7" + "name": "SJC1", + "description": "Sunnyvale, CA 1", + "value": "sjc1" }, { - "name": "CentOS8", - "value": "centos_8" + "name": "FRA2", + "description": "Frankfurt 2", + "value": "fra2" }, { - "name": "CoreOSAlpha", - "value": "coreos_alpha" + "name": "FRA8", + "description": "Frankfurt 8", + "value": "fr8" }, { - "name": "CoreOSBeta", - "value": "coreos_beta" + "name": "NY5", + "description": "New York 5", + "value": "ny5" }, { - "name": "CoreOSStable", - "value": "coreos_stable" + "name": "NY6", + "description": "New York 6", + "value": "ny6" }, { - "name": "CustomIPXE", - "value": "custom_ipxe" + "name": "NY7", + "description": "New York 7", + "value": "ny7" }, { - "name": "Debian10", - "value": "debian_10" + "name": "CH3", + "description": "Chicago 3", + "value": "ch3" }, { - "name": "Debian11", - "value": "debian_11" + "name": "SL1", + "description": "Seoul 1", + "value": "sl1" }, { - "name": "Debian7", - "value": "debian_7" + "name": "SY5", + "description": "Sydney 5", + "value": "sy5" }, { - "name": "Debian8", - "value": "debian_8" - }, - { - "name": "Debian9", - "value": "debian_9" - }, - { - "name": "Fedora31", - "value": "fedora_31" + "name": "OS3", + "description": "Osaka 3", + "value": "os3" }, { - "name": "Fedora34", - "value": "fedora_34" + "name": "LD7", + "description": "London 7", + "value": "ld7" }, { - "name": "FlatcarAlpha", - "value": "flatcar_alpha" + "name": "DC10", + "description": "Washington DC 10", + "value": "dc10" }, { - "name": "FlatcarBeta", - "value": "flatcar_beta" + "name": "AMS1", + "description": "Amsterdam 1", + "value": "ams1" }, { - "name": "FlatcarEdge", - "value": "flatcar_edge" + "name": "SG4", + "description": "Singapore 4", + "value": "sg4" }, { - "name": "FlatcarLTS", - "value": "flatcar_lts" + "name": "SE4", + "description": "Seattle 4", + "value": "se4" }, { - "name": "FlatcarStable", - "value": "flatcar_stable" + "name": "SY4", + "description": "Sydney 4", + "value": "sy4" }, { - "name": "FreeBSD10_3", - "value": "freebsd_10_3" + "name": "AT4", + "description": "Atlanta 4", + "value": "at4" }, { - "name": "FreeBSD10_4", - "value": "freebsd_10_4" + "name": "DFW2", + "description": "Dallas 2", + "value": "dfw2" }, { - "name": "FreeBSD11_0", - "value": "freebsd_11_0" + "name": "TR2", + "description": "Toronto", + "value": "tr2" }, { - "name": "FreeBSD11_1", - "value": "freebsd_11_1" + "name": "DC13", + "description": "Washington DC", + "value": "dc13" }, { - "name": "FreeBSD11_2", - "value": "freebsd_11_2" + "name": "HE7", + "description": "Helsinki", + "value": "he7" }, { - "name": "FreeBSD11_3", - "value": "freebsd_11_3" + "name": "EWR1", + "description": "Parsippany, NJ 1", + "value": "ewr1" }, { - "name": "FreeBSD11_4", - "value": "freebsd_11_4" + "name": "SG5", + "description": "Singapore 5", + "value": "sg5" }, { - "name": "FreeBSD12Testing", - "value": "freebsd_12_testing" + "name": "SG1", + "description": "Singapore 1", + "value": "sg1" }, { - "name": "FreeBSD12_1", - "value": "freebsd_12_1" + "name": "MD2", + "description": "Madrid 2", + "value": "md2" }, { - "name": "FreeBSD13_0", - "value": "freebsd_13_0" + "name": "SV15", + "description": "Silicon Valley 15", + "value": "sv15" + } + ] + }, + "equinix:metal/getDeviceBgpNeighborsBgpNeighbor:getDeviceBgpNeighborsBgpNeighbor": { + "properties": { + "addressFamily": { + "type": "integer", + "description": "IP address version, 4 or 6.\n" }, - { - "name": "FreeBSD13_1", - "value": "freebsd_13_1" + "customerAs": { + "type": "integer", + "description": "Local autonomous system number.\n" }, - { - "name": "FreeBSD13_testing", - "value": "freebsd_13_testing" + "customerIp": { + "type": "string", + "description": "Local used peer IP address.\n" }, - { - "name": "HookEsxi7", - "value": "hook_esxi7" + "md5Enabled": { + "type": "boolean", + "description": "Whether BGP session is password enabled.\n" }, - { - "name": "NixOS17_03", - "value": "nixos_17_03" + "md5Password": { + "type": "string", + "description": "BGP session password in plaintext (not a checksum).\n", + "secret": true }, - { - "name": "NixOS18_03", - "value": "nixos_18_03" + "multihop": { + "type": "boolean", + "description": "Whether the neighbor is in EBGP multihop session.\n" }, - { - "name": "NixOS19_03", - "value": "nixos_19_03" + "peerAs": { + "type": "integer", + "description": "Peer AS number (different than customer_as for EBGP).\n" }, - { - "name": "NixOS20_09", - "value": "nixos_20_09" + "peerIps": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of IP addresses of this neighbor's peers.\n" }, - { - "name": "NixOS21_11", - "value": "nixos_21_11" + "routesIns": { + "type": "array", + "items": { + "$ref": "#/types/equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesIn:getDeviceBgpNeighborsBgpNeighborRoutesIn" + }, + "description": "Array of incoming routes.\n" }, - { - "name": "NixOS22_05", - "value": "nixos_22_05" + "routesOuts": { + "type": "array", + "items": { + "$ref": "#/types/equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesOut:getDeviceBgpNeighborsBgpNeighborRoutesOut" + }, + "description": "Array of outgoing routes in the same format.\n" + } + }, + "type": "object", + "required": [ + "addressFamily", + "customerAs", + "customerIp", + "md5Enabled", + "md5Password", + "multihop", + "peerAs", + "routesIns", + "routesOuts" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesIn:getDeviceBgpNeighborsBgpNeighborRoutesIn": { + "properties": { + "exact": { + "type": "boolean", + "description": "(bool) Whether the route is exact.\n" }, - { - "name": "NixOS22_11", - "value": "nixos_22_11" + "route": { + "type": "string", + "description": "CIDR expression of route (IP/mask).\n" + } + }, + "type": "object", + "required": [ + "exact", + "route" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getDeviceBgpNeighborsBgpNeighborRoutesOut:getDeviceBgpNeighborsBgpNeighborRoutesOut": { + "properties": { + "exact": { + "type": "boolean", + "description": "(bool) Whether the route is exact.\n" }, - { - "name": "Nixos21_05", - "value": "nixos_21_05" + "route": { + "type": "string", + "description": "CIDR expression of route (IP/mask).\n" + } + }, + "type": "object", + "required": [ + "exact", + "route" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getDeviceNetwork:getDeviceNetwork": { + "properties": { + "address": { + "type": "string", + "description": "IPv4 or IPv6 address string\n" }, - { - "name": "NutanixCentos", - "value": "nutanix_centos" + "cidr": { + "type": "integer", + "description": "Bit length of the network mask of the address\n" }, - { - "name": "NutanixLTS5_19_1", - "value": "nutanix_lts_5_19_1" + "family": { + "type": "integer", + "description": "IP version - \"4\" or \"6\"\n" }, - { - "name": "NutanixLTS5_20", - "value": "nutanix_lts_5_20" + "gateway": { + "type": "string", + "description": "Address of router\n" }, - { - "name": "OpenSUSE42_3", - "value": "opensuse_42_3" - }, - { - "name": "RHEL7", - "value": "rhel_7" - }, - { - "name": "RHEL8", - "value": "rhel_8" - }, - { - "name": "RHEL9", - "value": "rhel_9" - }, - { - "name": "RancherOS", - "value": "rancher" - }, - { - "name": "Rocky8", - "value": "rocky_8" - }, - { - "name": "Rocky9", - "value": "rocky_9" + "public": { + "type": "boolean", + "description": "Whether the address is routable from the Internet\n" + } + }, + "type": "object", + "required": [ + "address", + "cidr", + "family", + "gateway", + "public" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getDevicePort:getDevicePort": { + "properties": { + "bonded": { + "type": "boolean", + "description": "Whether this port is part of a bond in bonded network setup\n" }, - { - "name": "SLES12SP3", - "value": "suse_sles12_sp3" + "id": { + "type": "string", + "description": "The ID of the device\n" }, - { - "name": "ScientificLinux6", - "value": "scientific_6" + "mac": { + "type": "string", + "description": "MAC address assigned to the port\n" }, - { - "name": "TalosV1", - "value": "talos_v1" + "name": { + "type": "string", + "description": "Name of the port (e.g. eth0, or bond0)\n" }, - { - "name": "Ubuntu1710", - "value": "ubuntu_17_10" + "type": { + "type": "string", + "description": "Type of the port (e.g. NetworkPort or NetworkBondPort)\n" + } + }, + "type": "object", + "required": [ + "bonded", + "id", + "mac", + "name", + "type" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getDevicesDevice:getDevicesDevice": { + "properties": { + "accessPrivateIpv4": { + "type": "string", + "description": "The ipv4 private IP assigned to the device\n" }, - { - "name": "Ubuntu18_04", - "value": "ubuntu_18_04" + "accessPublicIpv4": { + "type": "string", + "description": "The ipv4 management IP assigned to the device\n" }, - { - "name": "Ubuntu1904", - "value": "ubuntu_19_04" + "accessPublicIpv6": { + "type": "string", + "description": "The ipv6 management IP assigned to the device\n" }, - { - "name": "Ubuntu19_10", - "value": "ubuntu_19_10" + "alwaysPxe": { + "type": "boolean" }, - { - "name": "Ubuntu20_04", - "value": "ubuntu_20_04" + "billingCycle": { + "type": "string", + "description": "The billing cycle of the device (monthly or hourly)\n" }, - { - "name": "Ubuntu20_04_legacy", - "value": "ubuntu_20_04_legacy" + "description": { + "type": "string", + "description": "Description string for the device\n" }, - { - "name": "Ubuntu20_10", - "value": "ubuntu_20_10" + "deviceId": { + "type": "string", + "description": "Device ID\n" }, - { - "name": "Ubuntu2204", - "value": "ubuntu_22_04" + "facility": { + "type": "string", + "description": "The facility where the device is deployed\n", + "deprecationMessage": "Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices" }, - { - "name": "VMWareAlloyVcf", - "value": "vmware_alloy_vcf" + "hardwareReservationId": { + "type": "string", + "description": "The id of hardware reservation which this device occupies\n" }, - { - "name": "VMWareEsxi5_5", - "value": "vmware_esxi_5_5" + "hostname": { + "type": "string", + "description": "The device name\n" }, - { - "name": "VMWareEsxi6_0", - "value": "vmware_esxi_6_0" + "ipxeScriptUrl": { + "type": "string" }, - { - "name": "VMWareEsxi6_5", - "value": "vmware_esxi_6_5" + "metro": { + "type": "string", + "description": "The metro where the device is deployed\n" }, - { - "name": "VMWareEsxi6_7", - "value": "vmware_esxi_6_7" + "networkType": { + "type": "string", + "description": "L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded\n" }, - { - "name": "VMWareEsxi6_7_vcf", - "value": "vmware_esxi_6_7_vcf" + "networks": { + "type": "array", + "items": { + "$ref": "#/types/equinix:metal/getDevicesDeviceNetwork:getDevicesDeviceNetwork" + }, + "description": "The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).\n" }, - { - "name": "VMWareEsxi7_0", - "value": "vmware_esxi_7_0" + "operatingSystem": { + "type": "string", + "description": "The operating system running on the device\n" }, - { - "name": "VMWareEsxi7_0U2a", - "value": "vmware_esxi_7_0U2a" + "plan": { + "type": "string", + "description": "The hardware config of the device\n" }, - { - "name": "VMWareEsxi7_0_vcf", - "value": "vmware_esxi_7_0_vcf" + "ports": { + "type": "array", + "items": { + "$ref": "#/types/equinix:metal/getDevicesDevicePort:getDevicesDevicePort" + }, + "description": "Ports assigned to the device\n" }, - { - "name": "VMWareNsx2_5_0", - "value": "vmware_nsx_2_5_0" + "projectId": { + "type": "string", + "description": "ID of project containing the devices. Exactly one of `project_id` and `organization_id` must be set.\n" }, - { - "name": "VMWareNsx3_0_0", - "value": "vmware_nsx_3_0_0" + "rootPassword": { + "type": "string", + "description": "Root password to the server (if still available)\n", + "secret": true }, - { - "name": "Virtuozzo7", - "value": "virtuozzo_7" + "sosHostname": { + "type": "string", + "description": "The hostname to use for [Serial over SSH](https://deploy.equinix.com/developers/docs/metal/resilience-recovery/serial-over-ssh/) access to the device\n" }, - { - "name": "Windows2012R2", - "value": "windows_2012_r2" + "sshKeyIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IDs of SSH keys deployed in the device, can be both user or project SSH keys\n" }, - { - "name": "Windows2016", - "value": "windows_2016" + "state": { + "type": "string", + "description": "The state of the device\n" }, - { - "name": "Windows2019", - "value": "windows_2019" + "storage": { + "type": "string" }, - { - "name": "Windows2022", - "value": "windows_2022" - } - ] - }, - "equinix:metal/plan:Plan": { - "description": "See https://deploy.equinix.com/developers/api/metal/#tag/Plans/operation/findPlans", - "type": "string", - "enum": [ - { - "name": "A3LargeX86", - "value": "a3.large.x86" - }, - { - "name": "C2LargeARM", - "value": "c2.large.arm" - }, - { - "name": "C2MediumX86", - "value": "c2.medium.x86" - }, - { - "name": "C3LargeARM", - "value": "c3.large.arm64" - }, - { - "name": "C3MediumX86", - "value": "c3.medium.x86" - }, - { - "name": "C3SmallX86", - "value": "c3.small.x86" - }, - { - "name": "F3LargeX86", - "value": "f3.large.x86" - }, - { - "name": "F3MediumX86", - "value": "f3.medium.x86" - }, - { - "name": "G2LargeX86", - "value": "g2.large.x86" - }, - { - "name": "M2XLargeX86", - "value": "m2.xlarge.x86" - }, - { - "name": "M3LargeX86", - "value": "m3.large.x86" - }, - { - "name": "M3SmallX86", - "value": "m3.small.x86" - }, - { - "name": "N2XLargeX86", - "value": "n2.xlarge.x86" - }, - { - "name": "N3XLargeX86", - "value": "n3.xlarge.x86" - }, - { - "name": "S3XLargeX86", - "value": "s3.xlarge.x86" - }, - { - "name": "T3SmallX86", - "value": "t3.small.x86" - }, - { - "name": "X2XLargeX86", - "value": "x2.xlarge.x86" - }, - { - "name": "X3XLargeX86", - "value": "x3.xlarge.x86" - } - ] - }, - "equinix:networkedge/AclTemplateDeviceDetail:AclTemplateDeviceDetail": { - "properties": { - "aclStatus": { - "type": "string", - "description": "Device ACL provisioning status where template was applied. One of `PROVISIONING`, `PROVISIONED`.\n" - }, - "name": { - "type": "string", - "description": "ACL template name.\n" - }, - "uuid": { - "type": "string", - "description": "Device uuid.\n" + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Tags attached to the device\n" } }, "type": "object", + "required": [ + "accessPrivateIpv4", + "accessPublicIpv4", + "accessPublicIpv6", + "alwaysPxe", + "billingCycle", + "description", + "deviceId", + "facility", + "hardwareReservationId", + "hostname", + "ipxeScriptUrl", + "metro", + "networks", + "networkType", + "operatingSystem", + "plan", + "ports", + "projectId", + "rootPassword", + "sosHostname", + "sshKeyIds", + "state", + "storage", + "tags" + ], "language": { "nodejs": { - "requiredOutputs": [ - "aclStatus", - "name", - "uuid" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/AclTemplateInboundRule:AclTemplateInboundRule": { + "equinix:metal/getDevicesDeviceNetwork:getDevicesDeviceNetwork": { "properties": { - "description": { - "type": "string", - "description": "Inbound rule description, up to 200 characters.\n" - }, - "dstPort": { - "type": "string", - "description": "Inbound traffic destination ports. Allowed values are a comma separated list of ports, e.g., `20,22,23`, port range, e.g., `1023-1040` or word `any`.\n" - }, - "protocol": { + "address": { "type": "string", - "oneOf": [ - { - "type": "string" - }, - { - "type": "string", - "$ref": "#/types/equinix:networkedge/aclRuleProtocolType:AclRuleProtocolType" - } - ], - "description": "Inbound traffic protocol. One of `IP`, `TCP`, `UDP`.\n" + "description": "IPv4 or IPv6 address string\n" }, - "sequenceNumber": { + "cidr": { "type": "integer", - "description": "Inbound rule sequence number\n" - }, - "sourceType": { - "type": "string", - "description": "Type of traffic source used in a given inbound rule\n", - "deprecationMessage": "Source Type will not be returned" + "description": "Bit length of the network mask of the address\n" }, - "srcPort": { - "type": "string", - "description": "Inbound traffic source ports. Allowed values are a comma separated list of ports, e.g., `20,22,23`, port range, e.g., `1023-1040` or word `any`.\n" + "family": { + "type": "integer", + "description": "IP version - \"4\" or \"6\"\n" }, - "subnet": { + "gateway": { "type": "string", - "description": "Inbound traffic source IP subnet in CIDR format.\n" + "description": "Address of router\n" }, - "subnets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Inbound traffic source IP subnets in CIDR format.\n", - "deprecationMessage": "Use Subnet instead" + "public": { + "type": "boolean", + "description": "Whether the address is routable from the Internet\n" } }, "type": "object", "required": [ - "dstPort", - "protocol", - "srcPort" + "address", + "cidr", + "family", + "gateway", + "public" ], "language": { "nodejs": { - "requiredOutputs": [ - "dstPort", - "protocol", - "sequenceNumber", - "sourceType", - "srcPort" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceClusterDetails:DeviceClusterDetails": { + "equinix:metal/getDevicesDevicePort:getDevicesDevicePort": { "properties": { - "clusterId": { - "type": "string", - "description": "The ID of the cluster.\n" + "bonded": { + "type": "boolean", + "description": "Whether this port is part of a bond in bonded network setup\n" }, - "clusterName": { + "id": { "type": "string", - "description": "The name of the cluster device\n" + "description": "The ID of the device\n" }, - "node0": { - "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode0:DeviceClusterDetailsNode0", - "description": "An object that has `node0` configuration. See Cluster Details - Nodes below for more details.\n" + "mac": { + "type": "string", + "description": "MAC address assigned to the port\n" }, - "node1": { - "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode1:DeviceClusterDetailsNode1", - "description": "An object that has `node1` configuration. See Cluster Details - Nodes below for more details.\n" + "name": { + "type": "string", + "description": "Name of the port (e.g. eth0, or bond0)\n" }, - "numOfNodes": { - "type": "integer", - "description": "The number of nodes in the cluster.\n" + "type": { + "type": "string", + "description": "Type of the port (e.g. NetworkPort or NetworkBondPort)\n" } }, "type": "object", "required": [ - "clusterName", - "node0", - "node1" + "bonded", + "id", + "mac", + "name", + "type" ], "language": { "nodejs": { - "requiredOutputs": [ - "clusterId", - "clusterName", - "node0", - "node1", - "numOfNodes" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceClusterDetailsNode0:DeviceClusterDetailsNode0": { + "equinix:metal/getDevicesFilter:getDevicesFilter": { "properties": { - "licenseFileId": { - "type": "string", - "description": "License file id. This is necessary for Fortinet and Juniper clusters.\n", - "willReplaceOnChanges": true - }, - "licenseToken": { - "type": "string", - "description": "License token. This is necessary for Palo Alto clusters.\n", - "secret": true, - "willReplaceOnChanges": true + "all": { + "type": "boolean", + "description": "If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is `false`.\n\nAll fields in the `devices` block defined below can be used as attribute for both `sort` and `filter` blocks.\n" }, - "name": { + "attribute": { "type": "string", - "description": "Device name.\n" + "description": "The attribute used to filter. Filter attributes are case-sensitive\n" }, - "uuid": { + "matchBy": { "type": "string", - "description": "Device unique identifier.\n" + "description": "The type of comparison to apply. One of: `in` , `re`, `substring`, `less_than`, `less_than_or_equal`, `greater_than`, `greater_than_or_equal`. Default is `in`.\n" }, - "vendorConfiguration": { - "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode0VendorConfiguration:DeviceClusterDetailsNode0VendorConfiguration", - "description": "An object that has fields relevant to the vendor of the cluster device. See Cluster Details - Nodes - Vendor Configuration below for more details.\n", - "willReplaceOnChanges": true + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values\n" } }, "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "name", - "uuid" - ] - } - } + "required": [ + "attribute", + "values" + ] }, - "equinix:networkedge/DeviceClusterDetailsNode0VendorConfiguration:DeviceClusterDetailsNode0VendorConfiguration": { + "equinix:metal/getDevicesSort:getDevicesSort": { "properties": { - "activationKey": { - "type": "string", - "description": "Activation key. This is required for Velocloud clusters.\n", - "secret": true, - "willReplaceOnChanges": true - }, - "adminPassword": { - "type": "string", - "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types.\n", - "secret": true, - "willReplaceOnChanges": true - }, - "controller1": { - "type": "string", - "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device.\n", - "willReplaceOnChanges": true - }, - "controllerFqdn": { + "attribute": { "type": "string", - "description": "Controller fqdn. This is required for Velocloud clusters.\n", - "willReplaceOnChanges": true + "description": "The attribute used to sort the results. Sort attributes are case-sensitive\n" }, - "hostname": { + "direction": { "type": "string", - "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters.\n", - "willReplaceOnChanges": true - }, - "licenseId": { + "description": "Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc\n" + } + }, + "type": "object", + "required": [ + "attribute" + ] + }, + "equinix:metal/getFacilityCapacity:getFacilityCapacity": { + "properties": { + "plan": { "type": "string", - "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Device plan that must be available in selected location.\n" }, - "licenseKey": { + "quantity": { + "type": "integer", + "description": "Minimun number of devices that must be available in selected location. Default is `1`.\n" + } + }, + "type": "object", + "required": [ + "plan" + ] + }, + "equinix:metal/getInterconnectionPort:getInterconnectionPort": { + "properties": { + "id": { "type": "string", - "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Port UUID.\n" }, - "panoramaAuthKey": { + "linkStatus": { "type": "string", - "description": "Panorama Server Auth Key. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Port link status.\n" }, - "panoramaIpAddress": { + "name": { "type": "string", - "description": "Panorama Server IP Address. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", - "willReplaceOnChanges": true + "description": "Port name.\n" }, - "privateAddress": { + "role": { "type": "string", - "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true + "description": "Port role - primary or secondary.\n" }, - "privateCidrMask": { - "type": "string", - "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true + "speed": { + "type": "integer", + "description": "Port speed in bits per second.\n" }, - "privateGateway": { + "status": { "type": "string", - "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true + "description": "Port status.\n" }, - "rootPassword": { - "type": "string", - "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster.\n", - "secret": true, - "willReplaceOnChanges": true + "virtualCircuitIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IDs of virtual cicruits attached to this port.\n" } }, "type": "object", + "required": [ + "id", + "linkStatus", + "name", + "role", + "speed", + "status", + "virtualCircuitIds" + ], "language": { "nodejs": { - "requiredOutputs": [ - "adminPassword" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceClusterDetailsNode1:DeviceClusterDetailsNode1": { + "equinix:metal/getInterconnectionServiceToken:getInterconnectionServiceToken": { "properties": { - "licenseFileId": { + "expiresAt": { "type": "string", - "description": "License file id. This is necessary for Fortinet and Juniper clusters.\n", - "willReplaceOnChanges": true + "description": "Expiration date of the service token.\n" }, - "licenseToken": { + "id": { "type": "string", - "description": "License token. This is necessary for Palo Alto clusters.\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Port UUID.\n" }, - "name": { + "maxAllowedSpeed": { "type": "string", - "description": "Device name.\n" + "description": "Maximum allowed speed for the service token, string like in the `speed` attribute.\n" }, - "uuid": { + "role": { "type": "string", - "description": "Device unique identifier.\n" + "description": "Port role - primary or secondary.\n" }, - "vendorConfiguration": { - "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode1VendorConfiguration:DeviceClusterDetailsNode1VendorConfiguration", - "description": "An object that has fields relevant to the vendor of the cluster device. See Cluster Details - Nodes - Vendor Configuration below for more details.\n", - "willReplaceOnChanges": true + "state": { + "type": "string" + }, + "type": { + "type": "string", + "description": "Token type, `a_side` or `z_side`.\n" } }, "type": "object", + "required": [ + "expiresAt", + "id", + "maxAllowedSpeed", + "role", + "state", + "type" + ], "language": { "nodejs": { - "requiredOutputs": [ - "name", - "uuid" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceClusterDetailsNode1VendorConfiguration:DeviceClusterDetailsNode1VendorConfiguration": { + "equinix:metal/getMetroCapacity:getMetroCapacity": { "properties": { - "activationKey": { + "plan": { "type": "string", - "description": "Activation key. This is required for Velocloud clusters.\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Device plan that must be available in selected location.\n" }, - "adminPassword": { + "quantity": { + "type": "integer", + "description": "Minimum number of devices that must be available in selected location. Default is `1`.\n" + } + }, + "type": "object", + "required": [ + "plan" + ] + }, + "equinix:metal/getOrganizationAddress:getOrganizationAddress": { + "properties": { + "address": { "type": "string", - "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types.\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Postal address.\n" }, - "controller1": { + "city": { "type": "string", - "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device.\n", - "willReplaceOnChanges": true + "description": "City name.\n" }, - "controllerFqdn": { + "country": { "type": "string", - "description": "Controller fqdn. This is required for Velocloud clusters.\n", - "willReplaceOnChanges": true + "description": "Two letter country code (ISO 3166-1 alpha-2), e.g. US.\n" }, - "hostname": { + "state": { "type": "string", - "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters.\n", - "willReplaceOnChanges": true + "description": "State name.\n" }, - "licenseId": { + "zipCode": { "type": "string", - "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true, - "willReplaceOnChanges": true + "description": "Zip Code.\n" + } + }, + "type": "object", + "required": [ + "address", + "city", + "country", + "state", + "zipCode" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:metal/getPlansFilter:getPlansFilter": { + "properties": { + "all": { + "type": "boolean", + "description": "If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is `false`.\n\nAll fields in the `plans` block defined below can be used as attribute for both `sort` and `filter` blocks.\n" }, - "licenseKey": { + "attribute": { "type": "string", - "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true, - "willReplaceOnChanges": true + "description": "The attribute used to filter. Filter attributes are case-sensitive\n" }, - "panoramaAuthKey": { + "matchBy": { "type": "string", - "description": "Panorama Server Auth Key. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", - "secret": true, - "willReplaceOnChanges": true - }, - "panoramaIpAddress": { - "type": "string", - "description": "Panorama Server IP Address. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", - "willReplaceOnChanges": true - }, - "privateAddress": { - "type": "string", - "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true - }, - "privateCidrMask": { - "type": "string", - "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true - }, - "privateGateway": { - "type": "string", - "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "willReplaceOnChanges": true + "description": "The type of comparison to apply. One of: `in` , `re`, `substring`, `less_than`, `less_than_or_equal`, `greater_than`, `greater_than_or_equal`. Default is `in`.\n" }, - "rootPassword": { - "type": "string", - "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster.\n", - "secret": true, - "willReplaceOnChanges": true + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values\n" } }, "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "adminPassword" - ] - } - } + "required": [ + "attribute", + "values" + ] }, - "equinix:networkedge/DeviceInterface:DeviceInterface": { + "equinix:metal/getPlansPlan:getPlansPlan": { "properties": { - "assignedType": { - "type": "string", - "description": "interface management type (Equinix Managed or empty).\n" + "availableInMetros": { + "type": "array", + "items": { + "type": "string" + }, + "description": "list of metros where the plan is available\n" }, - "id": { - "type": "integer", - "description": "interface identifier.\n" + "availableIns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(**Deprecated**) list of facilities where the plan is available\n", + "deprecationMessage": "Use available_in_metros instead. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices" }, - "ipAddress": { + "class": { "type": "string", - "description": "interface IP address.\n" + "description": "plan class\n" }, - "macAddress": { + "deploymentTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "list of deployment types, e.g. on_demand, spot_market\n" + }, + "description": { "type": "string", - "description": "interface MAC address.\n" + "description": "description of the plan\n" }, - "name": { + "id": { "type": "string", - "description": "Device name.\n" + "description": "id of the plan\n" }, - "operationalStatus": { + "legacy": { + "type": "boolean", + "description": "flag showing if it's a legacy plan\n" + }, + "line": { "type": "string", - "description": "interface operational status. One of `up`, `down`.\n" + "description": "plan line, e.g. baremetal\n" }, - "status": { + "name": { "type": "string", - "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" + "description": "name of the plan\n" }, - "type": { + "pricingHour": { + "type": "number", + "description": "plan hourly price\n" + }, + "pricingMonth": { + "type": "number", + "description": "plan monthly price\n" + }, + "slug": { "type": "string", - "description": "interface type.\n" + "description": "plan slug\n" } }, "type": "object", + "required": [ + "availableIns", + "availableInMetros", + "class", + "deploymentTypes", + "description", + "id", + "legacy", + "line", + "name", + "pricingHour", + "pricingMonth", + "slug" + ], "language": { "nodejs": { - "requiredOutputs": [ - "assignedType", - "id", - "ipAddress", - "macAddress", - "name", - "operationalStatus", - "status", - "type" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceLinkDevice:DeviceLinkDevice": { + "equinix:metal/getPlansSort:getPlansSort": { + "properties": { + "attribute": { + "type": "string", + "description": "The attribute used to sort the results. Sort attributes are case-sensitive\n" + }, + "direction": { + "type": "string", + "description": "Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc\n" + } + }, + "type": "object", + "required": [ + "attribute" + ] + }, + "equinix:metal/getProjectBgpConfig:getProjectBgpConfig": { "properties": { "asn": { "type": "integer", - "description": "Device ASN number. Not required for self configured devices.\n" + "description": "Autonomous System Number for local BGP deployment.\n" }, - "id": { + "deploymentType": { "type": "string", - "description": "Device identifier.\n" + "description": "One of `private`, `public`.\n" }, - "interfaceId": { + "maxPrefix": { "type": "integer", - "description": "Device network interface identifier to use for device link connection.\n", - "willReplaceOnChanges": true + "description": "The maximum number of route filters allowed per server.\n" }, - "ipAddress": { + "md5": { "type": "string", - "description": "IP address from device link subnet that was assigned to the device\n" + "description": "Password for BGP session in plaintext (not a checksum).\n" }, "status": { "type": "string", - "description": "device link provisioning status on a given device. One of `PROVISIONING`, `PROVISIONED`, `DEPROVISIONING`, `DEPROVISIONED`, `FAILED`.\n" + "description": "Status of BGP configuration in the project.\n" } }, "type": "object", "required": [ - "id" + "asn", + "deploymentType", + "maxPrefix", + "md5", + "status" ], "language": { "nodejs": { - "requiredOutputs": [ - "id", - "ipAddress", - "status" - ] + "requiredInputs": [] } } }, - "equinix:networkedge/DeviceLinkLink:DeviceLinkLink": { - "properties": { - "accountNumber": { - "type": "string", - "description": "billing account number to be used for connection charges\n" - }, - "dstMetroCode": { - "type": "string", - "description": "connection destination metro code.\n" - }, - "dstZoneCode": { - "type": "string", - "description": "connection destination zone code is not required.\n", - "deprecationMessage": "DestinationZoneCode is not required" - }, - "srcMetroCode": { - "type": "string", - "description": "connection source metro code.\n" - }, - "srcZoneCode": { - "type": "string", - "description": "connection source zone code is not required.\n", - "deprecationMessage": "SourceZoneCode is not required" - }, - "throughput": { - "type": "string", - "description": "connection throughput.\n" + "equinix:metal/ipBlockType:IpBlockType": { + "type": "string", + "enum": [ + { + "name": "GlobalIPv4", + "value": "global_ipv4" }, - "throughputUnit": { - "type": "string", - "description": "connection throughput unit (Mbps or Gbps).\n" + { + "name": "PublicIPv4", + "value": "public_ipv4" } - }, - "type": "object", - "required": [ - "accountNumber", - "dstMetroCode", - "srcMetroCode", - "throughput", - "throughputUnit" ] }, - "equinix:networkedge/DeviceLinkMetroLink:DeviceLinkMetroLink": { - "properties": { - "accountNumber": { - "type": "string", - "description": "billing account number to be used for connection charges\n" + "equinix:metal/networkType:NetworkType": { + "type": "string", + "enum": [ + { + "name": "Layer3", + "value": "layer3" }, - "metroCode": { - "type": "string", - "description": "connection metro code.\n" + { + "name": "Layer2Individual", + "value": "layer2-individual" }, - "throughput": { - "type": "string", - "description": "connection throughput.\n" + { + "name": "Layer2Bonded", + "value": "layer2-bonded" }, - "throughputUnit": { - "type": "string", - "description": "connection throughput unit (Mbps or Gbps).\n" + { + "name": "Hybrid", + "value": "hybrid" } - }, - "type": "object", - "required": [ - "accountNumber", - "metroCode", - "throughput", - "throughputUnit" ] }, - "equinix:networkedge/DeviceSecondaryDevice:DeviceSecondaryDevice": { - "properties": { - "accountNumber": { - "type": "string", - "description": "Billing account number for secondary device.\n", - "willReplaceOnChanges": true - }, - "aclTemplateId": { - "type": "string", - "description": "Identifier of a WAN interface ACL template that will be applied on a secondary device.\n" + "equinix:metal/operatingSystem:OperatingSystem": { + "description": "See https://deploy.equinix.com/developers/api/metal/#tag/OperatingSystems/operation/findOperatingSystems", + "type": "string", + "enum": [ + { + "name": "Alma8", + "value": "alma_8" }, - "additionalBandwidth": { - "type": "integer", - "description": "Additional Internet bandwidth, in Mbps, for a secondary device.\n" + { + "name": "Alma9", + "value": "alma_9" }, - "asn": { - "type": "integer", - "description": "(Autonomous System Number) Unique identifier for a network on the internet.\n" + { + "name": "Alpine3", + "value": "alpine_3" }, - "cloudInitFileId": { - "type": "string", - "description": "Identifier of a cloud init file that will be applied on a secondary device.\n", - "willReplaceOnChanges": true + { + "name": "CentOS6", + "value": "centos_6" }, - "hostname": { - "type": "string", - "description": "Secondary device hostname.\n", - "willReplaceOnChanges": true + { + "name": "CentOS7", + "value": "centos_7" }, - "ibx": { - "type": "string", - "description": "Device location Equinix Business Exchange name.\n" + { + "name": "CentOS8", + "value": "centos_8" }, - "interfaces": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/DeviceSecondaryDeviceInterface:DeviceSecondaryDeviceInterface" - }, - "description": "List of device interfaces. See Interface Attribute below for more details.\n" + { + "name": "CoreOSAlpha", + "value": "coreos_alpha" }, - "licenseFile": { - "type": "string", - "description": "Path to the license file that will be uploaded and applied on a secondary device. Applicable for some device types in BYOL licensing mode.\n", - "willReplaceOnChanges": true + { + "name": "CoreOSBeta", + "value": "coreos_beta" }, - "licenseFileId": { - "type": "string", - "description": "Identifier of a license file that will be applied on a secondary device.\n", - "willReplaceOnChanges": true + { + "name": "CoreOSStable", + "value": "coreos_stable" }, - "licenseStatus": { - "type": "string", - "description": "Device license registration status. Possible values are `APPLYING_LICENSE`, `REGISTERED`, `APPLIED`, `WAITING_FOR_CLUSTER_SETUP`, `REGISTRATION_FAILED`.\n" + { + "name": "CustomIPXE", + "value": "custom_ipxe" }, - "licenseToken": { - "type": "string", - "description": "License Token can be provided for some device types o the device.\n", - "willReplaceOnChanges": true + { + "name": "Debian10", + "value": "debian_10" }, - "metroCode": { - "type": "string", - "description": "Metro location of a secondary device.\n", - "willReplaceOnChanges": true + { + "name": "Debian11", + "value": "debian_11" }, - "mgmtAclTemplateUuid": { - "type": "string", - "description": "Identifier of an MGMT interface ACL template that will be applied on a secondary device.\n* `ssh-key` - (Optional) Up to one definition of SSH key that will be provisioned on a secondary device.\n" + { + "name": "Debian7", + "value": "debian_7" }, - "name": { - "type": "string", - "description": "Secondary device name.\n" + { + "name": "Debian8", + "value": "debian_8" }, - "notifications": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of email addresses that will receive notifications about secondary device.\n" + { + "name": "Debian9", + "value": "debian_9" }, - "projectId": { - "type": "string", - "description": "Unique Identifier for the project resource where the device is scoped to.If you leave it out, the device will be created under the default project id of your organization.\n" + { + "name": "Fedora31", + "value": "fedora_31" }, - "redundancyType": { - "type": "string", - "description": "Device redundancy type applicable for HA devices, either primary or secondary.\n" + { + "name": "Fedora34", + "value": "fedora_34" }, - "redundantId": { - "type": "string", - "description": "Unique identifier for a redundant device applicable for HA devices.\n" + { + "name": "FlatcarAlpha", + "value": "flatcar_alpha" }, - "region": { - "type": "string", - "description": "Device location region.\n" + { + "name": "FlatcarBeta", + "value": "flatcar_beta" }, - "sshIpAddress": { - "type": "string", - "description": "IP address of SSH enabled interface on the device.\n" + { + "name": "FlatcarEdge", + "value": "flatcar_edge" }, - "sshIpFqdn": { - "type": "string", - "description": "FQDN of SSH enabled interface on the device.\n" + { + "name": "FlatcarLTS", + "value": "flatcar_lts" }, - "sshKey": { - "$ref": "#/types/equinix:networkedge/DeviceSecondaryDeviceSshKey:DeviceSecondaryDeviceSshKey", - "description": "Definition of SSH key that will be provisioned on a device\n", - "willReplaceOnChanges": true + { + "name": "FlatcarStable", + "value": "flatcar_stable" }, - "status": { - "type": "string", - "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" + { + "name": "FreeBSD10_3", + "value": "freebsd_10_3" }, - "uuid": { - "type": "string", - "description": "Device unique identifier.\n" + { + "name": "FreeBSD10_4", + "value": "freebsd_10_4" }, - "vendorConfiguration": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs of vendor specific configuration parameters for a secondary device. Key values are `controller1`, `activationKey`, `managementType`, `siteId`, `systemIpAddress`, `privateAddress`, `privateCidrMask`, `privateGateway`, `licenseKey`, `licenseId`, `panoramaAuthKey`, `panoramaIpAddress`.\n", - "willReplaceOnChanges": true + { + "name": "FreeBSD11_0", + "value": "freebsd_11_0" }, - "wanInterfaceId": { - "type": "string", - "description": "device interface id picked for WAN\n", - "willReplaceOnChanges": true + { + "name": "FreeBSD11_1", + "value": "freebsd_11_1" }, - "zoneCode": { - "type": "string", - "description": "Device location zone code.\n" - } - }, - "type": "object", - "required": [ - "accountNumber", - "metroCode", - "name", - "notifications" - ], - "language": { - "nodejs": { - "requiredOutputs": [ - "accountNumber", - "additionalBandwidth", - "asn", - "ibx", - "interfaces", - "licenseFileId", - "licenseStatus", - "metroCode", - "name", - "notifications", - "projectId", - "redundancyType", - "redundantId", - "region", - "sshIpAddress", - "sshIpFqdn", - "status", - "uuid", - "vendorConfiguration", - "zoneCode" - ] - } - } - }, - "equinix:networkedge/DeviceSecondaryDeviceInterface:DeviceSecondaryDeviceInterface": { - "properties": { - "assignedType": { - "type": "string", - "description": "interface management type (Equinix Managed or empty).\n" + { + "name": "FreeBSD11_2", + "value": "freebsd_11_2" }, - "id": { - "type": "integer", - "description": "interface identifier.\n" + { + "name": "FreeBSD11_3", + "value": "freebsd_11_3" }, - "ipAddress": { - "type": "string", - "description": "interface IP address.\n" + { + "name": "FreeBSD11_4", + "value": "freebsd_11_4" }, - "macAddress": { - "type": "string", - "description": "interface MAC address.\n" + { + "name": "FreeBSD12Testing", + "value": "freebsd_12_testing" }, - "name": { - "type": "string", - "description": "Device name.\n" + { + "name": "FreeBSD12_1", + "value": "freebsd_12_1" }, - "operationalStatus": { - "type": "string", - "description": "interface operational status. One of `up`, `down`.\n" + { + "name": "FreeBSD13_0", + "value": "freebsd_13_0" }, - "status": { - "type": "string", - "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" + { + "name": "FreeBSD13_1", + "value": "freebsd_13_1" }, - "type": { - "type": "string", - "description": "interface type.\n" - } - }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "assignedType", - "id", - "ipAddress", - "macAddress", - "name", - "operationalStatus", - "status", - "type" - ] - } - } - }, - "equinix:networkedge/DeviceSecondaryDeviceSshKey:DeviceSecondaryDeviceSshKey": { - "properties": { - "keyName": { - "type": "string", - "description": "Reference by name to previously provisioned public SSH key\n" + { + "name": "FreeBSD13_testing", + "value": "freebsd_13_testing" }, - "username": { - "type": "string", - "description": "username associated with given key.\n" - } - }, - "type": "object", - "required": [ - "username" - ] - }, - "equinix:networkedge/DeviceSshKey:DeviceSshKey": { - "properties": { - "keyName": { - "type": "string", - "description": "Reference by name to previously provisioned public SSH key\n" + { + "name": "HookEsxi7", + "value": "hook_esxi7" }, - "username": { - "type": "string", - "description": "username associated with given key.\n" - } - }, - "type": "object", - "required": [ - "username" - ] - }, - "equinix:networkedge/aclRuleProtocolType:AclRuleProtocolType": { - "type": "string", - "enum": [ { - "name": "IP", - "value": "IP" + "name": "NixOS17_03", + "value": "nixos_17_03" }, { - "name": "TCP", - "value": "TCP" + "name": "NixOS18_03", + "value": "nixos_18_03" }, { - "name": "UDP", - "value": "UDP" - } - ] - }, - "equinix:networkedge/fileType:FileType": { - "type": "string", - "enum": [ + "name": "NixOS19_03", + "value": "nixos_19_03" + }, { - "name": "License", - "value": "LICENSE" + "name": "NixOS20_09", + "value": "nixos_20_09" }, { - "name": "CloudInit", - "value": "CLOUD_INIT" - } - ] - }, - "equinix:networkedge/getDeviceClusterDetail:getDeviceClusterDetail": { - "properties": { - "clusterId": { - "type": "string", - "description": "The id of the cluster\n" + "name": "NixOS21_11", + "value": "nixos_21_11" }, - "clusterName": { - "type": "string", - "description": "The name of the cluster device\n" + { + "name": "NixOS22_05", + "value": "nixos_22_05" }, - "node0s": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode0:getDeviceClusterDetailNode0" - }, - "description": "An object that has node0 details\n" + { + "name": "NixOS22_11", + "value": "nixos_22_11" }, - "node1s": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode1:getDeviceClusterDetailNode1" - }, - "description": "An object that has node1 details\n" + { + "name": "Nixos21_05", + "value": "nixos_21_05" }, - "numOfNodes": { - "type": "integer", - "description": "The number of nodes in the cluster\n" - } - }, - "type": "object", - "required": [ - "clusterId", - "clusterName", - "node0s", - "node1s", - "numOfNodes" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:networkedge/getDeviceClusterDetailNode0:getDeviceClusterDetailNode0": { - "properties": { - "licenseFileId": { - "type": "string", - "description": "Unique identifier of applied license file\n", - "secret": true + { + "name": "NutanixCentos", + "value": "nutanix_centos" }, - "licenseToken": { - "type": "string", - "description": "License token. This is necessary for Palo Alto clusters\n" + { + "name": "NutanixLTS5_19_1", + "value": "nutanix_lts_5_19_1" }, - "name": { - "type": "string", - "description": "Name of an existing Equinix Network Edge device\n" + { + "name": "NutanixLTS5_20", + "value": "nutanix_lts_5_20" }, - "uuid": { - "type": "string", - "description": "UUID of an existing Equinix Network Edge device\n" + { + "name": "OpenSUSE42_3", + "value": "opensuse_42_3" }, - "vendorConfigurations": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode0VendorConfiguration:getDeviceClusterDetailNode0VendorConfiguration" - }, - "description": "An object that has fields relevant to the vendor of the cluster device\n" - } - }, - "type": "object", - "required": [ - "licenseFileId", - "licenseToken", - "name", - "uuid", - "vendorConfigurations" - ], - "language": { - "nodejs": { - "requiredInputs": [] - } - } - }, - "equinix:networkedge/getDeviceClusterDetailNode0VendorConfiguration:getDeviceClusterDetailNode0VendorConfiguration": { - "properties": { - "activationKey": { - "type": "string", - "description": "Activation key. This is required for Velocloud clusters\n", - "secret": true + { + "name": "RHEL7", + "value": "rhel_7" }, - "adminPassword": { - "type": "string", - "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types\n", - "secret": true + { + "name": "RHEL8", + "value": "rhel_8" }, - "controller1": { - "type": "string", - "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device\n" + { + "name": "RHEL9", + "value": "rhel_9" }, - "controllerFqdn": { - "type": "string", - "description": "Controller fqdn. This is required for Velocloud clusters\n" + { + "name": "RancherOS", + "value": "rancher" }, - "hostname": { - "type": "string", - "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters\n" + { + "name": "Rocky8", + "value": "rocky_8" }, - "licenseId": { - "type": "string", - "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true + { + "name": "Rocky9", + "value": "rocky_9" }, - "licenseKey": { - "type": "string", - "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true + { + "name": "SLES12SP3", + "value": "suse_sles12_sp3" }, - "panoramaAuthKey": { - "type": "string", - "description": "Panorama Server Auth Key. This field is relevant only for Palo Alto Networks Firewall devices\n", - "secret": true + { + "name": "ScientificLinux6", + "value": "scientific_6" }, - "panoramaIpAddress": { - "type": "string", - "description": "Panorama Server IP Address. This field is relevant only for Palo Alto Networks Firewall devices\n" + { + "name": "TalosV1", + "value": "talos_v1" }, - "privateAddress": { - "type": "string", - "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n" + { + "name": "Ubuntu1710", + "value": "ubuntu_17_10" }, - "privateCidrMask": { - "type": "string", - "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n" + { + "name": "Ubuntu18_04", + "value": "ubuntu_18_04" }, - "privateGateway": { - "type": "string", - "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n" + { + "name": "Ubuntu1904", + "value": "ubuntu_19_04" }, - "rootPassword": { - "type": "string", - "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster\n", - "secret": true + { + "name": "Ubuntu19_10", + "value": "ubuntu_19_10" + }, + { + "name": "Ubuntu20_04", + "value": "ubuntu_20_04" + }, + { + "name": "Ubuntu20_04_legacy", + "value": "ubuntu_20_04_legacy" + }, + { + "name": "Ubuntu20_10", + "value": "ubuntu_20_10" + }, + { + "name": "Ubuntu2204", + "value": "ubuntu_22_04" + }, + { + "name": "VMWareAlloyVcf", + "value": "vmware_alloy_vcf" + }, + { + "name": "VMWareEsxi5_5", + "value": "vmware_esxi_5_5" + }, + { + "name": "VMWareEsxi6_0", + "value": "vmware_esxi_6_0" + }, + { + "name": "VMWareEsxi6_5", + "value": "vmware_esxi_6_5" + }, + { + "name": "VMWareEsxi6_7", + "value": "vmware_esxi_6_7" + }, + { + "name": "VMWareEsxi6_7_vcf", + "value": "vmware_esxi_6_7_vcf" + }, + { + "name": "VMWareEsxi7_0", + "value": "vmware_esxi_7_0" + }, + { + "name": "VMWareEsxi7_0U2a", + "value": "vmware_esxi_7_0U2a" + }, + { + "name": "VMWareEsxi7_0_vcf", + "value": "vmware_esxi_7_0_vcf" + }, + { + "name": "VMWareNsx2_5_0", + "value": "vmware_nsx_2_5_0" + }, + { + "name": "VMWareNsx3_0_0", + "value": "vmware_nsx_3_0_0" + }, + { + "name": "Virtuozzo7", + "value": "virtuozzo_7" + }, + { + "name": "Windows2012R2", + "value": "windows_2012_r2" + }, + { + "name": "Windows2016", + "value": "windows_2016" + }, + { + "name": "Windows2019", + "value": "windows_2019" + }, + { + "name": "Windows2022", + "value": "windows_2022" } - }, - "type": "object", - "required": [ - "activationKey", - "adminPassword", - "controller1", - "controllerFqdn", - "hostname", - "licenseId", - "licenseKey", - "panoramaAuthKey", - "panoramaIpAddress", - "privateAddress", - "privateCidrMask", - "privateGateway", - "rootPassword" - ], - "language": { - "nodejs": { - "requiredInputs": [] + ] + }, + "equinix:metal/plan:Plan": { + "description": "See https://deploy.equinix.com/developers/api/metal/#tag/Plans/operation/findPlans", + "type": "string", + "enum": [ + { + "name": "A3LargeX86", + "value": "a3.large.x86" + }, + { + "name": "C2LargeARM", + "value": "c2.large.arm" + }, + { + "name": "C2MediumX86", + "value": "c2.medium.x86" + }, + { + "name": "C3LargeARM", + "value": "c3.large.arm64" + }, + { + "name": "C3MediumX86", + "value": "c3.medium.x86" + }, + { + "name": "C3SmallX86", + "value": "c3.small.x86" + }, + { + "name": "F3LargeX86", + "value": "f3.large.x86" + }, + { + "name": "F3MediumX86", + "value": "f3.medium.x86" + }, + { + "name": "G2LargeX86", + "value": "g2.large.x86" + }, + { + "name": "M2XLargeX86", + "value": "m2.xlarge.x86" + }, + { + "name": "M3LargeX86", + "value": "m3.large.x86" + }, + { + "name": "M3SmallX86", + "value": "m3.small.x86" + }, + { + "name": "N2XLargeX86", + "value": "n2.xlarge.x86" + }, + { + "name": "N3XLargeX86", + "value": "n3.xlarge.x86" + }, + { + "name": "S3XLargeX86", + "value": "s3.xlarge.x86" + }, + { + "name": "T3SmallX86", + "value": "t3.small.x86" + }, + { + "name": "X2XLargeX86", + "value": "x2.xlarge.x86" + }, + { + "name": "X3XLargeX86", + "value": "x3.xlarge.x86" } - } + ] }, - "equinix:networkedge/getDeviceClusterDetailNode1:getDeviceClusterDetailNode1": { + "equinix:networkedge/AclTemplateDeviceDetail:AclTemplateDeviceDetail": { "properties": { - "licenseFileId": { - "type": "string", - "description": "Unique identifier of applied license file\n", - "secret": true - }, - "licenseToken": { + "aclStatus": { "type": "string", - "description": "License token. This is necessary for Palo Alto clusters\n" + "description": "Device ACL provisioning status where template was applied. One of `PROVISIONING`, `PROVISIONED`.\n" }, "name": { "type": "string", - "description": "Name of an existing Equinix Network Edge device\n" + "description": "ACL template name.\n" }, "uuid": { "type": "string", - "description": "UUID of an existing Equinix Network Edge device\n" - }, - "vendorConfigurations": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode1VendorConfiguration:getDeviceClusterDetailNode1VendorConfiguration" - }, - "description": "An object that has fields relevant to the vendor of the cluster device\n" + "description": "Device uuid.\n" } }, "type": "object", - "required": [ - "licenseFileId", - "licenseToken", - "name", - "uuid", - "vendorConfigurations" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "aclStatus", + "name", + "uuid" + ] } } }, - "equinix:networkedge/getDeviceClusterDetailNode1VendorConfiguration:getDeviceClusterDetailNode1VendorConfiguration": { + "equinix:networkedge/AclTemplateInboundRule:AclTemplateInboundRule": { "properties": { - "activationKey": { + "description": { "type": "string", - "description": "Activation key. This is required for Velocloud clusters\n", - "secret": true + "description": "Inbound rule description, up to 200 characters.\n" }, - "adminPassword": { - "type": "string", - "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types\n", - "secret": true - }, - "controller1": { + "dstPort": { "type": "string", - "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device\n" + "description": "Inbound traffic destination ports. Allowed values are a comma separated list of ports, e.g., `20,22,23`, port range, e.g., `1023-1040` or word `any`.\n" }, - "controllerFqdn": { + "protocol": { "type": "string", - "description": "Controller fqdn. This is required for Velocloud clusters\n" + "oneOf": [ + { + "type": "string" + }, + { + "type": "string", + "$ref": "#/types/equinix:networkedge/aclRuleProtocolType:AclRuleProtocolType" + } + ], + "description": "Inbound traffic protocol. One of `IP`, `TCP`, `UDP`.\n" }, - "hostname": { - "type": "string", - "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters\n" + "sequenceNumber": { + "type": "integer", + "description": "Inbound rule sequence number\n" }, - "licenseId": { + "sourceType": { "type": "string", - "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true + "description": "Type of traffic source used in a given inbound rule\n", + "deprecationMessage": "Source Type will not be returned" }, - "licenseKey": { + "srcPort": { "type": "string", - "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", - "secret": true + "description": "Inbound traffic source ports. Allowed values are a comma separated list of ports, e.g., `20,22,23`, port range, e.g., `1023-1040` or word `any`.\n" }, - "panoramaAuthKey": { + "subnet": { "type": "string", - "description": "Panorama Server Auth Key. This field is relevant only for Palo Alto Networks Firewall devices\n", - "secret": true + "description": "Inbound traffic source IP subnet in CIDR format.\n" }, - "panoramaIpAddress": { + "subnets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Inbound traffic source IP subnets in CIDR format.\n", + "deprecationMessage": "Use Subnet instead" + } + }, + "type": "object", + "required": [ + "dstPort", + "protocol", + "srcPort" + ], + "language": { + "nodejs": { + "requiredOutputs": [ + "dstPort", + "protocol", + "sequenceNumber", + "sourceType", + "srcPort" + ] + } + } + }, + "equinix:networkedge/DeviceClusterDetails:DeviceClusterDetails": { + "properties": { + "clusterId": { "type": "string", - "description": "Panorama Server IP Address. This field is relevant only for Palo Alto Networks Firewall devices\n" + "description": "The ID of the cluster.\n" }, - "privateAddress": { + "clusterName": { "type": "string", - "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n" + "description": "The name of the cluster device\n" }, - "privateCidrMask": { - "type": "string", - "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n" + "node0": { + "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode0:DeviceClusterDetailsNode0", + "description": "An object that has `node0` configuration. See Cluster Details - Nodes below for more details.\n" }, - "privateGateway": { - "type": "string", - "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n" + "node1": { + "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode1:DeviceClusterDetailsNode1", + "description": "An object that has `node1` configuration. See Cluster Details - Nodes below for more details.\n" }, - "rootPassword": { - "type": "string", - "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster\n", - "secret": true + "numOfNodes": { + "type": "integer", + "description": "The number of nodes in the cluster.\n" } }, "type": "object", "required": [ - "activationKey", - "adminPassword", - "controller1", - "controllerFqdn", - "hostname", - "licenseId", - "licenseKey", - "panoramaAuthKey", - "panoramaIpAddress", - "privateAddress", - "privateCidrMask", - "privateGateway", - "rootPassword" + "clusterName", + "node0", + "node1" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "clusterId", + "clusterName", + "node0", + "node1", + "numOfNodes" + ] } } }, - "equinix:networkedge/getDeviceInterface:getDeviceInterface": { + "equinix:networkedge/DeviceClusterDetailsNode0:DeviceClusterDetailsNode0": { "properties": { - "assignedType": { - "type": "string", - "description": "Interface management type (Equinix Managed or empty)\n" - }, - "id": { - "type": "integer", - "description": "Interface identifier\n" - }, - "ipAddress": { + "licenseFileId": { "type": "string", - "description": "interface IP address\n" + "description": "License file id. This is necessary for Fortinet and Juniper clusters.\n", + "willReplaceOnChanges": true }, - "macAddress": { + "licenseToken": { "type": "string", - "description": "Interface MAC addres\n" + "description": "License token. This is necessary for Palo Alto clusters.\n", + "secret": true, + "willReplaceOnChanges": true }, "name": { "type": "string", - "description": "Name of an existing Equinix Network Edge device\n" - }, - "operationalStatus": { - "type": "string", - "description": "Interface operational status (up or down)\n" + "description": "Device name.\n" }, - "status": { + "uuid": { "type": "string", - "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + "description": "Device unique identifier.\n" }, - "type": { - "type": "string", - "description": "Interface type\n" + "vendorConfiguration": { + "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode0VendorConfiguration:DeviceClusterDetailsNode0VendorConfiguration", + "description": "An object that has fields relevant to the vendor of the cluster device. See Cluster Details - Nodes - Vendor Configuration below for more details.\n", + "willReplaceOnChanges": true } }, "type": "object", - "required": [ - "assignedType", - "id", - "ipAddress", - "macAddress", - "name", - "operationalStatus", - "status", - "type" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "name", + "uuid" + ] } } }, - "equinix:networkedge/getDeviceSecondaryDevice:getDeviceSecondaryDevice": { + "equinix:networkedge/DeviceClusterDetailsNode0VendorConfiguration:DeviceClusterDetailsNode0VendorConfiguration": { "properties": { - "accountNumber": { + "activationKey": { "type": "string", - "description": "Device billing account number\n" + "description": "Activation key. This is required for Velocloud clusters.\n", + "secret": true, + "willReplaceOnChanges": true }, - "aclTemplateId": { + "adminPassword": { "type": "string", - "description": "Unique identifier of applied ACL template\n" - }, - "additionalBandwidth": { - "type": "integer", - "description": "Additional Internet bandwidth, in Mbps, that will be allocated to the device\n" + "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types.\n", + "secret": true, + "willReplaceOnChanges": true }, - "asn": { - "type": "integer", - "description": "Autonomous system number\n" + "controller1": { + "type": "string", + "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device.\n", + "willReplaceOnChanges": true }, - "cloudInitFileId": { + "controllerFqdn": { "type": "string", - "description": "Unique identifier of applied cloud init file\n" + "description": "Controller fqdn. This is required for Velocloud clusters.\n", + "willReplaceOnChanges": true }, "hostname": { "type": "string", - "description": "Device hostname prefix\n" + "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters.\n", + "willReplaceOnChanges": true }, - "ibx": { + "licenseId": { "type": "string", - "description": "Device location Equinix Business Exchange name\n" - }, - "interfaces": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceSecondaryDeviceInterface:getDeviceSecondaryDeviceInterface" - }, - "description": "List of device interfaces\n* `interface.#.id` - interface identifier\n* `interface.#.name` - interface name\n* `interface.#.status` - interface status (AVAILABLE, RESERVED, ASSIGNED)\n* `interface.#.operational_status` - interface operational status (up or down)\n* `interface.#.mac_address` - interface MAC address\n* `interface.#.ip_address` - interface IP address\n* `interface.#.assigned_type` - interface management type (Equinix Managed or empty)\n* `interface.#.type` - interface type\n" + "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true, + "willReplaceOnChanges": true }, - "licenseFile": { + "licenseKey": { "type": "string", - "description": "Path to the license file that will be uploaded and applied on a device, applicable for some device types in BYOL licensing mode\n" + "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true, + "willReplaceOnChanges": true }, - "licenseFileId": { + "panoramaAuthKey": { "type": "string", - "description": "Unique identifier of applied license file\n" + "description": "Panorama Server Auth Key. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", + "secret": true, + "willReplaceOnChanges": true }, - "licenseStatus": { + "panoramaIpAddress": { "type": "string", - "description": "Device license registration status\n* APPLYING_LICENSE\n* REGISTERED\n* APPLIED\n* WAITING_FOR_CLUSTER_SETUP\n* REGISTRATION_FAILED\n* NA\n" + "description": "Panorama Server IP Address. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", + "willReplaceOnChanges": true }, - "licenseToken": { + "privateAddress": { "type": "string", - "description": "License Token applicable for some device types in BYOL licensing mode\n" + "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true }, - "metroCode": { + "privateCidrMask": { "type": "string", - "description": "Device location metro code\n" + "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true }, - "mgmtAclTemplateUuid": { + "privateGateway": { "type": "string", - "description": "Unique identifier of applied MGMT ACL template\n" + "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true }, - "name": { + "rootPassword": { "type": "string", - "description": "Name of an existing Equinix Network Edge device\n" + "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster.\n", + "secret": true, + "willReplaceOnChanges": true + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "adminPassword" + ] + } + } + }, + "equinix:networkedge/DeviceClusterDetailsNode1:DeviceClusterDetailsNode1": { + "properties": { + "licenseFileId": { + "type": "string", + "description": "License file id. This is necessary for Fortinet and Juniper clusters.\n", + "willReplaceOnChanges": true }, - "notifications": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of email addresses that will receive device status notifications\n" + "licenseToken": { + "type": "string", + "description": "License token. This is necessary for Palo Alto clusters.\n", + "secret": true, + "willReplaceOnChanges": true }, - "projectId": { + "name": { "type": "string", - "description": "The unique identifier of Project Resource to which device is scoped to\n" + "description": "Device name.\n" }, - "redundancyType": { + "uuid": { "type": "string", - "description": "Device redundancy type applicable for HA devices, either primary or secondary\n" + "description": "Device unique identifier.\n" }, - "redundantId": { + "vendorConfiguration": { + "$ref": "#/types/equinix:networkedge/DeviceClusterDetailsNode1VendorConfiguration:DeviceClusterDetailsNode1VendorConfiguration", + "description": "An object that has fields relevant to the vendor of the cluster device. See Cluster Details - Nodes - Vendor Configuration below for more details.\n", + "willReplaceOnChanges": true + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "name", + "uuid" + ] + } + } + }, + "equinix:networkedge/DeviceClusterDetailsNode1VendorConfiguration:DeviceClusterDetailsNode1VendorConfiguration": { + "properties": { + "activationKey": { "type": "string", - "description": "Unique identifier for a redundant device applicable for HA devices\n" + "description": "Activation key. This is required for Velocloud clusters.\n", + "secret": true, + "willReplaceOnChanges": true }, - "region": { + "adminPassword": { "type": "string", - "description": "Device location region\n" + "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types.\n", + "secret": true, + "willReplaceOnChanges": true }, - "sshIpAddress": { + "controller1": { "type": "string", - "description": "IP address of SSH enabled interface on the device\n" + "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device.\n", + "willReplaceOnChanges": true }, - "sshIpFqdn": { + "controllerFqdn": { "type": "string", - "description": "FQDN of SSH enabled interface on the device\n" + "description": "Controller fqdn. This is required for Velocloud clusters.\n", + "willReplaceOnChanges": true }, - "sshKeys": { - "type": "array", - "items": { - "$ref": "#/types/equinix:networkedge/getDeviceSecondaryDeviceSshKey:getDeviceSecondaryDeviceSshKey" - }, - "description": "Definition of SSH key that will be provisioned on a device\n" + "hostname": { + "type": "string", + "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters.\n", + "willReplaceOnChanges": true }, - "status": { + "licenseId": { "type": "string", - "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true, + "willReplaceOnChanges": true }, - "uuid": { + "licenseKey": { "type": "string", - "description": "UUID of an existing Equinix Network Edge device\n" + "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true, + "willReplaceOnChanges": true }, - "vendorConfiguration": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Map of vendor specific configuration parameters for a device (controller1, activationKey, managementType, siteId, systemIpAddress)\n" + "panoramaAuthKey": { + "type": "string", + "description": "Panorama Server Auth Key. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", + "secret": true, + "willReplaceOnChanges": true }, - "wanInterfaceId": { + "panoramaIpAddress": { "type": "string", - "description": "device interface id picked for WAN\n" + "description": "Panorama Server IP Address. This field is relevant only for the PA-VM firewall devices to have integration with Panorama Server.\n", + "willReplaceOnChanges": true }, - "zoneCode": { + "privateAddress": { "type": "string", - "description": "Device location zone code\n" + "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true + }, + "privateCidrMask": { + "type": "string", + "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true + }, + "privateGateway": { + "type": "string", + "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "willReplaceOnChanges": true + }, + "rootPassword": { + "type": "string", + "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster.\n", + "secret": true, + "willReplaceOnChanges": true } }, "type": "object", - "required": [ - "accountNumber", - "aclTemplateId", - "additionalBandwidth", - "asn", - "cloudInitFileId", - "hostname", - "ibx", - "interfaces", - "licenseFile", - "licenseFileId", - "licenseStatus", - "licenseToken", - "metroCode", - "mgmtAclTemplateUuid", - "name", - "notifications", - "projectId", - "redundancyType", - "redundantId", - "region", - "sshIpAddress", - "sshIpFqdn", - "sshKeys", - "status", - "uuid", - "vendorConfiguration", - "wanInterfaceId", - "zoneCode" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "adminPassword" + ] } } }, - "equinix:networkedge/getDeviceSecondaryDeviceInterface:getDeviceSecondaryDeviceInterface": { + "equinix:networkedge/DeviceInterface:DeviceInterface": { "properties": { "assignedType": { "type": "string", - "description": "Interface management type (Equinix Managed or empty)\n" + "description": "interface management type (Equinix Managed or empty).\n" }, "id": { "type": "integer", - "description": "Interface identifier\n" + "description": "interface identifier.\n" }, "ipAddress": { "type": "string", - "description": "interface IP address\n" + "description": "interface IP address.\n" }, "macAddress": { "type": "string", - "description": "Interface MAC addres\n" + "description": "interface MAC address.\n" }, "name": { "type": "string", - "description": "Name of an existing Equinix Network Edge device\n" + "description": "Device name.\n" }, "operationalStatus": { "type": "string", - "description": "Interface operational status (up or down)\n" + "description": "interface operational status. One of `up`, `down`.\n" }, "status": { "type": "string", - "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" }, "type": { "type": "string", - "description": "Interface type\n" + "description": "interface type.\n" } }, "type": "object", - "required": [ - "assignedType", - "id", - "ipAddress", - "macAddress", - "name", - "operationalStatus", - "status", - "type" - ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "assignedType", + "id", + "ipAddress", + "macAddress", + "name", + "operationalStatus", + "status", + "type" + ] } } }, - "equinix:networkedge/getDeviceSecondaryDeviceSshKey:getDeviceSecondaryDeviceSshKey": { + "equinix:networkedge/DeviceLinkDevice:DeviceLinkDevice": { "properties": { - "keyName": { + "asn": { + "type": "integer", + "description": "Device ASN number. Not required for self configured devices.\n" + }, + "id": { "type": "string", - "description": "Reference by name to previously provisioned public SSH key\n" + "description": "Device identifier.\n" }, - "username": { + "interfaceId": { + "type": "integer", + "description": "Device network interface identifier to use for device link connection.\n", + "willReplaceOnChanges": true + }, + "ipAddress": { "type": "string", - "description": "Username associated with given key\n" + "description": "IP address from device link subnet that was assigned to the device\n" + }, + "status": { + "type": "string", + "description": "device link provisioning status on a given device. One of `PROVISIONING`, `PROVISIONED`, `DEPROVISIONING`, `DEPROVISIONED`, `FAILED`.\n" } }, "type": "object", "required": [ - "keyName", - "username" + "id" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "id", + "ipAddress", + "status" + ] } } }, - "equinix:networkedge/getDeviceSshKey:getDeviceSshKey": { + "equinix:networkedge/DeviceLinkLink:DeviceLinkLink": { "properties": { - "keyName": { + "accountNumber": { "type": "string", - "description": "Reference by name to previously provisioned public SSH key\n" + "description": "billing account number to be used for connection charges\n" }, - "username": { + "dstMetroCode": { "type": "string", - "description": "Username associated with given key\n" - } - }, + "description": "connection destination metro code.\n" + }, + "dstZoneCode": { + "type": "string", + "description": "connection destination zone code is not required.\n", + "deprecationMessage": "DestinationZoneCode is not required" + }, + "srcMetroCode": { + "type": "string", + "description": "connection source metro code.\n" + }, + "srcZoneCode": { + "type": "string", + "description": "connection source zone code is not required.\n", + "deprecationMessage": "SourceZoneCode is not required" + }, + "throughput": { + "type": "string", + "description": "connection throughput.\n" + }, + "throughputUnit": { + "type": "string", + "description": "connection throughput unit (Mbps or Gbps).\n" + } + }, "type": "object", "required": [ - "keyName", - "username" + "accountNumber", + "dstMetroCode", + "srcMetroCode", + "throughput", + "throughputUnit" + ] + }, + "equinix:networkedge/DeviceLinkMetroLink:DeviceLinkMetroLink": { + "properties": { + "accountNumber": { + "type": "string", + "description": "billing account number to be used for connection charges\n" + }, + "metroCode": { + "type": "string", + "description": "connection metro code.\n" + }, + "throughput": { + "type": "string", + "description": "connection throughput.\n" + }, + "throughputUnit": { + "type": "string", + "description": "connection throughput unit (Mbps or Gbps).\n" + } + }, + "type": "object", + "required": [ + "accountNumber", + "metroCode", + "throughput", + "throughputUnit" + ] + }, + "equinix:networkedge/DeviceSecondaryDevice:DeviceSecondaryDevice": { + "properties": { + "accountNumber": { + "type": "string", + "description": "Billing account number for secondary device.\n", + "willReplaceOnChanges": true + }, + "aclTemplateId": { + "type": "string", + "description": "Identifier of a WAN interface ACL template that will be applied on a secondary device.\n" + }, + "additionalBandwidth": { + "type": "integer", + "description": "Additional Internet bandwidth, in Mbps, for a secondary device.\n" + }, + "asn": { + "type": "integer", + "description": "(Autonomous System Number) Unique identifier for a network on the internet.\n" + }, + "cloudInitFileId": { + "type": "string", + "description": "Identifier of a cloud init file that will be applied on a secondary device.\n", + "willReplaceOnChanges": true + }, + "hostname": { + "type": "string", + "description": "Secondary device hostname.\n", + "willReplaceOnChanges": true + }, + "ibx": { + "type": "string", + "description": "Device location Equinix Business Exchange name.\n" + }, + "interfaces": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/DeviceSecondaryDeviceInterface:DeviceSecondaryDeviceInterface" + }, + "description": "List of device interfaces. See Interface Attribute below for more details.\n" + }, + "licenseFile": { + "type": "string", + "description": "Path to the license file that will be uploaded and applied on a secondary device. Applicable for some device types in BYOL licensing mode.\n", + "willReplaceOnChanges": true + }, + "licenseFileId": { + "type": "string", + "description": "Identifier of a license file that will be applied on a secondary device.\n", + "willReplaceOnChanges": true + }, + "licenseStatus": { + "type": "string", + "description": "Device license registration status. Possible values are `APPLYING_LICENSE`, `REGISTERED`, `APPLIED`, `WAITING_FOR_CLUSTER_SETUP`, `REGISTRATION_FAILED`.\n" + }, + "licenseToken": { + "type": "string", + "description": "License Token can be provided for some device types o the device.\n", + "willReplaceOnChanges": true + }, + "metroCode": { + "type": "string", + "description": "Metro location of a secondary device.\n", + "willReplaceOnChanges": true + }, + "mgmtAclTemplateUuid": { + "type": "string", + "description": "Identifier of an MGMT interface ACL template that will be applied on a secondary device.\n* `ssh-key` - (Optional) Up to one definition of SSH key that will be provisioned on a secondary device.\n" + }, + "name": { + "type": "string", + "description": "Secondary device name.\n" + }, + "notifications": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of email addresses that will receive notifications about secondary device.\n" + }, + "projectId": { + "type": "string", + "description": "Unique Identifier for the project resource where the device is scoped to.If you leave it out, the device will be created under the default project id of your organization.\n" + }, + "redundancyType": { + "type": "string", + "description": "Device redundancy type applicable for HA devices, either primary or secondary.\n" + }, + "redundantId": { + "type": "string", + "description": "Unique identifier for a redundant device applicable for HA devices.\n" + }, + "region": { + "type": "string", + "description": "Device location region.\n" + }, + "sshIpAddress": { + "type": "string", + "description": "IP address of SSH enabled interface on the device.\n" + }, + "sshIpFqdn": { + "type": "string", + "description": "FQDN of SSH enabled interface on the device.\n" + }, + "sshKey": { + "$ref": "#/types/equinix:networkedge/DeviceSecondaryDeviceSshKey:DeviceSecondaryDeviceSshKey", + "description": "Definition of SSH key that will be provisioned on a device\n", + "willReplaceOnChanges": true + }, + "status": { + "type": "string", + "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" + }, + "uuid": { + "type": "string", + "description": "Device unique identifier.\n" + }, + "vendorConfiguration": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of vendor specific configuration parameters for a secondary device. Key values are `controller1`, `activationKey`, `managementType`, `siteId`, `systemIpAddress`, `privateAddress`, `privateCidrMask`, `privateGateway`, `licenseKey`, `licenseId`, `panoramaAuthKey`, `panoramaIpAddress`.\n", + "willReplaceOnChanges": true + }, + "wanInterfaceId": { + "type": "string", + "description": "device interface id picked for WAN\n", + "willReplaceOnChanges": true + }, + "zoneCode": { + "type": "string", + "description": "Device location zone code.\n" + } + }, + "type": "object", + "required": [ + "accountNumber", + "metroCode", + "name", + "notifications" ], "language": { "nodejs": { - "requiredInputs": [] + "requiredOutputs": [ + "accountNumber", + "additionalBandwidth", + "asn", + "ibx", + "interfaces", + "licenseFileId", + "licenseStatus", + "metroCode", + "name", + "notifications", + "projectId", + "redundancyType", + "redundantId", + "region", + "sshIpAddress", + "sshIpFqdn", + "status", + "uuid", + "vendorConfiguration", + "zoneCode" + ] } } }, - "equinix:networkedge/throughputUnit:ThroughputUnit": { - "type": "string", - "enum": [ - { - "name": "Mbps", - "value": "Mbps" + "equinix:networkedge/DeviceSecondaryDeviceInterface:DeviceSecondaryDeviceInterface": { + "properties": { + "assignedType": { + "type": "string", + "description": "interface management type (Equinix Managed or empty).\n" }, - { - "name": "Gbps", - "value": "Gbps" - } - ] - } - }, - "provider": { - "description": "The provider type for the equinix package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n", - "properties": { - "authToken": { - "type": "string", - "description": "The Equinix Metal API auth key for API operations\n" - }, - "clientId": { - "type": "string", - "description": "API Consumer Key available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTID` shell environment variable.\n" - }, - "clientSecret": { - "type": "string", - "description": "API Consumer secret available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTSECRET` shell environment variable.\n" - }, - "endpoint": { - "type": "string", - "description": "The Equinix API base URL to point out desired environment. This argument can also be specified with the\n`EQUINIX_API_ENDPOINT` shell environment variable. (Defaults to `https://api.equinix.com`)\n" + "id": { + "type": "integer", + "description": "interface identifier.\n" + }, + "ipAddress": { + "type": "string", + "description": "interface IP address.\n" + }, + "macAddress": { + "type": "string", + "description": "interface MAC address.\n" + }, + "name": { + "type": "string", + "description": "Device name.\n" + }, + "operationalStatus": { + "type": "string", + "description": "interface operational status. One of `up`, `down`.\n" + }, + "status": { + "type": "string", + "description": "interface status. One of `AVAILABLE`, `RESERVED`, `ASSIGNED`.\n" + }, + "type": { + "type": "string", + "description": "interface type.\n" + } }, - "maxRetries": { - "type": "integer", - "description": "Maximum number of retries in case of network failure.\n" + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "assignedType", + "id", + "ipAddress", + "macAddress", + "name", + "operationalStatus", + "status", + "type" + ] + } + } + }, + "equinix:networkedge/DeviceSecondaryDeviceSshKey:DeviceSecondaryDeviceSshKey": { + "properties": { + "keyName": { + "type": "string", + "description": "Reference by name to previously provisioned public SSH key\n" + }, + "username": { + "type": "string", + "description": "username associated with given key.\n" + } }, - "maxRetryWaitSeconds": { - "type": "integer", - "description": "Maximum number of seconds to wait before retrying a request.\n" + "type": "object", + "required": [ + "username" + ] + }, + "equinix:networkedge/DeviceSshKey:DeviceSshKey": { + "properties": { + "keyName": { + "type": "string", + "description": "Reference by name to previously provisioned public SSH key\n" + }, + "username": { + "type": "string", + "description": "username associated with given key.\n" + } }, - "requestTimeout": { - "type": "integer", - "description": "The duration of time, in seconds, that the Equinix Platform API Client should wait before canceling an API request.\nCanceled requests may still result in provisioned resources. (Defaults to `30`)\n" + "type": "object", + "required": [ + "username" + ] + }, + "equinix:networkedge/aclRuleProtocolType:AclRuleProtocolType": { + "type": "string", + "enum": [ + { + "name": "IP", + "value": "IP" + }, + { + "name": "TCP", + "value": "TCP" + }, + { + "name": "UDP", + "value": "UDP" + } + ] + }, + "equinix:networkedge/fileType:FileType": { + "type": "string", + "enum": [ + { + "name": "License", + "value": "LICENSE" + }, + { + "name": "CloudInit", + "value": "CLOUD_INIT" + } + ] + }, + "equinix:networkedge/getDeviceClusterDetail:getDeviceClusterDetail": { + "properties": { + "clusterId": { + "type": "string", + "description": "The id of the cluster\n" + }, + "clusterName": { + "type": "string", + "description": "The name of the cluster device\n" + }, + "node0s": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode0:getDeviceClusterDetailNode0" + }, + "description": "An object that has node0 details\n" + }, + "node1s": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode1:getDeviceClusterDetailNode1" + }, + "description": "An object that has node1 details\n" + }, + "numOfNodes": { + "type": "integer", + "description": "The number of nodes in the cluster\n" + } }, - "responseMaxPageSize": { - "type": "integer", - "description": "The maximum number of records in a single response for REST queries that produce paginated responses. (Default is client\nspecific)\n" + "type": "object", + "required": [ + "clusterId", + "clusterName", + "node0s", + "node1s", + "numOfNodes" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceClusterDetailNode0:getDeviceClusterDetailNode0": { + "properties": { + "licenseFileId": { + "type": "string", + "description": "Unique identifier of applied license file\n", + "secret": true + }, + "licenseToken": { + "type": "string", + "description": "License token. This is necessary for Palo Alto clusters\n" + }, + "name": { + "type": "string", + "description": "Name of an existing Equinix Network Edge device\n" + }, + "uuid": { + "type": "string", + "description": "UUID of an existing Equinix Network Edge device\n" + }, + "vendorConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode0VendorConfiguration:getDeviceClusterDetailNode0VendorConfiguration" + }, + "description": "An object that has fields relevant to the vendor of the cluster device\n" + } }, - "token": { - "type": "string", - "description": "API tokens are generated from API Consumer clients using the [OAuth2\nAPI](https://developer.equinix.com/dev-docs/fabric/getting-started/getting-access-token#request-access-and-refresh-tokens).\nThis argument can also be specified with the `EQUINIX_API_TOKEN` shell environment variable.\n" + "type": "object", + "required": [ + "licenseFileId", + "licenseToken", + "name", + "uuid", + "vendorConfigurations" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceClusterDetailNode0VendorConfiguration:getDeviceClusterDetailNode0VendorConfiguration": { + "properties": { + "activationKey": { + "type": "string", + "description": "Activation key. This is required for Velocloud clusters\n", + "secret": true + }, + "adminPassword": { + "type": "string", + "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types\n", + "secret": true + }, + "controller1": { + "type": "string", + "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device\n" + }, + "controllerFqdn": { + "type": "string", + "description": "Controller fqdn. This is required for Velocloud clusters\n" + }, + "hostname": { + "type": "string", + "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters\n" + }, + "licenseId": { + "type": "string", + "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true + }, + "licenseKey": { + "type": "string", + "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true + }, + "panoramaAuthKey": { + "type": "string", + "description": "Panorama Server Auth Key. This field is relevant only for Palo Alto Networks Firewall devices\n", + "secret": true + }, + "panoramaIpAddress": { + "type": "string", + "description": "Panorama Server IP Address. This field is relevant only for Palo Alto Networks Firewall devices\n" + }, + "privateAddress": { + "type": "string", + "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "privateCidrMask": { + "type": "string", + "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "privateGateway": { + "type": "string", + "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "rootPassword": { + "type": "string", + "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster\n", + "secret": true + } + }, + "type": "object", + "required": [ + "activationKey", + "adminPassword", + "controller1", + "controllerFqdn", + "hostname", + "licenseId", + "licenseKey", + "panoramaAuthKey", + "panoramaIpAddress", + "privateAddress", + "privateCidrMask", + "privateGateway", + "rootPassword" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceClusterDetailNode1:getDeviceClusterDetailNode1": { + "properties": { + "licenseFileId": { + "type": "string", + "description": "Unique identifier of applied license file\n", + "secret": true + }, + "licenseToken": { + "type": "string", + "description": "License token. This is necessary for Palo Alto clusters\n" + }, + "name": { + "type": "string", + "description": "Name of an existing Equinix Network Edge device\n" + }, + "uuid": { + "type": "string", + "description": "UUID of an existing Equinix Network Edge device\n" + }, + "vendorConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceClusterDetailNode1VendorConfiguration:getDeviceClusterDetailNode1VendorConfiguration" + }, + "description": "An object that has fields relevant to the vendor of the cluster device\n" + } + }, + "type": "object", + "required": [ + "licenseFileId", + "licenseToken", + "name", + "uuid", + "vendorConfigurations" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceClusterDetailNode1VendorConfiguration:getDeviceClusterDetailNode1VendorConfiguration": { + "properties": { + "activationKey": { + "type": "string", + "description": "Activation key. This is required for Velocloud clusters\n", + "secret": true + }, + "adminPassword": { + "type": "string", + "description": "The administrative password of the device. You can use it to log in to the console. This field is not available for all device types\n", + "secret": true + }, + "controller1": { + "type": "string", + "description": "System IP Address. Mandatory for the Fortinet SDWAN cluster device\n" + }, + "controllerFqdn": { + "type": "string", + "description": "Controller fqdn. This is required for Velocloud clusters\n" + }, + "hostname": { + "type": "string", + "description": "Hostname. This is necessary for Palo Alto, Juniper, and Fortinet clusters\n" + }, + "licenseId": { + "type": "string", + "description": "License id. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true + }, + "licenseKey": { + "type": "string", + "description": "License key. This field is relevant only for the BlueCat DNS and DHCP Server\n", + "secret": true + }, + "panoramaAuthKey": { + "type": "string", + "description": "Panorama Server Auth Key. This field is relevant only for Palo Alto Networks Firewall devices\n", + "secret": true + }, + "panoramaIpAddress": { + "type": "string", + "description": "Panorama Server IP Address. This field is relevant only for Palo Alto Networks Firewall devices\n" + }, + "privateAddress": { + "type": "string", + "description": "Private address. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "privateCidrMask": { + "type": "string", + "description": "Private CIDR Mask. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "privateGateway": { + "type": "string", + "description": "Private gateway. This field is relevant only for the BlueCat DNS and DHCP Server\n" + }, + "rootPassword": { + "type": "string", + "description": "The CLI password of the device. This field is relevant only for the Velocloud SDWAN cluster\n", + "secret": true + } + }, + "type": "object", + "required": [ + "activationKey", + "adminPassword", + "controller1", + "controllerFqdn", + "hostname", + "licenseId", + "licenseKey", + "panoramaAuthKey", + "panoramaIpAddress", + "privateAddress", + "privateCidrMask", + "privateGateway", + "rootPassword" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceInterface:getDeviceInterface": { + "properties": { + "assignedType": { + "type": "string", + "description": "Interface management type (Equinix Managed or empty)\n" + }, + "id": { + "type": "integer", + "description": "Interface identifier\n" + }, + "ipAddress": { + "type": "string", + "description": "interface IP address\n" + }, + "macAddress": { + "type": "string", + "description": "Interface MAC addres\n" + }, + "name": { + "type": "string", + "description": "Name of an existing Equinix Network Edge device\n" + }, + "operationalStatus": { + "type": "string", + "description": "Interface operational status (up or down)\n" + }, + "status": { + "type": "string", + "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + }, + "type": { + "type": "string", + "description": "Interface type\n" + } + }, + "type": "object", + "required": [ + "assignedType", + "id", + "ipAddress", + "macAddress", + "name", + "operationalStatus", + "status", + "type" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceSecondaryDevice:getDeviceSecondaryDevice": { + "properties": { + "accountNumber": { + "type": "string", + "description": "Device billing account number\n" + }, + "aclTemplateId": { + "type": "string", + "description": "Unique identifier of applied ACL template\n" + }, + "additionalBandwidth": { + "type": "integer", + "description": "Additional Internet bandwidth, in Mbps, that will be allocated to the device\n" + }, + "asn": { + "type": "integer", + "description": "Autonomous system number\n" + }, + "cloudInitFileId": { + "type": "string", + "description": "Unique identifier of applied cloud init file\n" + }, + "hostname": { + "type": "string", + "description": "Device hostname prefix\n" + }, + "ibx": { + "type": "string", + "description": "Device location Equinix Business Exchange name\n" + }, + "interfaces": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceSecondaryDeviceInterface:getDeviceSecondaryDeviceInterface" + }, + "description": "List of device interfaces\n* `interface.#.id` - interface identifier\n* `interface.#.name` - interface name\n* `interface.#.status` - interface status (AVAILABLE, RESERVED, ASSIGNED)\n* `interface.#.operational_status` - interface operational status (up or down)\n* `interface.#.mac_address` - interface MAC address\n* `interface.#.ip_address` - interface IP address\n* `interface.#.assigned_type` - interface management type (Equinix Managed or empty)\n* `interface.#.type` - interface type\n" + }, + "licenseFile": { + "type": "string", + "description": "Path to the license file that will be uploaded and applied on a device, applicable for some device types in BYOL licensing mode\n" + }, + "licenseFileId": { + "type": "string", + "description": "Unique identifier of applied license file\n" + }, + "licenseStatus": { + "type": "string", + "description": "Device license registration status\n* APPLYING_LICENSE\n* REGISTERED\n* APPLIED\n* WAITING_FOR_CLUSTER_SETUP\n* REGISTRATION_FAILED\n* NA\n" + }, + "licenseToken": { + "type": "string", + "description": "License Token applicable for some device types in BYOL licensing mode\n" + }, + "metroCode": { + "type": "string", + "description": "Device location metro code\n" + }, + "mgmtAclTemplateUuid": { + "type": "string", + "description": "Unique identifier of applied MGMT ACL template\n" + }, + "name": { + "type": "string", + "description": "Name of an existing Equinix Network Edge device\n" + }, + "notifications": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of email addresses that will receive device status notifications\n" + }, + "projectId": { + "type": "string", + "description": "The unique identifier of Project Resource to which device is scoped to\n" + }, + "redundancyType": { + "type": "string", + "description": "Device redundancy type applicable for HA devices, either primary or secondary\n" + }, + "redundantId": { + "type": "string", + "description": "Unique identifier for a redundant device applicable for HA devices\n" + }, + "region": { + "type": "string", + "description": "Device location region\n" + }, + "sshIpAddress": { + "type": "string", + "description": "IP address of SSH enabled interface on the device\n" + }, + "sshIpFqdn": { + "type": "string", + "description": "FQDN of SSH enabled interface on the device\n" + }, + "sshKeys": { + "type": "array", + "items": { + "$ref": "#/types/equinix:networkedge/getDeviceSecondaryDeviceSshKey:getDeviceSecondaryDeviceSshKey" + }, + "description": "Definition of SSH key that will be provisioned on a device\n" + }, + "status": { + "type": "string", + "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + }, + "uuid": { + "type": "string", + "description": "UUID of an existing Equinix Network Edge device\n" + }, + "vendorConfiguration": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Map of vendor specific configuration parameters for a device (controller1, activationKey, managementType, siteId, systemIpAddress)\n" + }, + "wanInterfaceId": { + "type": "string", + "description": "device interface id picked for WAN\n" + }, + "zoneCode": { + "type": "string", + "description": "Device location zone code\n" + } + }, + "type": "object", + "required": [ + "accountNumber", + "aclTemplateId", + "additionalBandwidth", + "asn", + "cloudInitFileId", + "hostname", + "ibx", + "interfaces", + "licenseFile", + "licenseFileId", + "licenseStatus", + "licenseToken", + "metroCode", + "mgmtAclTemplateUuid", + "name", + "notifications", + "projectId", + "redundancyType", + "redundantId", + "region", + "sshIpAddress", + "sshIpFqdn", + "sshKeys", + "status", + "uuid", + "vendorConfiguration", + "wanInterfaceId", + "zoneCode" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceSecondaryDeviceInterface:getDeviceSecondaryDeviceInterface": { + "properties": { + "assignedType": { + "type": "string", + "description": "Interface management type (Equinix Managed or empty)\n" + }, + "id": { + "type": "integer", + "description": "Interface identifier\n" + }, + "ipAddress": { + "type": "string", + "description": "interface IP address\n" + }, + "macAddress": { + "type": "string", + "description": "Interface MAC addres\n" + }, + "name": { + "type": "string", + "description": "Name of an existing Equinix Network Edge device\n" + }, + "operationalStatus": { + "type": "string", + "description": "Interface operational status (up or down)\n" + }, + "status": { + "type": "string", + "description": "Device provisioning status\n* INITIALIZING\n* PROVISIONING\n* PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `valid_state_list`**)\n* WAITING_FOR_PRIMARY\n* WAITING_FOR_SECONDARY\n* WAITING_FOR_REPLICA_CLUSTER_NODES\n* CLUSTER_SETUP_IN_PROGRESS\n* FAILED\n* DEPROVISIONING\n* DEPROVISIONED\n* RESOURCE_UPGRADE_IN_PROGRESS\n* RESOURCE_UPGRADE_FAILED\n" + }, + "type": { + "type": "string", + "description": "Interface type\n" + } + }, + "type": "object", + "required": [ + "assignedType", + "id", + "ipAddress", + "macAddress", + "name", + "operationalStatus", + "status", + "type" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceSecondaryDeviceSshKey:getDeviceSecondaryDeviceSshKey": { + "properties": { + "keyName": { + "type": "string", + "description": "Reference by name to previously provisioned public SSH key\n" + }, + "username": { + "type": "string", + "description": "Username associated with given key\n" + } + }, + "type": "object", + "required": [ + "keyName", + "username" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/getDeviceSshKey:getDeviceSshKey": { + "properties": { + "keyName": { + "type": "string", + "description": "Reference by name to previously provisioned public SSH key\n" + }, + "username": { + "type": "string", + "description": "Username associated with given key\n" + } + }, + "type": "object", + "required": [ + "keyName", + "username" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "equinix:networkedge/throughputUnit:ThroughputUnit": { + "type": "string", + "enum": [ + { + "name": "Mbps", + "value": "Mbps" + }, + { + "name": "Gbps", + "value": "Gbps" + } + ] + } + }, + "provider": { + "description": "The provider type for the equinix package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n", + "properties": { + "authToken": { + "type": "string", + "description": "The Equinix Metal API auth key for API operations\n" + }, + "clientId": { + "type": "string", + "description": "API Consumer Key available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTID` shell environment variable.\n" + }, + "clientSecret": { + "type": "string", + "description": "API Consumer secret available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTSECRET` shell environment variable.\n" + }, + "endpoint": { + "type": "string", + "description": "The Equinix API base URL to point out desired environment. This argument can also be specified with the\n`EQUINIX_API_ENDPOINT` shell environment variable. (Defaults to `https://api.equinix.com`)\n" + }, + "maxRetries": { + "type": "integer", + "description": "Maximum number of retries in case of network failure.\n" + }, + "maxRetryWaitSeconds": { + "type": "integer", + "description": "Maximum number of seconds to wait before retrying a request.\n" + }, + "requestTimeout": { + "type": "integer", + "description": "The duration of time, in seconds, that the Equinix Platform API Client should wait before canceling an API request.\nCanceled requests may still result in provisioned resources. (Defaults to `30`)\n" + }, + "responseMaxPageSize": { + "type": "integer", + "description": "The maximum number of records in a single response for REST queries that produce paginated responses. (Default is client\nspecific)\n" + }, + "token": { + "type": "string", + "description": "API tokens are generated from API Consumer clients using the [OAuth2\nAPI](https://developer.equinix.com/dev-docs/fabric/getting-started/getting-access-token#request-access-and-refresh-tokens).\nThis argument can also be specified with the `EQUINIX_API_TOKEN` shell environment variable.\n" + } + }, + "inputProperties": { + "authToken": { + "type": "string", + "description": "The Equinix Metal API auth key for API operations\n" + }, + "clientId": { + "type": "string", + "description": "API Consumer Key available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTID` shell environment variable.\n" + }, + "clientSecret": { + "type": "string", + "description": "API Consumer secret available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTSECRET` shell environment variable.\n" + }, + "endpoint": { + "type": "string", + "description": "The Equinix API base URL to point out desired environment. This argument can also be specified with the\n`EQUINIX_API_ENDPOINT` shell environment variable. (Defaults to `https://api.equinix.com`)\n" + }, + "maxRetries": { + "type": "integer", + "description": "Maximum number of retries in case of network failure.\n" + }, + "maxRetryWaitSeconds": { + "type": "integer", + "description": "Maximum number of seconds to wait before retrying a request.\n" + }, + "requestTimeout": { + "type": "integer", + "description": "The duration of time, in seconds, that the Equinix Platform API Client should wait before canceling an API request.\nCanceled requests may still result in provisioned resources. (Defaults to `30`)\n" + }, + "responseMaxPageSize": { + "type": "integer", + "description": "The maximum number of records in a single response for REST queries that produce paginated responses. (Default is client\nspecific)\n" + }, + "token": { + "type": "string", + "description": "API tokens are generated from API Consumer clients using the [OAuth2\nAPI](https://developer.equinix.com/dev-docs/fabric/getting-started/getting-access-token#request-access-and-refresh-tokens).\nThis argument can also be specified with the `EQUINIX_API_TOKEN` shell environment variable.\n" + } + } + }, + "resources": { + "equinix:fabric/cloudRouter:CloudRouter": { + "description": "Fabric V4 API compatible resource allows creation and management of [Equinix Fabric Cloud Router](https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks).\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-cloud-routers\n\n{{% examples %}}\n## Example Usage\n\n{{% example %}}\n### example 1\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newCloudRouter = new equinix.fabric.CloudRouter(\"newCloudRouter\", {\n name: \"Router-SV\",\n type: \"XF_ROUTER\",\n notifications: [{\n type: \"ALL\",\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n location: {\n metroCode: \"SV\",\n },\n \"package\": {\n code: \"STANDARD\",\n },\n project: {\n projectId: \"776847000642406\",\n },\n account: {\n accountNumber: 203612,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_cloud_router = equinix.fabric.CloudRouter(\"newCloudRouter\",\n name=\"Router-SV\",\n type=\"XF_ROUTER\",\n notifications=[{\n \"type\": \"ALL\",\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n location={\n \"metro_code\": \"SV\",\n },\n package={\n \"code\": \"STANDARD\",\n },\n project={\n \"project_id\": \"776847000642406\",\n },\n account={\n \"account_number\": 203612,\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewCloudRouter(ctx, \"newCloudRouter\", \u0026fabric.CloudRouterArgs{\n\t\t\tName: pulumi.String(\"Router-SV\"),\n\t\t\tType: pulumi.String(\"XF_ROUTER\"),\n\t\t\tNotifications: fabric.CloudRouterNotificationArray{\n\t\t\t\t\u0026fabric.CloudRouterNotificationArgs{\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrder: \u0026fabric.CloudRouterOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tLocation: \u0026fabric.CloudRouterLocationArgs{\n\t\t\t\tMetroCode: pulumi.String(\"SV\"),\n\t\t\t},\n\t\t\tPackage: \u0026fabric.CloudRouterPackageArgs{\n\t\t\t\tCode: pulumi.String(\"STANDARD\"),\n\t\t\t},\n\t\t\tProject: \u0026fabric.CloudRouterProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tAccount: \u0026fabric.CloudRouterAccountArgs{\n\t\t\t\tAccountNumber: pulumi.Int(203612),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newCloudRouter = new Equinix.Fabric.CloudRouter(\"newCloudRouter\", new()\n {\n Name = \"Router-SV\",\n Type = \"XF_ROUTER\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.CloudRouterNotificationArgs\n {\n Type = \"ALL\",\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Order = new Equinix.Fabric.Inputs.CloudRouterOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n Location = new Equinix.Fabric.Inputs.CloudRouterLocationArgs\n {\n MetroCode = \"SV\",\n },\n Package = new Equinix.Fabric.Inputs.CloudRouterPackageArgs\n {\n Code = \"STANDARD\",\n },\n Project = new Equinix.Fabric.Inputs.CloudRouterProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n Account = new Equinix.Fabric.Inputs.CloudRouterAccountArgs\n {\n AccountNumber = 203612,\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.CloudRouter;\nimport com.pulumi.equinix.fabric.CloudRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterLocationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterPackageArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterProjectArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newCloudRouter = new CloudRouter(\"newCloudRouter\", CloudRouterArgs.builder()\n .name(\"Router-SV\")\n .type(\"XF_ROUTER\")\n .notifications(CloudRouterNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .order(CloudRouterOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .location(CloudRouterLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .package_(CloudRouterPackageArgs.builder()\n .code(\"STANDARD\")\n .build())\n .project(CloudRouterProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .account(CloudRouterAccountArgs.builder()\n .accountNumber(\"203612\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newCloudRouter:\n type: equinix:fabric:CloudRouter\n name: new_cloud_router\n properties:\n name: Router-SV\n type: XF_ROUTER\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n order:\n purchaseOrderNumber: 1-323292\n location:\n metroCode: SV\n package:\n code: STANDARD\n project:\n projectId: '776847000642406'\n account:\n accountNumber: '203612'\n```\n{{% /example %}}\n\n{{% example %}}\n### example 2\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newCloudRouter = new equinix.fabric.CloudRouter(\"newCloudRouter\", {\n name: \"Router-SV\",\n type: \"XF_ROUTER\",\n notifications: [{\n type: \"ALL\",\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n location: {\n metroCode: \"SV\",\n },\n \"package\": {\n code: \"STANDARD\",\n },\n project: {\n projectId: \"776847000642406\",\n },\n marketplaceSubscription: {\n type: \"AWS_MARKETPLACE_SUBSCRIPTION\",\n uuid: \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_cloud_router = equinix.fabric.CloudRouter(\"newCloudRouter\",\n name=\"Router-SV\",\n type=\"XF_ROUTER\",\n notifications=[{\n \"type\": \"ALL\",\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n location={\n \"metro_code\": \"SV\",\n },\n package={\n \"code\": \"STANDARD\",\n },\n project={\n \"project_id\": \"776847000642406\",\n },\n marketplace_subscription={\n \"type\": \"AWS_MARKETPLACE_SUBSCRIPTION\",\n \"uuid\": \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewCloudRouter(ctx, \"newCloudRouter\", \u0026fabric.CloudRouterArgs{\n\t\t\tName: pulumi.String(\"Router-SV\"),\n\t\t\tType: pulumi.String(\"XF_ROUTER\"),\n\t\t\tNotifications: fabric.CloudRouterNotificationArray{\n\t\t\t\t\u0026fabric.CloudRouterNotificationArgs{\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrder: \u0026fabric.CloudRouterOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tLocation: \u0026fabric.CloudRouterLocationArgs{\n\t\t\t\tMetroCode: pulumi.String(\"SV\"),\n\t\t\t},\n\t\t\tPackage: \u0026fabric.CloudRouterPackageArgs{\n\t\t\t\tCode: pulumi.String(\"STANDARD\"),\n\t\t\t},\n\t\t\tProject: \u0026fabric.CloudRouterProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tMarketplaceSubscription: \u0026fabric.CloudRouterMarketplaceSubscriptionArgs{\n\t\t\t\tType: pulumi.String(\"AWS_MARKETPLACE_SUBSCRIPTION\"),\n\t\t\t\tUuid: pulumi.String(\"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newCloudRouter = new Equinix.Fabric.CloudRouter(\"newCloudRouter\", new()\n {\n Name = \"Router-SV\",\n Type = \"XF_ROUTER\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.CloudRouterNotificationArgs\n {\n Type = \"ALL\",\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Order = new Equinix.Fabric.Inputs.CloudRouterOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n Location = new Equinix.Fabric.Inputs.CloudRouterLocationArgs\n {\n MetroCode = \"SV\",\n },\n Package = new Equinix.Fabric.Inputs.CloudRouterPackageArgs\n {\n Code = \"STANDARD\",\n },\n Project = new Equinix.Fabric.Inputs.CloudRouterProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n MarketplaceSubscription = new Equinix.Fabric.Inputs.CloudRouterMarketplaceSubscriptionArgs\n {\n Type = \"AWS_MARKETPLACE_SUBSCRIPTION\",\n Uuid = \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.CloudRouter;\nimport com.pulumi.equinix.fabric.CloudRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterLocationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterPackageArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterProjectArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterMarketplaceSubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newCloudRouter = new CloudRouter(\"newCloudRouter\", CloudRouterArgs.builder()\n .name(\"Router-SV\")\n .type(\"XF_ROUTER\")\n .notifications(CloudRouterNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .order(CloudRouterOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .location(CloudRouterLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .package_(CloudRouterPackageArgs.builder()\n .code(\"STANDARD\")\n .build())\n .project(CloudRouterProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .marketplaceSubscription(CloudRouterMarketplaceSubscriptionArgs.builder()\n .type(\"AWS_MARKETPLACE_SUBSCRIPTION\")\n .uuid(\"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newCloudRouter:\n type: equinix:fabric:CloudRouter\n name: new_cloud_router\n properties:\n name: Router-SV\n type: XF_ROUTER\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n order:\n purchaseOrderNumber: 1-323292\n location:\n metroCode: SV\n package:\n code: STANDARD\n project:\n projectId: '776847000642406'\n marketplaceSubscription:\n type: AWS_MARKETPLACE_SUBSCRIPTION\n uuid: 2823b8ae07-a2a2-45b4-a658-c3542bb24e9\n```\n{{% /example %}}\n\n{{% /examples %}}", + "properties": { + "account": { + "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", + "description": "Customer account information that is associated with this Fabric Cloud Router\n" + }, + "bgpIpv4RoutesCount": { + "type": "integer", + "description": "Number of IPv4 BGP routes in use (including non-distinct prefixes)\n" + }, + "bgpIpv6RoutesCount": { + "type": "integer", + "description": "Number of IPv6 BGP routes in use (including non-distinct prefixes)\n" + }, + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/CloudRouterChangeLog:CloudRouterChangeLog" + }, + "description": "Captures Fabric Cloud Router lifecycle change information\n" + }, + "connectionsCount": { + "type": "integer", + "description": "Number of connections associated with this Fabric Cloud Router instance\n" + }, + "description": { + "type": "string", + "description": "Customer-provided Fabric Cloud Router description\n" + }, + "distinctIpv4PrefixesCount": { + "type": "integer", + "description": "Number of distinct IPv4 routes\n" + }, + "distinctIpv6PrefixesCount": { + "type": "integer", + "description": "Number of distinct IPv6 routes\n" + }, + "equinixAsn": { + "type": "integer", + "description": "Equinix ASN\n" + }, + "href": { + "type": "string", + "description": "Fabric Cloud Router URI information\n" + }, + "location": { + "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", + "description": "Fabric Cloud Router location\n" + }, + "marketplaceSubscription": { + "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", + "description": "Equinix Fabric Entity for Marketplace Subscription\n" + }, + "name": { + "type": "string", + "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + }, + "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", + "description": "Order information related to this Fabric Cloud Router\n" + }, + "package": { + "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", + "description": "Fabric Cloud Router Package Type\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", + "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + }, + "state": { + "type": "string", + "description": "Fabric Cloud Router overall state\n" + }, + "type": { + "type": "string", + "description": "Defines the FCR type like; XF_ROUTER\n" + }, + "uuid": { + "type": "string", + "description": "Equinix-assigned Fabric Cloud Router identifier\n" + } + }, + "required": [ + "account", + "bgpIpv4RoutesCount", + "bgpIpv6RoutesCount", + "changeLogs", + "connectionsCount", + "distinctIpv4PrefixesCount", + "distinctIpv6PrefixesCount", + "equinixAsn", + "href", + "location", + "marketplaceSubscription", + "name", + "notifications", + "order", + "package", + "project", + "state", + "type", + "uuid" + ], + "inputProperties": { + "account": { + "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", + "description": "Customer account information that is associated with this Fabric Cloud Router\n" + }, + "description": { + "type": "string", + "description": "Customer-provided Fabric Cloud Router description\n" + }, + "href": { + "type": "string", + "description": "Fabric Cloud Router URI information\n" + }, + "location": { + "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", + "description": "Fabric Cloud Router location\n" + }, + "marketplaceSubscription": { + "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", + "description": "Equinix Fabric Entity for Marketplace Subscription\n" + }, + "name": { + "type": "string", + "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + }, + "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", + "description": "Order information related to this Fabric Cloud Router\n" + }, + "package": { + "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", + "description": "Fabric Cloud Router Package Type\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", + "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + }, + "type": { + "type": "string", + "description": "Defines the FCR type like; XF_ROUTER\n" + }, + "uuid": { + "type": "string", + "description": "Equinix-assigned Fabric Cloud Router identifier\n" + } + }, + "requiredInputs": [ + "location", + "notifications", + "package", + "project", + "type" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering CloudRouter resources.\n", + "properties": { + "account": { + "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", + "description": "Customer account information that is associated with this Fabric Cloud Router\n" + }, + "bgpIpv4RoutesCount": { + "type": "integer", + "description": "Number of IPv4 BGP routes in use (including non-distinct prefixes)\n" + }, + "bgpIpv6RoutesCount": { + "type": "integer", + "description": "Number of IPv6 BGP routes in use (including non-distinct prefixes)\n" + }, + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/CloudRouterChangeLog:CloudRouterChangeLog" + }, + "description": "Captures Fabric Cloud Router lifecycle change information\n" + }, + "connectionsCount": { + "type": "integer", + "description": "Number of connections associated with this Fabric Cloud Router instance\n" + }, + "description": { + "type": "string", + "description": "Customer-provided Fabric Cloud Router description\n" + }, + "distinctIpv4PrefixesCount": { + "type": "integer", + "description": "Number of distinct IPv4 routes\n" + }, + "distinctIpv6PrefixesCount": { + "type": "integer", + "description": "Number of distinct IPv6 routes\n" + }, + "equinixAsn": { + "type": "integer", + "description": "Equinix ASN\n" + }, + "href": { + "type": "string", + "description": "Fabric Cloud Router URI information\n" + }, + "location": { + "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", + "description": "Fabric Cloud Router location\n" + }, + "marketplaceSubscription": { + "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", + "description": "Equinix Fabric Entity for Marketplace Subscription\n" + }, + "name": { + "type": "string", + "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + }, + "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", + "description": "Order information related to this Fabric Cloud Router\n" + }, + "package": { + "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", + "description": "Fabric Cloud Router Package Type\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", + "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + }, + "state": { + "type": "string", + "description": "Fabric Cloud Router overall state\n" + }, + "type": { + "type": "string", + "description": "Defines the FCR type like; XF_ROUTER\n" + }, + "uuid": { + "type": "string", + "description": "Equinix-assigned Fabric Cloud Router identifier\n" + } + }, + "type": "object" + } + }, + "equinix:fabric/connection:Connection": { + "description": "\n\n{{% examples %}}\n## Example Usage\n\n{{% example %}}\n### example fcr to azure\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Azure = new equinix.fabric.Connection(\"fcr2azure\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_azure = equinix.fabric.Connection(\"fcr2azure\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2azure\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Azure = new Equinix.Fabric.Connection(\"fcr2azure\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Azure = new Connection(\"fcr2Azure\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2azure:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to metal\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Metal = new equinix.fabric.Connection(\"fcr2metal\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: \"METAL_NETWORK\",\n authenticationKey: \"\u003cmetal_authorization_code\u003e\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_metal = equinix.fabric.Connection(\"fcr2metal\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": \"METAL_NETWORK\",\n \"authentication_key\": \"\u003cmetal_authorization_code\u003e\",\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2metal\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"METAL_NETWORK\"),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cmetal_authorization_code\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Metal = new Equinix.Fabric.Connection(\"fcr2metal\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = \"METAL_NETWORK\",\n AuthenticationKey = \"\u003cmetal_authorization_code\u003e\",\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Metal = new Connection(\"fcr2Metal\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"METAL_NETWORK\")\n .authenticationKey(\"\u003cmetal_authorization_code\u003e\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2metal:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: METAL_NETWORK\n authenticationKey: \u003cmetal_authorization_code\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to network\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Network = new equinix.fabric.Connection(\"fcr2network\", {\n name: \"ConnectionName\",\n type: \"IPWAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_network = equinix.fabric.Connection(\"fcr2network\",\n name=\"ConnectionName\",\n type=\"IPWAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2network\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IPWAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Network = new Equinix.Fabric.Connection(\"fcr2network\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IPWAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Network = new Connection(\"fcr2Network\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IPWAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2network:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IPWAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to port\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Port = new equinix.fabric.Connection(\"fcr2port\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003cport_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanTag: 2711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_port = equinix.fabric.Connection(\"fcr2port\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003cport_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_tag\": 2711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cport_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanTag: pulumi.Int(2711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Port = new Equinix.Fabric.Connection(\"fcr2port\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003cport_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanTag = 2711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Port = new Connection(\"fcr2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003cport_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanTag(\"2711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003cport_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanTag: '2711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example metal to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst metal2Aws = new equinix.fabric.Connection(\"metal2aws\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"METAL_NETWORK\",\n authenticationKey: \"\u003cmetal_authorization_code\u003e\",\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nmetal2_aws = equinix.fabric.Connection(\"metal2aws\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"METAL_NETWORK\",\n \"authentication_key\": \"\u003cmetal_authorization_code\u003e\",\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"metal2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"METAL_NETWORK\"),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cmetal_authorization_code\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var metal2Aws = new Equinix.Fabric.Connection(\"metal2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"METAL_NETWORK\",\n AuthenticationKey = \"\u003cmetal_authorization_code\u003e\",\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var metal2Aws = new Connection(\"metal2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"METAL_NETWORK\")\n .authenticationKey(\"\u003cmetal_authorization_code\u003e\")\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n metal2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: METAL_NETWORK\n authenticationKey: \u003cmetal_authorization_code\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst port2Aws = new equinix.fabric.Connection(\"port2aws\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n redundancy: {\n priority: \"PRIMARY\",\n },\n order: {\n purchaseOrderNumber: \"1-323929\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 2019,\n vlanCTag: 2112,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n additionalInfo: [\n {\n key: \"accessKey\",\n value: \"\u003caws_access_key\u003e\",\n },\n {\n key: \"secretKey\",\n value: \"\u003caws_secret_key\u003e\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nport2_aws = equinix.fabric.Connection(\"port2aws\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n redundancy={\n \"priority\": \"PRIMARY\",\n },\n order={\n \"purchase_order_number\": \"1-323929\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 2019,\n \"vlan_c_tag\": 2112,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n },\n additional_info=[\n {\n \"key\": \"accessKey\",\n \"value\": \"\u003caws_access_key\u003e\",\n },\n {\n \"key\": \"secretKey\",\n \"value\": \"\u003caws_secret_key\u003e\",\n },\n ])\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"port2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"PRIMARY\"),\n\t\t\t},\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323929\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(2019),\n\t\t\t\t\t\tVlanCTag: pulumi.Int(2112),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdditionalInfo: pulumi.StringMapArray{\n\t\t\t\tpulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"accessKey\"),\n\t\t\t\t\t\"value\": pulumi.String(\"\u003caws_access_key\u003e\"),\n\t\t\t\t},\n\t\t\t\tpulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"secretKey\"),\n\t\t\t\t\t\"value\": pulumi.String(\"\u003caws_secret_key\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var port2Aws = new Equinix.Fabric.Connection(\"port2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"PRIMARY\",\n },\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323929\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 2019,\n VlanCTag = 2112,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n AdditionalInfo = new[]\n {\n \n {\n { \"key\", \"accessKey\" },\n { \"value\", \"\u003caws_access_key\u003e\" },\n },\n \n {\n { \"key\", \"secretKey\" },\n { \"value\", \"\u003caws_secret_key\u003e\" },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionRedundancyArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var port2Aws = new Connection(\"port2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"PRIMARY\")\n .build())\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323929\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"2019\")\n .vlanCTag(\"2112\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .additionalInfo( \n Map.ofEntries(\n Map.entry(\"key\", \"accessKey\"),\n Map.entry(\"value\", \"\u003caws_access_key\u003e\")\n ),\n Map.ofEntries(\n Map.entry(\"key\", \"secretKey\"),\n Map.entry(\"value\", \"\u003caws_secret_key\u003e\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n port2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n redundancy:\n priority: PRIMARY\n order:\n purchaseOrderNumber: 1-323929\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '2019'\n vlanCTag: '2112'\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n additionalInfo:\n - key: accessKey\n value: \u003caws_access_key\u003e\n - key: secretKey\n value: \u003caws_secret_key\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to network eplan\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst eplan = new equinix.fabric.Connection(\"eplan\", {\n name: \"ConnectionName\",\n type: \"EPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\neplan = equinix.fabric.Connection(\"eplan\",\n name=\"ConnectionName\",\n type=\"EPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"eplan\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var eplan = new Equinix.Fabric.Connection(\"eplan\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var eplan = new Connection(\"eplan\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n eplan:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to network evplan\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst evplan = new equinix.fabric.Connection(\"evplan\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nevplan = equinix.fabric.Connection(\"evplan\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"evplan\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var evplan = new Equinix.Fabric.Connection(\"evplan\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var evplan = new Connection(\"evplan\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n evplan:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst port2Port = new equinix.fabric.Connection(\"port2port\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 3711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nport2_port = equinix.fabric.Connection(\"port2port\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 3711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"port2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(3711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var port2Port = new Equinix.Fabric.Connection(\"port2port\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 3711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var port2Port = new Connection(\"port2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"3711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n port2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '3711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port access epl\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst accessEplVc = new equinix.fabric.Connection(\"accessEplVc\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.AccessEPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\naccess_epl_vc = equinix.fabric.Connection(\"accessEplVc\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.ACCESS_EPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"accessEplVc\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeAccessEPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var accessEplVc = new Equinix.Fabric.Connection(\"accessEplVc\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.AccessEPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var accessEplVc = new Connection(\"accessEplVc\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"ACCESS_EPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n accessEplVc:\n type: equinix:fabric:Connection\n name: access_epl_vc\n properties:\n name: ConnectionName\n type: ACCESS_EPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port epl\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst epl = new equinix.fabric.Connection(\"epl\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nepl = equinix.fabric.Connection(\"epl\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"epl\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var epl = new Equinix.Fabric.Connection(\"epl\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var epl = new Connection(\"epl\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n epl:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to vd\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Port = new equinix.fabric.Connection(\"vd2port\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"NETWORK\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanSTag: 3711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_port = equinix.fabric.Connection(\"vd2port\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"NETWORK\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_s_tag\": 3711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"NETWORK\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(3711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Port = new Equinix.Fabric.Connection(\"vd2port\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"NETWORK\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanSTag = 3711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Port = new Connection(\"vd2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"NETWORK\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanSTag(\"3711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: NETWORK\n id: 7\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanSTag: '3711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example token to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst token2Aws = new equinix.fabric.Connection(\"token2aws\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n serviceToken: {\n uuid: \"\u003cservice_token_uuid\u003e\",\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\ntoken2_aws = equinix.fabric.Connection(\"token2aws\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"service_token\": {\n \"uuid\": \"\u003cservice_token_uuid\u003e\",\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"token2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tServiceToken: \u0026fabric.ConnectionASideServiceTokenArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_token_uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var token2Aws = new Equinix.Fabric.Connection(\"token2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n ServiceToken = new Equinix.Fabric.Inputs.ConnectionASideServiceTokenArgs\n {\n Uuid = \"\u003cservice_token_uuid\u003e\",\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideServiceTokenArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var token2Aws = new Connection(\"token2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .serviceToken(ConnectionASideServiceTokenArgs.builder()\n .uuid(\"\u003cservice_token_uuid\u003e\")\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n token2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n serviceToken:\n uuid: \u003cservice_token_uuid\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to azure\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Azure = new equinix.fabric.Connection(\"vd2azure\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_azure = equinix.fabric.Connection(\"vd2azure\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2azure\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Azure = new Equinix.Fabric.Connection(\"vd2azure\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Azure = new Connection(\"vd2Azure\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2azure:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to azure redundant\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2AzurePrimary = new equinix.fabric.Connection(\"vd2azurePrimary\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n redundancy: {\n priority: \"PRIMARY\",\n },\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\nconst vd2AzureSecondary = new equinix.fabric.Connection(\"vd2azureSecondary\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n redundancy: {\n priority: \"SECONDARY\",\n group: vd2AzurePrimary.redundancy.apply(redundancy =\u003e redundancy?.group),\n },\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 5,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_azure_primary = equinix.fabric.Connection(\"vd2azurePrimary\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n redundancy={\n \"priority\": \"PRIMARY\",\n },\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\nvd2_azure_secondary = equinix.fabric.Connection(\"vd2azureSecondary\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n redundancy={\n \"priority\": \"SECONDARY\",\n \"group\": vd2_azure_primary.redundancy.group,\n },\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 5,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tvd2AzurePrimary, err := fabric.NewConnection(ctx, \"vd2azurePrimary\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"PRIMARY\"),\n\t\t\t},\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = fabric.NewConnection(ctx, \"vd2azureSecondary\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"SECONDARY\"),\n\t\t\t\tGroup: vd2AzurePrimary.Redundancy.ApplyT(func(redundancy fabric.ConnectionRedundancy) (*string, error) {\n\t\t\t\t\treturn \u0026redundancy.Group, nil\n\t\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\t},\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2AzurePrimary = new Equinix.Fabric.Connection(\"vd2azurePrimary\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"PRIMARY\",\n },\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n var vd2AzureSecondary = new Equinix.Fabric.Connection(\"vd2azureSecondary\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"SECONDARY\",\n Group = vd2AzurePrimary.Redundancy.Apply(redundancy =\u003e redundancy?.Group),\n },\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 5,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionRedundancyArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2AzurePrimary = new Connection(\"vd2AzurePrimary\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"PRIMARY\")\n .build())\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n var vd2AzureSecondary = new Connection(\"vd2AzureSecondary\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"SECONDARY\")\n .group(vd2AzurePrimary.redundancy().applyValue(redundancy -\u003e redundancy.group()))\n .build())\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(5)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2azurePrimary:\n type: equinix:fabric:Connection\n name: vd2azure_primary\n properties:\n name: ConnectionName\n type: EVPL_VC\n redundancy:\n priority: PRIMARY\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n vd2azureSecondary:\n type: equinix:fabric:Connection\n name: vd2azure_secondary\n properties:\n name: ConnectionName\n type: EVPL_VC\n redundancy:\n priority: SECONDARY\n group: ${vd2azurePrimary.redundancy.group}\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 5\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to network\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Network = new equinix.fabric.Connection(\"vd2network\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_network = equinix.fabric.Connection(\"vd2network\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2network\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Network = new Equinix.Fabric.Connection(\"vd2network\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Network = new Connection(\"vd2Network\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2network:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to token\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Token = new equinix.fabric.Connection(\"vd2token\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"NETWORK\",\n id: 7,\n },\n },\n },\n zSide: {\n serviceToken: {\n uuid: \"\u003cservice_token_uuid\u003e\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_token = equinix.fabric.Connection(\"vd2token\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"NETWORK\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"service_token\": {\n \"uuid\": \"\u003cservice_token_uuid\u003e\",\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2token\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"NETWORK\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tServiceToken: \u0026fabric.ConnectionZSideServiceTokenArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_token_uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Token = new Equinix.Fabric.Connection(\"vd2token\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"NETWORK\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n ServiceToken = new Equinix.Fabric.Inputs.ConnectionZSideServiceTokenArgs\n {\n Uuid = \"\u003cservice_token_uuid\u003e\",\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideServiceTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Token = new Connection(\"vd2Token\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"NETWORK\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .serviceToken(ConnectionZSideServiceTokenArgs.builder()\n .uuid(\"\u003cservice_token_uuid\u003e\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2token:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: NETWORK\n id: 7\n zSide:\n serviceToken:\n uuid: \u003cservice_token_uuid\u003e\n```\n{{% /example %}}\n\n{{% /examples %}}", + "properties": { + "aSide": { + "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", + "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" + }, + "account": { + "$ref": "#/types/equinix:fabric/ConnectionAccount:ConnectionAccount", + "description": "Customer account information that is associated with this connection\n" + }, + "additionalInfo": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "description": "Connection additional information\n" + }, + "bandwidth": { + "type": "integer", + "description": "Connection bandwidth in Mbps\n" + }, + "changeLog": { + "$ref": "#/types/equinix:fabric/ConnectionChangeLog:ConnectionChangeLog", + "description": "Captures connection lifecycle change information\n" + }, + "description": { + "type": "string", + "description": "Customer-provided connection description\n" + }, + "direction": { + "type": "string", + "description": "Connection directionality from the requester point of view\n" + }, + "href": { + "type": "string", + "description": "Connection URI information\n" + }, + "isRemote": { + "type": "boolean", + "description": "Connection property derived from access point locations\n" + }, + "name": { + "type": "string", + "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" + }, + "description": "Preferences for notifications on connection configuration or status changes\n" + }, + "operation": { + "$ref": "#/types/equinix:fabric/ConnectionOperation:ConnectionOperation", + "description": "Connection type-specific operational data\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", + "description": "Order details\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", + "description": "Project information\n" + }, + "redundancy": { + "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", + "description": "Connection Redundancy Configuration\n" + }, + "state": { + "type": "string", + "description": "Connection overall state\n" + }, + "type": { + "type": "string", + "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" + }, + "uuid": { + "type": "string", + "description": "Equinix-assigned connection identifier\n" + }, + "zSide": { + "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", + "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + } + }, + "required": [ + "aSide", + "account", + "bandwidth", + "changeLog", + "direction", + "href", + "isRemote", + "name", + "notifications", + "operation", + "order", + "project", + "state", + "type", + "uuid", + "zSide" + ], + "inputProperties": { + "aSide": { + "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", + "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" + }, + "additionalInfo": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "description": "Connection additional information\n" + }, + "bandwidth": { + "type": "integer", + "description": "Connection bandwidth in Mbps\n" + }, + "description": { + "type": "string", + "description": "Customer-provided connection description\n" + }, + "name": { + "type": "string", + "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" + }, + "description": "Preferences for notifications on connection configuration or status changes\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", + "description": "Order details\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", + "description": "Project information\n" + }, + "redundancy": { + "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", + "description": "Connection Redundancy Configuration\n" + }, + "type": { + "type": "string", + "oneOf": [ + { + "type": "string" + }, + { + "type": "string", + "$ref": "#/types/equinix:fabric/connectionType:ConnectionType" + } + ], + "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" + }, + "zSide": { + "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", + "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + } + }, + "requiredInputs": [ + "aSide", + "bandwidth", + "notifications", + "type", + "zSide" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Connection resources.\n", + "properties": { + "aSide": { + "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", + "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" + }, + "account": { + "$ref": "#/types/equinix:fabric/ConnectionAccount:ConnectionAccount", + "description": "Customer account information that is associated with this connection\n" + }, + "additionalInfo": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "description": "Connection additional information\n" + }, + "bandwidth": { + "type": "integer", + "description": "Connection bandwidth in Mbps\n" + }, + "changeLog": { + "$ref": "#/types/equinix:fabric/ConnectionChangeLog:ConnectionChangeLog", + "description": "Captures connection lifecycle change information\n" + }, + "description": { + "type": "string", + "description": "Customer-provided connection description\n" + }, + "direction": { + "type": "string", + "description": "Connection directionality from the requester point of view\n" + }, + "href": { + "type": "string", + "description": "Connection URI information\n" + }, + "isRemote": { + "type": "boolean", + "description": "Connection property derived from access point locations\n" + }, + "name": { + "type": "string", + "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" + }, + "description": "Preferences for notifications on connection configuration or status changes\n" + }, + "operation": { + "$ref": "#/types/equinix:fabric/ConnectionOperation:ConnectionOperation", + "description": "Connection type-specific operational data\n" + }, + "order": { + "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", + "description": "Order details\n" + }, + "project": { + "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", + "description": "Project information\n" + }, + "redundancy": { + "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", + "description": "Connection Redundancy Configuration\n" + }, + "state": { + "type": "string", + "description": "Connection overall state\n" + }, + "type": { + "type": "string", + "oneOf": [ + { + "type": "string" + }, + { + "type": "string", + "$ref": "#/types/equinix:fabric/connectionType:ConnectionType" + } + ], + "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" + }, + "uuid": { + "type": "string", + "description": "Equinix-assigned connection identifier\n" + }, + "zSide": { + "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", + "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + } + }, + "type": "object" } }, - "inputProperties": { - "authToken": { - "type": "string", - "description": "The Equinix Metal API auth key for API operations\n" - }, - "clientId": { - "type": "string", - "description": "API Consumer Key available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTID` shell environment variable.\n" - }, - "clientSecret": { - "type": "string", - "description": "API Consumer secret available under \"My Apps\" in developer portal. This argument can also be specified with the\n`EQUINIX_API_CLIENTSECRET` shell environment variable.\n" - }, - "endpoint": { - "type": "string", - "description": "The Equinix API base URL to point out desired environment. This argument can also be specified with the\n`EQUINIX_API_ENDPOINT` shell environment variable. (Defaults to `https://api.equinix.com`)\n" - }, - "maxRetries": { - "type": "integer", - "description": "Maximum number of retries in case of network failure.\n" - }, - "maxRetryWaitSeconds": { - "type": "integer", - "description": "Maximum number of seconds to wait before retrying a request.\n" - }, - "requestTimeout": { - "type": "integer", - "description": "The duration of time, in seconds, that the Equinix Platform API Client should wait before canceling an API request.\nCanceled requests may still result in provisioned resources. (Defaults to `30`)\n" - }, - "responseMaxPageSize": { - "type": "integer", - "description": "The maximum number of records in a single response for REST queries that produce paginated responses. (Default is client\nspecific)\n" - }, - "token": { - "type": "string", - "description": "API tokens are generated from API Consumer clients using the [OAuth2\nAPI](https://developer.equinix.com/dev-docs/fabric/getting-started/getting-access-token#request-access-and-refresh-tokens).\nThis argument can also be specified with the `EQUINIX_API_TOKEN` shell environment variable.\n" - } - } - }, - "resources": { - "equinix:fabric/cloudRouter:CloudRouter": { - "description": "Fabric V4 API compatible resource allows creation and management of [Equinix Fabric Cloud Router](https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks).\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-cloud-routers\n\n{{% examples %}}\n## Example Usage\n\n{{% example %}}\n### example 1\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newCloudRouter = new equinix.fabric.CloudRouter(\"newCloudRouter\", {\n name: \"Router-SV\",\n type: \"XF_ROUTER\",\n notifications: [{\n type: \"ALL\",\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n location: {\n metroCode: \"SV\",\n },\n \"package\": {\n code: \"STANDARD\",\n },\n project: {\n projectId: \"776847000642406\",\n },\n account: {\n accountNumber: 203612,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_cloud_router = equinix.fabric.CloudRouter(\"newCloudRouter\",\n name=\"Router-SV\",\n type=\"XF_ROUTER\",\n notifications=[{\n \"type\": \"ALL\",\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n location={\n \"metro_code\": \"SV\",\n },\n package={\n \"code\": \"STANDARD\",\n },\n project={\n \"project_id\": \"776847000642406\",\n },\n account={\n \"account_number\": 203612,\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewCloudRouter(ctx, \"newCloudRouter\", \u0026fabric.CloudRouterArgs{\n\t\t\tName: pulumi.String(\"Router-SV\"),\n\t\t\tType: pulumi.String(\"XF_ROUTER\"),\n\t\t\tNotifications: fabric.CloudRouterNotificationArray{\n\t\t\t\t\u0026fabric.CloudRouterNotificationArgs{\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrder: \u0026fabric.CloudRouterOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tLocation: \u0026fabric.CloudRouterLocationArgs{\n\t\t\t\tMetroCode: pulumi.String(\"SV\"),\n\t\t\t},\n\t\t\tPackage: \u0026fabric.CloudRouterPackageArgs{\n\t\t\t\tCode: pulumi.String(\"STANDARD\"),\n\t\t\t},\n\t\t\tProject: \u0026fabric.CloudRouterProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tAccount: \u0026fabric.CloudRouterAccountArgs{\n\t\t\t\tAccountNumber: pulumi.Int(203612),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newCloudRouter = new Equinix.Fabric.CloudRouter(\"newCloudRouter\", new()\n {\n Name = \"Router-SV\",\n Type = \"XF_ROUTER\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.CloudRouterNotificationArgs\n {\n Type = \"ALL\",\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Order = new Equinix.Fabric.Inputs.CloudRouterOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n Location = new Equinix.Fabric.Inputs.CloudRouterLocationArgs\n {\n MetroCode = \"SV\",\n },\n Package = new Equinix.Fabric.Inputs.CloudRouterPackageArgs\n {\n Code = \"STANDARD\",\n },\n Project = new Equinix.Fabric.Inputs.CloudRouterProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n Account = new Equinix.Fabric.Inputs.CloudRouterAccountArgs\n {\n AccountNumber = 203612,\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.CloudRouter;\nimport com.pulumi.equinix.fabric.CloudRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterLocationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterPackageArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterProjectArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newCloudRouter = new CloudRouter(\"newCloudRouter\", CloudRouterArgs.builder()\n .name(\"Router-SV\")\n .type(\"XF_ROUTER\")\n .notifications(CloudRouterNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .order(CloudRouterOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .location(CloudRouterLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .package_(CloudRouterPackageArgs.builder()\n .code(\"STANDARD\")\n .build())\n .project(CloudRouterProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .account(CloudRouterAccountArgs.builder()\n .accountNumber(\"203612\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newCloudRouter:\n type: equinix:fabric:CloudRouter\n name: new_cloud_router\n properties:\n name: Router-SV\n type: XF_ROUTER\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n order:\n purchaseOrderNumber: 1-323292\n location:\n metroCode: SV\n package:\n code: STANDARD\n project:\n projectId: '776847000642406'\n account:\n accountNumber: '203612'\n```\n{{% /example %}}\n\n{{% example %}}\n### example 2\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newCloudRouter = new equinix.fabric.CloudRouter(\"newCloudRouter\", {\n name: \"Router-SV\",\n type: \"XF_ROUTER\",\n notifications: [{\n type: \"ALL\",\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n location: {\n metroCode: \"SV\",\n },\n \"package\": {\n code: \"STANDARD\",\n },\n project: {\n projectId: \"776847000642406\",\n },\n marketplaceSubscription: {\n type: \"AWS_MARKETPLACE_SUBSCRIPTION\",\n uuid: \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_cloud_router = equinix.fabric.CloudRouter(\"newCloudRouter\",\n name=\"Router-SV\",\n type=\"XF_ROUTER\",\n notifications=[{\n \"type\": \"ALL\",\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n location={\n \"metro_code\": \"SV\",\n },\n package={\n \"code\": \"STANDARD\",\n },\n project={\n \"project_id\": \"776847000642406\",\n },\n marketplace_subscription={\n \"type\": \"AWS_MARKETPLACE_SUBSCRIPTION\",\n \"uuid\": \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewCloudRouter(ctx, \"newCloudRouter\", \u0026fabric.CloudRouterArgs{\n\t\t\tName: pulumi.String(\"Router-SV\"),\n\t\t\tType: pulumi.String(\"XF_ROUTER\"),\n\t\t\tNotifications: fabric.CloudRouterNotificationArray{\n\t\t\t\t\u0026fabric.CloudRouterNotificationArgs{\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOrder: \u0026fabric.CloudRouterOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tLocation: \u0026fabric.CloudRouterLocationArgs{\n\t\t\t\tMetroCode: pulumi.String(\"SV\"),\n\t\t\t},\n\t\t\tPackage: \u0026fabric.CloudRouterPackageArgs{\n\t\t\t\tCode: pulumi.String(\"STANDARD\"),\n\t\t\t},\n\t\t\tProject: \u0026fabric.CloudRouterProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tMarketplaceSubscription: \u0026fabric.CloudRouterMarketplaceSubscriptionArgs{\n\t\t\t\tType: pulumi.String(\"AWS_MARKETPLACE_SUBSCRIPTION\"),\n\t\t\t\tUuid: pulumi.String(\"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newCloudRouter = new Equinix.Fabric.CloudRouter(\"newCloudRouter\", new()\n {\n Name = \"Router-SV\",\n Type = \"XF_ROUTER\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.CloudRouterNotificationArgs\n {\n Type = \"ALL\",\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Order = new Equinix.Fabric.Inputs.CloudRouterOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n Location = new Equinix.Fabric.Inputs.CloudRouterLocationArgs\n {\n MetroCode = \"SV\",\n },\n Package = new Equinix.Fabric.Inputs.CloudRouterPackageArgs\n {\n Code = \"STANDARD\",\n },\n Project = new Equinix.Fabric.Inputs.CloudRouterProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n MarketplaceSubscription = new Equinix.Fabric.Inputs.CloudRouterMarketplaceSubscriptionArgs\n {\n Type = \"AWS_MARKETPLACE_SUBSCRIPTION\",\n Uuid = \"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\",\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.CloudRouter;\nimport com.pulumi.equinix.fabric.CloudRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterLocationArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterPackageArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterProjectArgs;\nimport com.pulumi.equinix.fabric.inputs.CloudRouterMarketplaceSubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newCloudRouter = new CloudRouter(\"newCloudRouter\", CloudRouterArgs.builder()\n .name(\"Router-SV\")\n .type(\"XF_ROUTER\")\n .notifications(CloudRouterNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .order(CloudRouterOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .location(CloudRouterLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .package_(CloudRouterPackageArgs.builder()\n .code(\"STANDARD\")\n .build())\n .project(CloudRouterProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .marketplaceSubscription(CloudRouterMarketplaceSubscriptionArgs.builder()\n .type(\"AWS_MARKETPLACE_SUBSCRIPTION\")\n .uuid(\"2823b8ae07-a2a2-45b4-a658-c3542bb24e9\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newCloudRouter:\n type: equinix:fabric:CloudRouter\n name: new_cloud_router\n properties:\n name: Router-SV\n type: XF_ROUTER\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n order:\n purchaseOrderNumber: 1-323292\n location:\n metroCode: SV\n package:\n code: STANDARD\n project:\n projectId: '776847000642406'\n marketplaceSubscription:\n type: AWS_MARKETPLACE_SUBSCRIPTION\n uuid: 2823b8ae07-a2a2-45b4-a658-c3542bb24e9\n```\n{{% /example %}}\n\n{{% /examples %}}", + "equinix:fabric/connectionRouteFilter:ConnectionRouteFilter": { + "description": "Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst policyAttachment = new equinix.fabric.ConnectionRouteFilter(\"policyAttachment\", {\n connectionId: \"\u003cconnection_uuid\u003e\",\n routeFilterId: \"\u003croute_filter_policy_uuid\u003e\",\n direction: \"INBOUND\",\n});\nexport const connectionRouteFilterId = policyAttachment.id;\nexport const connectionRouteFilterConnectionId = policyAttachment.connectionId;\nexport const connectionRouteFilterDirection = policyAttachment.direction;\nexport const connectionRouteFilterType = policyAttachment.type;\nexport const connectionRouteFilterAttachmentStatus = policyAttachment.attachmentStatus;\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\npolicy_attachment = equinix.fabric.ConnectionRouteFilter(\"policyAttachment\",\n connection_id=\"\u003cconnection_uuid\u003e\",\n route_filter_id=\"\u003croute_filter_policy_uuid\u003e\",\n direction=\"INBOUND\")\npulumi.export(\"connectionRouteFilterId\", policy_attachment.id)\npulumi.export(\"connectionRouteFilterConnectionId\", policy_attachment.connection_id)\npulumi.export(\"connectionRouteFilterDirection\", policy_attachment.direction)\npulumi.export(\"connectionRouteFilterType\", policy_attachment.type)\npulumi.export(\"connectionRouteFilterAttachmentStatus\", policy_attachment.attachment_status)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var policyAttachment = new Equinix.Fabric.ConnectionRouteFilter(\"policyAttachment\", new()\n {\n ConnectionId = \"\u003cconnection_uuid\u003e\",\n RouteFilterId = \"\u003croute_filter_policy_uuid\u003e\",\n Direction = \"INBOUND\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"connectionRouteFilterId\"] = policyAttachment.Id,\n [\"connectionRouteFilterConnectionId\"] = policyAttachment.ConnectionId,\n [\"connectionRouteFilterDirection\"] = policyAttachment.Direction,\n [\"connectionRouteFilterType\"] = policyAttachment.Type,\n [\"connectionRouteFilterAttachmentStatus\"] = policyAttachment.AttachmentStatus,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpolicyAttachment, err := fabric.NewConnectionRouteFilter(ctx, \"policyAttachment\", \u0026fabric.ConnectionRouteFilterArgs{\n\t\t\tConnectionId: pulumi.String(\"\u003cconnection_uuid\u003e\"),\n\t\t\tRouteFilterId: pulumi.String(\"\u003croute_filter_policy_uuid\u003e\"),\n\t\t\tDirection: pulumi.String(\"INBOUND\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"connectionRouteFilterId\", policyAttachment.ID())\n\t\tctx.Export(\"connectionRouteFilterConnectionId\", policyAttachment.ConnectionId)\n\t\tctx.Export(\"connectionRouteFilterDirection\", policyAttachment.Direction)\n\t\tctx.Export(\"connectionRouteFilterType\", policyAttachment.Type)\n\t\tctx.Export(\"connectionRouteFilterAttachmentStatus\", policyAttachment.AttachmentStatus)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.ConnectionRouteFilter;\nimport com.pulumi.equinix.fabric.ConnectionRouteFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var policyAttachment = new ConnectionRouteFilter(\"policyAttachment\", ConnectionRouteFilterArgs.builder()\n .connectionId(\"\u003cconnection_uuid\u003e\")\n .routeFilterId(\"\u003croute_filter_policy_uuid\u003e\")\n .direction(\"INBOUND\")\n .build());\n\n ctx.export(\"connectionRouteFilterId\", policyAttachment.id());\n ctx.export(\"connectionRouteFilterConnectionId\", policyAttachment.connectionId());\n ctx.export(\"connectionRouteFilterDirection\", policyAttachment.direction());\n ctx.export(\"connectionRouteFilterType\", policyAttachment.type());\n ctx.export(\"connectionRouteFilterAttachmentStatus\", policyAttachment.attachmentStatus());\n }\n}\n```\n```yaml\nresources:\n policyAttachment:\n type: equinix:fabric:ConnectionRouteFilter\n properties:\n connectionId: \u003cconnection_uuid\u003e\n routeFilterId: \u003croute_filter_policy_uuid\u003e\n direction: INBOUND\noutputs:\n connectionRouteFilterId: ${policyAttachment.id}\n connectionRouteFilterConnectionId: ${policyAttachment.connectionId}\n connectionRouteFilterDirection: ${policyAttachment.direction}\n connectionRouteFilterType: ${policyAttachment.type}\n connectionRouteFilterAttachmentStatus: ${policyAttachment.attachmentStatus}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "properties": { - "account": { - "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", - "description": "Customer account information that is associated with this Fabric Cloud Router\n" + "attachmentStatus": { + "type": "string", + "description": "Status of the Route Filter Policy attachment lifecycle\n" }, - "bgpIpv4RoutesCount": { - "type": "integer", - "description": "Number of IPv4 BGP routes in use (including non-distinct prefixes)\n" + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n" }, - "bgpIpv6RoutesCount": { - "type": "integer", - "description": "Number of IPv6 BGP routes in use (including non-distinct prefixes)\n" + "direction": { + "type": "string", + "description": "Direction of the filtering of the attached Route Filter Policy\n" }, - "changeLogs": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/CloudRouterChangeLog:CloudRouterChangeLog" - }, - "description": "Captures Fabric Cloud Router lifecycle change information\n" + "href": { + "type": "string", + "description": "URI to the attached Route Filter Policy on the Connection\n" }, - "connectionsCount": { - "type": "integer", - "description": "Number of connections associated with this Fabric Cloud Router instance\n" + "routeFilterId": { + "type": "string", + "description": "Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection\n" }, - "description": { + "type": { "type": "string", - "description": "Customer-provided Fabric Cloud Router description\n" + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" }, - "distinctIpv4PrefixesCount": { - "type": "integer", - "description": "Number of distinct IPv4 routes\n" + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Policy\n" + } + }, + "required": [ + "attachmentStatus", + "connectionId", + "direction", + "href", + "routeFilterId", + "type", + "uuid" + ], + "inputProperties": { + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n", + "willReplaceOnChanges": true }, - "distinctIpv6PrefixesCount": { - "type": "integer", - "description": "Number of distinct IPv6 routes\n" + "direction": { + "type": "string", + "description": "Direction of the filtering of the attached Route Filter Policy\n" }, - "equinixAsn": { + "routeFilterId": { + "type": "string", + "description": "Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "connectionId", + "direction", + "routeFilterId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering ConnectionRouteFilter resources.\n", + "properties": { + "attachmentStatus": { + "type": "string", + "description": "Status of the Route Filter Policy attachment lifecycle\n" + }, + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n", + "willReplaceOnChanges": true + }, + "direction": { + "type": "string", + "description": "Direction of the filtering of the attached Route Filter Policy\n" + }, + "href": { + "type": "string", + "description": "URI to the attached Route Filter Policy on the Connection\n" + }, + "routeFilterId": { + "type": "string", + "description": "Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection\n", + "willReplaceOnChanges": true + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Policy\n" + } + }, + "type": "object" + } + }, + "equinix:fabric/network:Network": { + "description": "Fabric V4 API compatible resource allows creation and management of Equinix Fabric Network\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-networks-implement.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-networks\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newNetwork = new equinix.fabric.Network(\"newNetwork\", {\n notifications: [{\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n type: \"ALL\",\n }],\n project: {\n projectId: \"776847000642406\",\n },\n scope: \"GLOBAL\",\n type: \"EVPLAN\",\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_network = equinix.fabric.Network(\"newNetwork\",\n notifications=[{\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n \"type\": \"ALL\",\n }],\n project={\n \"project_id\": \"776847000642406\",\n },\n scope=\"GLOBAL\",\n type=\"EVPLAN\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newNetwork = new Equinix.Fabric.Network(\"newNetwork\", new()\n {\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.NetworkNotificationArgs\n {\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n Type = \"ALL\",\n },\n },\n Project = new Equinix.Fabric.Inputs.NetworkProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n Scope = \"GLOBAL\",\n Type = \"EVPLAN\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewNetwork(ctx, \"newNetwork\", \u0026fabric.NetworkArgs{\n\t\t\tNotifications: fabric.NetworkNotificationArray{\n\t\t\t\t\u0026fabric.NetworkNotificationArgs{\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: \u0026fabric.NetworkProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tScope: pulumi.String(\"GLOBAL\"),\n\t\t\tType: pulumi.String(\"EVPLAN\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Network;\nimport com.pulumi.equinix.fabric.NetworkArgs;\nimport com.pulumi.equinix.fabric.inputs.NetworkNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.NetworkProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newNetwork = new Network(\"newNetwork\", NetworkArgs.builder()\n .notifications(NetworkNotificationArgs.builder()\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .type(\"ALL\")\n .build())\n .project(NetworkProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .scope(\"GLOBAL\")\n .type(\"EVPLAN\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newNetwork:\n type: equinix:fabric:Network\n properties:\n notifications:\n - emails:\n - example@equinix.com\n - test1@equinix.com\n type: ALL\n project:\n projectId: '776847000642406'\n scope: GLOBAL\n type: EVPLAN\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "properties": { + "change": { + "$ref": "#/types/equinix:fabric/NetworkChange:NetworkChange", + "description": "Information on asset change operation\n" + }, + "changeLog": { + "$ref": "#/types/equinix:fabric/NetworkChangeLog:NetworkChangeLog", + "description": "A permanent record of asset creation, modification, or deletion\n" + }, + "connectionsCount": { "type": "integer", - "description": "Equinix ASN\n" + "description": "Number of connections associated with this network\n" }, "href": { "type": "string", - "description": "Fabric Cloud Router URI information\n" + "description": "Fabric Network URI information\n" }, "location": { - "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", - "description": "Fabric Cloud Router location\n" - }, - "marketplaceSubscription": { - "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", - "description": "Equinix Fabric Entity for Marketplace Subscription\n" + "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", + "description": "Fabric Network location\n" }, "name": { "type": "string", - "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" }, "notifications": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" }, - "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" - }, - "order": { - "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", - "description": "Order information related to this Fabric Cloud Router\n" + "description": "Preferences for notifications on Fabric Network configuration or status changes\n" }, - "package": { - "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", - "description": "Fabric Cloud Router Package Type\n" + "operation": { + "$ref": "#/types/equinix:fabric/NetworkOperation:NetworkOperation", + "description": "Network operation information that is associated with this Fabric Network\n" }, "project": { - "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", - "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", + "description": "Fabric Network project\n" + }, + "scope": { + "type": "string", + "description": "Fabric Network scope\n" }, "state": { "type": "string", - "description": "Fabric Cloud Router overall state\n" + "description": "Fabric Network overall state\n" }, "type": { "type": "string", - "description": "Defines the FCR type like; XF_ROUTER\n" + "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned Fabric Cloud Router identifier\n" + "description": "Equinix-assigned network identifier\n" } }, "required": [ - "account", - "bgpIpv4RoutesCount", - "bgpIpv6RoutesCount", - "changeLogs", + "change", + "changeLog", "connectionsCount", - "distinctIpv4PrefixesCount", - "distinctIpv6PrefixesCount", - "equinixAsn", "href", "location", - "marketplaceSubscription", "name", "notifications", - "order", - "package", + "operation", "project", + "scope", "state", "type", "uuid" ], "inputProperties": { - "account": { - "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", - "description": "Customer account information that is associated with this Fabric Cloud Router\n" - }, - "description": { - "type": "string", - "description": "Customer-provided Fabric Cloud Router description\n" - }, - "href": { - "type": "string", - "description": "Fabric Cloud Router URI information\n" - }, "location": { - "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", - "description": "Fabric Cloud Router location\n" - }, - "marketplaceSubscription": { - "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", - "description": "Equinix Fabric Entity for Marketplace Subscription\n" + "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", + "description": "Fabric Network location\n" }, "name": { "type": "string", - "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" }, "notifications": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" }, - "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" - }, - "order": { - "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", - "description": "Order information related to this Fabric Cloud Router\n" - }, - "package": { - "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", - "description": "Fabric Cloud Router Package Type\n" + "description": "Preferences for notifications on Fabric Network configuration or status changes\n" }, "project": { - "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", - "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", + "description": "Fabric Network project\n" }, - "type": { + "scope": { "type": "string", - "description": "Defines the FCR type like; XF_ROUTER\n" + "description": "Fabric Network scope\n" }, - "uuid": { + "type": { "type": "string", - "description": "Equinix-assigned Fabric Cloud Router identifier\n" + "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" } }, "requiredInputs": [ - "location", "notifications", - "package", "project", + "scope", "type" ], "stateInputs": { - "description": "Input properties used for looking up and filtering CloudRouter resources.\n", + "description": "Input properties used for looking up and filtering Network resources.\n", "properties": { - "account": { - "$ref": "#/types/equinix:fabric/CloudRouterAccount:CloudRouterAccount", - "description": "Customer account information that is associated with this Fabric Cloud Router\n" - }, - "bgpIpv4RoutesCount": { - "type": "integer", - "description": "Number of IPv4 BGP routes in use (including non-distinct prefixes)\n" - }, - "bgpIpv6RoutesCount": { - "type": "integer", - "description": "Number of IPv6 BGP routes in use (including non-distinct prefixes)\n" + "change": { + "$ref": "#/types/equinix:fabric/NetworkChange:NetworkChange", + "description": "Information on asset change operation\n" }, - "changeLogs": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/CloudRouterChangeLog:CloudRouterChangeLog" - }, - "description": "Captures Fabric Cloud Router lifecycle change information\n" + "changeLog": { + "$ref": "#/types/equinix:fabric/NetworkChangeLog:NetworkChangeLog", + "description": "A permanent record of asset creation, modification, or deletion\n" }, "connectionsCount": { "type": "integer", - "description": "Number of connections associated with this Fabric Cloud Router instance\n" - }, - "description": { - "type": "string", - "description": "Customer-provided Fabric Cloud Router description\n" - }, - "distinctIpv4PrefixesCount": { - "type": "integer", - "description": "Number of distinct IPv4 routes\n" - }, - "distinctIpv6PrefixesCount": { - "type": "integer", - "description": "Number of distinct IPv6 routes\n" - }, - "equinixAsn": { - "type": "integer", - "description": "Equinix ASN\n" + "description": "Number of connections associated with this network\n" }, "href": { "type": "string", - "description": "Fabric Cloud Router URI information\n" + "description": "Fabric Network URI information\n" }, "location": { - "$ref": "#/types/equinix:fabric/CloudRouterLocation:CloudRouterLocation", - "description": "Fabric Cloud Router location\n" - }, - "marketplaceSubscription": { - "$ref": "#/types/equinix:fabric/CloudRouterMarketplaceSubscription:CloudRouterMarketplaceSubscription", - "description": "Equinix Fabric Entity for Marketplace Subscription\n" + "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", + "description": "Fabric Network location\n" }, "name": { "type": "string", - "description": "Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" + "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" }, "notifications": { "type": "array", "items": { - "$ref": "#/types/equinix:fabric/CloudRouterNotification:CloudRouterNotification" + "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" }, - "description": "Preferences for notifications on Fabric Cloud Router configuration or status changes\n" - }, - "order": { - "$ref": "#/types/equinix:fabric/CloudRouterOrder:CloudRouterOrder", - "description": "Order information related to this Fabric Cloud Router\n" + "description": "Preferences for notifications on Fabric Network configuration or status changes\n" }, - "package": { - "$ref": "#/types/equinix:fabric/CloudRouterPackage:CloudRouterPackage", - "description": "Fabric Cloud Router Package Type\n" + "operation": { + "$ref": "#/types/equinix:fabric/NetworkOperation:NetworkOperation", + "description": "Network operation information that is associated with this Fabric Network\n" }, "project": { - "$ref": "#/types/equinix:fabric/CloudRouterProject:CloudRouterProject", - "description": "Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects\n" + "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", + "description": "Fabric Network project\n" + }, + "scope": { + "type": "string", + "description": "Fabric Network scope\n" }, "state": { "type": "string", - "description": "Fabric Cloud Router overall state\n" + "description": "Fabric Network overall state\n" }, "type": { "type": "string", - "description": "Defines the FCR type like; XF_ROUTER\n" + "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned Fabric Cloud Router identifier\n" + "description": "Equinix-assigned network identifier\n" } }, "type": "object" } }, - "equinix:fabric/connection:Connection": { - "description": "\n\n{{% examples %}}\n## Example Usage\n\n{{% example %}}\n### example fcr to azure\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Azure = new equinix.fabric.Connection(\"fcr2azure\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_azure = equinix.fabric.Connection(\"fcr2azure\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2azure\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Azure = new Equinix.Fabric.Connection(\"fcr2azure\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Azure = new Connection(\"fcr2Azure\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2azure:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to metal\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Metal = new equinix.fabric.Connection(\"fcr2metal\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: \"METAL_NETWORK\",\n authenticationKey: \"\u003cmetal_authorization_code\u003e\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_metal = equinix.fabric.Connection(\"fcr2metal\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": \"METAL_NETWORK\",\n \"authentication_key\": \"\u003cmetal_authorization_code\u003e\",\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2metal\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"METAL_NETWORK\"),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cmetal_authorization_code\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Metal = new Equinix.Fabric.Connection(\"fcr2metal\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = \"METAL_NETWORK\",\n AuthenticationKey = \"\u003cmetal_authorization_code\u003e\",\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Metal = new Connection(\"fcr2Metal\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"METAL_NETWORK\")\n .authenticationKey(\"\u003cmetal_authorization_code\u003e\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2metal:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: METAL_NETWORK\n authenticationKey: \u003cmetal_authorization_code\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to network\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Network = new equinix.fabric.Connection(\"fcr2network\", {\n name: \"ConnectionName\",\n type: \"IPWAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_network = equinix.fabric.Connection(\"fcr2network\",\n name=\"ConnectionName\",\n type=\"IPWAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2network\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IPWAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Network = new Equinix.Fabric.Connection(\"fcr2network\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IPWAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Network = new Connection(\"fcr2Network\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IPWAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2network:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IPWAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example fcr to port\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst fcr2Port = new equinix.fabric.Connection(\"fcr2port\", {\n name: \"ConnectionName\",\n type: \"IP_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"CLOUD_ROUTER\",\n router: {\n uuid: \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003cport_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanTag: 2711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nfcr2_port = equinix.fabric.Connection(\"fcr2port\",\n name=\"ConnectionName\",\n type=\"IP_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"CLOUD_ROUTER\",\n \"router\": {\n \"uuid\": \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003cport_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_tag\": 2711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"fcr2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"IP_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"CLOUD_ROUTER\"),\n\t\t\t\t\tRouter: \u0026fabric.ConnectionASideAccessPointRouterArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003ccloud_router_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cport_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanTag: pulumi.Int(2711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fcr2Port = new Equinix.Fabric.Connection(\"fcr2port\", new()\n {\n Name = \"ConnectionName\",\n Type = \"IP_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"CLOUD_ROUTER\",\n Router = new Equinix.Fabric.Inputs.ConnectionASideAccessPointRouterArgs\n {\n Uuid = \"\u003ccloud_router_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003cport_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanTag = 2711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointRouterArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var fcr2Port = new Connection(\"fcr2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"IP_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"CLOUD_ROUTER\")\n .router(ConnectionASideAccessPointRouterArgs.builder()\n .uuid(\"\u003ccloud_router_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003cport_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanTag(\"2711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fcr2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: IP_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: CLOUD_ROUTER\n router:\n uuid: \u003ccloud_router_uuid\u003e\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003cport_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanTag: '2711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example metal to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst metal2Aws = new equinix.fabric.Connection(\"metal2aws\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: \"METAL_NETWORK\",\n authenticationKey: \"\u003cmetal_authorization_code\u003e\",\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nmetal2_aws = equinix.fabric.Connection(\"metal2aws\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": \"METAL_NETWORK\",\n \"authentication_key\": \"\u003cmetal_authorization_code\u003e\",\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"metal2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(\"METAL_NETWORK\"),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cmetal_authorization_code\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var metal2Aws = new Equinix.Fabric.Connection(\"metal2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = \"METAL_NETWORK\",\n AuthenticationKey = \"\u003cmetal_authorization_code\u003e\",\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var metal2Aws = new Connection(\"metal2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"METAL_NETWORK\")\n .authenticationKey(\"\u003cmetal_authorization_code\u003e\")\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n metal2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: METAL_NETWORK\n authenticationKey: \u003cmetal_authorization_code\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst port2Aws = new equinix.fabric.Connection(\"port2aws\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n redundancy: {\n priority: \"PRIMARY\",\n },\n order: {\n purchaseOrderNumber: \"1-323929\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 2019,\n vlanCTag: 2112,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n additionalInfo: [\n {\n key: \"accessKey\",\n value: \"\u003caws_access_key\u003e\",\n },\n {\n key: \"secretKey\",\n value: \"\u003caws_secret_key\u003e\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nport2_aws = equinix.fabric.Connection(\"port2aws\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n redundancy={\n \"priority\": \"PRIMARY\",\n },\n order={\n \"purchase_order_number\": \"1-323929\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 2019,\n \"vlan_c_tag\": 2112,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n },\n additional_info=[\n {\n \"key\": \"accessKey\",\n \"value\": \"\u003caws_access_key\u003e\",\n },\n {\n \"key\": \"secretKey\",\n \"value\": \"\u003caws_secret_key\u003e\",\n },\n ])\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"port2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"PRIMARY\"),\n\t\t\t},\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323929\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(2019),\n\t\t\t\t\t\tVlanCTag: pulumi.Int(2112),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdditionalInfo: pulumi.StringMapArray{\n\t\t\t\tpulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"accessKey\"),\n\t\t\t\t\t\"value\": pulumi.String(\"\u003caws_access_key\u003e\"),\n\t\t\t\t},\n\t\t\t\tpulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"secretKey\"),\n\t\t\t\t\t\"value\": pulumi.String(\"\u003caws_secret_key\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var port2Aws = new Equinix.Fabric.Connection(\"port2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"PRIMARY\",\n },\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323929\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 2019,\n VlanCTag = 2112,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n AdditionalInfo = new[]\n {\n \n {\n { \"key\", \"accessKey\" },\n { \"value\", \"\u003caws_access_key\u003e\" },\n },\n \n {\n { \"key\", \"secretKey\" },\n { \"value\", \"\u003caws_secret_key\u003e\" },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionRedundancyArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var port2Aws = new Connection(\"port2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"PRIMARY\")\n .build())\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323929\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"2019\")\n .vlanCTag(\"2112\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .additionalInfo( \n Map.ofEntries(\n Map.entry(\"key\", \"accessKey\"),\n Map.entry(\"value\", \"\u003caws_access_key\u003e\")\n ),\n Map.ofEntries(\n Map.entry(\"key\", \"secretKey\"),\n Map.entry(\"value\", \"\u003caws_secret_key\u003e\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n port2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n redundancy:\n priority: PRIMARY\n order:\n purchaseOrderNumber: 1-323929\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '2019'\n vlanCTag: '2112'\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n additionalInfo:\n - key: accessKey\n value: \u003caws_access_key\u003e\n - key: secretKey\n value: \u003caws_secret_key\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to network eplan\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst eplan = new equinix.fabric.Connection(\"eplan\", {\n name: \"ConnectionName\",\n type: \"EPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\neplan = equinix.fabric.Connection(\"eplan\",\n name=\"ConnectionName\",\n type=\"EPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"eplan\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var eplan = new Equinix.Fabric.Connection(\"eplan\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var eplan = new Connection(\"eplan\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n eplan:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to network evplan\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst evplan = new equinix.fabric.Connection(\"evplan\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nevplan = equinix.fabric.Connection(\"evplan\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"evplan\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var evplan = new Equinix.Fabric.Connection(\"evplan\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var evplan = new Connection(\"evplan\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n evplan:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst port2Port = new equinix.fabric.Connection(\"port2port\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 3711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nport2_port = equinix.fabric.Connection(\"port2port\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 3711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"port2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(3711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var port2Port = new Equinix.Fabric.Connection(\"port2port\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 3711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var port2Port = new Connection(\"port2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"3711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n port2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '3711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port access epl\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst accessEplVc = new equinix.fabric.Connection(\"accessEplVc\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.AccessEPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.QinQ,\n vlanSTag: 1976,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\naccess_epl_vc = equinix.fabric.Connection(\"accessEplVc\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.ACCESS_EPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.QIN_Q,\n \"vlan_s_tag\": 1976,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"accessEplVc\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeAccessEPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionASideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeQinQ),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(1976),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var accessEplVc = new Equinix.Fabric.Connection(\"accessEplVc\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.AccessEPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionASideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.QinQ,\n VlanSTag = 1976,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var accessEplVc = new Connection(\"accessEplVc\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"ACCESS_EPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionASideAccessPointLinkProtocolArgs.builder()\n .type(\"QINQ\")\n .vlanSTag(\"1976\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n accessEplVc:\n type: equinix:fabric:Connection\n name: access_epl_vc\n properties:\n name: ConnectionName\n type: ACCESS_EPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n linkProtocol:\n type: QINQ\n vlanSTag: '1976'\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to port epl\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst epl = new equinix.fabric.Connection(\"epl\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nepl = equinix.fabric.Connection(\"epl\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"epl\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionASideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003caside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var epl = new Equinix.Fabric.Connection(\"epl\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionASideAccessPointPortArgs\n {\n Uuid = \"\u003caside_port_uuid\u003e\",\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var epl = new Connection(\"epl\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionASideAccessPointPortArgs.builder()\n .uuid(\"\u003caside_port_uuid\u003e\")\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n epl:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003caside_port_uuid\u003e\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example port to vd\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Port = new equinix.fabric.Connection(\"vd2port\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"NETWORK\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Colo,\n port: {\n uuid: \"\u003czside_port_uuid\u003e\",\n },\n linkProtocol: {\n type: equinix.fabric.AccessPointLinkProtocolType.Dot1q,\n vlanSTag: 3711,\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_port = equinix.fabric.Connection(\"vd2port\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"NETWORK\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.COLO,\n \"port\": {\n \"uuid\": \"\u003czside_port_uuid\u003e\",\n },\n \"link_protocol\": {\n \"type\": equinix.fabric.AccessPointLinkProtocolType.DOT1Q,\n \"vlan_s_tag\": 3711,\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2port\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"NETWORK\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeColo),\n\t\t\t\t\tPort: \u0026fabric.ConnectionZSideAccessPointPortArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003czside_port_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLinkProtocol: \u0026fabric.ConnectionZSideAccessPointLinkProtocolArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.AccessPointLinkProtocolTypeDot1q),\n\t\t\t\t\t\tVlanSTag: pulumi.Int(3711),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Port = new Equinix.Fabric.Connection(\"vd2port\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"NETWORK\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Colo,\n Port = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointPortArgs\n {\n Uuid = \"\u003czside_port_uuid\u003e\",\n },\n LinkProtocol = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLinkProtocolArgs\n {\n Type = Equinix.Fabric.AccessPointLinkProtocolType.Dot1q,\n VlanSTag = 3711,\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointPortArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLinkProtocolArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Port = new Connection(\"vd2Port\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"NETWORK\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"COLO\")\n .port(ConnectionZSideAccessPointPortArgs.builder()\n .uuid(\"\u003czside_port_uuid\u003e\")\n .build())\n .linkProtocol(ConnectionZSideAccessPointLinkProtocolArgs.builder()\n .type(\"DOT1Q\")\n .vlanSTag(\"3711\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2port:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: NETWORK\n id: 7\n zSide:\n accessPoint:\n type: COLO\n port:\n uuid: \u003czside_port_uuid\u003e\n linkProtocol:\n type: DOT1Q\n vlanSTag: '3711'\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example token to aws\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst token2Aws = new equinix.fabric.Connection(\"token2aws\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n serviceToken: {\n uuid: \"\u003cservice_token_uuid\u003e\",\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003caws_account_id\u003e\",\n sellerRegion: \"us-west-1\",\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cservice_profile_uuid\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\ntoken2_aws = equinix.fabric.Connection(\"token2aws\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"service_token\": {\n \"uuid\": \"\u003cservice_token_uuid\u003e\",\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003caws_account_id\u003e\",\n \"seller_region\": \"us-west-1\",\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cservice_profile_uuid\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"token2aws\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tServiceToken: \u0026fabric.ConnectionASideServiceTokenArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_token_uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003caws_account_id\u003e\"),\n\t\t\t\t\tSellerRegion: pulumi.String(\"us-west-1\"),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_profile_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var token2Aws = new Equinix.Fabric.Connection(\"token2aws\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n ServiceToken = new Equinix.Fabric.Inputs.ConnectionASideServiceTokenArgs\n {\n Uuid = \"\u003cservice_token_uuid\u003e\",\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003caws_account_id\u003e\",\n SellerRegion = \"us-west-1\",\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cservice_profile_uuid\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideServiceTokenArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var token2Aws = new Connection(\"token2Aws\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .serviceToken(ConnectionASideServiceTokenArgs.builder()\n .uuid(\"\u003cservice_token_uuid\u003e\")\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003caws_account_id\u003e\")\n .sellerRegion(\"us-west-1\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cservice_profile_uuid\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n token2aws:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n serviceToken:\n uuid: \u003cservice_token_uuid\u003e\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003caws_account_id\u003e\n sellerRegion: us-west-1\n profile:\n type: L2_PROFILE\n uuid: \u003cservice_profile_uuid\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to azure\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Azure = new equinix.fabric.Connection(\"vd2azure\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_azure = equinix.fabric.Connection(\"vd2azure\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2azure\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Azure = new Equinix.Fabric.Connection(\"vd2azure\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Azure = new Connection(\"vd2Azure\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2azure:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to azure redundant\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2AzurePrimary = new equinix.fabric.Connection(\"vd2azurePrimary\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n redundancy: {\n priority: \"PRIMARY\",\n },\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\nconst vd2AzureSecondary = new equinix.fabric.Connection(\"vd2azureSecondary\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n redundancy: {\n priority: \"SECONDARY\",\n group: vd2AzurePrimary.redundancy.apply(redundancy =\u003e redundancy?.group),\n },\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 5,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.SP,\n authenticationKey: \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n peeringType: equinix.fabric.AccessPointPeeringType.Private,\n profile: {\n type: equinix.fabric.ProfileType.L2Profile,\n uuid: \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n location: {\n metroCode: equinix.index.Metro.SiliconValley,\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_azure_primary = equinix.fabric.Connection(\"vd2azurePrimary\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n redundancy={\n \"priority\": \"PRIMARY\",\n },\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\nvd2_azure_secondary = equinix.fabric.Connection(\"vd2azureSecondary\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n redundancy={\n \"priority\": \"SECONDARY\",\n \"group\": vd2_azure_primary.redundancy.group,\n },\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 5,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.SP,\n \"authentication_key\": \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n \"peering_type\": equinix.fabric.AccessPointPeeringType.PRIVATE,\n \"profile\": {\n \"type\": equinix.fabric.ProfileType.L2_PROFILE,\n \"uuid\": \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n \"location\": {\n \"metro_code\": equinix.Metro.SILICON_VALLEY,\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix\"\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tvd2AzurePrimary, err := fabric.NewConnection(ctx, \"vd2azurePrimary\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"PRIMARY\"),\n\t\t\t},\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = fabric.NewConnection(ctx, \"vd2azureSecondary\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tRedundancy: \u0026fabric.ConnectionRedundancyArgs{\n\t\t\t\tPriority: pulumi.String(\"SECONDARY\"),\n\t\t\t\tGroup: vd2AzurePrimary.Redundancy.ApplyT(func(redundancy fabric.ConnectionRedundancy) (*string, error) {\n\t\t\t\t\treturn \u0026redundancy.Group, nil\n\t\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\t},\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeSP),\n\t\t\t\t\tAuthenticationKey: pulumi.String(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\"),\n\t\t\t\t\tPeeringType: pulumi.String(fabric.AccessPointPeeringTypePrivate),\n\t\t\t\t\tProfile: \u0026fabric.ConnectionZSideAccessPointProfileArgs{\n\t\t\t\t\t\tType: pulumi.String(fabric.ProfileTypeL2Profile),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cAzure_Service_Profile_UUID\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tLocation: \u0026fabric.ConnectionZSideAccessPointLocationArgs{\n\t\t\t\t\t\tMetroCode: pulumi.String(equinix.MetroSiliconValley),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2AzurePrimary = new Equinix.Fabric.Connection(\"vd2azurePrimary\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"PRIMARY\",\n },\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n var vd2AzureSecondary = new Equinix.Fabric.Connection(\"vd2azureSecondary\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Redundancy = new Equinix.Fabric.Inputs.ConnectionRedundancyArgs\n {\n Priority = \"SECONDARY\",\n Group = vd2AzurePrimary.Redundancy.Apply(redundancy =\u003e redundancy?.Group),\n },\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 5,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.SP,\n AuthenticationKey = \"\u003cAzure_ExpressRouter_Auth_Key\u003e\",\n PeeringType = Equinix.Fabric.AccessPointPeeringType.Private,\n Profile = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointProfileArgs\n {\n Type = Equinix.Fabric.ProfileType.L2Profile,\n Uuid = \"\u003cAzure_Service_Profile_UUID\u003e\",\n },\n Location = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointLocationArgs\n {\n MetroCode = Equinix.Metro.SiliconValley,\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionRedundancyArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointProfileArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2AzurePrimary = new Connection(\"vd2AzurePrimary\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"PRIMARY\")\n .build())\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n var vd2AzureSecondary = new Connection(\"vd2AzureSecondary\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .redundancy(ConnectionRedundancyArgs.builder()\n .priority(\"SECONDARY\")\n .group(vd2AzurePrimary.redundancy().applyValue(redundancy -\u003e redundancy.group()))\n .build())\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(5)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"SP\")\n .authenticationKey(\"\u003cAzure_ExpressRouter_Auth_Key\u003e\")\n .peeringType(\"PRIVATE\")\n .profile(ConnectionZSideAccessPointProfileArgs.builder()\n .type(\"L2_PROFILE\")\n .uuid(\"\u003cAzure_Service_Profile_UUID\u003e\")\n .build())\n .location(ConnectionZSideAccessPointLocationArgs.builder()\n .metroCode(\"SV\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2azurePrimary:\n type: equinix:fabric:Connection\n name: vd2azure_primary\n properties:\n name: ConnectionName\n type: EVPL_VC\n redundancy:\n priority: PRIMARY\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n vd2azureSecondary:\n type: equinix:fabric:Connection\n name: vd2azure_secondary\n properties:\n name: ConnectionName\n type: EVPL_VC\n redundancy:\n priority: SECONDARY\n group: ${vd2azurePrimary.redundancy.group}\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 5\n zSide:\n accessPoint:\n type: SP\n authenticationKey: \u003cAzure_ExpressRouter_Auth_Key\u003e\n peeringType: PRIVATE\n profile:\n type: L2_PROFILE\n uuid: \u003cAzure_Service_Profile_UUID\u003e\n location:\n metroCode: SV\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to network\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Network = new equinix.fabric.Connection(\"vd2network\", {\n name: \"ConnectionName\",\n type: \"EVPLAN_VC\",\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"CLOUD\",\n id: 7,\n },\n },\n },\n zSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.Network,\n network: {\n uuid: \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_network = equinix.fabric.Connection(\"vd2network\",\n name=\"ConnectionName\",\n type=\"EVPLAN_VC\",\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"CLOUD\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.NETWORK,\n \"network\": {\n \"uuid\": \"\u003cnetwork_uuid\u003e\",\n },\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2network\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(\"EVPLAN_VC\"),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"CLOUD\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionZSideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeNetwork),\n\t\t\t\t\tNetwork: \u0026fabric.ConnectionZSideAccessPointNetworkArgs{\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cnetwork_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Network = new Equinix.Fabric.Connection(\"vd2network\", new()\n {\n Name = \"ConnectionName\",\n Type = \"EVPLAN_VC\",\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"CLOUD\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.Network,\n Network = new Equinix.Fabric.Inputs.ConnectionZSideAccessPointNetworkArgs\n {\n Uuid = \"\u003cnetwork_uuid\u003e\",\n },\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideAccessPointNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Network = new Connection(\"vd2Network\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPLAN_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"CLOUD\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .accessPoint(ConnectionZSideAccessPointArgs.builder()\n .type(\"NETWORK\")\n .network(ConnectionZSideAccessPointNetworkArgs.builder()\n .uuid(\"\u003cnetwork_uuid\u003e\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2network:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPLAN_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: CLOUD\n id: 7\n zSide:\n accessPoint:\n type: NETWORK\n network:\n uuid: \u003cnetwork_uuid\u003e\n```\n{{% /example %}}\n\n{{% example %}}\n### example vd to token\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst vd2Token = new equinix.fabric.Connection(\"vd2token\", {\n name: \"ConnectionName\",\n type: equinix.fabric.ConnectionType.EVPL,\n notifications: [{\n type: equinix.fabric.NotificationsType.All,\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth: 50,\n order: {\n purchaseOrderNumber: \"1-323292\",\n },\n aSide: {\n accessPoint: {\n type: equinix.fabric.AccessPointType.VD,\n virtualDevice: {\n type: \"EDGE\",\n uuid: \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n type: \"NETWORK\",\n id: 7,\n },\n },\n },\n zSide: {\n serviceToken: {\n uuid: \"\u003cservice_token_uuid\u003e\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nvd2_token = equinix.fabric.Connection(\"vd2token\",\n name=\"ConnectionName\",\n type=equinix.fabric.ConnectionType.EVPL,\n notifications=[{\n \"type\": equinix.fabric.NotificationsType.ALL,\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n }],\n bandwidth=50,\n order={\n \"purchase_order_number\": \"1-323292\",\n },\n a_side={\n \"access_point\": {\n \"type\": equinix.fabric.AccessPointType.VD,\n \"virtual_device\": {\n \"type\": \"EDGE\",\n \"uuid\": \"\u003cdevice_uuid\u003e\",\n },\n \"interface\": {\n \"type\": \"NETWORK\",\n \"id\": 7,\n },\n },\n },\n z_side={\n \"service_token\": {\n \"uuid\": \"\u003cservice_token_uuid\u003e\",\n },\n })\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewConnection(ctx, \"vd2token\", \u0026fabric.ConnectionArgs{\n\t\t\tName: pulumi.String(\"ConnectionName\"),\n\t\t\tType: pulumi.String(fabric.ConnectionTypeEVPL),\n\t\t\tNotifications: fabric.ConnectionNotificationArray{\n\t\t\t\t\u0026fabric.ConnectionNotificationArgs{\n\t\t\t\t\tType: pulumi.String(fabric.NotificationsTypeAll),\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBandwidth: pulumi.Int(50),\n\t\t\tOrder: \u0026fabric.ConnectionOrderArgs{\n\t\t\t\tPurchaseOrderNumber: pulumi.String(\"1-323292\"),\n\t\t\t},\n\t\t\tASide: \u0026fabric.ConnectionASideArgs{\n\t\t\t\tAccessPoint: \u0026fabric.ConnectionASideAccessPointArgs{\n\t\t\t\t\tType: pulumi.String(fabric.AccessPointTypeVD),\n\t\t\t\t\tVirtualDevice: \u0026fabric.ConnectionASideAccessPointVirtualDeviceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"EDGE\"),\n\t\t\t\t\t\tUuid: pulumi.String(\"\u003cdevice_uuid\u003e\"),\n\t\t\t\t\t},\n\t\t\t\t\tInterface: \u0026fabric.ConnectionASideAccessPointInterfaceArgs{\n\t\t\t\t\t\tType: pulumi.String(\"NETWORK\"),\n\t\t\t\t\t\tId: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tZSide: \u0026fabric.ConnectionZSideArgs{\n\t\t\t\tServiceToken: \u0026fabric.ConnectionZSideServiceTokenArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cservice_token_uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vd2Token = new Equinix.Fabric.Connection(\"vd2token\", new()\n {\n Name = \"ConnectionName\",\n Type = Equinix.Fabric.ConnectionType.EVPL,\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.ConnectionNotificationArgs\n {\n Type = Equinix.Fabric.NotificationsType.All,\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n },\n },\n Bandwidth = 50,\n Order = new Equinix.Fabric.Inputs.ConnectionOrderArgs\n {\n PurchaseOrderNumber = \"1-323292\",\n },\n ASide = new Equinix.Fabric.Inputs.ConnectionASideArgs\n {\n AccessPoint = new Equinix.Fabric.Inputs.ConnectionASideAccessPointArgs\n {\n Type = Equinix.Fabric.AccessPointType.VD,\n VirtualDevice = new Equinix.Fabric.Inputs.ConnectionASideAccessPointVirtualDeviceArgs\n {\n Type = \"EDGE\",\n Uuid = \"\u003cdevice_uuid\u003e\",\n },\n Interface = new Equinix.Fabric.Inputs.ConnectionASideAccessPointInterfaceArgs\n {\n Type = \"NETWORK\",\n Id = 7,\n },\n },\n },\n ZSide = new Equinix.Fabric.Inputs.ConnectionZSideArgs\n {\n ServiceToken = new Equinix.Fabric.Inputs.ConnectionZSideServiceTokenArgs\n {\n Uuid = \"\u003cservice_token_uuid\u003e\",\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Connection;\nimport com.pulumi.equinix.fabric.ConnectionArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionOrderArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointVirtualDeviceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionASideAccessPointInterfaceArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideArgs;\nimport com.pulumi.equinix.fabric.inputs.ConnectionZSideServiceTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vd2Token = new Connection(\"vd2Token\", ConnectionArgs.builder()\n .name(\"ConnectionName\")\n .type(\"EVPL_VC\")\n .notifications(ConnectionNotificationArgs.builder()\n .type(\"ALL\")\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .build())\n .bandwidth(50)\n .order(ConnectionOrderArgs.builder()\n .purchaseOrderNumber(\"1-323292\")\n .build())\n .aSide(ConnectionASideArgs.builder()\n .accessPoint(ConnectionASideAccessPointArgs.builder()\n .type(\"VD\")\n .virtualDevice(ConnectionASideAccessPointVirtualDeviceArgs.builder()\n .type(\"EDGE\")\n .uuid(\"\u003cdevice_uuid\u003e\")\n .build())\n .interface_(ConnectionASideAccessPointInterfaceArgs.builder()\n .type(\"NETWORK\")\n .id(7)\n .build())\n .build())\n .build())\n .zSide(ConnectionZSideArgs.builder()\n .serviceToken(ConnectionZSideServiceTokenArgs.builder()\n .uuid(\"\u003cservice_token_uuid\u003e\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vd2token:\n type: equinix:fabric:Connection\n properties:\n name: ConnectionName\n type: EVPL_VC\n notifications:\n - type: ALL\n emails:\n - example@equinix.com\n - test1@equinix.com\n bandwidth: 50\n order:\n purchaseOrderNumber: 1-323292\n aSide:\n accessPoint:\n type: VD\n virtualDevice:\n type: EDGE\n uuid: \u003cdevice_uuid\u003e\n interface:\n type: NETWORK\n id: 7\n zSide:\n serviceToken:\n uuid: \u003cservice_token_uuid\u003e\n```\n{{% /example %}}\n\n{{% /examples %}}", + "equinix:fabric/routeFilter:RouteFilter": { + "description": "Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters\n\n", "properties": { - "aSide": { - "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", - "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" - }, - "account": { - "$ref": "#/types/equinix:fabric/ConnectionAccount:ConnectionAccount", - "description": "Customer account information that is associated with this connection\n" + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterChangeLog:RouteFilterChangeLog" + } }, - "additionalInfo": { + "changes": { "type": "array", "items": { - "type": "object", - "additionalProperties": { - "type": "string" - } + "$ref": "#/types/equinix:fabric/RouteFilterChange:RouteFilterChange" }, - "description": "Connection additional information\n" + "description": "An object with the details of the previous change applied on the Route Filter\n" }, - "bandwidth": { + "connectionsCount": { "type": "integer", - "description": "Connection bandwidth in Mbps\n" - }, - "changeLog": { - "$ref": "#/types/equinix:fabric/ConnectionChangeLog:ConnectionChangeLog", - "description": "Captures connection lifecycle change information\n" + "description": "The number of Fabric Connections that this Route Filter is attached to\n" }, "description": { "type": "string", - "description": "Customer-provided connection description\n" - }, - "direction": { - "type": "string", - "description": "Connection directionality from the requester point of view\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, "href": { "type": "string", - "description": "Connection URI information\n" - }, - "isRemote": { - "type": "boolean", - "description": "Connection property derived from access point locations\n" + "description": "Route filter URI\n" }, "name": { "type": "string", - "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" - }, - "description": "Preferences for notifications on connection configuration or status changes\n" - }, - "operation": { - "$ref": "#/types/equinix:fabric/ConnectionOperation:ConnectionOperation", - "description": "Connection type-specific operational data\n" + "description": "Name of the Route Filter\n" }, - "order": { - "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", - "description": "Order details\n" + "notMatchedRuleAction": { + "type": "string", + "description": "The action that will be taken on ip ranges that don't match the rules present within the Route Filter\n" }, "project": { - "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", - "description": "Project information\n" + "$ref": "#/types/equinix:fabric/RouteFilterProject:RouteFilterProject", + "description": "The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to\n" }, - "redundancy": { - "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", - "description": "Connection Redundancy Configuration\n" + "rulesCount": { + "type": "integer", + "description": "The number of Route Filter Rules attached to this Route Filter\n" }, "state": { "type": "string", - "description": "Connection overall state\n" + "description": "State of the Route Filter in its lifecycle\n" }, "type": { "type": "string", - "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned connection identifier\n" - }, - "zSide": { - "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", - "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + "description": "Equinix Assigned ID for Route Filter\n" } }, "required": [ - "aSide", - "account", - "bandwidth", - "changeLog", - "direction", + "changes", + "changeLogs", + "connectionsCount", + "description", "href", - "isRemote", "name", - "notifications", - "operation", - "order", + "notMatchedRuleAction", "project", + "rulesCount", "state", "type", - "uuid", - "zSide" + "uuid" ], "inputProperties": { - "aSide": { - "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", - "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" - }, - "additionalInfo": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "description": "Connection additional information\n" - }, - "bandwidth": { - "type": "integer", - "description": "Connection bandwidth in Mbps\n" - }, "description": { "type": "string", - "description": "Customer-provided connection description\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, "name": { "type": "string", - "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" - }, - "description": "Preferences for notifications on connection configuration or status changes\n" - }, - "order": { - "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", - "description": "Order details\n" + "description": "Name of the Route Filter\n" }, "project": { - "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", - "description": "Project information\n" - }, - "redundancy": { - "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", - "description": "Connection Redundancy Configuration\n" + "$ref": "#/types/equinix:fabric/RouteFilterProject:RouteFilterProject", + "description": "The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to\n" }, "type": { "type": "string", - "oneOf": [ - { - "type": "string" - }, - { - "type": "string", - "$ref": "#/types/equinix:fabric/connectionType:ConnectionType" - } - ], - "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" - }, - "zSide": { - "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", - "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" } }, "requiredInputs": [ - "aSide", - "bandwidth", - "notifications", - "type", - "zSide" + "project", + "type" ], "stateInputs": { - "description": "Input properties used for looking up and filtering Connection resources.\n", + "description": "Input properties used for looking up and filtering RouteFilter resources.\n", "properties": { - "aSide": { - "$ref": "#/types/equinix:fabric/ConnectionASide:ConnectionASide", - "description": "Requester or Customer side connection configuration object of the multi-segment connection\n" - }, - "account": { - "$ref": "#/types/equinix:fabric/ConnectionAccount:ConnectionAccount", - "description": "Customer account information that is associated with this connection\n" + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterChangeLog:RouteFilterChangeLog" + } }, - "additionalInfo": { + "changes": { "type": "array", "items": { - "type": "object", - "additionalProperties": { - "type": "string" - } + "$ref": "#/types/equinix:fabric/RouteFilterChange:RouteFilterChange" }, - "description": "Connection additional information\n" + "description": "An object with the details of the previous change applied on the Route Filter\n" }, - "bandwidth": { + "connectionsCount": { "type": "integer", - "description": "Connection bandwidth in Mbps\n" - }, - "changeLog": { - "$ref": "#/types/equinix:fabric/ConnectionChangeLog:ConnectionChangeLog", - "description": "Captures connection lifecycle change information\n" - }, - "description": { - "type": "string", - "description": "Customer-provided connection description\n" + "description": "The number of Fabric Connections that this Route Filter is attached to\n" }, - "direction": { + "description": { "type": "string", - "description": "Connection directionality from the requester point of view\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, "href": { "type": "string", - "description": "Connection URI information\n" - }, - "isRemote": { - "type": "boolean", - "description": "Connection property derived from access point locations\n" + "description": "Route filter URI\n" }, "name": { "type": "string", - "description": "Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/ConnectionNotification:ConnectionNotification" - }, - "description": "Preferences for notifications on connection configuration or status changes\n" - }, - "operation": { - "$ref": "#/types/equinix:fabric/ConnectionOperation:ConnectionOperation", - "description": "Connection type-specific operational data\n" + "description": "Name of the Route Filter\n" }, - "order": { - "$ref": "#/types/equinix:fabric/ConnectionOrder:ConnectionOrder", - "description": "Order details\n" + "notMatchedRuleAction": { + "type": "string", + "description": "The action that will be taken on ip ranges that don't match the rules present within the Route Filter\n" }, "project": { - "$ref": "#/types/equinix:fabric/ConnectionProject:ConnectionProject", - "description": "Project information\n" + "$ref": "#/types/equinix:fabric/RouteFilterProject:RouteFilterProject", + "description": "The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to\n" }, - "redundancy": { - "$ref": "#/types/equinix:fabric/ConnectionRedundancy:ConnectionRedundancy", - "description": "Connection Redundancy Configuration\n" + "rulesCount": { + "type": "integer", + "description": "The number of Route Filter Rules attached to this Route Filter\n" }, "state": { "type": "string", - "description": "Connection overall state\n" + "description": "State of the Route Filter in its lifecycle\n" }, "type": { "type": "string", - "oneOf": [ - { - "type": "string" - }, - { - "type": "string", - "$ref": "#/types/equinix:fabric/connectionType:ConnectionType" - } - ], - "description": "Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC\n" + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned connection identifier\n" - }, - "zSide": { - "$ref": "#/types/equinix:fabric/ConnectionZSide:ConnectionZSide", - "description": "Destination or Provider side connection configuration object of the multi-segment connection\n" + "description": "Equinix Assigned ID for Route Filter\n" } }, "type": "object" } }, - "equinix:fabric/network:Network": { - "description": "Fabric V4 API compatible resource allows creation and management of Equinix Fabric Network\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-networks-implement.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-networks\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst newNetwork = new equinix.fabric.Network(\"newNetwork\", {\n notifications: [{\n emails: [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n type: \"ALL\",\n }],\n project: {\n projectId: \"776847000642406\",\n },\n scope: \"GLOBAL\",\n type: \"EVPLAN\",\n});\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nnew_network = equinix.fabric.Network(\"newNetwork\",\n notifications=[{\n \"emails\": [\n \"example@equinix.com\",\n \"test1@equinix.com\",\n ],\n \"type\": \"ALL\",\n }],\n project={\n \"project_id\": \"776847000642406\",\n },\n scope=\"GLOBAL\",\n type=\"EVPLAN\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var newNetwork = new Equinix.Fabric.Network(\"newNetwork\", new()\n {\n Notifications = new[]\n {\n new Equinix.Fabric.Inputs.NetworkNotificationArgs\n {\n Emails = new[]\n {\n \"example@equinix.com\",\n \"test1@equinix.com\",\n },\n Type = \"ALL\",\n },\n },\n Project = new Equinix.Fabric.Inputs.NetworkProjectArgs\n {\n ProjectId = \"776847000642406\",\n },\n Scope = \"GLOBAL\",\n Type = \"EVPLAN\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fabric.NewNetwork(ctx, \"newNetwork\", \u0026fabric.NetworkArgs{\n\t\t\tNotifications: fabric.NetworkNotificationArray{\n\t\t\t\t\u0026fabric.NetworkNotificationArgs{\n\t\t\t\t\tEmails: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example@equinix.com\"),\n\t\t\t\t\t\tpulumi.String(\"test1@equinix.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"ALL\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: \u0026fabric.NetworkProjectArgs{\n\t\t\t\tProjectId: pulumi.String(\"776847000642406\"),\n\t\t\t},\n\t\t\tScope: pulumi.String(\"GLOBAL\"),\n\t\t\tType: pulumi.String(\"EVPLAN\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.Network;\nimport com.pulumi.equinix.fabric.NetworkArgs;\nimport com.pulumi.equinix.fabric.inputs.NetworkNotificationArgs;\nimport com.pulumi.equinix.fabric.inputs.NetworkProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var newNetwork = new Network(\"newNetwork\", NetworkArgs.builder()\n .notifications(NetworkNotificationArgs.builder()\n .emails( \n \"example@equinix.com\",\n \"test1@equinix.com\")\n .type(\"ALL\")\n .build())\n .project(NetworkProjectArgs.builder()\n .projectId(\"776847000642406\")\n .build())\n .scope(\"GLOBAL\")\n .type(\"EVPLAN\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newNetwork:\n type: equinix:fabric:Network\n properties:\n notifications:\n - emails:\n - example@equinix.com\n - test1@equinix.com\n type: ALL\n project:\n projectId: '776847000642406'\n scope: GLOBAL\n type: EVPLAN\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "equinix:fabric/routeFilterRule:RouteFilterRule": { + "description": "Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@equinix-labs/pulumi-equinix\";\n\nconst rfRule = new equinix.fabric.RouteFilterRule(\"rfRule\", {\n routeFilterId: \"\u003croute_filter_policy_id\u003e\",\n prefix: \"192.168.0.0/24\",\n prefixMatch: \"exact\",\n description: \"Route Filter Rule for X Purpose\",\n});\nexport const routeFilterRuleId = rfRule.id;\nexport const routeFilterId = rfRule.routeFilterId;\nexport const routeFilterRulePrefix = rfRule.prefix;\nexport const routeFilterRulePrefixMatch = rfRule.prefixMatch;\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrf_rule = equinix.fabric.RouteFilterRule(\"rfRule\",\n route_filter_id=\"\u003croute_filter_policy_id\u003e\",\n prefix=\"192.168.0.0/24\",\n prefix_match=\"exact\",\n description=\"Route Filter Rule for X Purpose\")\npulumi.export(\"routeFilterRuleId\", rf_rule.id)\npulumi.export(\"routeFilterId\", rf_rule.route_filter_id)\npulumi.export(\"routeFilterRulePrefix\", rf_rule.prefix)\npulumi.export(\"routeFilterRulePrefixMatch\", rf_rule.prefix_match)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rfRule = new Equinix.Fabric.RouteFilterRule(\"rfRule\", new()\n {\n RouteFilterId = \"\u003croute_filter_policy_id\u003e\",\n Prefix = \"192.168.0.0/24\",\n PrefixMatch = \"exact\",\n Description = \"Route Filter Rule for X Purpose\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"routeFilterRuleId\"] = rfRule.Id,\n [\"routeFilterId\"] = rfRule.RouteFilterId,\n [\"routeFilterRulePrefix\"] = rfRule.Prefix,\n [\"routeFilterRulePrefixMatch\"] = rfRule.PrefixMatch,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trfRule, err := fabric.NewRouteFilterRule(ctx, \"rfRule\", \u0026fabric.RouteFilterRuleArgs{\n\t\t\tRouteFilterId: pulumi.String(\"\u003croute_filter_policy_id\u003e\"),\n\t\t\tPrefix: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tPrefixMatch: pulumi.String(\"exact\"),\n\t\t\tDescription: pulumi.String(\"Route Filter Rule for X Purpose\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"routeFilterRuleId\", rfRule.ID())\n\t\tctx.Export(\"routeFilterId\", rfRule.RouteFilterId)\n\t\tctx.Export(\"routeFilterRulePrefix\", rfRule.Prefix)\n\t\tctx.Export(\"routeFilterRulePrefixMatch\", rfRule.PrefixMatch)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.RouteFilterRule;\nimport com.pulumi.equinix.fabric.RouteFilterRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var rfRule = new RouteFilterRule(\"rfRule\", RouteFilterRuleArgs.builder()\n .routeFilterId(\"\u003croute_filter_policy_id\u003e\")\n .prefix(\"192.168.0.0/24\")\n .prefixMatch(\"exact\")\n .description(\"Route Filter Rule for X Purpose\")\n .build());\n\n ctx.export(\"routeFilterRuleId\", rfRule.id());\n ctx.export(\"routeFilterId\", rfRule.routeFilterId());\n ctx.export(\"routeFilterRulePrefix\", rfRule.prefix());\n ctx.export(\"routeFilterRulePrefixMatch\", rfRule.prefixMatch());\n }\n}\n```\n```yaml\nresources:\n rfRule:\n type: equinix:fabric:RouteFilterRule\n properties:\n routeFilterId: \u003croute_filter_policy_id\u003e\n prefix: 192.168.0.0/24\n prefixMatch: exact\n description: Route Filter Rule for X Purpose\noutputs:\n routeFilterRuleId: ${rfRule.id}\n routeFilterId: ${rfRule.routeFilterId}\n routeFilterRulePrefix: ${rfRule.prefix}\n routeFilterRulePrefixMatch: ${rfRule.prefixMatch}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "properties": { - "change": { - "$ref": "#/types/equinix:fabric/NetworkChange:NetworkChange", - "description": "Information on asset change operation\n" + "action": { + "type": "string", + "description": "Action that will be taken on IP Addresses matching the rule\n" }, - "changeLog": { - "$ref": "#/types/equinix:fabric/NetworkChangeLog:NetworkChangeLog", - "description": "A permanent record of asset creation, modification, or deletion\n" + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterRuleChangeLog:RouteFilterRuleChangeLog" + } }, - "connectionsCount": { - "type": "integer", - "description": "Number of connections associated with this network\n" + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterRuleChange:RouteFilterRuleChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" }, - "href": { + "description": { "type": "string", - "description": "Fabric Network URI information\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, - "location": { - "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", - "description": "Fabric Network location\n" + "href": { + "type": "string", + "description": "Route filter rules URI\n" }, "name": { "type": "string", - "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" - }, - "description": "Preferences for notifications on Fabric Network configuration or status changes\n" + "description": "Name of the Route Filter\n" }, - "operation": { - "$ref": "#/types/equinix:fabric/NetworkOperation:NetworkOperation", - "description": "Network operation information that is associated with this Fabric Network\n" + "prefix": { + "type": "string", + "description": "IP Address Prefix to Filter on\n" }, - "project": { - "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", - "description": "Fabric Network project\n" + "prefixMatch": { + "type": "string", + "description": "Prefix matching operator. One of [ orlonger, exact ] Default: \"orlonger\"\n" }, - "scope": { + "routeFilterId": { "type": "string", - "description": "Fabric Network scope\n" + "description": "UUID of the Route Filter Policy to apply this Rule to\n" }, "state": { "type": "string", - "description": "Fabric Network overall state\n" + "description": "State of the Route Filter Rule in its lifecycle\n" }, "type": { "type": "string", - "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" + "description": "Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ]\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned network identifier\n" + "description": "Equinix Assigned ID for Route Filter Rule\n" } }, "required": [ - "change", - "changeLog", - "connectionsCount", + "action", + "changes", + "changeLogs", + "description", "href", - "location", "name", - "notifications", - "operation", - "project", - "scope", + "prefix", + "prefixMatch", + "routeFilterId", "state", "type", "uuid" ], "inputProperties": { - "location": { - "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", - "description": "Fabric Network location\n" + "description": { + "type": "string", + "description": "Optional description to add to the Route Filter you will be creating\n" }, "name": { "type": "string", - "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" - }, - "description": "Preferences for notifications on Fabric Network configuration or status changes\n" + "description": "Name of the Route Filter\n" }, - "project": { - "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", - "description": "Fabric Network project\n" + "prefix": { + "type": "string", + "description": "IP Address Prefix to Filter on\n" }, - "scope": { + "prefixMatch": { "type": "string", - "description": "Fabric Network scope\n" + "description": "Prefix matching operator. One of [ orlonger, exact ] Default: \"orlonger\"\n" }, - "type": { + "routeFilterId": { "type": "string", - "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" + "description": "UUID of the Route Filter Policy to apply this Rule to\n" } }, "requiredInputs": [ - "notifications", - "project", - "scope", - "type" + "prefix", + "routeFilterId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering Network resources.\n", + "description": "Input properties used for looking up and filtering RouteFilterRule resources.\n", "properties": { - "change": { - "$ref": "#/types/equinix:fabric/NetworkChange:NetworkChange", - "description": "Information on asset change operation\n" + "action": { + "type": "string", + "description": "Action that will be taken on IP Addresses matching the rule\n" }, - "changeLog": { - "$ref": "#/types/equinix:fabric/NetworkChangeLog:NetworkChangeLog", - "description": "A permanent record of asset creation, modification, or deletion\n" + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterRuleChangeLog:RouteFilterRuleChangeLog" + } }, - "connectionsCount": { - "type": "integer", - "description": "Number of connections associated with this network\n" + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/RouteFilterRuleChange:RouteFilterRuleChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" }, - "href": { + "description": { "type": "string", - "description": "Fabric Network URI information\n" + "description": "Optional description to add to the Route Filter you will be creating\n" }, - "location": { - "$ref": "#/types/equinix:fabric/NetworkLocation:NetworkLocation", - "description": "Fabric Network location\n" + "href": { + "type": "string", + "description": "Route filter rules URI\n" }, "name": { "type": "string", - "description": "Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores\n" - }, - "notifications": { - "type": "array", - "items": { - "$ref": "#/types/equinix:fabric/NetworkNotification:NetworkNotification" - }, - "description": "Preferences for notifications on Fabric Network configuration or status changes\n" + "description": "Name of the Route Filter\n" }, - "operation": { - "$ref": "#/types/equinix:fabric/NetworkOperation:NetworkOperation", - "description": "Network operation information that is associated with this Fabric Network\n" + "prefix": { + "type": "string", + "description": "IP Address Prefix to Filter on\n" }, - "project": { - "$ref": "#/types/equinix:fabric/NetworkProject:NetworkProject", - "description": "Fabric Network project\n" + "prefixMatch": { + "type": "string", + "description": "Prefix matching operator. One of [ orlonger, exact ] Default: \"orlonger\"\n" }, - "scope": { + "routeFilterId": { "type": "string", - "description": "Fabric Network scope\n" + "description": "UUID of the Route Filter Policy to apply this Rule to\n" }, "state": { "type": "string", - "description": "Fabric Network overall state\n" + "description": "State of the Route Filter Rule in its lifecycle\n" }, "type": { "type": "string", - "description": "Supported Network types - EVPLAN, EPLAN, IPWAN\n" + "description": "Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ]\n" }, "uuid": { "type": "string", - "description": "Equinix-assigned network identifier\n" + "description": "Equinix Assigned ID for Route Filter Rule\n" } }, "type": "object" @@ -19380,6 +20785,125 @@ ] } }, + "equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter": { + "description": "Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst attachedPolicy = equinix.fabric.getConnectionRouteFilter({\n connectionId: \"\u003cconnection_uuid\u003e\",\n routeFilterId: \"\u003croute_filter_uuid\u003e\",\n});\nexport const connectionRouteFilterId = attachedPolicy.then(attachedPolicy =\u003e attachedPolicy.id);\nexport const connectionRouteFilterConnectionId = attachedPolicy.then(attachedPolicy =\u003e attachedPolicy.connectionId);\nexport const connectionRouteFilterDirection = attachedPolicy.then(attachedPolicy =\u003e attachedPolicy.direction);\nexport const connectionRouteFilterType = attachedPolicy.then(attachedPolicy =\u003e attachedPolicy.type);\nexport const connectionRouteFilterAttachmentStatus = attachedPolicy.then(attachedPolicy =\u003e attachedPolicy.attachmentStatus);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nattached_policy = equinix.fabric.get_connection_route_filter(connection_id=\"\u003cconnection_uuid\u003e\",\n route_filter_id=\"\u003croute_filter_uuid\u003e\")\npulumi.export(\"connectionRouteFilterId\", attached_policy.id)\npulumi.export(\"connectionRouteFilterConnectionId\", attached_policy.connection_id)\npulumi.export(\"connectionRouteFilterDirection\", attached_policy.direction)\npulumi.export(\"connectionRouteFilterType\", attached_policy.type)\npulumi.export(\"connectionRouteFilterAttachmentStatus\", attached_policy.attachment_status)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var attachedPolicy = Equinix.Fabric.GetConnectionRouteFilter.Invoke(new()\n {\n ConnectionId = \"\u003cconnection_uuid\u003e\",\n RouteFilterId = \"\u003croute_filter_uuid\u003e\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"connectionRouteFilterId\"] = attachedPolicy.Apply(getConnectionRouteFilterResult =\u003e getConnectionRouteFilterResult.Id),\n [\"connectionRouteFilterConnectionId\"] = attachedPolicy.Apply(getConnectionRouteFilterResult =\u003e getConnectionRouteFilterResult.ConnectionId),\n [\"connectionRouteFilterDirection\"] = attachedPolicy.Apply(getConnectionRouteFilterResult =\u003e getConnectionRouteFilterResult.Direction),\n [\"connectionRouteFilterType\"] = attachedPolicy.Apply(getConnectionRouteFilterResult =\u003e getConnectionRouteFilterResult.Type),\n [\"connectionRouteFilterAttachmentStatus\"] = attachedPolicy.Apply(getConnectionRouteFilterResult =\u003e getConnectionRouteFilterResult.AttachmentStatus),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tattachedPolicy, err := fabric.LookupConnectionRouteFilter(ctx, \u0026fabric.LookupConnectionRouteFilterArgs{\n\t\t\tConnectionId: \"\u003cconnection_uuid\u003e\",\n\t\t\tRouteFilterId: \"\u003croute_filter_uuid\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"connectionRouteFilterId\", attachedPolicy.Id)\n\t\tctx.Export(\"connectionRouteFilterConnectionId\", attachedPolicy.ConnectionId)\n\t\tctx.Export(\"connectionRouteFilterDirection\", attachedPolicy.Direction)\n\t\tctx.Export(\"connectionRouteFilterType\", attachedPolicy.Type)\n\t\tctx.Export(\"connectionRouteFilterAttachmentStatus\", attachedPolicy.AttachmentStatus)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetConnectionRouteFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var attachedPolicy = FabricFunctions.getConnectionRouteFilter(GetConnectionRouteFilterArgs.builder()\n .connectionId(\"\u003cconnection_uuid\u003e\")\n .routeFilterId(\"\u003croute_filter_uuid\u003e\")\n .build());\n\n ctx.export(\"connectionRouteFilterId\", attachedPolicy.applyValue(getConnectionRouteFilterResult -\u003e getConnectionRouteFilterResult.id()));\n ctx.export(\"connectionRouteFilterConnectionId\", attachedPolicy.applyValue(getConnectionRouteFilterResult -\u003e getConnectionRouteFilterResult.connectionId()));\n ctx.export(\"connectionRouteFilterDirection\", attachedPolicy.applyValue(getConnectionRouteFilterResult -\u003e getConnectionRouteFilterResult.direction()));\n ctx.export(\"connectionRouteFilterType\", attachedPolicy.applyValue(getConnectionRouteFilterResult -\u003e getConnectionRouteFilterResult.type()));\n ctx.export(\"connectionRouteFilterAttachmentStatus\", attachedPolicy.applyValue(getConnectionRouteFilterResult -\u003e getConnectionRouteFilterResult.attachmentStatus()));\n }\n}\n```\n```yaml\nvariables:\n attachedPolicy:\n fn::invoke:\n Function: equinix:fabric:getConnectionRouteFilter\n Arguments:\n connectionId: \u003cconnection_uuid\u003e\n routeFilterId: \u003croute_filter_uuid\u003e\noutputs:\n connectionRouteFilterId: ${attachedPolicy.id}\n connectionRouteFilterConnectionId: ${attachedPolicy.connectionId}\n connectionRouteFilterDirection: ${attachedPolicy.direction}\n connectionRouteFilterType: ${attachedPolicy.type}\n connectionRouteFilterAttachmentStatus: ${attachedPolicy.attachmentStatus}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getConnectionRouteFilter.\n", + "properties": { + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n" + }, + "routeFilterId": { + "type": "string", + "description": "Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection\n" + } + }, + "type": "object", + "required": [ + "connectionId", + "routeFilterId" + ] + }, + "outputs": { + "description": "A collection of values returned by getConnectionRouteFilter.\n", + "properties": { + "attachmentStatus": { + "type": "string", + "description": "Status of the Route Filter Policy attachment lifecycle\n" + }, + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n" + }, + "direction": { + "type": "string", + "description": "Direction of the filtering of the attached Route Filter Policy\n" + }, + "href": { + "type": "string", + "description": "URI to the attached Route Filter Policy on the Connection\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "routeFilterId": { + "type": "string", + "description": "Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection\n" + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Policy\n" + } + }, + "type": "object", + "required": [ + "attachmentStatus", + "connectionId", + "direction", + "href", + "routeFilterId", + "type", + "uuid", + "id" + ] + } + }, + "equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters": { + "description": "Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules\n\n", + "inputs": { + "description": "A collection of arguments for invoking getConnectionRouteFilters.\n", + "properties": { + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n" + } + }, + "type": "object", + "required": [ + "connectionId" + ] + }, + "outputs": { + "description": "A collection of values returned by getConnectionRouteFilters.\n", + "properties": { + "connectionId": { + "type": "string", + "description": "Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to\n" + }, + "datas": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getConnectionRouteFiltersData:getConnectionRouteFiltersData" + }, + "description": "The list of Rules attached to the given Route Filter Policy UUID\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "paginations": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getConnectionRouteFiltersPagination:getConnectionRouteFiltersPagination" + }, + "description": "Pagination details for the Data Source Search Request\n" + } + }, + "type": "object", + "required": [ + "connectionId", + "datas", + "paginations", + "id" + ] + } + }, "equinix:fabric/getConnections:getConnections": { "description": "Fabric V4 API compatible data resource that allow user to fetch connection for a given UUID\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-connections-implement.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#connections\n\n", "inputs": { @@ -19873,6 +21397,338 @@ ] } }, + "equinix:fabric/getRouteFilter:getRouteFilter": { + "description": "Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst rfPolicy = equinix.fabric.getRouteFilter({\n uuid: \"\u003cuuid_of_route_filter\",\n});\nexport const id = rfPolicy.then(rfPolicy =\u003e rfPolicy.id);\nexport const type = rfPolicy.then(rfPolicy =\u003e rfPolicy.type);\nexport const state = rfPolicy.then(rfPolicy =\u003e rfPolicy.state);\nexport const notMatchedRulesAction = rfPolicy.then(rfPolicy =\u003e rfPolicy.notMatchedRuleAction);\nexport const connectionsCount = rfPolicy.then(rfPolicy =\u003e rfPolicy.connectionsCount);\nexport const rulesCount = rfPolicy.then(rfPolicy =\u003e rfPolicy.rulesCount);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrf_policy = equinix.fabric.get_route_filter(uuid=\"\u003cuuid_of_route_filter\")\npulumi.export(\"id\", rf_policy.id)\npulumi.export(\"type\", rf_policy.type)\npulumi.export(\"state\", rf_policy.state)\npulumi.export(\"notMatchedRulesAction\", rf_policy.not_matched_rule_action)\npulumi.export(\"connectionsCount\", rf_policy.connections_count)\npulumi.export(\"rulesCount\", rf_policy.rules_count)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rfPolicy = Equinix.Fabric.GetRouteFilter.Invoke(new()\n {\n Uuid = \"\u003cuuid_of_route_filter\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"id\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.Id),\n [\"type\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.Type),\n [\"state\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.State),\n [\"notMatchedRulesAction\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.NotMatchedRuleAction),\n [\"connectionsCount\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.ConnectionsCount),\n [\"rulesCount\"] = rfPolicy.Apply(getRouteFilterResult =\u003e getRouteFilterResult.RulesCount),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trfPolicy, err := fabric.LookupRouteFilter(ctx, \u0026fabric.LookupRouteFilterArgs{\n\t\t\tUuid: \"\u003cuuid_of_route_filter\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"id\", rfPolicy.Id)\n\t\tctx.Export(\"type\", rfPolicy.Type)\n\t\tctx.Export(\"state\", rfPolicy.State)\n\t\tctx.Export(\"notMatchedRulesAction\", rfPolicy.NotMatchedRuleAction)\n\t\tctx.Export(\"connectionsCount\", rfPolicy.ConnectionsCount)\n\t\tctx.Export(\"rulesCount\", rfPolicy.RulesCount)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetRouteFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rfPolicy = FabricFunctions.getRouteFilter(GetRouteFilterArgs.builder()\n .uuid(\"\u003cuuid_of_route_filter\")\n .build());\n\n ctx.export(\"id\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.id()));\n ctx.export(\"type\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.type()));\n ctx.export(\"state\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.state()));\n ctx.export(\"notMatchedRulesAction\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.notMatchedRuleAction()));\n ctx.export(\"connectionsCount\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.connectionsCount()));\n ctx.export(\"rulesCount\", rfPolicy.applyValue(getRouteFilterResult -\u003e getRouteFilterResult.rulesCount()));\n }\n}\n```\n```yaml\nvariables:\n rfPolicy:\n fn::invoke:\n Function: equinix:fabric:getRouteFilter\n Arguments:\n uuid: \u003cuuid_of_route_filter\noutputs:\n id: ${rfPolicy.id}\n type: ${rfPolicy.type}\n state: ${rfPolicy.state}\n notMatchedRulesAction: ${rfPolicy.notMatchedRuleAction}\n connectionsCount: ${rfPolicy.connectionsCount}\n rulesCount: ${rfPolicy.rulesCount}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getRouteFilter.\n", + "properties": { + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter\n" + } + }, + "type": "object", + "required": [ + "uuid" + ] + }, + "outputs": { + "description": "A collection of values returned by getRouteFilter.\n", + "properties": { + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterChangeLog:getRouteFilterChangeLog" + } + }, + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterChange:getRouteFilterChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" + }, + "connectionsCount": { + "type": "integer", + "description": "The number of Fabric Connections that this Route Filter is attached to\n" + }, + "description": { + "type": "string", + "description": "Optional description to add to the Route Filter you will be creating\n" + }, + "href": { + "type": "string", + "description": "Route filter URI\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the Route Filter\n" + }, + "notMatchedRuleAction": { + "type": "string", + "description": "The action that will be taken on ip ranges that don't match the rules present within the Route Filter\n" + }, + "projects": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterProject:getRouteFilterProject" + }, + "description": "The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to\n" + }, + "rulesCount": { + "type": "integer", + "description": "The number of Route Filter Rules attached to this Route Filter\n" + }, + "state": { + "type": "string", + "description": "State of the Route Filter in its lifecycle\n" + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ \"BGP*IPv4*PREFIX*FILTER\", \"BGP*IPv6*PREFIX*FILTER\" ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter\n" + } + }, + "type": "object", + "required": [ + "changes", + "changeLogs", + "connectionsCount", + "description", + "href", + "name", + "notMatchedRuleAction", + "projects", + "rulesCount", + "state", + "type", + "uuid", + "id" + ] + } + }, + "equinix:fabric/getRouteFilterRule:getRouteFilterRule": { + "description": "Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst rfRule = equinix.fabric.getRouteFilterRule({\n routeFilterId: \"\u003croute_filter_policy_id\u003e\",\n uuid: \"\u003croute_filter_rule_uuid\u003e\",\n});\nexport const routeFilterRuleName = rfRule.then(rfRule =\u003e rfRule.name);\nexport const routeFilterRuleDescription = rfRule.then(rfRule =\u003e rfRule.description);\nexport const routeFilterRulePrefix = rfRule.then(rfRule =\u003e rfRule.prefix);\nexport const routeFilterRulePrefixMatch = rfRule.then(rfRule =\u003e rfRule.prefixMatch);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrf_rule = equinix.fabric.get_route_filter_rule(route_filter_id=\"\u003croute_filter_policy_id\u003e\",\n uuid=\"\u003croute_filter_rule_uuid\u003e\")\npulumi.export(\"routeFilterRuleName\", rf_rule.name)\npulumi.export(\"routeFilterRuleDescription\", rf_rule.description)\npulumi.export(\"routeFilterRulePrefix\", rf_rule.prefix)\npulumi.export(\"routeFilterRulePrefixMatch\", rf_rule.prefix_match)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rfRule = Equinix.Fabric.GetRouteFilterRule.Invoke(new()\n {\n RouteFilterId = \"\u003croute_filter_policy_id\u003e\",\n Uuid = \"\u003croute_filter_rule_uuid\u003e\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"routeFilterRuleName\"] = rfRule.Apply(getRouteFilterRuleResult =\u003e getRouteFilterRuleResult.Name),\n [\"routeFilterRuleDescription\"] = rfRule.Apply(getRouteFilterRuleResult =\u003e getRouteFilterRuleResult.Description),\n [\"routeFilterRulePrefix\"] = rfRule.Apply(getRouteFilterRuleResult =\u003e getRouteFilterRuleResult.Prefix),\n [\"routeFilterRulePrefixMatch\"] = rfRule.Apply(getRouteFilterRuleResult =\u003e getRouteFilterRuleResult.PrefixMatch),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trfRule, err := fabric.LookupRouteFilterRule(ctx, \u0026fabric.LookupRouteFilterRuleArgs{\n\t\t\tRouteFilterId: \"\u003croute_filter_policy_id\u003e\",\n\t\t\tUuid: \"\u003croute_filter_rule_uuid\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"routeFilterRuleName\", rfRule.Name)\n\t\tctx.Export(\"routeFilterRuleDescription\", rfRule.Description)\n\t\tctx.Export(\"routeFilterRulePrefix\", rfRule.Prefix)\n\t\tctx.Export(\"routeFilterRulePrefixMatch\", rfRule.PrefixMatch)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetRouteFilterRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rfRule = FabricFunctions.getRouteFilterRule(GetRouteFilterRuleArgs.builder()\n .routeFilterId(\"\u003croute_filter_policy_id\u003e\")\n .uuid(\"\u003croute_filter_rule_uuid\u003e\")\n .build());\n\n ctx.export(\"routeFilterRuleName\", rfRule.applyValue(getRouteFilterRuleResult -\u003e getRouteFilterRuleResult.name()));\n ctx.export(\"routeFilterRuleDescription\", rfRule.applyValue(getRouteFilterRuleResult -\u003e getRouteFilterRuleResult.description()));\n ctx.export(\"routeFilterRulePrefix\", rfRule.applyValue(getRouteFilterRuleResult -\u003e getRouteFilterRuleResult.prefix()));\n ctx.export(\"routeFilterRulePrefixMatch\", rfRule.applyValue(getRouteFilterRuleResult -\u003e getRouteFilterRuleResult.prefixMatch()));\n }\n}\n```\n```yaml\nvariables:\n rfRule:\n fn::invoke:\n Function: equinix:fabric:getRouteFilterRule\n Arguments:\n routeFilterId: \u003croute_filter_policy_id\u003e\n uuid: \u003croute_filter_rule_uuid\u003e\noutputs:\n routeFilterRuleName: ${rfRule.name}\n routeFilterRuleDescription: ${rfRule.description}\n routeFilterRulePrefix: ${rfRule.prefix}\n routeFilterRulePrefixMatch: ${rfRule.prefixMatch}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getRouteFilterRule.\n", + "properties": { + "routeFilterId": { + "type": "string", + "description": "UUID of the Route Filter Policy the rule is attached to\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Rule to retrieve data for\n" + } + }, + "type": "object", + "required": [ + "routeFilterId", + "uuid" + ] + }, + "outputs": { + "description": "A collection of values returned by getRouteFilterRule.\n", + "properties": { + "action": { + "type": "string", + "description": "Action that will be taken on IP Addresses matching the rule\n" + }, + "changeLogs": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRuleChangeLog:getRouteFilterRuleChangeLog" + } + }, + "changes": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRuleChange:getRouteFilterRuleChange" + }, + "description": "An object with the details of the previous change applied on the Route Filter\n" + }, + "description": { + "type": "string", + "description": "Optional description to add to the Route Filter you will be creating\n" + }, + "href": { + "type": "string", + "description": "Route filter rules URI\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the Route Filter\n" + }, + "prefix": { + "type": "string", + "description": "IP Address Prefix to Filter on\n" + }, + "prefixMatch": { + "type": "string", + "description": "Prefix matching operator. One of [ orlonger, exact ] Default: \"orlonger\"\n" + }, + "routeFilterId": { + "type": "string", + "description": "UUID of the Route Filter Policy the rule is attached to\n" + }, + "state": { + "type": "string", + "description": "State of the Route Filter Rule in its lifecycle\n" + }, + "type": { + "type": "string", + "description": "Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ]\n" + }, + "uuid": { + "type": "string", + "description": "Equinix Assigned ID for Route Filter Rule to retrieve data for\n" + } + }, + "type": "object", + "required": [ + "action", + "changes", + "changeLogs", + "description", + "href", + "name", + "prefix", + "prefixMatch", + "routeFilterId", + "state", + "type", + "uuid", + "id" + ] + } + }, + "equinix:fabric/getRouteFilterRules:getRouteFilterRules": { + "description": "Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst rfRules = equinix.fabric.getRouteFilterRules({\n routeFilterId: \"\u003croute_filter_policy_id\",\n limit: 100,\n offset: 5,\n});\nexport const firstRouteFilterRuleName = rfRules.then(rfRules =\u003e rfRules.datas?.[0]?.name);\nexport const firstRouteFilterRuleDescription = rfRules.then(rfRules =\u003e rfRules.datas?.[0]?.description);\nexport const firstRouteFilterRulePrefix = rfRules.then(rfRules =\u003e rfRules.datas?.[0]?.prefix);\nexport const firstRouteFilterRulePrefixMatch = rfRules.then(rfRules =\u003e rfRules.datas?.[0]?.prefixMatch);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrf_rules = equinix.fabric.get_route_filter_rules(route_filter_id=\"\u003croute_filter_policy_id\",\n limit=100,\n offset=5)\npulumi.export(\"firstRouteFilterRuleName\", rf_rules.datas[0].name)\npulumi.export(\"firstRouteFilterRuleDescription\", rf_rules.datas[0].description)\npulumi.export(\"firstRouteFilterRulePrefix\", rf_rules.datas[0].prefix)\npulumi.export(\"firstRouteFilterRulePrefixMatch\", rf_rules.datas[0].prefix_match)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rfRules = Equinix.Fabric.GetRouteFilterRules.Invoke(new()\n {\n RouteFilterId = \"\u003croute_filter_policy_id\",\n Limit = 100,\n Offset = 5,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"firstRouteFilterRuleName\"] = rfRules.Apply(getRouteFilterRulesResult =\u003e getRouteFilterRulesResult.Datas[0]?.Name),\n [\"firstRouteFilterRuleDescription\"] = rfRules.Apply(getRouteFilterRulesResult =\u003e getRouteFilterRulesResult.Datas[0]?.Description),\n [\"firstRouteFilterRulePrefix\"] = rfRules.Apply(getRouteFilterRulesResult =\u003e getRouteFilterRulesResult.Datas[0]?.Prefix),\n [\"firstRouteFilterRulePrefixMatch\"] = rfRules.Apply(getRouteFilterRulesResult =\u003e getRouteFilterRulesResult.Datas[0]?.PrefixMatch),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trfRules, err := fabric.GetRouteFilterRules(ctx, \u0026fabric.GetRouteFilterRulesArgs{\n\t\t\tRouteFilterId: \"\u003croute_filter_policy_id\",\n\t\t\tLimit: pulumi.IntRef(100),\n\t\t\tOffset: pulumi.IntRef(5),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"firstRouteFilterRuleName\", rfRules.Datas[0].Name)\n\t\tctx.Export(\"firstRouteFilterRuleDescription\", rfRules.Datas[0].Description)\n\t\tctx.Export(\"firstRouteFilterRulePrefix\", rfRules.Datas[0].Prefix)\n\t\tctx.Export(\"firstRouteFilterRulePrefixMatch\", rfRules.Datas[0].PrefixMatch)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetRouteFilterRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rfRules = FabricFunctions.getRouteFilterRules(GetRouteFilterRulesArgs.builder()\n .routeFilterId(\"\u003croute_filter_policy_id\")\n .limit(100)\n .offset(5)\n .build());\n\n ctx.export(\"firstRouteFilterRuleName\", rfRules.applyValue(getRouteFilterRulesResult -\u003e getRouteFilterRulesResult.datas()[0].name()));\n ctx.export(\"firstRouteFilterRuleDescription\", rfRules.applyValue(getRouteFilterRulesResult -\u003e getRouteFilterRulesResult.datas()[0].description()));\n ctx.export(\"firstRouteFilterRulePrefix\", rfRules.applyValue(getRouteFilterRulesResult -\u003e getRouteFilterRulesResult.datas()[0].prefix()));\n ctx.export(\"firstRouteFilterRulePrefixMatch\", rfRules.applyValue(getRouteFilterRulesResult -\u003e getRouteFilterRulesResult.datas()[0].prefixMatch()));\n }\n}\n```\n```yaml\nvariables:\n rfRules:\n fn::invoke:\n Function: equinix:fabric:getRouteFilterRules\n Arguments:\n routeFilterId: \u003croute_filter_policy_id\n limit: 100\n offset: 5\noutputs:\n firstRouteFilterRuleName: ${rfRules.datas[0].name}\n firstRouteFilterRuleDescription: ${rfRules.datas[0].description}\n firstRouteFilterRulePrefix: ${rfRules.datas[0].prefix}\n firstRouteFilterRulePrefixMatch: ${rfRules.datas[0].prefixMatch}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getRouteFilterRules.\n", + "properties": { + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" + }, + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + }, + "routeFilterId": { + "type": "string", + "description": "UUID of the Route Filter Policy the rule is attached to\n" + } + }, + "type": "object", + "required": [ + "routeFilterId" + ] + }, + "outputs": { + "description": "A collection of values returned by getRouteFilterRules.\n", + "properties": { + "datas": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRulesData:getRouteFilterRulesData" + }, + "description": "The list of Rules attached to the given Route Filter Policy UUID\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "limit": { + "type": "integer", + "description": "Number of elements to be requested per page. Number must be between 1 and 100. Default is 20\n" + }, + "offset": { + "type": "integer", + "description": "The page offset for the pagination request. Index of the first element. Default is 0.\n" + }, + "paginations": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFilterRulesPagination:getRouteFilterRulesPagination" + }, + "description": "Pagination details for the Data Source Search Request\n" + }, + "routeFilterId": { + "type": "string", + "description": "UUID of the Route Filter Policy the rule is attached to\n" + } + }, + "type": "object", + "required": [ + "datas", + "paginations", + "routeFilterId", + "id" + ] + } + }, + "equinix:fabric/getRouteFilters:getRouteFilters": { + "description": "Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set\n\nAdditional Documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst rfPolicies = equinix.fabric.getRouteFilters({\n filters: [\n {\n property: \"/type\",\n operator: \"=\",\n values: [\"BGP_IPv4_PREFIX_FILTER\"],\n },\n {\n property: \"/state\",\n operator: \"=\",\n values: [\"PROVISIONED\"],\n },\n {\n property: \"/project/projectId\",\n operator: \"=\",\n values: [\"\u003cproject_id\u003e\"],\n },\n ],\n pagination: {\n offset: 0,\n limit: 5,\n total: 25,\n },\n sorts: [{\n direction: \"ASC\",\n property: \"/name\",\n }],\n});\nexport const firstRfUuid = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.uuid);\nexport const type = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.type);\nexport const state = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.state);\nexport const notMatchedRuleAction = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.notMatchedRuleAction);\nexport const connectionsCount = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.connectionsCount);\nexport const rulesCount = rfPolicies.then(rfPolicies =\u003e rfPolicies.datas?.[0]?.rulesCount);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrf_policies = equinix.fabric.get_route_filters(filters=[\n {\n \"property\": \"/type\",\n \"operator\": \"=\",\n \"values\": [\"BGP_IPv4_PREFIX_FILTER\"],\n },\n {\n \"property\": \"/state\",\n \"operator\": \"=\",\n \"values\": [\"PROVISIONED\"],\n },\n {\n \"property\": \"/project/projectId\",\n \"operator\": \"=\",\n \"values\": [\"\u003cproject_id\u003e\"],\n },\n ],\n pagination={\n \"offset\": 0,\n \"limit\": 5,\n \"total\": 25,\n },\n sorts=[{\n \"direction\": \"ASC\",\n \"property\": \"/name\",\n }])\npulumi.export(\"firstRfUuid\", rf_policies.datas[0].uuid)\npulumi.export(\"type\", rf_policies.datas[0].type)\npulumi.export(\"state\", rf_policies.datas[0].state)\npulumi.export(\"notMatchedRuleAction\", rf_policies.datas[0].not_matched_rule_action)\npulumi.export(\"connectionsCount\", rf_policies.datas[0].connections_count)\npulumi.export(\"rulesCount\", rf_policies.datas[0].rules_count)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rfPolicies = Equinix.Fabric.GetRouteFilters.Invoke(new()\n {\n Filters = new[]\n {\n new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs\n {\n Property = \"/type\",\n Operator = \"=\",\n Values = new[]\n {\n \"BGP_IPv4_PREFIX_FILTER\",\n },\n },\n new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs\n {\n Property = \"/state\",\n Operator = \"=\",\n Values = new[]\n {\n \"PROVISIONED\",\n },\n },\n new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs\n {\n Property = \"/project/projectId\",\n Operator = \"=\",\n Values = new[]\n {\n \"\u003cproject_id\u003e\",\n },\n },\n },\n Pagination = new Equinix.Fabric.Inputs.GetRouteFiltersPaginationInputArgs\n {\n Offset = 0,\n Limit = 5,\n Total = 25,\n },\n Sorts = new[]\n {\n new Equinix.Fabric.Inputs.GetRouteFiltersSortInputArgs\n {\n Direction = \"ASC\",\n Property = \"/name\",\n },\n },\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"firstRfUuid\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.Uuid),\n [\"type\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.Type),\n [\"state\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.State),\n [\"notMatchedRuleAction\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.NotMatchedRuleAction),\n [\"connectionsCount\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.ConnectionsCount),\n [\"rulesCount\"] = rfPolicies.Apply(getRouteFiltersResult =\u003e getRouteFiltersResult.Datas[0]?.RulesCount),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trfPolicies, err := fabric.GetRouteFilters(ctx, \u0026fabric.GetRouteFiltersArgs{\n\t\t\tFilters: []fabric.GetRouteFiltersFilter{\n\t\t\t\t{\n\t\t\t\t\tProperty: \"/type\",\n\t\t\t\t\tOperator: \"=\",\n\t\t\t\t\tValues: []string{\n\t\t\t\t\t\t\"BGP_IPv4_PREFIX_FILTER\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tProperty: \"/state\",\n\t\t\t\t\tOperator: \"=\",\n\t\t\t\t\tValues: []string{\n\t\t\t\t\t\t\"PROVISIONED\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tProperty: \"/project/projectId\",\n\t\t\t\t\tOperator: \"=\",\n\t\t\t\t\tValues: []string{\n\t\t\t\t\t\t\"\u003cproject_id\u003e\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPagination: fabric.GetRouteFiltersPagination{\n\t\t\t\tOffset: 0,\n\t\t\t\tLimit: 5,\n\t\t\t\tTotal: 25,\n\t\t\t},\n\t\t\tSorts: []fabric.GetRouteFiltersSort{\n\t\t\t\t{\n\t\t\t\t\tDirection: pulumi.StringRef(\"ASC\"),\n\t\t\t\t\tProperty: pulumi.StringRef(\"/name\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"firstRfUuid\", rfPolicies.Datas[0].Uuid)\n\t\tctx.Export(\"type\", rfPolicies.Datas[0].Type)\n\t\tctx.Export(\"state\", rfPolicies.Datas[0].State)\n\t\tctx.Export(\"notMatchedRuleAction\", rfPolicies.Datas[0].NotMatchedRuleAction)\n\t\tctx.Export(\"connectionsCount\", rfPolicies.Datas[0].ConnectionsCount)\n\t\tctx.Export(\"rulesCount\", rfPolicies.Datas[0].RulesCount)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetRouteFiltersArgs;\nimport com.pulumi.equinix.fabric.inputs.GetRouteFiltersPaginationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rfPolicies = FabricFunctions.getRouteFilters(GetRouteFiltersArgs.builder()\n .filters( \n GetRouteFiltersFilterArgs.builder()\n .property(\"/type\")\n .operator(\"=\")\n .values(\"BGP_IPv4_PREFIX_FILTER\")\n .build(),\n GetRouteFiltersFilterArgs.builder()\n .property(\"/state\")\n .operator(\"=\")\n .values(\"PROVISIONED\")\n .build(),\n GetRouteFiltersFilterArgs.builder()\n .property(\"/project/projectId\")\n .operator(\"=\")\n .values(\"\u003cproject_id\u003e\")\n .build())\n .pagination(GetRouteFiltersPaginationArgs.builder()\n .offset(0)\n .limit(5)\n .total(25)\n .build())\n .sorts(GetRouteFiltersSortArgs.builder()\n .direction(\"ASC\")\n .property(\"/name\")\n .build())\n .build());\n\n ctx.export(\"firstRfUuid\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].uuid()));\n ctx.export(\"type\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].type()));\n ctx.export(\"state\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].state()));\n ctx.export(\"notMatchedRuleAction\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].notMatchedRuleAction()));\n ctx.export(\"connectionsCount\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].connectionsCount()));\n ctx.export(\"rulesCount\", rfPolicies.applyValue(getRouteFiltersResult -\u003e getRouteFiltersResult.datas()[0].rulesCount()));\n }\n}\n```\n```yaml\nvariables:\n rfPolicies:\n fn::invoke:\n Function: equinix:fabric:getRouteFilters\n Arguments:\n filters:\n - property: /type\n operator: =\n values:\n - BGP_IPv4_PREFIX_FILTER\n - property: /state\n operator: =\n values:\n - PROVISIONED\n - property: /project/projectId\n operator: =\n values:\n - \u003cproject_id\u003e\n pagination:\n offset: 0\n limit: 5\n total: 25\n sorts:\n - direction: ASC\n property: /name\noutputs:\n firstRfUuid: ${rfPolicies.datas[0].uuid}\n type: ${rfPolicies.datas[0].type}\n state: ${rfPolicies.datas[0].state}\n notMatchedRuleAction: ${rfPolicies.datas[0].notMatchedRuleAction}\n connectionsCount: ${rfPolicies.datas[0].connectionsCount}\n rulesCount: ${rfPolicies.datas[0].rulesCount}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getRouteFilters.\n", + "properties": { + "filters": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersFilter:getRouteFiltersFilter" + }, + "description": "Filters for the Data Source Search Request. Maximum of 8 total filters.\n" + }, + "pagination": { + "$ref": "#/types/equinix:fabric/getRouteFiltersPagination:getRouteFiltersPagination", + "description": "Pagination details for the Data Source Search Request\n" + }, + "sorts": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersSort:getRouteFiltersSort" + }, + "description": "Filters for the Data Source Search Request\n" + } + }, + "type": "object", + "required": [ + "filters" + ] + }, + "outputs": { + "description": "A collection of values returned by getRouteFilters.\n", + "properties": { + "datas": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersData:getRouteFiltersData" + }, + "description": "List of Route Filters\n" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersFilter:getRouteFiltersFilter" + }, + "description": "Filters for the Data Source Search Request. Maximum of 8 total filters.\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "pagination": { + "$ref": "#/types/equinix:fabric/getRouteFiltersPagination:getRouteFiltersPagination", + "description": "Pagination details for the Data Source Search Request\n" + }, + "sorts": { + "type": "array", + "items": { + "$ref": "#/types/equinix:fabric/getRouteFiltersSort:getRouteFiltersSort" + }, + "description": "Filters for the Data Source Search Request\n" + } + }, + "type": "object", + "required": [ + "datas", + "filters", + "id" + ] + } + }, "equinix:fabric/getRoutingProtocol:getRoutingProtocol": { "description": "Fabric V4 API compatible data resource that allow user to fetch routing protocol for a given UUID\n\nAPI documentation can be found here - https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#routing-protocols\n\nAdditional documentation:\n* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/connections/FCR-connect-azureQC.htm#ConfigureRoutingDetailsintheFabricPortal\n* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#routing-protocols\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as equinix from \"@pulumi/equinix\";\n\nconst routingProtocolDataName = equinix.fabric.getRoutingProtocol({\n connectionUuid: \"\u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\",\n uuid: \"\u003cuuid_of_routing_protocol\u003e\",\n});\nexport const id = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.id);\nexport const name = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.name);\nexport const type = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.type);\nexport const directIpv4 = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.directIpv4?.equinixIfaceIp);\nexport const directIpv6 = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.directIpv6?.equinixIfaceIp);\nexport const bgpIpv4CustomerPeerIp = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv4?.customerPeerIp);\nexport const bgpIpv4EquinixPeerIp = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv4?.equinixPeerIp);\nexport const bgpIpv4Enabled = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv4?.enabled);\nexport const bgpIpv6CustomerPeerIp = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv6?.customerPeerIp);\nexport const bgpIpv6EquinixPeerIp = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv6?.equinixPeerIp);\nexport const bgpIpv6Enabled = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.bgpIpv6?.enabled);\nexport const customerAsn = routingProtocolDataName.then(routingProtocolDataName =\u003e routingProtocolDataName.customerAsn);\n```\n```python\nimport pulumi\nimport pulumi_equinix as equinix\n\nrouting_protocol_data_name = equinix.fabric.get_routing_protocol(connection_uuid=\"\u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\",\n uuid=\"\u003cuuid_of_routing_protocol\u003e\")\npulumi.export(\"id\", routing_protocol_data_name.id)\npulumi.export(\"name\", routing_protocol_data_name.name)\npulumi.export(\"type\", routing_protocol_data_name.type)\npulumi.export(\"directIpv4\", routing_protocol_data_name.direct_ipv4.equinix_iface_ip)\npulumi.export(\"directIpv6\", routing_protocol_data_name.direct_ipv6.equinix_iface_ip)\npulumi.export(\"bgpIpv4CustomerPeerIp\", routing_protocol_data_name.bgp_ipv4.customer_peer_ip)\npulumi.export(\"bgpIpv4EquinixPeerIp\", routing_protocol_data_name.bgp_ipv4.equinix_peer_ip)\npulumi.export(\"bgpIpv4Enabled\", routing_protocol_data_name.bgp_ipv4.enabled)\npulumi.export(\"bgpIpv6CustomerPeerIp\", routing_protocol_data_name.bgp_ipv6.customer_peer_ip)\npulumi.export(\"bgpIpv6EquinixPeerIp\", routing_protocol_data_name.bgp_ipv6.equinix_peer_ip)\npulumi.export(\"bgpIpv6Enabled\", routing_protocol_data_name.bgp_ipv6.enabled)\npulumi.export(\"customerAsn\", routing_protocol_data_name.customer_asn)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Equinix = Pulumi.Equinix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var routingProtocolDataName = Equinix.Fabric.GetRoutingProtocol.Invoke(new()\n {\n ConnectionUuid = \"\u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\",\n Uuid = \"\u003cuuid_of_routing_protocol\u003e\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"id\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.Id),\n [\"name\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.Name),\n [\"type\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.Type),\n [\"directIpv4\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.DirectIpv4?.EquinixIfaceIp),\n [\"directIpv6\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.DirectIpv6?.EquinixIfaceIp),\n [\"bgpIpv4CustomerPeerIp\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv4?.CustomerPeerIp),\n [\"bgpIpv4EquinixPeerIp\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv4?.EquinixPeerIp),\n [\"bgpIpv4Enabled\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv4?.Enabled),\n [\"bgpIpv6CustomerPeerIp\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv6?.CustomerPeerIp),\n [\"bgpIpv6EquinixPeerIp\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv6?.EquinixPeerIp),\n [\"bgpIpv6Enabled\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.BgpIpv6?.Enabled),\n [\"customerAsn\"] = routingProtocolDataName.Apply(getRoutingProtocolResult =\u003e getRoutingProtocolResult.CustomerAsn),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\troutingProtocolDataName, err := fabric.LookupRoutingProtocol(ctx, \u0026fabric.LookupRoutingProtocolArgs{\n\t\t\tConnectionUuid: \"\u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\",\n\t\t\tUuid: \"\u003cuuid_of_routing_protocol\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"id\", routingProtocolDataName.Id)\n\t\tctx.Export(\"name\", routingProtocolDataName.Name)\n\t\tctx.Export(\"type\", routingProtocolDataName.Type)\n\t\tctx.Export(\"directIpv4\", routingProtocolDataName.DirectIpv4.EquinixIfaceIp)\n\t\tctx.Export(\"directIpv6\", routingProtocolDataName.DirectIpv6.EquinixIfaceIp)\n\t\tctx.Export(\"bgpIpv4CustomerPeerIp\", routingProtocolDataName.BgpIpv4.CustomerPeerIp)\n\t\tctx.Export(\"bgpIpv4EquinixPeerIp\", routingProtocolDataName.BgpIpv4.EquinixPeerIp)\n\t\tctx.Export(\"bgpIpv4Enabled\", routingProtocolDataName.BgpIpv4.Enabled)\n\t\tctx.Export(\"bgpIpv6CustomerPeerIp\", routingProtocolDataName.BgpIpv6.CustomerPeerIp)\n\t\tctx.Export(\"bgpIpv6EquinixPeerIp\", routingProtocolDataName.BgpIpv6.EquinixPeerIp)\n\t\tctx.Export(\"bgpIpv6Enabled\", routingProtocolDataName.BgpIpv6.Enabled)\n\t\tctx.Export(\"customerAsn\", routingProtocolDataName.CustomerAsn)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.equinix.fabric.FabricFunctions;\nimport com.pulumi.equinix.fabric.inputs.GetRoutingProtocolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var routingProtocolDataName = FabricFunctions.getRoutingProtocol(GetRoutingProtocolArgs.builder()\n .connectionUuid(\"\u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\")\n .uuid(\"\u003cuuid_of_routing_protocol\u003e\")\n .build());\n\n ctx.export(\"id\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.id()));\n ctx.export(\"name\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.name()));\n ctx.export(\"type\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.type()));\n ctx.export(\"directIpv4\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.directIpv4().equinixIfaceIp()));\n ctx.export(\"directIpv6\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.directIpv6().equinixIfaceIp()));\n ctx.export(\"bgpIpv4CustomerPeerIp\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv4().customerPeerIp()));\n ctx.export(\"bgpIpv4EquinixPeerIp\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv4().equinixPeerIp()));\n ctx.export(\"bgpIpv4Enabled\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv4().enabled()));\n ctx.export(\"bgpIpv6CustomerPeerIp\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv6().customerPeerIp()));\n ctx.export(\"bgpIpv6EquinixPeerIp\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv6().equinixPeerIp()));\n ctx.export(\"bgpIpv6Enabled\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.bgpIpv6().enabled()));\n ctx.export(\"customerAsn\", routingProtocolDataName.applyValue(getRoutingProtocolResult -\u003e getRoutingProtocolResult.customerAsn()));\n }\n}\n```\n```yaml\nvariables:\n routingProtocolDataName:\n fn::invoke:\n Function: equinix:fabric:getRoutingProtocol\n Arguments:\n connectionUuid: \u003cuuid_of_connection_routing_protocol_is_applied_to\u003e\n uuid: \u003cuuid_of_routing_protocol\u003e\noutputs:\n id: ${routingProtocolDataName.id}\n name: ${routingProtocolDataName.name}\n type: ${routingProtocolDataName.type}\n directIpv4: ${routingProtocolDataName.directIpv4.equinixIfaceIp}\n directIpv6: ${routingProtocolDataName.directIpv6.equinixIfaceIp}\n bgpIpv4CustomerPeerIp: ${routingProtocolDataName.bgpIpv4.customerPeerIp}\n bgpIpv4EquinixPeerIp: ${routingProtocolDataName.bgpIpv4.equinixPeerIp}\n bgpIpv4Enabled: ${routingProtocolDataName.bgpIpv4.enabled}\n bgpIpv6CustomerPeerIp: ${routingProtocolDataName.bgpIpv6.customerPeerIp}\n bgpIpv6EquinixPeerIp: ${routingProtocolDataName.bgpIpv6.equinixPeerIp}\n bgpIpv6Enabled: ${routingProtocolDataName.bgpIpv6.enabled}\n customerAsn: ${routingProtocolDataName.customerAsn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { diff --git a/sdk/dotnet/Fabric/ConnectionRouteFilter.cs b/sdk/dotnet/Fabric/ConnectionRouteFilter.cs new file mode 100644 index 000000000..46016ce25 --- /dev/null +++ b/sdk/dotnet/Fabric/ConnectionRouteFilter.cs @@ -0,0 +1,212 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + /// + /// Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var policyAttachment = new Equinix.Fabric.ConnectionRouteFilter("policyAttachment", new() + /// { + /// ConnectionId = "<connection_uuid>", + /// RouteFilterId = "<route_filter_policy_uuid>", + /// Direction = "INBOUND", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["connectionRouteFilterId"] = policyAttachment.Id, + /// ["connectionRouteFilterConnectionId"] = policyAttachment.ConnectionId, + /// ["connectionRouteFilterDirection"] = policyAttachment.Direction, + /// ["connectionRouteFilterType"] = policyAttachment.Type, + /// ["connectionRouteFilterAttachmentStatus"] = policyAttachment.AttachmentStatus, + /// }; + /// }); + /// ``` + /// + [EquinixResourceType("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter")] + public partial class ConnectionRouteFilter : global::Pulumi.CustomResource + { + /// + /// Status of the Route Filter Policy attachment lifecycle + /// + [Output("attachmentStatus")] + public Output AttachmentStatus { get; private set; } = null!; + + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Output("connectionId")] + public Output ConnectionId { get; private set; } = null!; + + /// + /// Direction of the filtering of the attached Route Filter Policy + /// + [Output("direction")] + public Output Direction { get; private set; } = null!; + + /// + /// URI to the attached Route Filter Policy on the Connection + /// + [Output("href")] + public Output Href { get; private set; } = null!; + + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + [Output("routeFilterId")] + public Output RouteFilterId { get; private set; } = null!; + + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + /// + /// Equinix Assigned ID for Route Filter Policy + /// + [Output("uuid")] + public Output Uuid { get; private set; } = null!; + + + /// + /// Create a ConnectionRouteFilter resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public ConnectionRouteFilter(string name, ConnectionRouteFilterArgs args, CustomResourceOptions? options = null) + : base("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, args ?? new ConnectionRouteFilterArgs(), MakeResourceOptions(options, "")) + { + } + + private ConnectionRouteFilter(string name, Input id, ConnectionRouteFilterState? state = null, CustomResourceOptions? options = null) + : base("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/equinix", + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing ConnectionRouteFilter resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static ConnectionRouteFilter Get(string name, Input id, ConnectionRouteFilterState? state = null, CustomResourceOptions? options = null) + { + return new ConnectionRouteFilter(name, id, state, options); + } + } + + public sealed class ConnectionRouteFilterArgs : global::Pulumi.ResourceArgs + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId", required: true)] + public Input ConnectionId { get; set; } = null!; + + /// + /// Direction of the filtering of the attached Route Filter Policy + /// + [Input("direction", required: true)] + public Input Direction { get; set; } = null!; + + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + [Input("routeFilterId", required: true)] + public Input RouteFilterId { get; set; } = null!; + + public ConnectionRouteFilterArgs() + { + } + public static new ConnectionRouteFilterArgs Empty => new ConnectionRouteFilterArgs(); + } + + public sealed class ConnectionRouteFilterState : global::Pulumi.ResourceArgs + { + /// + /// Status of the Route Filter Policy attachment lifecycle + /// + [Input("attachmentStatus")] + public Input? AttachmentStatus { get; set; } + + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId")] + public Input? ConnectionId { get; set; } + + /// + /// Direction of the filtering of the attached Route Filter Policy + /// + [Input("direction")] + public Input? Direction { get; set; } + + /// + /// URI to the attached Route Filter Policy on the Connection + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + [Input("routeFilterId")] + public Input? RouteFilterId { get; set; } + + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Equinix Assigned ID for Route Filter Policy + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public ConnectionRouteFilterState() + { + } + public static new ConnectionRouteFilterState Empty => new ConnectionRouteFilterState(); + } +} diff --git a/sdk/dotnet/Fabric/GetConnectionRouteFilter.cs b/sdk/dotnet/Fabric/GetConnectionRouteFilter.cs new file mode 100644 index 000000000..d45e81e18 --- /dev/null +++ b/sdk/dotnet/Fabric/GetConnectionRouteFilter.cs @@ -0,0 +1,195 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetConnectionRouteFilter + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var attachedPolicy = Equinix.Fabric.GetConnectionRouteFilter.Invoke(new() + /// { + /// ConnectionId = "<connection_uuid>", + /// RouteFilterId = "<route_filter_uuid>", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["connectionRouteFilterId"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Id), + /// ["connectionRouteFilterConnectionId"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.ConnectionId), + /// ["connectionRouteFilterDirection"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Direction), + /// ["connectionRouteFilterType"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Type), + /// ["connectionRouteFilterAttachmentStatus"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.AttachmentStatus), + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetConnectionRouteFilterArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", args ?? new GetConnectionRouteFilterArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var attachedPolicy = Equinix.Fabric.GetConnectionRouteFilter.Invoke(new() + /// { + /// ConnectionId = "<connection_uuid>", + /// RouteFilterId = "<route_filter_uuid>", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["connectionRouteFilterId"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Id), + /// ["connectionRouteFilterConnectionId"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.ConnectionId), + /// ["connectionRouteFilterDirection"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Direction), + /// ["connectionRouteFilterType"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.Type), + /// ["connectionRouteFilterAttachmentStatus"] = attachedPolicy.Apply(getConnectionRouteFilterResult => getConnectionRouteFilterResult.AttachmentStatus), + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetConnectionRouteFilterInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", args ?? new GetConnectionRouteFilterInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetConnectionRouteFilterArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId", required: true)] + public string ConnectionId { get; set; } = null!; + + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + [Input("routeFilterId", required: true)] + public string RouteFilterId { get; set; } = null!; + + public GetConnectionRouteFilterArgs() + { + } + public static new GetConnectionRouteFilterArgs Empty => new GetConnectionRouteFilterArgs(); + } + + public sealed class GetConnectionRouteFilterInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId", required: true)] + public Input ConnectionId { get; set; } = null!; + + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + [Input("routeFilterId", required: true)] + public Input RouteFilterId { get; set; } = null!; + + public GetConnectionRouteFilterInvokeArgs() + { + } + public static new GetConnectionRouteFilterInvokeArgs Empty => new GetConnectionRouteFilterInvokeArgs(); + } + + + [OutputType] + public sealed class GetConnectionRouteFilterResult + { + /// + /// Status of the Route Filter Policy attachment lifecycle + /// + public readonly string AttachmentStatus; + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + public readonly string ConnectionId; + /// + /// Direction of the filtering of the attached Route Filter Policy + /// + public readonly string Direction; + /// + /// URI to the attached Route Filter Policy on the Connection + /// + public readonly string Href; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + /// + public readonly string RouteFilterId; + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter Policy + /// + public readonly string Uuid; + + [OutputConstructor] + private GetConnectionRouteFilterResult( + string attachmentStatus, + + string connectionId, + + string direction, + + string href, + + string id, + + string routeFilterId, + + string type, + + string uuid) + { + AttachmentStatus = attachmentStatus; + ConnectionId = connectionId; + Direction = direction; + Href = href; + Id = id; + RouteFilterId = routeFilterId; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/GetConnectionRouteFilters.cs b/sdk/dotnet/Fabric/GetConnectionRouteFilters.cs new file mode 100644 index 000000000..8b79a4d7f --- /dev/null +++ b/sdk/dotnet/Fabric/GetConnectionRouteFilters.cs @@ -0,0 +1,101 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetConnectionRouteFilters + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + public static Task InvokeAsync(GetConnectionRouteFiltersArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", args ?? new GetConnectionRouteFiltersArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + public static Output Invoke(GetConnectionRouteFiltersInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", args ?? new GetConnectionRouteFiltersInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetConnectionRouteFiltersArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId", required: true)] + public string ConnectionId { get; set; } = null!; + + public GetConnectionRouteFiltersArgs() + { + } + public static new GetConnectionRouteFiltersArgs Empty => new GetConnectionRouteFiltersArgs(); + } + + public sealed class GetConnectionRouteFiltersInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + [Input("connectionId", required: true)] + public Input ConnectionId { get; set; } = null!; + + public GetConnectionRouteFiltersInvokeArgs() + { + } + public static new GetConnectionRouteFiltersInvokeArgs Empty => new GetConnectionRouteFiltersInvokeArgs(); + } + + + [OutputType] + public sealed class GetConnectionRouteFiltersResult + { + /// + /// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + /// + public readonly string ConnectionId; + /// + /// The list of Rules attached to the given Route Filter Policy UUID + /// + public readonly ImmutableArray Datas; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Pagination details for the Data Source Search Request + /// + public readonly ImmutableArray Paginations; + + [OutputConstructor] + private GetConnectionRouteFiltersResult( + string connectionId, + + ImmutableArray datas, + + string id, + + ImmutableArray paginations) + { + ConnectionId = connectionId; + Datas = datas; + Id = id; + Paginations = paginations; + } + } +} diff --git a/sdk/dotnet/Fabric/GetRouteFilter.cs b/sdk/dotnet/Fabric/GetRouteFilter.cs new file mode 100644 index 000000000..7d17c5595 --- /dev/null +++ b/sdk/dotnet/Fabric/GetRouteFilter.cs @@ -0,0 +1,215 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetRouteFilter + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfPolicy = Equinix.Fabric.GetRouteFilter.Invoke(new() + /// { + /// Uuid = "<uuid_of_route_filter", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["id"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.Id), + /// ["type"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.Type), + /// ["state"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.State), + /// ["notMatchedRulesAction"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.NotMatchedRuleAction), + /// ["connectionsCount"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.ConnectionsCount), + /// ["rulesCount"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.RulesCount), + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRouteFilterArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getRouteFilter:getRouteFilter", args ?? new GetRouteFilterArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfPolicy = Equinix.Fabric.GetRouteFilter.Invoke(new() + /// { + /// Uuid = "<uuid_of_route_filter", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["id"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.Id), + /// ["type"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.Type), + /// ["state"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.State), + /// ["notMatchedRulesAction"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.NotMatchedRuleAction), + /// ["connectionsCount"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.ConnectionsCount), + /// ["rulesCount"] = rfPolicy.Apply(getRouteFilterResult => getRouteFilterResult.RulesCount), + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetRouteFilterInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getRouteFilter:getRouteFilter", args ?? new GetRouteFilterInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRouteFilterArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned ID for Route Filter + /// + [Input("uuid", required: true)] + public string Uuid { get; set; } = null!; + + public GetRouteFilterArgs() + { + } + public static new GetRouteFilterArgs Empty => new GetRouteFilterArgs(); + } + + public sealed class GetRouteFilterInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Equinix Assigned ID for Route Filter + /// + [Input("uuid", required: true)] + public Input Uuid { get; set; } = null!; + + public GetRouteFilterInvokeArgs() + { + } + public static new GetRouteFilterInvokeArgs Empty => new GetRouteFilterInvokeArgs(); + } + + + [OutputType] + public sealed class GetRouteFilterResult + { + public readonly ImmutableArray ChangeLogs; + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public readonly ImmutableArray Changes; + /// + /// The number of Fabric Connections that this Route Filter is attached to + /// + public readonly int ConnectionsCount; + /// + /// Optional description to add to the Route Filter you will be creating + /// + public readonly string Description; + /// + /// Route filter URI + /// + public readonly string Href; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Name of the Route Filter + /// + public readonly string Name; + /// + /// The action that will be taken on ip ranges that don't match the rules present within the Route Filter + /// + public readonly string NotMatchedRuleAction; + /// + /// The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + /// + public readonly ImmutableArray Projects; + /// + /// The number of Route Filter Rules attached to this Route Filter + /// + public readonly int RulesCount; + /// + /// State of the Route Filter in its lifecycle + /// + public readonly string State; + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterResult( + ImmutableArray changeLogs, + + ImmutableArray changes, + + int connectionsCount, + + string description, + + string href, + + string id, + + string name, + + string notMatchedRuleAction, + + ImmutableArray projects, + + int rulesCount, + + string state, + + string type, + + string uuid) + { + ChangeLogs = changeLogs; + Changes = changes; + ConnectionsCount = connectionsCount; + Description = description; + Href = href; + Id = id; + Name = name; + NotMatchedRuleAction = notMatchedRuleAction; + Projects = projects; + RulesCount = rulesCount; + State = state; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/GetRouteFilterRule.cs b/sdk/dotnet/Fabric/GetRouteFilterRule.cs new file mode 100644 index 000000000..fa315bd88 --- /dev/null +++ b/sdk/dotnet/Fabric/GetRouteFilterRule.cs @@ -0,0 +1,225 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetRouteFilterRule + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfRule = Equinix.Fabric.GetRouteFilterRule.Invoke(new() + /// { + /// RouteFilterId = "<route_filter_policy_id>", + /// Uuid = "<route_filter_rule_uuid>", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["routeFilterRuleName"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Name), + /// ["routeFilterRuleDescription"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Description), + /// ["routeFilterRulePrefix"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Prefix), + /// ["routeFilterRulePrefixMatch"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.PrefixMatch), + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRouteFilterRuleArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getRouteFilterRule:getRouteFilterRule", args ?? new GetRouteFilterRuleArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfRule = Equinix.Fabric.GetRouteFilterRule.Invoke(new() + /// { + /// RouteFilterId = "<route_filter_policy_id>", + /// Uuid = "<route_filter_rule_uuid>", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["routeFilterRuleName"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Name), + /// ["routeFilterRuleDescription"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Description), + /// ["routeFilterRulePrefix"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.Prefix), + /// ["routeFilterRulePrefixMatch"] = rfRule.Apply(getRouteFilterRuleResult => getRouteFilterRuleResult.PrefixMatch), + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetRouteFilterRuleInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getRouteFilterRule:getRouteFilterRule", args ?? new GetRouteFilterRuleInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRouteFilterRuleArgs : global::Pulumi.InvokeArgs + { + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + [Input("routeFilterId", required: true)] + public string RouteFilterId { get; set; } = null!; + + /// + /// Equinix Assigned ID for Route Filter Rule to retrieve data for + /// + [Input("uuid", required: true)] + public string Uuid { get; set; } = null!; + + public GetRouteFilterRuleArgs() + { + } + public static new GetRouteFilterRuleArgs Empty => new GetRouteFilterRuleArgs(); + } + + public sealed class GetRouteFilterRuleInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + [Input("routeFilterId", required: true)] + public Input RouteFilterId { get; set; } = null!; + + /// + /// Equinix Assigned ID for Route Filter Rule to retrieve data for + /// + [Input("uuid", required: true)] + public Input Uuid { get; set; } = null!; + + public GetRouteFilterRuleInvokeArgs() + { + } + public static new GetRouteFilterRuleInvokeArgs Empty => new GetRouteFilterRuleInvokeArgs(); + } + + + [OutputType] + public sealed class GetRouteFilterRuleResult + { + /// + /// Action that will be taken on IP Addresses matching the rule + /// + public readonly string Action; + public readonly ImmutableArray ChangeLogs; + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public readonly ImmutableArray Changes; + /// + /// Optional description to add to the Route Filter you will be creating + /// + public readonly string Description; + /// + /// Route filter rules URI + /// + public readonly string Href; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Name of the Route Filter + /// + public readonly string Name; + /// + /// IP Address Prefix to Filter on + /// + public readonly string Prefix; + /// + /// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + /// + public readonly string PrefixMatch; + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + public readonly string RouteFilterId; + /// + /// State of the Route Filter Rule in its lifecycle + /// + public readonly string State; + /// + /// Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter Rule to retrieve data for + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterRuleResult( + string action, + + ImmutableArray changeLogs, + + ImmutableArray changes, + + string description, + + string href, + + string id, + + string name, + + string prefix, + + string prefixMatch, + + string routeFilterId, + + string state, + + string type, + + string uuid) + { + Action = action; + ChangeLogs = changeLogs; + Changes = changes; + Description = description; + Href = href; + Id = id; + Name = name; + Prefix = prefix; + PrefixMatch = prefixMatch; + RouteFilterId = routeFilterId; + State = state; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/GetRouteFilterRules.cs b/sdk/dotnet/Fabric/GetRouteFilterRules.cs new file mode 100644 index 000000000..775407fce --- /dev/null +++ b/sdk/dotnet/Fabric/GetRouteFilterRules.cs @@ -0,0 +1,193 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetRouteFilterRules + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfRules = Equinix.Fabric.GetRouteFilterRules.Invoke(new() + /// { + /// RouteFilterId = "<route_filter_policy_id", + /// Limit = 100, + /// Offset = 5, + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["firstRouteFilterRuleName"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Name), + /// ["firstRouteFilterRuleDescription"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Description), + /// ["firstRouteFilterRulePrefix"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Prefix), + /// ["firstRouteFilterRulePrefixMatch"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.PrefixMatch), + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRouteFilterRulesArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getRouteFilterRules:getRouteFilterRules", args ?? new GetRouteFilterRulesArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfRules = Equinix.Fabric.GetRouteFilterRules.Invoke(new() + /// { + /// RouteFilterId = "<route_filter_policy_id", + /// Limit = 100, + /// Offset = 5, + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["firstRouteFilterRuleName"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Name), + /// ["firstRouteFilterRuleDescription"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Description), + /// ["firstRouteFilterRulePrefix"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.Prefix), + /// ["firstRouteFilterRulePrefixMatch"] = rfRules.Apply(getRouteFilterRulesResult => getRouteFilterRulesResult.Datas[0]?.PrefixMatch), + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetRouteFilterRulesInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getRouteFilterRules:getRouteFilterRules", args ?? new GetRouteFilterRulesInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRouteFilterRulesArgs : global::Pulumi.InvokeArgs + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + [Input("limit")] + public int? Limit { get; set; } + + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + [Input("offset")] + public int? Offset { get; set; } + + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + [Input("routeFilterId", required: true)] + public string RouteFilterId { get; set; } = null!; + + public GetRouteFilterRulesArgs() + { + } + public static new GetRouteFilterRulesArgs Empty => new GetRouteFilterRulesArgs(); + } + + public sealed class GetRouteFilterRulesInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + [Input("limit")] + public Input? Limit { get; set; } + + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + [Input("offset")] + public Input? Offset { get; set; } + + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + [Input("routeFilterId", required: true)] + public Input RouteFilterId { get; set; } = null!; + + public GetRouteFilterRulesInvokeArgs() + { + } + public static new GetRouteFilterRulesInvokeArgs Empty => new GetRouteFilterRulesInvokeArgs(); + } + + + [OutputType] + public sealed class GetRouteFilterRulesResult + { + /// + /// The list of Rules attached to the given Route Filter Policy UUID + /// + public readonly ImmutableArray Datas; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + public readonly int? Limit; + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + public readonly int? Offset; + /// + /// Pagination details for the Data Source Search Request + /// + public readonly ImmutableArray Paginations; + /// + /// UUID of the Route Filter Policy the rule is attached to + /// + public readonly string RouteFilterId; + + [OutputConstructor] + private GetRouteFilterRulesResult( + ImmutableArray datas, + + string id, + + int? limit, + + int? offset, + + ImmutableArray paginations, + + string routeFilterId) + { + Datas = datas; + Id = id; + Limit = limit; + Offset = offset; + Paginations = paginations; + RouteFilterId = routeFilterId; + } + } +} diff --git a/sdk/dotnet/Fabric/GetRouteFilters.cs b/sdk/dotnet/Fabric/GetRouteFilters.cs new file mode 100644 index 000000000..29c2ae233 --- /dev/null +++ b/sdk/dotnet/Fabric/GetRouteFilters.cs @@ -0,0 +1,296 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + public static class GetRouteFilters + { + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfPolicies = Equinix.Fabric.GetRouteFilters.Invoke(new() + /// { + /// Filters = new[] + /// { + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/type", + /// Operator = "=", + /// Values = new[] + /// { + /// "BGP_IPv4_PREFIX_FILTER", + /// }, + /// }, + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/state", + /// Operator = "=", + /// Values = new[] + /// { + /// "PROVISIONED", + /// }, + /// }, + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/project/projectId", + /// Operator = "=", + /// Values = new[] + /// { + /// "<project_id>", + /// }, + /// }, + /// }, + /// Pagination = new Equinix.Fabric.Inputs.GetRouteFiltersPaginationInputArgs + /// { + /// Offset = 0, + /// Limit = 5, + /// Total = 25, + /// }, + /// Sorts = new[] + /// { + /// new Equinix.Fabric.Inputs.GetRouteFiltersSortInputArgs + /// { + /// Direction = "ASC", + /// Property = "/name", + /// }, + /// }, + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["firstRfUuid"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.Uuid), + /// ["type"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.Type), + /// ["state"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.State), + /// ["notMatchedRuleAction"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.NotMatchedRuleAction), + /// ["connectionsCount"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.ConnectionsCount), + /// ["rulesCount"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.RulesCount), + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRouteFiltersArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("equinix:fabric/getRouteFilters:getRouteFilters", args ?? new GetRouteFiltersArgs(), options.WithDefaults()); + + /// + /// Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfPolicies = Equinix.Fabric.GetRouteFilters.Invoke(new() + /// { + /// Filters = new[] + /// { + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/type", + /// Operator = "=", + /// Values = new[] + /// { + /// "BGP_IPv4_PREFIX_FILTER", + /// }, + /// }, + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/state", + /// Operator = "=", + /// Values = new[] + /// { + /// "PROVISIONED", + /// }, + /// }, + /// new Equinix.Fabric.Inputs.GetRouteFiltersFilterInputArgs + /// { + /// Property = "/project/projectId", + /// Operator = "=", + /// Values = new[] + /// { + /// "<project_id>", + /// }, + /// }, + /// }, + /// Pagination = new Equinix.Fabric.Inputs.GetRouteFiltersPaginationInputArgs + /// { + /// Offset = 0, + /// Limit = 5, + /// Total = 25, + /// }, + /// Sorts = new[] + /// { + /// new Equinix.Fabric.Inputs.GetRouteFiltersSortInputArgs + /// { + /// Direction = "ASC", + /// Property = "/name", + /// }, + /// }, + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["firstRfUuid"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.Uuid), + /// ["type"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.Type), + /// ["state"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.State), + /// ["notMatchedRuleAction"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.NotMatchedRuleAction), + /// ["connectionsCount"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.ConnectionsCount), + /// ["rulesCount"] = rfPolicies.Apply(getRouteFiltersResult => getRouteFiltersResult.Datas[0]?.RulesCount), + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetRouteFiltersInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("equinix:fabric/getRouteFilters:getRouteFilters", args ?? new GetRouteFiltersInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRouteFiltersArgs : global::Pulumi.InvokeArgs + { + [Input("filters", required: true)] + private List? _filters; + + /// + /// Filters for the Data Source Search Request. Maximum of 8 total filters. + /// + public List Filters + { + get => _filters ?? (_filters = new List()); + set => _filters = value; + } + + /// + /// Pagination details for the Data Source Search Request + /// + [Input("pagination")] + public Inputs.GetRouteFiltersPaginationArgs? Pagination { get; set; } + + [Input("sorts")] + private List? _sorts; + + /// + /// Filters for the Data Source Search Request + /// + public List Sorts + { + get => _sorts ?? (_sorts = new List()); + set => _sorts = value; + } + + public GetRouteFiltersArgs() + { + } + public static new GetRouteFiltersArgs Empty => new GetRouteFiltersArgs(); + } + + public sealed class GetRouteFiltersInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("filters", required: true)] + private InputList? _filters; + + /// + /// Filters for the Data Source Search Request. Maximum of 8 total filters. + /// + public InputList Filters + { + get => _filters ?? (_filters = new InputList()); + set => _filters = value; + } + + /// + /// Pagination details for the Data Source Search Request + /// + [Input("pagination")] + public Input? Pagination { get; set; } + + [Input("sorts")] + private InputList? _sorts; + + /// + /// Filters for the Data Source Search Request + /// + public InputList Sorts + { + get => _sorts ?? (_sorts = new InputList()); + set => _sorts = value; + } + + public GetRouteFiltersInvokeArgs() + { + } + public static new GetRouteFiltersInvokeArgs Empty => new GetRouteFiltersInvokeArgs(); + } + + + [OutputType] + public sealed class GetRouteFiltersResult + { + /// + /// List of Route Filters + /// + public readonly ImmutableArray Datas; + /// + /// Filters for the Data Source Search Request. Maximum of 8 total filters. + /// + public readonly ImmutableArray Filters; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Pagination details for the Data Source Search Request + /// + public readonly Outputs.GetRouteFiltersPaginationResult? Pagination; + /// + /// Filters for the Data Source Search Request + /// + public readonly ImmutableArray Sorts; + + [OutputConstructor] + private GetRouteFiltersResult( + ImmutableArray datas, + + ImmutableArray filters, + + string id, + + Outputs.GetRouteFiltersPaginationResult? pagination, + + ImmutableArray sorts) + { + Datas = datas; + Filters = filters; + Id = id; + Pagination = pagination; + Sorts = sorts; + } + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilter.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilter.cs new file mode 100644 index 000000000..96d8852ee --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilter.cs @@ -0,0 +1,44 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersFilterArgs : global::Pulumi.InvokeArgs + { + /// + /// Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + /// + [Input("operator", required: true)] + public string Operator { get; set; } = null!; + + /// + /// The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + /// + [Input("property", required: true)] + public string Property { get; set; } = null!; + + [Input("values", required: true)] + private List? _values; + + /// + /// The values that you want to apply the property+operator combination to in order to filter your data search + /// + public List Values + { + get => _values ?? (_values = new List()); + set => _values = value; + } + + public GetRouteFiltersFilterArgs() + { + } + public static new GetRouteFiltersFilterArgs Empty => new GetRouteFiltersFilterArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilterArgs.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilterArgs.cs new file mode 100644 index 000000000..f33733f54 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersFilterArgs.cs @@ -0,0 +1,44 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersFilterInputArgs : global::Pulumi.ResourceArgs + { + /// + /// Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + /// + [Input("operator", required: true)] + public Input Operator { get; set; } = null!; + + /// + /// The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + /// + [Input("property", required: true)] + public Input Property { get; set; } = null!; + + [Input("values", required: true)] + private InputList? _values; + + /// + /// The values that you want to apply the property+operator combination to in order to filter your data search + /// + public InputList Values + { + get => _values ?? (_values = new InputList()); + set => _values = value; + } + + public GetRouteFiltersFilterInputArgs() + { + } + public static new GetRouteFiltersFilterInputArgs Empty => new GetRouteFiltersFilterInputArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPagination.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPagination.cs new file mode 100644 index 000000000..5ba295e95 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPagination.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersPaginationArgs : global::Pulumi.InvokeArgs + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + [Input("limit", required: true)] + public int Limit { get; set; } + + /// + /// URL relative to the last item in the response. + /// + [Input("next", required: true)] + public string Next { get; set; } = null!; + + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + [Input("offset", required: true)] + public int Offset { get; set; } + + /// + /// URL relative to the first item in the response. + /// + [Input("previous", required: true)] + public string Previous { get; set; } = null!; + + /// + /// Total number of elements returned. + /// + [Input("total", required: true)] + public int Total { get; set; } + + public GetRouteFiltersPaginationArgs() + { + } + public static new GetRouteFiltersPaginationArgs Empty => new GetRouteFiltersPaginationArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPaginationArgs.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPaginationArgs.cs new file mode 100644 index 000000000..7c22315a6 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersPaginationArgs.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersPaginationInputArgs : global::Pulumi.ResourceArgs + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + [Input("limit", required: true)] + public Input Limit { get; set; } = null!; + + /// + /// URL relative to the last item in the response. + /// + [Input("next", required: true)] + public Input Next { get; set; } = null!; + + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + [Input("offset", required: true)] + public Input Offset { get; set; } = null!; + + /// + /// URL relative to the first item in the response. + /// + [Input("previous", required: true)] + public Input Previous { get; set; } = null!; + + /// + /// Total number of elements returned. + /// + [Input("total", required: true)] + public Input Total { get; set; } = null!; + + public GetRouteFiltersPaginationInputArgs() + { + } + public static new GetRouteFiltersPaginationInputArgs Empty => new GetRouteFiltersPaginationInputArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSort.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSort.cs new file mode 100644 index 000000000..ebd92a569 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSort.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersSortArgs : global::Pulumi.InvokeArgs + { + /// + /// The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + /// + [Input("direction")] + public string? Direction { get; set; } + + /// + /// The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + /// + [Input("property")] + public string? Property { get; set; } + + public GetRouteFiltersSortArgs() + { + } + public static new GetRouteFiltersSortArgs Empty => new GetRouteFiltersSortArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSortArgs.cs b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSortArgs.cs new file mode 100644 index 000000000..c59fc72d6 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/GetRouteFiltersSortArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class GetRouteFiltersSortInputArgs : global::Pulumi.ResourceArgs + { + /// + /// The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + /// + [Input("direction")] + public Input? Direction { get; set; } + + /// + /// The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + /// + [Input("property")] + public Input? Property { get; set; } + + public GetRouteFiltersSortInputArgs() + { + } + public static new GetRouteFiltersSortInputArgs Empty => new GetRouteFiltersSortInputArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterChangeArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeArgs.cs new file mode 100644 index 000000000..875cd1759 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterChangeArgs : global::Pulumi.ResourceArgs + { + /// + /// The URI of the previous Route Filter Change + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Unique identifier for the previous change + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterChangeArgs() + { + } + public static new RouteFilterChangeArgs Empty => new RouteFilterChangeArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterChangeGetArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeGetArgs.cs new file mode 100644 index 000000000..cfa3bb250 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeGetArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterChangeGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The URI of the previous Route Filter Change + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Unique identifier for the previous change + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterChangeGetArgs() + { + } + public static new RouteFilterChangeGetArgs Empty => new RouteFilterChangeGetArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogArgs.cs new file mode 100644 index 000000000..d7b8eb75c --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogArgs.cs @@ -0,0 +1,92 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterChangeLogArgs : global::Pulumi.ResourceArgs + { + /// + /// Created by User Key + /// + [Input("createdBy")] + public Input? CreatedBy { get; set; } + + /// + /// Created by User Email Address + /// + [Input("createdByEmail")] + public Input? CreatedByEmail { get; set; } + + /// + /// Created by User Full Name + /// + [Input("createdByFullName")] + public Input? CreatedByFullName { get; set; } + + /// + /// Created by Date and Time + /// + [Input("createdDateTime")] + public Input? CreatedDateTime { get; set; } + + /// + /// Deleted by User Key + /// + [Input("deletedBy")] + public Input? DeletedBy { get; set; } + + /// + /// Deleted by User Email Address + /// + [Input("deletedByEmail")] + public Input? DeletedByEmail { get; set; } + + /// + /// Deleted by User Full Name + /// + [Input("deletedByFullName")] + public Input? DeletedByFullName { get; set; } + + /// + /// Deleted by Date and Time + /// + [Input("deletedDateTime")] + public Input? DeletedDateTime { get; set; } + + /// + /// Updated by User Key + /// + [Input("updatedBy")] + public Input? UpdatedBy { get; set; } + + /// + /// Updated by User Email Address + /// + [Input("updatedByEmail")] + public Input? UpdatedByEmail { get; set; } + + /// + /// Updated by User Full Name + /// + [Input("updatedByFullName")] + public Input? UpdatedByFullName { get; set; } + + /// + /// Updated by Date and Time + /// + [Input("updatedDateTime")] + public Input? UpdatedDateTime { get; set; } + + public RouteFilterChangeLogArgs() + { + } + public static new RouteFilterChangeLogArgs Empty => new RouteFilterChangeLogArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogGetArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogGetArgs.cs new file mode 100644 index 000000000..4840bf8c3 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterChangeLogGetArgs.cs @@ -0,0 +1,92 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterChangeLogGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Created by User Key + /// + [Input("createdBy")] + public Input? CreatedBy { get; set; } + + /// + /// Created by User Email Address + /// + [Input("createdByEmail")] + public Input? CreatedByEmail { get; set; } + + /// + /// Created by User Full Name + /// + [Input("createdByFullName")] + public Input? CreatedByFullName { get; set; } + + /// + /// Created by Date and Time + /// + [Input("createdDateTime")] + public Input? CreatedDateTime { get; set; } + + /// + /// Deleted by User Key + /// + [Input("deletedBy")] + public Input? DeletedBy { get; set; } + + /// + /// Deleted by User Email Address + /// + [Input("deletedByEmail")] + public Input? DeletedByEmail { get; set; } + + /// + /// Deleted by User Full Name + /// + [Input("deletedByFullName")] + public Input? DeletedByFullName { get; set; } + + /// + /// Deleted by Date and Time + /// + [Input("deletedDateTime")] + public Input? DeletedDateTime { get; set; } + + /// + /// Updated by User Key + /// + [Input("updatedBy")] + public Input? UpdatedBy { get; set; } + + /// + /// Updated by User Email Address + /// + [Input("updatedByEmail")] + public Input? UpdatedByEmail { get; set; } + + /// + /// Updated by User Full Name + /// + [Input("updatedByFullName")] + public Input? UpdatedByFullName { get; set; } + + /// + /// Updated by Date and Time + /// + [Input("updatedDateTime")] + public Input? UpdatedDateTime { get; set; } + + public RouteFilterChangeLogGetArgs() + { + } + public static new RouteFilterChangeLogGetArgs Empty => new RouteFilterChangeLogGetArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterProjectArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterProjectArgs.cs new file mode 100644 index 000000000..e89a2f279 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterProjectArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterProjectArgs : global::Pulumi.ResourceArgs + { + /// + /// URI of the Fabric Project + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Project id associated with Fabric Project + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + public RouteFilterProjectArgs() + { + } + public static new RouteFilterProjectArgs Empty => new RouteFilterProjectArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterProjectGetArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterProjectGetArgs.cs new file mode 100644 index 000000000..75b01eb20 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterProjectGetArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterProjectGetArgs : global::Pulumi.ResourceArgs + { + /// + /// URI of the Fabric Project + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Project id associated with Fabric Project + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + public RouteFilterProjectGetArgs() + { + } + public static new RouteFilterProjectGetArgs Empty => new RouteFilterProjectGetArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeArgs.cs new file mode 100644 index 000000000..519c056e8 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterRuleChangeArgs : global::Pulumi.ResourceArgs + { + /// + /// The URI of the previous Route Filter Rule Change + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Unique identifier for the previous change + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterRuleChangeArgs() + { + } + public static new RouteFilterRuleChangeArgs Empty => new RouteFilterRuleChangeArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeGetArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeGetArgs.cs new file mode 100644 index 000000000..04cccb293 --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeGetArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterRuleChangeGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The URI of the previous Route Filter Rule Change + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Unique identifier for the previous change + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterRuleChangeGetArgs() + { + } + public static new RouteFilterRuleChangeGetArgs Empty => new RouteFilterRuleChangeGetArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogArgs.cs new file mode 100644 index 000000000..5b24e812f --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogArgs.cs @@ -0,0 +1,92 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterRuleChangeLogArgs : global::Pulumi.ResourceArgs + { + /// + /// Created by User Key + /// + [Input("createdBy")] + public Input? CreatedBy { get; set; } + + /// + /// Created by User Email Address + /// + [Input("createdByEmail")] + public Input? CreatedByEmail { get; set; } + + /// + /// Created by User Full Name + /// + [Input("createdByFullName")] + public Input? CreatedByFullName { get; set; } + + /// + /// Created by Date and Time + /// + [Input("createdDateTime")] + public Input? CreatedDateTime { get; set; } + + /// + /// Deleted by User Key + /// + [Input("deletedBy")] + public Input? DeletedBy { get; set; } + + /// + /// Deleted by User Email Address + /// + [Input("deletedByEmail")] + public Input? DeletedByEmail { get; set; } + + /// + /// Deleted by User Full Name + /// + [Input("deletedByFullName")] + public Input? DeletedByFullName { get; set; } + + /// + /// Deleted by Date and Time + /// + [Input("deletedDateTime")] + public Input? DeletedDateTime { get; set; } + + /// + /// Updated by User Key + /// + [Input("updatedBy")] + public Input? UpdatedBy { get; set; } + + /// + /// Updated by User Email Address + /// + [Input("updatedByEmail")] + public Input? UpdatedByEmail { get; set; } + + /// + /// Updated by User Full Name + /// + [Input("updatedByFullName")] + public Input? UpdatedByFullName { get; set; } + + /// + /// Updated by Date and Time + /// + [Input("updatedDateTime")] + public Input? UpdatedDateTime { get; set; } + + public RouteFilterRuleChangeLogArgs() + { + } + public static new RouteFilterRuleChangeLogArgs Empty => new RouteFilterRuleChangeLogArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogGetArgs.cs b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogGetArgs.cs new file mode 100644 index 000000000..613605c2b --- /dev/null +++ b/sdk/dotnet/Fabric/Inputs/RouteFilterRuleChangeLogGetArgs.cs @@ -0,0 +1,92 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Inputs +{ + + public sealed class RouteFilterRuleChangeLogGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Created by User Key + /// + [Input("createdBy")] + public Input? CreatedBy { get; set; } + + /// + /// Created by User Email Address + /// + [Input("createdByEmail")] + public Input? CreatedByEmail { get; set; } + + /// + /// Created by User Full Name + /// + [Input("createdByFullName")] + public Input? CreatedByFullName { get; set; } + + /// + /// Created by Date and Time + /// + [Input("createdDateTime")] + public Input? CreatedDateTime { get; set; } + + /// + /// Deleted by User Key + /// + [Input("deletedBy")] + public Input? DeletedBy { get; set; } + + /// + /// Deleted by User Email Address + /// + [Input("deletedByEmail")] + public Input? DeletedByEmail { get; set; } + + /// + /// Deleted by User Full Name + /// + [Input("deletedByFullName")] + public Input? DeletedByFullName { get; set; } + + /// + /// Deleted by Date and Time + /// + [Input("deletedDateTime")] + public Input? DeletedDateTime { get; set; } + + /// + /// Updated by User Key + /// + [Input("updatedBy")] + public Input? UpdatedBy { get; set; } + + /// + /// Updated by User Email Address + /// + [Input("updatedByEmail")] + public Input? UpdatedByEmail { get; set; } + + /// + /// Updated by User Full Name + /// + [Input("updatedByFullName")] + public Input? UpdatedByFullName { get; set; } + + /// + /// Updated by Date and Time + /// + [Input("updatedDateTime")] + public Input? UpdatedDateTime { get; set; } + + public RouteFilterRuleChangeLogGetArgs() + { + } + public static new RouteFilterRuleChangeLogGetArgs Empty => new RouteFilterRuleChangeLogGetArgs(); + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersDataResult.cs b/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersDataResult.cs new file mode 100644 index 000000000..6cc710f53 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersDataResult.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetConnectionRouteFiltersDataResult + { + /// + /// Status of the Route Filter Policy attachment lifecycle + /// + public readonly string AttachmentStatus; + /// + /// Direction of the filtering of the attached Route Filter Policy + /// + public readonly string Direction; + /// + /// URI to the attached Route Filter Policy on the Connection + /// + public readonly string Href; + /// + /// Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter Policy + /// + public readonly string Uuid; + + [OutputConstructor] + private GetConnectionRouteFiltersDataResult( + string attachmentStatus, + + string direction, + + string href, + + string type, + + string uuid) + { + AttachmentStatus = attachmentStatus; + Direction = direction; + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersPaginationResult.cs b/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersPaginationResult.cs new file mode 100644 index 000000000..b3ca961a7 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetConnectionRouteFiltersPaginationResult.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetConnectionRouteFiltersPaginationResult + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + public readonly int Limit; + /// + /// URL relative to the last item in the response. + /// + public readonly string Next; + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + public readonly int Offset; + /// + /// URL relative to the first item in the response. + /// + public readonly string Previous; + /// + /// Total number of elements returned. + /// + public readonly int Total; + + [OutputConstructor] + private GetConnectionRouteFiltersPaginationResult( + int limit, + + string next, + + int offset, + + string previous, + + int total) + { + Limit = limit; + Next = next; + Offset = offset; + Previous = previous; + Total = total; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeLogResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeLogResult.cs new file mode 100644 index 000000000..320dadaa4 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeLogResult.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterChangeLogResult + { + /// + /// Created by User Key + /// + public readonly string CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string UpdatedDateTime; + + [OutputConstructor] + private GetRouteFilterChangeLogResult( + string createdBy, + + string createdByEmail, + + string createdByFullName, + + string createdDateTime, + + string deletedBy, + + string deletedByEmail, + + string deletedByFullName, + + string deletedDateTime, + + string updatedBy, + + string updatedByEmail, + + string updatedByFullName, + + string updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeResult.cs new file mode 100644 index 000000000..f105dd851 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterChangeResult.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterChangeResult + { + /// + /// The URI of the previous Route Filter Change + /// + public readonly string Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + /// + public readonly string Type; + /// + /// Unique identifier for the previous change + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterChangeResult( + string href, + + string type, + + string uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterProjectResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterProjectResult.cs new file mode 100644 index 000000000..3f037cb28 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterProjectResult.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterProjectResult + { + /// + /// URI of the Fabric Project + /// + public readonly string Href; + /// + /// Project id associated with Fabric Project + /// + public readonly string ProjectId; + + [OutputConstructor] + private GetRouteFilterProjectResult( + string href, + + string projectId) + { + Href = href; + ProjectId = projectId; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeLogResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeLogResult.cs new file mode 100644 index 000000000..2b670ef42 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeLogResult.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRuleChangeLogResult + { + /// + /// Created by User Key + /// + public readonly string CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string UpdatedDateTime; + + [OutputConstructor] + private GetRouteFilterRuleChangeLogResult( + string createdBy, + + string createdByEmail, + + string createdByFullName, + + string createdDateTime, + + string deletedBy, + + string deletedByEmail, + + string deletedByFullName, + + string deletedDateTime, + + string updatedBy, + + string updatedByEmail, + + string updatedByFullName, + + string updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeResult.cs new file mode 100644 index 000000000..c3d0be1dd --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRuleChangeResult.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRuleChangeResult + { + /// + /// The URI of the previous Route Filter Rule Change + /// + public readonly string Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + /// + public readonly string Type; + /// + /// Unique identifier for the previous change + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterRuleChangeResult( + string href, + + string type, + + string uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeLogResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeLogResult.cs new file mode 100644 index 000000000..a366be6b1 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeLogResult.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRulesDataChangeLogResult + { + /// + /// Created by User Key + /// + public readonly string CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string UpdatedDateTime; + + [OutputConstructor] + private GetRouteFilterRulesDataChangeLogResult( + string createdBy, + + string createdByEmail, + + string createdByFullName, + + string createdDateTime, + + string deletedBy, + + string deletedByEmail, + + string deletedByFullName, + + string deletedDateTime, + + string updatedBy, + + string updatedByEmail, + + string updatedByFullName, + + string updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeResult.cs new file mode 100644 index 000000000..3cbefbf6a --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataChangeResult.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRulesDataChangeResult + { + /// + /// The URI of the previous Route Filter Rule Change + /// + public readonly string Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + /// + public readonly string Type; + /// + /// Unique identifier for the previous change + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterRulesDataChangeResult( + string href, + + string type, + + string uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataResult.cs new file mode 100644 index 000000000..9acccee9f --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesDataResult.cs @@ -0,0 +1,95 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRulesDataResult + { + /// + /// Action that will be taken on IP Addresses matching the rule + /// + public readonly string Action; + public readonly ImmutableArray ChangeLogs; + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public readonly ImmutableArray Changes; + /// + /// Optional description to add to the Route Filter you will be creating + /// + public readonly string Description; + /// + /// Route filter rules URI + /// + public readonly string Href; + /// + /// Name of the Route Filter + /// + public readonly string Name; + /// + /// IP Address Prefix to Filter on + /// + public readonly string Prefix; + /// + /// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + /// + public readonly string PrefixMatch; + /// + /// State of the Route Filter Rule in its lifecycle + /// + public readonly string State; + /// + /// Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter Rule to retrieve data for + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFilterRulesDataResult( + string action, + + ImmutableArray changeLogs, + + ImmutableArray changes, + + string description, + + string href, + + string name, + + string prefix, + + string prefixMatch, + + string state, + + string type, + + string uuid) + { + Action = action; + ChangeLogs = changeLogs; + Changes = changes; + Description = description; + Href = href; + Name = name; + Prefix = prefix; + PrefixMatch = prefixMatch; + State = state; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesPaginationResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesPaginationResult.cs new file mode 100644 index 000000000..18e36bc1f --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFilterRulesPaginationResult.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFilterRulesPaginationResult + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + public readonly int Limit; + /// + /// URL relative to the last item in the response. + /// + public readonly string Next; + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + public readonly int Offset; + /// + /// URL relative to the first item in the response. + /// + public readonly string Previous; + /// + /// Total number of elements returned. + /// + public readonly int Total; + + [OutputConstructor] + private GetRouteFilterRulesPaginationResult( + int limit, + + string next, + + int offset, + + string previous, + + int total) + { + Limit = limit; + Next = next; + Offset = offset; + Previous = previous; + Total = total; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeLogResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeLogResult.cs new file mode 100644 index 000000000..20c8f1cc8 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeLogResult.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersDataChangeLogResult + { + /// + /// Created by User Key + /// + public readonly string CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string UpdatedDateTime; + + [OutputConstructor] + private GetRouteFiltersDataChangeLogResult( + string createdBy, + + string createdByEmail, + + string createdByFullName, + + string createdDateTime, + + string deletedBy, + + string deletedByEmail, + + string deletedByFullName, + + string deletedDateTime, + + string updatedBy, + + string updatedByEmail, + + string updatedByFullName, + + string updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeResult.cs new file mode 100644 index 000000000..a612e9b24 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataChangeResult.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersDataChangeResult + { + /// + /// The URI of the previous Route Filter Change + /// + public readonly string Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + /// + public readonly string Type; + /// + /// Unique identifier for the previous change + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFiltersDataChangeResult( + string href, + + string type, + + string uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataProjectResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataProjectResult.cs new file mode 100644 index 000000000..f7d7a4ec2 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataProjectResult.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersDataProjectResult + { + /// + /// URI of the Fabric Project + /// + public readonly string Href; + /// + /// Project id associated with Fabric Project + /// + public readonly string ProjectId; + + [OutputConstructor] + private GetRouteFiltersDataProjectResult( + string href, + + string projectId) + { + Href = href; + ProjectId = projectId; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataResult.cs new file mode 100644 index 000000000..c5d199412 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersDataResult.cs @@ -0,0 +1,102 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersDataResult + { + public readonly ImmutableArray ChangeLogs; + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public readonly ImmutableArray Changes; + /// + /// The number of Fabric Connections that this Route Filter is attached to + /// + public readonly int ConnectionsCount; + /// + /// Optional description to add to the Route Filter you will be creating + /// + public readonly string Description; + /// + /// Route filter URI + /// + public readonly string Href; + /// + /// Name of the Route Filter + /// + public readonly string Name; + /// + /// The action that will be taken on ip ranges that don't match the rules present within the Route Filter + /// + public readonly string NotMatchedRuleAction; + /// + /// The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + /// + public readonly ImmutableArray Projects; + /// + /// The number of Route Filter Rules attached to this Route Filter + /// + public readonly int RulesCount; + /// + /// State of the Route Filter in its lifecycle + /// + public readonly string State; + /// + /// Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + /// + public readonly string Type; + /// + /// Equinix Assigned ID for Route Filter + /// + public readonly string Uuid; + + [OutputConstructor] + private GetRouteFiltersDataResult( + ImmutableArray changeLogs, + + ImmutableArray changes, + + int connectionsCount, + + string description, + + string href, + + string name, + + string notMatchedRuleAction, + + ImmutableArray projects, + + int rulesCount, + + string state, + + string type, + + string uuid) + { + ChangeLogs = changeLogs; + Changes = changes; + ConnectionsCount = connectionsCount; + Description = description; + Href = href; + Name = name; + NotMatchedRuleAction = notMatchedRuleAction; + Projects = projects; + RulesCount = rulesCount; + State = state; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersFilterResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersFilterResult.cs new file mode 100644 index 000000000..0026f1ca7 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersFilterResult.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersFilterResult + { + /// + /// Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + /// + public readonly string Operator; + /// + /// The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + /// + public readonly string Property; + /// + /// The values that you want to apply the property+operator combination to in order to filter your data search + /// + public readonly ImmutableArray Values; + + [OutputConstructor] + private GetRouteFiltersFilterResult( + string @operator, + + string property, + + ImmutableArray values) + { + Operator = @operator; + Property = property; + Values = values; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersPaginationResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersPaginationResult.cs new file mode 100644 index 000000000..643b5a17c --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersPaginationResult.cs @@ -0,0 +1,56 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersPaginationResult + { + /// + /// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + /// + public readonly int Limit; + /// + /// URL relative to the last item in the response. + /// + public readonly string Next; + /// + /// The page offset for the pagination request. Index of the first element. Default is 0. + /// + public readonly int Offset; + /// + /// URL relative to the first item in the response. + /// + public readonly string Previous; + /// + /// Total number of elements returned. + /// + public readonly int Total; + + [OutputConstructor] + private GetRouteFiltersPaginationResult( + int limit, + + string next, + + int offset, + + string previous, + + int total) + { + Limit = limit; + Next = next; + Offset = offset; + Previous = previous; + Total = total; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/GetRouteFiltersSortResult.cs b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersSortResult.cs new file mode 100644 index 000000000..9c60ddd91 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/GetRouteFiltersSortResult.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class GetRouteFiltersSortResult + { + /// + /// The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + /// + public readonly string? Direction; + /// + /// The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + /// + public readonly string? Property; + + [OutputConstructor] + private GetRouteFiltersSortResult( + string? direction, + + string? property) + { + Direction = direction; + Property = property; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/RouteFilterChange.cs b/sdk/dotnet/Fabric/Outputs/RouteFilterChange.cs new file mode 100644 index 000000000..a7986f721 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/RouteFilterChange.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class RouteFilterChange + { + /// + /// The URI of the previous Route Filter Change + /// + public readonly string? Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + /// + public readonly string? Type; + /// + /// Unique identifier for the previous change + /// + public readonly string? Uuid; + + [OutputConstructor] + private RouteFilterChange( + string? href, + + string? type, + + string? uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/RouteFilterChangeLog.cs b/sdk/dotnet/Fabric/Outputs/RouteFilterChangeLog.cs new file mode 100644 index 000000000..7f40eff1f --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/RouteFilterChangeLog.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class RouteFilterChangeLog + { + /// + /// Created by User Key + /// + public readonly string? CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string? CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string? CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string? CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string? DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string? DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string? DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string? DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string? UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string? UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string? UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string? UpdatedDateTime; + + [OutputConstructor] + private RouteFilterChangeLog( + string? createdBy, + + string? createdByEmail, + + string? createdByFullName, + + string? createdDateTime, + + string? deletedBy, + + string? deletedByEmail, + + string? deletedByFullName, + + string? deletedDateTime, + + string? updatedBy, + + string? updatedByEmail, + + string? updatedByFullName, + + string? updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/RouteFilterProject.cs b/sdk/dotnet/Fabric/Outputs/RouteFilterProject.cs new file mode 100644 index 000000000..407474067 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/RouteFilterProject.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class RouteFilterProject + { + /// + /// URI of the Fabric Project + /// + public readonly string? Href; + /// + /// Project id associated with Fabric Project + /// + public readonly string ProjectId; + + [OutputConstructor] + private RouteFilterProject( + string? href, + + string projectId) + { + Href = href; + ProjectId = projectId; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChange.cs b/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChange.cs new file mode 100644 index 000000000..96102b917 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChange.cs @@ -0,0 +1,42 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class RouteFilterRuleChange + { + /// + /// The URI of the previous Route Filter Rule Change + /// + public readonly string? Href; + /// + /// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + /// + public readonly string? Type; + /// + /// Unique identifier for the previous change + /// + public readonly string? Uuid; + + [OutputConstructor] + private RouteFilterRuleChange( + string? href, + + string? type, + + string? uuid) + { + Href = href; + Type = type; + Uuid = uuid; + } + } +} diff --git a/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChangeLog.cs b/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChangeLog.cs new file mode 100644 index 000000000..28b855892 --- /dev/null +++ b/sdk/dotnet/Fabric/Outputs/RouteFilterRuleChangeLog.cs @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric.Outputs +{ + + [OutputType] + public sealed class RouteFilterRuleChangeLog + { + /// + /// Created by User Key + /// + public readonly string? CreatedBy; + /// + /// Created by User Email Address + /// + public readonly string? CreatedByEmail; + /// + /// Created by User Full Name + /// + public readonly string? CreatedByFullName; + /// + /// Created by Date and Time + /// + public readonly string? CreatedDateTime; + /// + /// Deleted by User Key + /// + public readonly string? DeletedBy; + /// + /// Deleted by User Email Address + /// + public readonly string? DeletedByEmail; + /// + /// Deleted by User Full Name + /// + public readonly string? DeletedByFullName; + /// + /// Deleted by Date and Time + /// + public readonly string? DeletedDateTime; + /// + /// Updated by User Key + /// + public readonly string? UpdatedBy; + /// + /// Updated by User Email Address + /// + public readonly string? UpdatedByEmail; + /// + /// Updated by User Full Name + /// + public readonly string? UpdatedByFullName; + /// + /// Updated by Date and Time + /// + public readonly string? UpdatedDateTime; + + [OutputConstructor] + private RouteFilterRuleChangeLog( + string? createdBy, + + string? createdByEmail, + + string? createdByFullName, + + string? createdDateTime, + + string? deletedBy, + + string? deletedByEmail, + + string? deletedByFullName, + + string? deletedDateTime, + + string? updatedBy, + + string? updatedByEmail, + + string? updatedByFullName, + + string? updatedDateTime) + { + CreatedBy = createdBy; + CreatedByEmail = createdByEmail; + CreatedByFullName = createdByFullName; + CreatedDateTime = createdDateTime; + DeletedBy = deletedBy; + DeletedByEmail = deletedByEmail; + DeletedByFullName = deletedByFullName; + DeletedDateTime = deletedDateTime; + UpdatedBy = updatedBy; + UpdatedByEmail = updatedByEmail; + UpdatedByFullName = updatedByFullName; + UpdatedDateTime = updatedDateTime; + } + } +} diff --git a/sdk/dotnet/Fabric/RouteFilter.cs b/sdk/dotnet/Fabric/RouteFilter.cs new file mode 100644 index 000000000..e75ce6f91 --- /dev/null +++ b/sdk/dotnet/Fabric/RouteFilter.cs @@ -0,0 +1,255 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + /// + /// Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + /// + [EquinixResourceType("equinix:fabric/routeFilter:RouteFilter")] + public partial class RouteFilter : global::Pulumi.CustomResource + { + [Output("changeLogs")] + public Output> ChangeLogs { get; private set; } = null!; + + /// + /// An object with the details of the previous change applied on the Route Filter + /// + [Output("changes")] + public Output> Changes { get; private set; } = null!; + + /// + /// The number of Fabric Connections that this Route Filter is attached to + /// + [Output("connectionsCount")] + public Output ConnectionsCount { get; private set; } = null!; + + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// Route filter URI + /// + [Output("href")] + public Output Href { get; private set; } = null!; + + /// + /// Name of the Route Filter + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The action that will be taken on ip ranges that don't match the rules present within the Route Filter + /// + [Output("notMatchedRuleAction")] + public Output NotMatchedRuleAction { get; private set; } = null!; + + /// + /// The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + /// + [Output("project")] + public Output Project { get; private set; } = null!; + + /// + /// The number of Route Filter Rules attached to this Route Filter + /// + [Output("rulesCount")] + public Output RulesCount { get; private set; } = null!; + + /// + /// State of the Route Filter in its lifecycle + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + /// + /// Equinix Assigned ID for Route Filter + /// + [Output("uuid")] + public Output Uuid { get; private set; } = null!; + + + /// + /// Create a RouteFilter resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public RouteFilter(string name, RouteFilterArgs args, CustomResourceOptions? options = null) + : base("equinix:fabric/routeFilter:RouteFilter", name, args ?? new RouteFilterArgs(), MakeResourceOptions(options, "")) + { + } + + private RouteFilter(string name, Input id, RouteFilterState? state = null, CustomResourceOptions? options = null) + : base("equinix:fabric/routeFilter:RouteFilter", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/equinix", + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing RouteFilter resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static RouteFilter Get(string name, Input id, RouteFilterState? state = null, CustomResourceOptions? options = null) + { + return new RouteFilter(name, id, state, options); + } + } + + public sealed class RouteFilterArgs : global::Pulumi.ResourceArgs + { + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// Name of the Route Filter + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + /// + [Input("project", required: true)] + public Input Project { get; set; } = null!; + + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public RouteFilterArgs() + { + } + public static new RouteFilterArgs Empty => new RouteFilterArgs(); + } + + public sealed class RouteFilterState : global::Pulumi.ResourceArgs + { + [Input("changeLogs")] + private InputList? _changeLogs; + public InputList ChangeLogs + { + get => _changeLogs ?? (_changeLogs = new InputList()); + set => _changeLogs = value; + } + + [Input("changes")] + private InputList? _changes; + + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public InputList Changes + { + get => _changes ?? (_changes = new InputList()); + set => _changes = value; + } + + /// + /// The number of Fabric Connections that this Route Filter is attached to + /// + [Input("connectionsCount")] + public Input? ConnectionsCount { get; set; } + + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// Route filter URI + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Name of the Route Filter + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The action that will be taken on ip ranges that don't match the rules present within the Route Filter + /// + [Input("notMatchedRuleAction")] + public Input? NotMatchedRuleAction { get; set; } + + /// + /// The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + /// + [Input("project")] + public Input? Project { get; set; } + + /// + /// The number of Route Filter Rules attached to this Route Filter + /// + [Input("rulesCount")] + public Input? RulesCount { get; set; } + + /// + /// State of the Route Filter in its lifecycle + /// + [Input("state")] + public Input? State { get; set; } + + /// + /// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Equinix Assigned ID for Route Filter + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterState() + { + } + public static new RouteFilterState Empty => new RouteFilterState(); + } +} diff --git a/sdk/dotnet/Fabric/RouteFilterRule.cs b/sdk/dotnet/Fabric/RouteFilterRule.cs new file mode 100644 index 000000000..59982ccd9 --- /dev/null +++ b/sdk/dotnet/Fabric/RouteFilterRule.cs @@ -0,0 +1,289 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Equinix.Fabric +{ + /// + /// Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule + /// + /// Additional Documentation: + /// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + /// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Equinix = Pulumi.Equinix; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rfRule = new Equinix.Fabric.RouteFilterRule("rfRule", new() + /// { + /// RouteFilterId = "<route_filter_policy_id>", + /// Prefix = "192.168.0.0/24", + /// PrefixMatch = "exact", + /// Description = "Route Filter Rule for X Purpose", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["routeFilterRuleId"] = rfRule.Id, + /// ["routeFilterId"] = rfRule.RouteFilterId, + /// ["routeFilterRulePrefix"] = rfRule.Prefix, + /// ["routeFilterRulePrefixMatch"] = rfRule.PrefixMatch, + /// }; + /// }); + /// ``` + /// + [EquinixResourceType("equinix:fabric/routeFilterRule:RouteFilterRule")] + public partial class RouteFilterRule : global::Pulumi.CustomResource + { + /// + /// Action that will be taken on IP Addresses matching the rule + /// + [Output("action")] + public Output Action { get; private set; } = null!; + + [Output("changeLogs")] + public Output> ChangeLogs { get; private set; } = null!; + + /// + /// An object with the details of the previous change applied on the Route Filter + /// + [Output("changes")] + public Output> Changes { get; private set; } = null!; + + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// Route filter rules URI + /// + [Output("href")] + public Output Href { get; private set; } = null!; + + /// + /// Name of the Route Filter + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// IP Address Prefix to Filter on + /// + [Output("prefix")] + public Output Prefix { get; private set; } = null!; + + /// + /// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + /// + [Output("prefixMatch")] + public Output PrefixMatch { get; private set; } = null!; + + /// + /// UUID of the Route Filter Policy to apply this Rule to + /// + [Output("routeFilterId")] + public Output RouteFilterId { get; private set; } = null!; + + /// + /// State of the Route Filter Rule in its lifecycle + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + /// + /// Equinix Assigned ID for Route Filter Rule + /// + [Output("uuid")] + public Output Uuid { get; private set; } = null!; + + + /// + /// Create a RouteFilterRule resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public RouteFilterRule(string name, RouteFilterRuleArgs args, CustomResourceOptions? options = null) + : base("equinix:fabric/routeFilterRule:RouteFilterRule", name, args ?? new RouteFilterRuleArgs(), MakeResourceOptions(options, "")) + { + } + + private RouteFilterRule(string name, Input id, RouteFilterRuleState? state = null, CustomResourceOptions? options = null) + : base("equinix:fabric/routeFilterRule:RouteFilterRule", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/equinix", + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing RouteFilterRule resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static RouteFilterRule Get(string name, Input id, RouteFilterRuleState? state = null, CustomResourceOptions? options = null) + { + return new RouteFilterRule(name, id, state, options); + } + } + + public sealed class RouteFilterRuleArgs : global::Pulumi.ResourceArgs + { + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// Name of the Route Filter + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// IP Address Prefix to Filter on + /// + [Input("prefix", required: true)] + public Input Prefix { get; set; } = null!; + + /// + /// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + /// + [Input("prefixMatch")] + public Input? PrefixMatch { get; set; } + + /// + /// UUID of the Route Filter Policy to apply this Rule to + /// + [Input("routeFilterId", required: true)] + public Input RouteFilterId { get; set; } = null!; + + public RouteFilterRuleArgs() + { + } + public static new RouteFilterRuleArgs Empty => new RouteFilterRuleArgs(); + } + + public sealed class RouteFilterRuleState : global::Pulumi.ResourceArgs + { + /// + /// Action that will be taken on IP Addresses matching the rule + /// + [Input("action")] + public Input? Action { get; set; } + + [Input("changeLogs")] + private InputList? _changeLogs; + public InputList ChangeLogs + { + get => _changeLogs ?? (_changeLogs = new InputList()); + set => _changeLogs = value; + } + + [Input("changes")] + private InputList? _changes; + + /// + /// An object with the details of the previous change applied on the Route Filter + /// + public InputList Changes + { + get => _changes ?? (_changes = new InputList()); + set => _changes = value; + } + + /// + /// Optional description to add to the Route Filter you will be creating + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// Route filter rules URI + /// + [Input("href")] + public Input? Href { get; set; } + + /// + /// Name of the Route Filter + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// IP Address Prefix to Filter on + /// + [Input("prefix")] + public Input? Prefix { get; set; } + + /// + /// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + /// + [Input("prefixMatch")] + public Input? PrefixMatch { get; set; } + + /// + /// UUID of the Route Filter Policy to apply this Rule to + /// + [Input("routeFilterId")] + public Input? RouteFilterId { get; set; } + + /// + /// State of the Route Filter Rule in its lifecycle + /// + [Input("state")] + public Input? State { get; set; } + + /// + /// Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// Equinix Assigned ID for Route Filter Rule + /// + [Input("uuid")] + public Input? Uuid { get; set; } + + public RouteFilterRuleState() + { + } + public static new RouteFilterRuleState Empty => new RouteFilterRuleState(); + } +} diff --git a/sdk/go/equinix/fabric/connectionRouteFilter.go b/sdk/go/equinix/fabric/connectionRouteFilter.go new file mode 100644 index 000000000..f43505e53 --- /dev/null +++ b/sdk/go/equinix/fabric/connectionRouteFilter.go @@ -0,0 +1,337 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "errors" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// policyAttachment, err := fabric.NewConnectionRouteFilter(ctx, "policyAttachment", &fabric.ConnectionRouteFilterArgs{ +// ConnectionId: pulumi.String(""), +// RouteFilterId: pulumi.String(""), +// Direction: pulumi.String("INBOUND"), +// }) +// if err != nil { +// return err +// } +// ctx.Export("connectionRouteFilterId", policyAttachment.ID()) +// ctx.Export("connectionRouteFilterConnectionId", policyAttachment.ConnectionId) +// ctx.Export("connectionRouteFilterDirection", policyAttachment.Direction) +// ctx.Export("connectionRouteFilterType", policyAttachment.Type) +// ctx.Export("connectionRouteFilterAttachmentStatus", policyAttachment.AttachmentStatus) +// return nil +// }) +// } +// +// ``` +type ConnectionRouteFilter struct { + pulumi.CustomResourceState + + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus pulumi.StringOutput `pulumi:"attachmentStatus"` + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId pulumi.StringOutput `pulumi:"connectionId"` + // Direction of the filtering of the attached Route Filter Policy + Direction pulumi.StringOutput `pulumi:"direction"` + // URI to the attached Route Filter Policy on the Connection + Href pulumi.StringOutput `pulumi:"href"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId pulumi.StringOutput `pulumi:"routeFilterId"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type pulumi.StringOutput `pulumi:"type"` + // Equinix Assigned ID for Route Filter Policy + Uuid pulumi.StringOutput `pulumi:"uuid"` +} + +// NewConnectionRouteFilter registers a new resource with the given unique name, arguments, and options. +func NewConnectionRouteFilter(ctx *pulumi.Context, + name string, args *ConnectionRouteFilterArgs, opts ...pulumi.ResourceOption) (*ConnectionRouteFilter, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ConnectionId == nil { + return nil, errors.New("invalid value for required argument 'ConnectionId'") + } + if args.Direction == nil { + return nil, errors.New("invalid value for required argument 'Direction'") + } + if args.RouteFilterId == nil { + return nil, errors.New("invalid value for required argument 'RouteFilterId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource ConnectionRouteFilter + err := ctx.RegisterResource("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetConnectionRouteFilter gets an existing ConnectionRouteFilter resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetConnectionRouteFilter(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ConnectionRouteFilterState, opts ...pulumi.ResourceOption) (*ConnectionRouteFilter, error) { + var resource ConnectionRouteFilter + err := ctx.ReadResource("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ConnectionRouteFilter resources. +type connectionRouteFilterState struct { + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus *string `pulumi:"attachmentStatus"` + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId *string `pulumi:"connectionId"` + // Direction of the filtering of the attached Route Filter Policy + Direction *string `pulumi:"direction"` + // URI to the attached Route Filter Policy on the Connection + Href *string `pulumi:"href"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId *string `pulumi:"routeFilterId"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type *string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Policy + Uuid *string `pulumi:"uuid"` +} + +type ConnectionRouteFilterState struct { + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus pulumi.StringPtrInput + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId pulumi.StringPtrInput + // Direction of the filtering of the attached Route Filter Policy + Direction pulumi.StringPtrInput + // URI to the attached Route Filter Policy on the Connection + Href pulumi.StringPtrInput + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId pulumi.StringPtrInput + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type pulumi.StringPtrInput + // Equinix Assigned ID for Route Filter Policy + Uuid pulumi.StringPtrInput +} + +func (ConnectionRouteFilterState) ElementType() reflect.Type { + return reflect.TypeOf((*connectionRouteFilterState)(nil)).Elem() +} + +type connectionRouteFilterArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId string `pulumi:"connectionId"` + // Direction of the filtering of the attached Route Filter Policy + Direction string `pulumi:"direction"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId string `pulumi:"routeFilterId"` +} + +// The set of arguments for constructing a ConnectionRouteFilter resource. +type ConnectionRouteFilterArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId pulumi.StringInput + // Direction of the filtering of the attached Route Filter Policy + Direction pulumi.StringInput + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId pulumi.StringInput +} + +func (ConnectionRouteFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*connectionRouteFilterArgs)(nil)).Elem() +} + +type ConnectionRouteFilterInput interface { + pulumi.Input + + ToConnectionRouteFilterOutput() ConnectionRouteFilterOutput + ToConnectionRouteFilterOutputWithContext(ctx context.Context) ConnectionRouteFilterOutput +} + +func (*ConnectionRouteFilter) ElementType() reflect.Type { + return reflect.TypeOf((**ConnectionRouteFilter)(nil)).Elem() +} + +func (i *ConnectionRouteFilter) ToConnectionRouteFilterOutput() ConnectionRouteFilterOutput { + return i.ToConnectionRouteFilterOutputWithContext(context.Background()) +} + +func (i *ConnectionRouteFilter) ToConnectionRouteFilterOutputWithContext(ctx context.Context) ConnectionRouteFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConnectionRouteFilterOutput) +} + +// ConnectionRouteFilterArrayInput is an input type that accepts ConnectionRouteFilterArray and ConnectionRouteFilterArrayOutput values. +// You can construct a concrete instance of `ConnectionRouteFilterArrayInput` via: +// +// ConnectionRouteFilterArray{ ConnectionRouteFilterArgs{...} } +type ConnectionRouteFilterArrayInput interface { + pulumi.Input + + ToConnectionRouteFilterArrayOutput() ConnectionRouteFilterArrayOutput + ToConnectionRouteFilterArrayOutputWithContext(context.Context) ConnectionRouteFilterArrayOutput +} + +type ConnectionRouteFilterArray []ConnectionRouteFilterInput + +func (ConnectionRouteFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ConnectionRouteFilter)(nil)).Elem() +} + +func (i ConnectionRouteFilterArray) ToConnectionRouteFilterArrayOutput() ConnectionRouteFilterArrayOutput { + return i.ToConnectionRouteFilterArrayOutputWithContext(context.Background()) +} + +func (i ConnectionRouteFilterArray) ToConnectionRouteFilterArrayOutputWithContext(ctx context.Context) ConnectionRouteFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConnectionRouteFilterArrayOutput) +} + +// ConnectionRouteFilterMapInput is an input type that accepts ConnectionRouteFilterMap and ConnectionRouteFilterMapOutput values. +// You can construct a concrete instance of `ConnectionRouteFilterMapInput` via: +// +// ConnectionRouteFilterMap{ "key": ConnectionRouteFilterArgs{...} } +type ConnectionRouteFilterMapInput interface { + pulumi.Input + + ToConnectionRouteFilterMapOutput() ConnectionRouteFilterMapOutput + ToConnectionRouteFilterMapOutputWithContext(context.Context) ConnectionRouteFilterMapOutput +} + +type ConnectionRouteFilterMap map[string]ConnectionRouteFilterInput + +func (ConnectionRouteFilterMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ConnectionRouteFilter)(nil)).Elem() +} + +func (i ConnectionRouteFilterMap) ToConnectionRouteFilterMapOutput() ConnectionRouteFilterMapOutput { + return i.ToConnectionRouteFilterMapOutputWithContext(context.Background()) +} + +func (i ConnectionRouteFilterMap) ToConnectionRouteFilterMapOutputWithContext(ctx context.Context) ConnectionRouteFilterMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConnectionRouteFilterMapOutput) +} + +type ConnectionRouteFilterOutput struct{ *pulumi.OutputState } + +func (ConnectionRouteFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ConnectionRouteFilter)(nil)).Elem() +} + +func (o ConnectionRouteFilterOutput) ToConnectionRouteFilterOutput() ConnectionRouteFilterOutput { + return o +} + +func (o ConnectionRouteFilterOutput) ToConnectionRouteFilterOutputWithContext(ctx context.Context) ConnectionRouteFilterOutput { + return o +} + +// Status of the Route Filter Policy attachment lifecycle +func (o ConnectionRouteFilterOutput) AttachmentStatus() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.AttachmentStatus }).(pulumi.StringOutput) +} + +// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to +func (o ConnectionRouteFilterOutput) ConnectionId() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.ConnectionId }).(pulumi.StringOutput) +} + +// Direction of the filtering of the attached Route Filter Policy +func (o ConnectionRouteFilterOutput) Direction() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.Direction }).(pulumi.StringOutput) +} + +// URI to the attached Route Filter Policy on the Connection +func (o ConnectionRouteFilterOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.Href }).(pulumi.StringOutput) +} + +// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection +func (o ConnectionRouteFilterOutput) RouteFilterId() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.RouteFilterId }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] +func (o ConnectionRouteFilterOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Policy +func (o ConnectionRouteFilterOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v *ConnectionRouteFilter) pulumi.StringOutput { return v.Uuid }).(pulumi.StringOutput) +} + +type ConnectionRouteFilterArrayOutput struct{ *pulumi.OutputState } + +func (ConnectionRouteFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ConnectionRouteFilter)(nil)).Elem() +} + +func (o ConnectionRouteFilterArrayOutput) ToConnectionRouteFilterArrayOutput() ConnectionRouteFilterArrayOutput { + return o +} + +func (o ConnectionRouteFilterArrayOutput) ToConnectionRouteFilterArrayOutputWithContext(ctx context.Context) ConnectionRouteFilterArrayOutput { + return o +} + +func (o ConnectionRouteFilterArrayOutput) Index(i pulumi.IntInput) ConnectionRouteFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ConnectionRouteFilter { + return vs[0].([]*ConnectionRouteFilter)[vs[1].(int)] + }).(ConnectionRouteFilterOutput) +} + +type ConnectionRouteFilterMapOutput struct{ *pulumi.OutputState } + +func (ConnectionRouteFilterMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ConnectionRouteFilter)(nil)).Elem() +} + +func (o ConnectionRouteFilterMapOutput) ToConnectionRouteFilterMapOutput() ConnectionRouteFilterMapOutput { + return o +} + +func (o ConnectionRouteFilterMapOutput) ToConnectionRouteFilterMapOutputWithContext(ctx context.Context) ConnectionRouteFilterMapOutput { + return o +} + +func (o ConnectionRouteFilterMapOutput) MapIndex(k pulumi.StringInput) ConnectionRouteFilterOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ConnectionRouteFilter { + return vs[0].(map[string]*ConnectionRouteFilter)[vs[1].(string)] + }).(ConnectionRouteFilterOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ConnectionRouteFilterInput)(nil)).Elem(), &ConnectionRouteFilter{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConnectionRouteFilterArrayInput)(nil)).Elem(), ConnectionRouteFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConnectionRouteFilterMapInput)(nil)).Elem(), ConnectionRouteFilterMap{}) + pulumi.RegisterOutputType(ConnectionRouteFilterOutput{}) + pulumi.RegisterOutputType(ConnectionRouteFilterArrayOutput{}) + pulumi.RegisterOutputType(ConnectionRouteFilterMapOutput{}) +} diff --git a/sdk/go/equinix/fabric/getConnectionRouteFilter.go b/sdk/go/equinix/fabric/getConnectionRouteFilter.go new file mode 100644 index 000000000..1267dcf3b --- /dev/null +++ b/sdk/go/equinix/fabric/getConnectionRouteFilter.go @@ -0,0 +1,177 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// attachedPolicy, err := fabric.LookupConnectionRouteFilter(ctx, &fabric.LookupConnectionRouteFilterArgs{ +// ConnectionId: "", +// RouteFilterId: "", +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("connectionRouteFilterId", attachedPolicy.Id) +// ctx.Export("connectionRouteFilterConnectionId", attachedPolicy.ConnectionId) +// ctx.Export("connectionRouteFilterDirection", attachedPolicy.Direction) +// ctx.Export("connectionRouteFilterType", attachedPolicy.Type) +// ctx.Export("connectionRouteFilterAttachmentStatus", attachedPolicy.AttachmentStatus) +// return nil +// }) +// } +// +// ``` +func LookupConnectionRouteFilter(ctx *pulumi.Context, args *LookupConnectionRouteFilterArgs, opts ...pulumi.InvokeOption) (*LookupConnectionRouteFilterResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupConnectionRouteFilterResult + err := ctx.Invoke("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getConnectionRouteFilter. +type LookupConnectionRouteFilterArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId string `pulumi:"connectionId"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId string `pulumi:"routeFilterId"` +} + +// A collection of values returned by getConnectionRouteFilter. +type LookupConnectionRouteFilterResult struct { + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus string `pulumi:"attachmentStatus"` + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId string `pulumi:"connectionId"` + // Direction of the filtering of the attached Route Filter Policy + Direction string `pulumi:"direction"` + // URI to the attached Route Filter Policy on the Connection + Href string `pulumi:"href"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId string `pulumi:"routeFilterId"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Policy + Uuid string `pulumi:"uuid"` +} + +func LookupConnectionRouteFilterOutput(ctx *pulumi.Context, args LookupConnectionRouteFilterOutputArgs, opts ...pulumi.InvokeOption) LookupConnectionRouteFilterResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupConnectionRouteFilterResultOutput, error) { + args := v.(LookupConnectionRouteFilterArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupConnectionRouteFilterResult + secret, err := ctx.InvokePackageRaw("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", args, &rv, "", opts...) + if err != nil { + return LookupConnectionRouteFilterResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupConnectionRouteFilterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupConnectionRouteFilterResultOutput), nil + } + return output, nil + }).(LookupConnectionRouteFilterResultOutput) +} + +// A collection of arguments for invoking getConnectionRouteFilter. +type LookupConnectionRouteFilterOutputArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId pulumi.StringInput `pulumi:"connectionId"` + // Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + RouteFilterId pulumi.StringInput `pulumi:"routeFilterId"` +} + +func (LookupConnectionRouteFilterOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupConnectionRouteFilterArgs)(nil)).Elem() +} + +// A collection of values returned by getConnectionRouteFilter. +type LookupConnectionRouteFilterResultOutput struct{ *pulumi.OutputState } + +func (LookupConnectionRouteFilterResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupConnectionRouteFilterResult)(nil)).Elem() +} + +func (o LookupConnectionRouteFilterResultOutput) ToLookupConnectionRouteFilterResultOutput() LookupConnectionRouteFilterResultOutput { + return o +} + +func (o LookupConnectionRouteFilterResultOutput) ToLookupConnectionRouteFilterResultOutputWithContext(ctx context.Context) LookupConnectionRouteFilterResultOutput { + return o +} + +// Status of the Route Filter Policy attachment lifecycle +func (o LookupConnectionRouteFilterResultOutput) AttachmentStatus() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.AttachmentStatus }).(pulumi.StringOutput) +} + +// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to +func (o LookupConnectionRouteFilterResultOutput) ConnectionId() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.ConnectionId }).(pulumi.StringOutput) +} + +// Direction of the filtering of the attached Route Filter Policy +func (o LookupConnectionRouteFilterResultOutput) Direction() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.Direction }).(pulumi.StringOutput) +} + +// URI to the attached Route Filter Policy on the Connection +func (o LookupConnectionRouteFilterResultOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.Href }).(pulumi.StringOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupConnectionRouteFilterResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection +func (o LookupConnectionRouteFilterResultOutput) RouteFilterId() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.RouteFilterId }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] +func (o LookupConnectionRouteFilterResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Policy +func (o LookupConnectionRouteFilterResultOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupConnectionRouteFilterResult) string { return v.Uuid }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupConnectionRouteFilterResultOutput{}) +} diff --git a/sdk/go/equinix/fabric/getConnectionRouteFilters.go b/sdk/go/equinix/fabric/getConnectionRouteFilters.go new file mode 100644 index 000000000..fb41a80b5 --- /dev/null +++ b/sdk/go/equinix/fabric/getConnectionRouteFilters.go @@ -0,0 +1,113 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules +func GetConnectionRouteFilters(ctx *pulumi.Context, args *GetConnectionRouteFiltersArgs, opts ...pulumi.InvokeOption) (*GetConnectionRouteFiltersResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetConnectionRouteFiltersResult + err := ctx.Invoke("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getConnectionRouteFilters. +type GetConnectionRouteFiltersArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId string `pulumi:"connectionId"` +} + +// A collection of values returned by getConnectionRouteFilters. +type GetConnectionRouteFiltersResult struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId string `pulumi:"connectionId"` + // The list of Rules attached to the given Route Filter Policy UUID + Datas []GetConnectionRouteFiltersData `pulumi:"datas"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Pagination details for the Data Source Search Request + Paginations []GetConnectionRouteFiltersPagination `pulumi:"paginations"` +} + +func GetConnectionRouteFiltersOutput(ctx *pulumi.Context, args GetConnectionRouteFiltersOutputArgs, opts ...pulumi.InvokeOption) GetConnectionRouteFiltersResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetConnectionRouteFiltersResultOutput, error) { + args := v.(GetConnectionRouteFiltersArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetConnectionRouteFiltersResult + secret, err := ctx.InvokePackageRaw("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", args, &rv, "", opts...) + if err != nil { + return GetConnectionRouteFiltersResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetConnectionRouteFiltersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetConnectionRouteFiltersResultOutput), nil + } + return output, nil + }).(GetConnectionRouteFiltersResultOutput) +} + +// A collection of arguments for invoking getConnectionRouteFilters. +type GetConnectionRouteFiltersOutputArgs struct { + // Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + ConnectionId pulumi.StringInput `pulumi:"connectionId"` +} + +func (GetConnectionRouteFiltersOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersArgs)(nil)).Elem() +} + +// A collection of values returned by getConnectionRouteFilters. +type GetConnectionRouteFiltersResultOutput struct{ *pulumi.OutputState } + +func (GetConnectionRouteFiltersResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersResult)(nil)).Elem() +} + +func (o GetConnectionRouteFiltersResultOutput) ToGetConnectionRouteFiltersResultOutput() GetConnectionRouteFiltersResultOutput { + return o +} + +func (o GetConnectionRouteFiltersResultOutput) ToGetConnectionRouteFiltersResultOutputWithContext(ctx context.Context) GetConnectionRouteFiltersResultOutput { + return o +} + +// Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to +func (o GetConnectionRouteFiltersResultOutput) ConnectionId() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersResult) string { return v.ConnectionId }).(pulumi.StringOutput) +} + +// The list of Rules attached to the given Route Filter Policy UUID +func (o GetConnectionRouteFiltersResultOutput) Datas() GetConnectionRouteFiltersDataArrayOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersResult) []GetConnectionRouteFiltersData { return v.Datas }).(GetConnectionRouteFiltersDataArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetConnectionRouteFiltersResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Pagination details for the Data Source Search Request +func (o GetConnectionRouteFiltersResultOutput) Paginations() GetConnectionRouteFiltersPaginationArrayOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersResult) []GetConnectionRouteFiltersPagination { return v.Paginations }).(GetConnectionRouteFiltersPaginationArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(GetConnectionRouteFiltersResultOutput{}) +} diff --git a/sdk/go/equinix/fabric/getRouteFilter.go b/sdk/go/equinix/fabric/getRouteFilter.go new file mode 100644 index 000000000..6089194e4 --- /dev/null +++ b/sdk/go/equinix/fabric/getRouteFilter.go @@ -0,0 +1,206 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// rfPolicy, err := fabric.LookupRouteFilter(ctx, &fabric.LookupRouteFilterArgs{ +// Uuid: "", +// Uuid: "", +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("routeFilterRuleName", rfRule.Name) +// ctx.Export("routeFilterRuleDescription", rfRule.Description) +// ctx.Export("routeFilterRulePrefix", rfRule.Prefix) +// ctx.Export("routeFilterRulePrefixMatch", rfRule.PrefixMatch) +// return nil +// }) +// } +// +// ``` +func LookupRouteFilterRule(ctx *pulumi.Context, args *LookupRouteFilterRuleArgs, opts ...pulumi.InvokeOption) (*LookupRouteFilterRuleResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupRouteFilterRuleResult + err := ctx.Invoke("equinix:fabric/getRouteFilterRule:getRouteFilterRule", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getRouteFilterRule. +type LookupRouteFilterRuleArgs struct { + // UUID of the Route Filter Policy the rule is attached to + RouteFilterId string `pulumi:"routeFilterId"` + // Equinix Assigned ID for Route Filter Rule to retrieve data for + Uuid string `pulumi:"uuid"` +} + +// A collection of values returned by getRouteFilterRule. +type LookupRouteFilterRuleResult struct { + // Action that will be taken on IP Addresses matching the rule + Action string `pulumi:"action"` + ChangeLogs []GetRouteFilterRuleChangeLog `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes []GetRouteFilterRuleChange `pulumi:"changes"` + // Optional description to add to the Route Filter you will be creating + Description string `pulumi:"description"` + // Route filter rules URI + Href string `pulumi:"href"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Name of the Route Filter + Name string `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix string `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch string `pulumi:"prefixMatch"` + // UUID of the Route Filter Policy the rule is attached to + RouteFilterId string `pulumi:"routeFilterId"` + // State of the Route Filter Rule in its lifecycle + State string `pulumi:"state"` + // Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + Type string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Rule to retrieve data for + Uuid string `pulumi:"uuid"` +} + +func LookupRouteFilterRuleOutput(ctx *pulumi.Context, args LookupRouteFilterRuleOutputArgs, opts ...pulumi.InvokeOption) LookupRouteFilterRuleResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupRouteFilterRuleResultOutput, error) { + args := v.(LookupRouteFilterRuleArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupRouteFilterRuleResult + secret, err := ctx.InvokePackageRaw("equinix:fabric/getRouteFilterRule:getRouteFilterRule", args, &rv, "", opts...) + if err != nil { + return LookupRouteFilterRuleResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupRouteFilterRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteFilterRuleResultOutput), nil + } + return output, nil + }).(LookupRouteFilterRuleResultOutput) +} + +// A collection of arguments for invoking getRouteFilterRule. +type LookupRouteFilterRuleOutputArgs struct { + // UUID of the Route Filter Policy the rule is attached to + RouteFilterId pulumi.StringInput `pulumi:"routeFilterId"` + // Equinix Assigned ID for Route Filter Rule to retrieve data for + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (LookupRouteFilterRuleOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRouteFilterRuleArgs)(nil)).Elem() +} + +// A collection of values returned by getRouteFilterRule. +type LookupRouteFilterRuleResultOutput struct{ *pulumi.OutputState } + +func (LookupRouteFilterRuleResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRouteFilterRuleResult)(nil)).Elem() +} + +func (o LookupRouteFilterRuleResultOutput) ToLookupRouteFilterRuleResultOutput() LookupRouteFilterRuleResultOutput { + return o +} + +func (o LookupRouteFilterRuleResultOutput) ToLookupRouteFilterRuleResultOutputWithContext(ctx context.Context) LookupRouteFilterRuleResultOutput { + return o +} + +// Action that will be taken on IP Addresses matching the rule +func (o LookupRouteFilterRuleResultOutput) Action() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Action }).(pulumi.StringOutput) +} + +func (o LookupRouteFilterRuleResultOutput) ChangeLogs() GetRouteFilterRuleChangeLogArrayOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) []GetRouteFilterRuleChangeLog { return v.ChangeLogs }).(GetRouteFilterRuleChangeLogArrayOutput) +} + +// An object with the details of the previous change applied on the Route Filter +func (o LookupRouteFilterRuleResultOutput) Changes() GetRouteFilterRuleChangeArrayOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) []GetRouteFilterRuleChange { return v.Changes }).(GetRouteFilterRuleChangeArrayOutput) +} + +// Optional description to add to the Route Filter you will be creating +func (o LookupRouteFilterRuleResultOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Description }).(pulumi.StringOutput) +} + +// Route filter rules URI +func (o LookupRouteFilterRuleResultOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Href }).(pulumi.StringOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupRouteFilterRuleResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Name of the Route Filter +func (o LookupRouteFilterRuleResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Name }).(pulumi.StringOutput) +} + +// IP Address Prefix to Filter on +func (o LookupRouteFilterRuleResultOutput) Prefix() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Prefix }).(pulumi.StringOutput) +} + +// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" +func (o LookupRouteFilterRuleResultOutput) PrefixMatch() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.PrefixMatch }).(pulumi.StringOutput) +} + +// UUID of the Route Filter Policy the rule is attached to +func (o LookupRouteFilterRuleResultOutput) RouteFilterId() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.RouteFilterId }).(pulumi.StringOutput) +} + +// State of the Route Filter Rule in its lifecycle +func (o LookupRouteFilterRuleResultOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.State }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] +func (o LookupRouteFilterRuleResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Rule to retrieve data for +func (o LookupRouteFilterRuleResultOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupRouteFilterRuleResult) string { return v.Uuid }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupRouteFilterRuleResultOutput{}) +} diff --git a/sdk/go/equinix/fabric/getRouteFilterRules.go b/sdk/go/equinix/fabric/getRouteFilterRules.go new file mode 100644 index 000000000..db20d2c93 --- /dev/null +++ b/sdk/go/equinix/fabric/getRouteFilterRules.go @@ -0,0 +1,167 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// rfRules, err := fabric.GetRouteFilterRules(ctx, &fabric.GetRouteFilterRulesArgs{ +// RouteFilterId: "", +// }, +// }, +// }, +// Pagination: fabric.GetRouteFiltersPagination{ +// Offset: 0, +// Limit: 5, +// Total: 25, +// }, +// Sorts: []fabric.GetRouteFiltersSort{ +// { +// Direction: pulumi.StringRef("ASC"), +// Property: pulumi.StringRef("/name"), +// }, +// }, +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("firstRfUuid", rfPolicies.Datas[0].Uuid) +// ctx.Export("type", rfPolicies.Datas[0].Type) +// ctx.Export("state", rfPolicies.Datas[0].State) +// ctx.Export("notMatchedRuleAction", rfPolicies.Datas[0].NotMatchedRuleAction) +// ctx.Export("connectionsCount", rfPolicies.Datas[0].ConnectionsCount) +// ctx.Export("rulesCount", rfPolicies.Datas[0].RulesCount) +// return nil +// }) +// } +// +// ``` +func GetRouteFilters(ctx *pulumi.Context, args *GetRouteFiltersArgs, opts ...pulumi.InvokeOption) (*GetRouteFiltersResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRouteFiltersResult + err := ctx.Invoke("equinix:fabric/getRouteFilters:getRouteFilters", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getRouteFilters. +type GetRouteFiltersArgs struct { + // Filters for the Data Source Search Request. Maximum of 8 total filters. + Filters []GetRouteFiltersFilter `pulumi:"filters"` + // Pagination details for the Data Source Search Request + Pagination *GetRouteFiltersPagination `pulumi:"pagination"` + // Filters for the Data Source Search Request + Sorts []GetRouteFiltersSort `pulumi:"sorts"` +} + +// A collection of values returned by getRouteFilters. +type GetRouteFiltersResult struct { + // List of Route Filters + Datas []GetRouteFiltersData `pulumi:"datas"` + // Filters for the Data Source Search Request. Maximum of 8 total filters. + Filters []GetRouteFiltersFilter `pulumi:"filters"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Pagination details for the Data Source Search Request + Pagination *GetRouteFiltersPagination `pulumi:"pagination"` + // Filters for the Data Source Search Request + Sorts []GetRouteFiltersSort `pulumi:"sorts"` +} + +func GetRouteFiltersOutput(ctx *pulumi.Context, args GetRouteFiltersOutputArgs, opts ...pulumi.InvokeOption) GetRouteFiltersResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetRouteFiltersResultOutput, error) { + args := v.(GetRouteFiltersArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRouteFiltersResult + secret, err := ctx.InvokePackageRaw("equinix:fabric/getRouteFilters:getRouteFilters", args, &rv, "", opts...) + if err != nil { + return GetRouteFiltersResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetRouteFiltersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetRouteFiltersResultOutput), nil + } + return output, nil + }).(GetRouteFiltersResultOutput) +} + +// A collection of arguments for invoking getRouteFilters. +type GetRouteFiltersOutputArgs struct { + // Filters for the Data Source Search Request. Maximum of 8 total filters. + Filters GetRouteFiltersFilterArrayInput `pulumi:"filters"` + // Pagination details for the Data Source Search Request + Pagination GetRouteFiltersPaginationPtrInput `pulumi:"pagination"` + // Filters for the Data Source Search Request + Sorts GetRouteFiltersSortArrayInput `pulumi:"sorts"` +} + +func (GetRouteFiltersOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersArgs)(nil)).Elem() +} + +// A collection of values returned by getRouteFilters. +type GetRouteFiltersResultOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersResult)(nil)).Elem() +} + +func (o GetRouteFiltersResultOutput) ToGetRouteFiltersResultOutput() GetRouteFiltersResultOutput { + return o +} + +func (o GetRouteFiltersResultOutput) ToGetRouteFiltersResultOutputWithContext(ctx context.Context) GetRouteFiltersResultOutput { + return o +} + +// List of Route Filters +func (o GetRouteFiltersResultOutput) Datas() GetRouteFiltersDataArrayOutput { + return o.ApplyT(func(v GetRouteFiltersResult) []GetRouteFiltersData { return v.Datas }).(GetRouteFiltersDataArrayOutput) +} + +// Filters for the Data Source Search Request. Maximum of 8 total filters. +func (o GetRouteFiltersResultOutput) Filters() GetRouteFiltersFilterArrayOutput { + return o.ApplyT(func(v GetRouteFiltersResult) []GetRouteFiltersFilter { return v.Filters }).(GetRouteFiltersFilterArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetRouteFiltersResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Pagination details for the Data Source Search Request +func (o GetRouteFiltersResultOutput) Pagination() GetRouteFiltersPaginationPtrOutput { + return o.ApplyT(func(v GetRouteFiltersResult) *GetRouteFiltersPagination { return v.Pagination }).(GetRouteFiltersPaginationPtrOutput) +} + +// Filters for the Data Source Search Request +func (o GetRouteFiltersResultOutput) Sorts() GetRouteFiltersSortArrayOutput { + return o.ApplyT(func(v GetRouteFiltersResult) []GetRouteFiltersSort { return v.Sorts }).(GetRouteFiltersSortArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(GetRouteFiltersResultOutput{}) +} diff --git a/sdk/go/equinix/fabric/init.go b/sdk/go/equinix/fabric/init.go index e8365e83d..bf579c317 100644 --- a/sdk/go/equinix/fabric/init.go +++ b/sdk/go/equinix/fabric/init.go @@ -25,8 +25,14 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &CloudRouter{} case "equinix:fabric/connection:Connection": r = &Connection{} + case "equinix:fabric/connectionRouteFilter:ConnectionRouteFilter": + r = &ConnectionRouteFilter{} case "equinix:fabric/network:Network": r = &Network{} + case "equinix:fabric/routeFilter:RouteFilter": + r = &RouteFilter{} + case "equinix:fabric/routeFilterRule:RouteFilterRule": + r = &RouteFilterRule{} case "equinix:fabric/routingProtocol:RoutingProtocol": r = &RoutingProtocol{} case "equinix:fabric/serviceProfile:ServiceProfile": @@ -54,11 +60,26 @@ func init() { "fabric/connection", &module{version}, ) + pulumi.RegisterResourceModule( + "equinix", + "fabric/connectionRouteFilter", + &module{version}, + ) pulumi.RegisterResourceModule( "equinix", "fabric/network", &module{version}, ) + pulumi.RegisterResourceModule( + "equinix", + "fabric/routeFilter", + &module{version}, + ) + pulumi.RegisterResourceModule( + "equinix", + "fabric/routeFilterRule", + &module{version}, + ) pulumi.RegisterResourceModule( "equinix", "fabric/routingProtocol", diff --git a/sdk/go/equinix/fabric/pulumiTypes.go b/sdk/go/equinix/fabric/pulumiTypes.go index b57fa404a..7f0abf979 100644 --- a/sdk/go/equinix/fabric/pulumiTypes.go +++ b/sdk/go/equinix/fabric/pulumiTypes.go @@ -10246,6 +10246,784 @@ func (o NetworkProjectPtrOutput) ProjectId() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type RouteFilterChange struct { + // The URI of the previous Route Filter Change + Href *string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type *string `pulumi:"type"` + // Unique identifier for the previous change + Uuid *string `pulumi:"uuid"` +} + +// RouteFilterChangeInput is an input type that accepts RouteFilterChangeArgs and RouteFilterChangeOutput values. +// You can construct a concrete instance of `RouteFilterChangeInput` via: +// +// RouteFilterChangeArgs{...} +type RouteFilterChangeInput interface { + pulumi.Input + + ToRouteFilterChangeOutput() RouteFilterChangeOutput + ToRouteFilterChangeOutputWithContext(context.Context) RouteFilterChangeOutput +} + +type RouteFilterChangeArgs struct { + // The URI of the previous Route Filter Change + Href pulumi.StringPtrInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type pulumi.StringPtrInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringPtrInput `pulumi:"uuid"` +} + +func (RouteFilterChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterChange)(nil)).Elem() +} + +func (i RouteFilterChangeArgs) ToRouteFilterChangeOutput() RouteFilterChangeOutput { + return i.ToRouteFilterChangeOutputWithContext(context.Background()) +} + +func (i RouteFilterChangeArgs) ToRouteFilterChangeOutputWithContext(ctx context.Context) RouteFilterChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterChangeOutput) +} + +// RouteFilterChangeArrayInput is an input type that accepts RouteFilterChangeArray and RouteFilterChangeArrayOutput values. +// You can construct a concrete instance of `RouteFilterChangeArrayInput` via: +// +// RouteFilterChangeArray{ RouteFilterChangeArgs{...} } +type RouteFilterChangeArrayInput interface { + pulumi.Input + + ToRouteFilterChangeArrayOutput() RouteFilterChangeArrayOutput + ToRouteFilterChangeArrayOutputWithContext(context.Context) RouteFilterChangeArrayOutput +} + +type RouteFilterChangeArray []RouteFilterChangeInput + +func (RouteFilterChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterChange)(nil)).Elem() +} + +func (i RouteFilterChangeArray) ToRouteFilterChangeArrayOutput() RouteFilterChangeArrayOutput { + return i.ToRouteFilterChangeArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterChangeArray) ToRouteFilterChangeArrayOutputWithContext(ctx context.Context) RouteFilterChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterChangeArrayOutput) +} + +type RouteFilterChangeOutput struct{ *pulumi.OutputState } + +func (RouteFilterChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterChange)(nil)).Elem() +} + +func (o RouteFilterChangeOutput) ToRouteFilterChangeOutput() RouteFilterChangeOutput { + return o +} + +func (o RouteFilterChangeOutput) ToRouteFilterChangeOutputWithContext(ctx context.Context) RouteFilterChangeOutput { + return o +} + +// The URI of the previous Route Filter Change +func (o RouteFilterChangeOutput) Href() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChange) *string { return v.Href }).(pulumi.StringPtrOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] +func (o RouteFilterChangeOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChange) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +// Unique identifier for the previous change +func (o RouteFilterChangeOutput) Uuid() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChange) *string { return v.Uuid }).(pulumi.StringPtrOutput) +} + +type RouteFilterChangeArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterChange)(nil)).Elem() +} + +func (o RouteFilterChangeArrayOutput) ToRouteFilterChangeArrayOutput() RouteFilterChangeArrayOutput { + return o +} + +func (o RouteFilterChangeArrayOutput) ToRouteFilterChangeArrayOutputWithContext(ctx context.Context) RouteFilterChangeArrayOutput { + return o +} + +func (o RouteFilterChangeArrayOutput) Index(i pulumi.IntInput) RouteFilterChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RouteFilterChange { + return vs[0].([]RouteFilterChange)[vs[1].(int)] + }).(RouteFilterChangeOutput) +} + +type RouteFilterChangeLog struct { + // Created by User Key + CreatedBy *string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail *string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName *string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime *string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy *string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail *string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName *string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime *string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy *string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail *string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName *string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime *string `pulumi:"updatedDateTime"` +} + +// RouteFilterChangeLogInput is an input type that accepts RouteFilterChangeLogArgs and RouteFilterChangeLogOutput values. +// You can construct a concrete instance of `RouteFilterChangeLogInput` via: +// +// RouteFilterChangeLogArgs{...} +type RouteFilterChangeLogInput interface { + pulumi.Input + + ToRouteFilterChangeLogOutput() RouteFilterChangeLogOutput + ToRouteFilterChangeLogOutputWithContext(context.Context) RouteFilterChangeLogOutput +} + +type RouteFilterChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringPtrInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringPtrInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringPtrInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringPtrInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringPtrInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringPtrInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringPtrInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringPtrInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringPtrInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringPtrInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringPtrInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringPtrInput `pulumi:"updatedDateTime"` +} + +func (RouteFilterChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterChangeLog)(nil)).Elem() +} + +func (i RouteFilterChangeLogArgs) ToRouteFilterChangeLogOutput() RouteFilterChangeLogOutput { + return i.ToRouteFilterChangeLogOutputWithContext(context.Background()) +} + +func (i RouteFilterChangeLogArgs) ToRouteFilterChangeLogOutputWithContext(ctx context.Context) RouteFilterChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterChangeLogOutput) +} + +// RouteFilterChangeLogArrayInput is an input type that accepts RouteFilterChangeLogArray and RouteFilterChangeLogArrayOutput values. +// You can construct a concrete instance of `RouteFilterChangeLogArrayInput` via: +// +// RouteFilterChangeLogArray{ RouteFilterChangeLogArgs{...} } +type RouteFilterChangeLogArrayInput interface { + pulumi.Input + + ToRouteFilterChangeLogArrayOutput() RouteFilterChangeLogArrayOutput + ToRouteFilterChangeLogArrayOutputWithContext(context.Context) RouteFilterChangeLogArrayOutput +} + +type RouteFilterChangeLogArray []RouteFilterChangeLogInput + +func (RouteFilterChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterChangeLog)(nil)).Elem() +} + +func (i RouteFilterChangeLogArray) ToRouteFilterChangeLogArrayOutput() RouteFilterChangeLogArrayOutput { + return i.ToRouteFilterChangeLogArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterChangeLogArray) ToRouteFilterChangeLogArrayOutputWithContext(ctx context.Context) RouteFilterChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterChangeLogArrayOutput) +} + +type RouteFilterChangeLogOutput struct{ *pulumi.OutputState } + +func (RouteFilterChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterChangeLog)(nil)).Elem() +} + +func (o RouteFilterChangeLogOutput) ToRouteFilterChangeLogOutput() RouteFilterChangeLogOutput { + return o +} + +func (o RouteFilterChangeLogOutput) ToRouteFilterChangeLogOutputWithContext(ctx context.Context) RouteFilterChangeLogOutput { + return o +} + +// Created by User Key +func (o RouteFilterChangeLogOutput) CreatedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.CreatedBy }).(pulumi.StringPtrOutput) +} + +// Created by User Email Address +func (o RouteFilterChangeLogOutput) CreatedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.CreatedByEmail }).(pulumi.StringPtrOutput) +} + +// Created by User Full Name +func (o RouteFilterChangeLogOutput) CreatedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.CreatedByFullName }).(pulumi.StringPtrOutput) +} + +// Created by Date and Time +func (o RouteFilterChangeLogOutput) CreatedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.CreatedDateTime }).(pulumi.StringPtrOutput) +} + +// Deleted by User Key +func (o RouteFilterChangeLogOutput) DeletedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.DeletedBy }).(pulumi.StringPtrOutput) +} + +// Deleted by User Email Address +func (o RouteFilterChangeLogOutput) DeletedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.DeletedByEmail }).(pulumi.StringPtrOutput) +} + +// Deleted by User Full Name +func (o RouteFilterChangeLogOutput) DeletedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.DeletedByFullName }).(pulumi.StringPtrOutput) +} + +// Deleted by Date and Time +func (o RouteFilterChangeLogOutput) DeletedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.DeletedDateTime }).(pulumi.StringPtrOutput) +} + +// Updated by User Key +func (o RouteFilterChangeLogOutput) UpdatedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.UpdatedBy }).(pulumi.StringPtrOutput) +} + +// Updated by User Email Address +func (o RouteFilterChangeLogOutput) UpdatedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.UpdatedByEmail }).(pulumi.StringPtrOutput) +} + +// Updated by User Full Name +func (o RouteFilterChangeLogOutput) UpdatedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.UpdatedByFullName }).(pulumi.StringPtrOutput) +} + +// Updated by Date and Time +func (o RouteFilterChangeLogOutput) UpdatedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterChangeLog) *string { return v.UpdatedDateTime }).(pulumi.StringPtrOutput) +} + +type RouteFilterChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterChangeLog)(nil)).Elem() +} + +func (o RouteFilterChangeLogArrayOutput) ToRouteFilterChangeLogArrayOutput() RouteFilterChangeLogArrayOutput { + return o +} + +func (o RouteFilterChangeLogArrayOutput) ToRouteFilterChangeLogArrayOutputWithContext(ctx context.Context) RouteFilterChangeLogArrayOutput { + return o +} + +func (o RouteFilterChangeLogArrayOutput) Index(i pulumi.IntInput) RouteFilterChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RouteFilterChangeLog { + return vs[0].([]RouteFilterChangeLog)[vs[1].(int)] + }).(RouteFilterChangeLogOutput) +} + +type RouteFilterProject struct { + // URI of the Fabric Project + Href *string `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId string `pulumi:"projectId"` +} + +// RouteFilterProjectInput is an input type that accepts RouteFilterProjectArgs and RouteFilterProjectOutput values. +// You can construct a concrete instance of `RouteFilterProjectInput` via: +// +// RouteFilterProjectArgs{...} +type RouteFilterProjectInput interface { + pulumi.Input + + ToRouteFilterProjectOutput() RouteFilterProjectOutput + ToRouteFilterProjectOutputWithContext(context.Context) RouteFilterProjectOutput +} + +type RouteFilterProjectArgs struct { + // URI of the Fabric Project + Href pulumi.StringPtrInput `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId pulumi.StringInput `pulumi:"projectId"` +} + +func (RouteFilterProjectArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterProject)(nil)).Elem() +} + +func (i RouteFilterProjectArgs) ToRouteFilterProjectOutput() RouteFilterProjectOutput { + return i.ToRouteFilterProjectOutputWithContext(context.Background()) +} + +func (i RouteFilterProjectArgs) ToRouteFilterProjectOutputWithContext(ctx context.Context) RouteFilterProjectOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterProjectOutput) +} + +func (i RouteFilterProjectArgs) ToRouteFilterProjectPtrOutput() RouteFilterProjectPtrOutput { + return i.ToRouteFilterProjectPtrOutputWithContext(context.Background()) +} + +func (i RouteFilterProjectArgs) ToRouteFilterProjectPtrOutputWithContext(ctx context.Context) RouteFilterProjectPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterProjectOutput).ToRouteFilterProjectPtrOutputWithContext(ctx) +} + +// RouteFilterProjectPtrInput is an input type that accepts RouteFilterProjectArgs, RouteFilterProjectPtr and RouteFilterProjectPtrOutput values. +// You can construct a concrete instance of `RouteFilterProjectPtrInput` via: +// +// RouteFilterProjectArgs{...} +// +// or: +// +// nil +type RouteFilterProjectPtrInput interface { + pulumi.Input + + ToRouteFilterProjectPtrOutput() RouteFilterProjectPtrOutput + ToRouteFilterProjectPtrOutputWithContext(context.Context) RouteFilterProjectPtrOutput +} + +type routeFilterProjectPtrType RouteFilterProjectArgs + +func RouteFilterProjectPtr(v *RouteFilterProjectArgs) RouteFilterProjectPtrInput { + return (*routeFilterProjectPtrType)(v) +} + +func (*routeFilterProjectPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilterProject)(nil)).Elem() +} + +func (i *routeFilterProjectPtrType) ToRouteFilterProjectPtrOutput() RouteFilterProjectPtrOutput { + return i.ToRouteFilterProjectPtrOutputWithContext(context.Background()) +} + +func (i *routeFilterProjectPtrType) ToRouteFilterProjectPtrOutputWithContext(ctx context.Context) RouteFilterProjectPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterProjectPtrOutput) +} + +type RouteFilterProjectOutput struct{ *pulumi.OutputState } + +func (RouteFilterProjectOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterProject)(nil)).Elem() +} + +func (o RouteFilterProjectOutput) ToRouteFilterProjectOutput() RouteFilterProjectOutput { + return o +} + +func (o RouteFilterProjectOutput) ToRouteFilterProjectOutputWithContext(ctx context.Context) RouteFilterProjectOutput { + return o +} + +func (o RouteFilterProjectOutput) ToRouteFilterProjectPtrOutput() RouteFilterProjectPtrOutput { + return o.ToRouteFilterProjectPtrOutputWithContext(context.Background()) +} + +func (o RouteFilterProjectOutput) ToRouteFilterProjectPtrOutputWithContext(ctx context.Context) RouteFilterProjectPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v RouteFilterProject) *RouteFilterProject { + return &v + }).(RouteFilterProjectPtrOutput) +} + +// URI of the Fabric Project +func (o RouteFilterProjectOutput) Href() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterProject) *string { return v.Href }).(pulumi.StringPtrOutput) +} + +// Project id associated with Fabric Project +func (o RouteFilterProjectOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v RouteFilterProject) string { return v.ProjectId }).(pulumi.StringOutput) +} + +type RouteFilterProjectPtrOutput struct{ *pulumi.OutputState } + +func (RouteFilterProjectPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilterProject)(nil)).Elem() +} + +func (o RouteFilterProjectPtrOutput) ToRouteFilterProjectPtrOutput() RouteFilterProjectPtrOutput { + return o +} + +func (o RouteFilterProjectPtrOutput) ToRouteFilterProjectPtrOutputWithContext(ctx context.Context) RouteFilterProjectPtrOutput { + return o +} + +func (o RouteFilterProjectPtrOutput) Elem() RouteFilterProjectOutput { + return o.ApplyT(func(v *RouteFilterProject) RouteFilterProject { + if v != nil { + return *v + } + var ret RouteFilterProject + return ret + }).(RouteFilterProjectOutput) +} + +// URI of the Fabric Project +func (o RouteFilterProjectPtrOutput) Href() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RouteFilterProject) *string { + if v == nil { + return nil + } + return v.Href + }).(pulumi.StringPtrOutput) +} + +// Project id associated with Fabric Project +func (o RouteFilterProjectPtrOutput) ProjectId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RouteFilterProject) *string { + if v == nil { + return nil + } + return &v.ProjectId + }).(pulumi.StringPtrOutput) +} + +type RouteFilterRuleChange struct { + // The URI of the previous Route Filter Rule Change + Href *string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type *string `pulumi:"type"` + // Unique identifier for the previous change + Uuid *string `pulumi:"uuid"` +} + +// RouteFilterRuleChangeInput is an input type that accepts RouteFilterRuleChangeArgs and RouteFilterRuleChangeOutput values. +// You can construct a concrete instance of `RouteFilterRuleChangeInput` via: +// +// RouteFilterRuleChangeArgs{...} +type RouteFilterRuleChangeInput interface { + pulumi.Input + + ToRouteFilterRuleChangeOutput() RouteFilterRuleChangeOutput + ToRouteFilterRuleChangeOutputWithContext(context.Context) RouteFilterRuleChangeOutput +} + +type RouteFilterRuleChangeArgs struct { + // The URI of the previous Route Filter Rule Change + Href pulumi.StringPtrInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type pulumi.StringPtrInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringPtrInput `pulumi:"uuid"` +} + +func (RouteFilterRuleChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterRuleChange)(nil)).Elem() +} + +func (i RouteFilterRuleChangeArgs) ToRouteFilterRuleChangeOutput() RouteFilterRuleChangeOutput { + return i.ToRouteFilterRuleChangeOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleChangeArgs) ToRouteFilterRuleChangeOutputWithContext(ctx context.Context) RouteFilterRuleChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleChangeOutput) +} + +// RouteFilterRuleChangeArrayInput is an input type that accepts RouteFilterRuleChangeArray and RouteFilterRuleChangeArrayOutput values. +// You can construct a concrete instance of `RouteFilterRuleChangeArrayInput` via: +// +// RouteFilterRuleChangeArray{ RouteFilterRuleChangeArgs{...} } +type RouteFilterRuleChangeArrayInput interface { + pulumi.Input + + ToRouteFilterRuleChangeArrayOutput() RouteFilterRuleChangeArrayOutput + ToRouteFilterRuleChangeArrayOutputWithContext(context.Context) RouteFilterRuleChangeArrayOutput +} + +type RouteFilterRuleChangeArray []RouteFilterRuleChangeInput + +func (RouteFilterRuleChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterRuleChange)(nil)).Elem() +} + +func (i RouteFilterRuleChangeArray) ToRouteFilterRuleChangeArrayOutput() RouteFilterRuleChangeArrayOutput { + return i.ToRouteFilterRuleChangeArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleChangeArray) ToRouteFilterRuleChangeArrayOutputWithContext(ctx context.Context) RouteFilterRuleChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleChangeArrayOutput) +} + +type RouteFilterRuleChangeOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterRuleChange)(nil)).Elem() +} + +func (o RouteFilterRuleChangeOutput) ToRouteFilterRuleChangeOutput() RouteFilterRuleChangeOutput { + return o +} + +func (o RouteFilterRuleChangeOutput) ToRouteFilterRuleChangeOutputWithContext(ctx context.Context) RouteFilterRuleChangeOutput { + return o +} + +// The URI of the previous Route Filter Rule Change +func (o RouteFilterRuleChangeOutput) Href() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChange) *string { return v.Href }).(pulumi.StringPtrOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] +func (o RouteFilterRuleChangeOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChange) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +// Unique identifier for the previous change +func (o RouteFilterRuleChangeOutput) Uuid() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChange) *string { return v.Uuid }).(pulumi.StringPtrOutput) +} + +type RouteFilterRuleChangeArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterRuleChange)(nil)).Elem() +} + +func (o RouteFilterRuleChangeArrayOutput) ToRouteFilterRuleChangeArrayOutput() RouteFilterRuleChangeArrayOutput { + return o +} + +func (o RouteFilterRuleChangeArrayOutput) ToRouteFilterRuleChangeArrayOutputWithContext(ctx context.Context) RouteFilterRuleChangeArrayOutput { + return o +} + +func (o RouteFilterRuleChangeArrayOutput) Index(i pulumi.IntInput) RouteFilterRuleChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RouteFilterRuleChange { + return vs[0].([]RouteFilterRuleChange)[vs[1].(int)] + }).(RouteFilterRuleChangeOutput) +} + +type RouteFilterRuleChangeLog struct { + // Created by User Key + CreatedBy *string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail *string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName *string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime *string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy *string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail *string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName *string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime *string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy *string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail *string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName *string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime *string `pulumi:"updatedDateTime"` +} + +// RouteFilterRuleChangeLogInput is an input type that accepts RouteFilterRuleChangeLogArgs and RouteFilterRuleChangeLogOutput values. +// You can construct a concrete instance of `RouteFilterRuleChangeLogInput` via: +// +// RouteFilterRuleChangeLogArgs{...} +type RouteFilterRuleChangeLogInput interface { + pulumi.Input + + ToRouteFilterRuleChangeLogOutput() RouteFilterRuleChangeLogOutput + ToRouteFilterRuleChangeLogOutputWithContext(context.Context) RouteFilterRuleChangeLogOutput +} + +type RouteFilterRuleChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringPtrInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringPtrInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringPtrInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringPtrInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringPtrInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringPtrInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringPtrInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringPtrInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringPtrInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringPtrInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringPtrInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringPtrInput `pulumi:"updatedDateTime"` +} + +func (RouteFilterRuleChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterRuleChangeLog)(nil)).Elem() +} + +func (i RouteFilterRuleChangeLogArgs) ToRouteFilterRuleChangeLogOutput() RouteFilterRuleChangeLogOutput { + return i.ToRouteFilterRuleChangeLogOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleChangeLogArgs) ToRouteFilterRuleChangeLogOutputWithContext(ctx context.Context) RouteFilterRuleChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleChangeLogOutput) +} + +// RouteFilterRuleChangeLogArrayInput is an input type that accepts RouteFilterRuleChangeLogArray and RouteFilterRuleChangeLogArrayOutput values. +// You can construct a concrete instance of `RouteFilterRuleChangeLogArrayInput` via: +// +// RouteFilterRuleChangeLogArray{ RouteFilterRuleChangeLogArgs{...} } +type RouteFilterRuleChangeLogArrayInput interface { + pulumi.Input + + ToRouteFilterRuleChangeLogArrayOutput() RouteFilterRuleChangeLogArrayOutput + ToRouteFilterRuleChangeLogArrayOutputWithContext(context.Context) RouteFilterRuleChangeLogArrayOutput +} + +type RouteFilterRuleChangeLogArray []RouteFilterRuleChangeLogInput + +func (RouteFilterRuleChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterRuleChangeLog)(nil)).Elem() +} + +func (i RouteFilterRuleChangeLogArray) ToRouteFilterRuleChangeLogArrayOutput() RouteFilterRuleChangeLogArrayOutput { + return i.ToRouteFilterRuleChangeLogArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleChangeLogArray) ToRouteFilterRuleChangeLogArrayOutputWithContext(ctx context.Context) RouteFilterRuleChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleChangeLogArrayOutput) +} + +type RouteFilterRuleChangeLogOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RouteFilterRuleChangeLog)(nil)).Elem() +} + +func (o RouteFilterRuleChangeLogOutput) ToRouteFilterRuleChangeLogOutput() RouteFilterRuleChangeLogOutput { + return o +} + +func (o RouteFilterRuleChangeLogOutput) ToRouteFilterRuleChangeLogOutputWithContext(ctx context.Context) RouteFilterRuleChangeLogOutput { + return o +} + +// Created by User Key +func (o RouteFilterRuleChangeLogOutput) CreatedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.CreatedBy }).(pulumi.StringPtrOutput) +} + +// Created by User Email Address +func (o RouteFilterRuleChangeLogOutput) CreatedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.CreatedByEmail }).(pulumi.StringPtrOutput) +} + +// Created by User Full Name +func (o RouteFilterRuleChangeLogOutput) CreatedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.CreatedByFullName }).(pulumi.StringPtrOutput) +} + +// Created by Date and Time +func (o RouteFilterRuleChangeLogOutput) CreatedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.CreatedDateTime }).(pulumi.StringPtrOutput) +} + +// Deleted by User Key +func (o RouteFilterRuleChangeLogOutput) DeletedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.DeletedBy }).(pulumi.StringPtrOutput) +} + +// Deleted by User Email Address +func (o RouteFilterRuleChangeLogOutput) DeletedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.DeletedByEmail }).(pulumi.StringPtrOutput) +} + +// Deleted by User Full Name +func (o RouteFilterRuleChangeLogOutput) DeletedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.DeletedByFullName }).(pulumi.StringPtrOutput) +} + +// Deleted by Date and Time +func (o RouteFilterRuleChangeLogOutput) DeletedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.DeletedDateTime }).(pulumi.StringPtrOutput) +} + +// Updated by User Key +func (o RouteFilterRuleChangeLogOutput) UpdatedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.UpdatedBy }).(pulumi.StringPtrOutput) +} + +// Updated by User Email Address +func (o RouteFilterRuleChangeLogOutput) UpdatedByEmail() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.UpdatedByEmail }).(pulumi.StringPtrOutput) +} + +// Updated by User Full Name +func (o RouteFilterRuleChangeLogOutput) UpdatedByFullName() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.UpdatedByFullName }).(pulumi.StringPtrOutput) +} + +// Updated by Date and Time +func (o RouteFilterRuleChangeLogOutput) UpdatedDateTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v RouteFilterRuleChangeLog) *string { return v.UpdatedDateTime }).(pulumi.StringPtrOutput) +} + +type RouteFilterRuleChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RouteFilterRuleChangeLog)(nil)).Elem() +} + +func (o RouteFilterRuleChangeLogArrayOutput) ToRouteFilterRuleChangeLogArrayOutput() RouteFilterRuleChangeLogArrayOutput { + return o +} + +func (o RouteFilterRuleChangeLogArrayOutput) ToRouteFilterRuleChangeLogArrayOutputWithContext(ctx context.Context) RouteFilterRuleChangeLogArrayOutput { + return o +} + +func (o RouteFilterRuleChangeLogArrayOutput) Index(i pulumi.IntInput) RouteFilterRuleChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RouteFilterRuleChangeLog { + return vs[0].([]RouteFilterRuleChangeLog)[vs[1].(int)] + }).(RouteFilterRuleChangeLogOutput) +} + type RoutingProtocolBfd struct { // Bidirectional Forwarding Detection enablement Enabled bool `pulumi:"enabled"` @@ -21093,6 +21871,272 @@ func (o GetConnectionRedundancyOutput) Priority() pulumi.StringOutput { return o.ApplyT(func(v GetConnectionRedundancy) string { return v.Priority }).(pulumi.StringOutput) } +type GetConnectionRouteFiltersData struct { + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus string `pulumi:"attachmentStatus"` + // Direction of the filtering of the attached Route Filter Policy + Direction string `pulumi:"direction"` + // URI to the attached Route Filter Policy on the Connection + Href string `pulumi:"href"` + // Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + Type string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Policy + Uuid string `pulumi:"uuid"` +} + +// GetConnectionRouteFiltersDataInput is an input type that accepts GetConnectionRouteFiltersDataArgs and GetConnectionRouteFiltersDataOutput values. +// You can construct a concrete instance of `GetConnectionRouteFiltersDataInput` via: +// +// GetConnectionRouteFiltersDataArgs{...} +type GetConnectionRouteFiltersDataInput interface { + pulumi.Input + + ToGetConnectionRouteFiltersDataOutput() GetConnectionRouteFiltersDataOutput + ToGetConnectionRouteFiltersDataOutputWithContext(context.Context) GetConnectionRouteFiltersDataOutput +} + +type GetConnectionRouteFiltersDataArgs struct { + // Status of the Route Filter Policy attachment lifecycle + AttachmentStatus pulumi.StringInput `pulumi:"attachmentStatus"` + // Direction of the filtering of the attached Route Filter Policy + Direction pulumi.StringInput `pulumi:"direction"` + // URI to the attached Route Filter Policy on the Connection + Href pulumi.StringInput `pulumi:"href"` + // Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + Type pulumi.StringInput `pulumi:"type"` + // Equinix Assigned ID for Route Filter Policy + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetConnectionRouteFiltersDataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersData)(nil)).Elem() +} + +func (i GetConnectionRouteFiltersDataArgs) ToGetConnectionRouteFiltersDataOutput() GetConnectionRouteFiltersDataOutput { + return i.ToGetConnectionRouteFiltersDataOutputWithContext(context.Background()) +} + +func (i GetConnectionRouteFiltersDataArgs) ToGetConnectionRouteFiltersDataOutputWithContext(ctx context.Context) GetConnectionRouteFiltersDataOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetConnectionRouteFiltersDataOutput) +} + +// GetConnectionRouteFiltersDataArrayInput is an input type that accepts GetConnectionRouteFiltersDataArray and GetConnectionRouteFiltersDataArrayOutput values. +// You can construct a concrete instance of `GetConnectionRouteFiltersDataArrayInput` via: +// +// GetConnectionRouteFiltersDataArray{ GetConnectionRouteFiltersDataArgs{...} } +type GetConnectionRouteFiltersDataArrayInput interface { + pulumi.Input + + ToGetConnectionRouteFiltersDataArrayOutput() GetConnectionRouteFiltersDataArrayOutput + ToGetConnectionRouteFiltersDataArrayOutputWithContext(context.Context) GetConnectionRouteFiltersDataArrayOutput +} + +type GetConnectionRouteFiltersDataArray []GetConnectionRouteFiltersDataInput + +func (GetConnectionRouteFiltersDataArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetConnectionRouteFiltersData)(nil)).Elem() +} + +func (i GetConnectionRouteFiltersDataArray) ToGetConnectionRouteFiltersDataArrayOutput() GetConnectionRouteFiltersDataArrayOutput { + return i.ToGetConnectionRouteFiltersDataArrayOutputWithContext(context.Background()) +} + +func (i GetConnectionRouteFiltersDataArray) ToGetConnectionRouteFiltersDataArrayOutputWithContext(ctx context.Context) GetConnectionRouteFiltersDataArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetConnectionRouteFiltersDataArrayOutput) +} + +type GetConnectionRouteFiltersDataOutput struct{ *pulumi.OutputState } + +func (GetConnectionRouteFiltersDataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersData)(nil)).Elem() +} + +func (o GetConnectionRouteFiltersDataOutput) ToGetConnectionRouteFiltersDataOutput() GetConnectionRouteFiltersDataOutput { + return o +} + +func (o GetConnectionRouteFiltersDataOutput) ToGetConnectionRouteFiltersDataOutputWithContext(ctx context.Context) GetConnectionRouteFiltersDataOutput { + return o +} + +// Status of the Route Filter Policy attachment lifecycle +func (o GetConnectionRouteFiltersDataOutput) AttachmentStatus() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersData) string { return v.AttachmentStatus }).(pulumi.StringOutput) +} + +// Direction of the filtering of the attached Route Filter Policy +func (o GetConnectionRouteFiltersDataOutput) Direction() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersData) string { return v.Direction }).(pulumi.StringOutput) +} + +// URI to the attached Route Filter Policy on the Connection +func (o GetConnectionRouteFiltersDataOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersData) string { return v.Href }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] +func (o GetConnectionRouteFiltersDataOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersData) string { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Policy +func (o GetConnectionRouteFiltersDataOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersData) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetConnectionRouteFiltersDataArrayOutput struct{ *pulumi.OutputState } + +func (GetConnectionRouteFiltersDataArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetConnectionRouteFiltersData)(nil)).Elem() +} + +func (o GetConnectionRouteFiltersDataArrayOutput) ToGetConnectionRouteFiltersDataArrayOutput() GetConnectionRouteFiltersDataArrayOutput { + return o +} + +func (o GetConnectionRouteFiltersDataArrayOutput) ToGetConnectionRouteFiltersDataArrayOutputWithContext(ctx context.Context) GetConnectionRouteFiltersDataArrayOutput { + return o +} + +func (o GetConnectionRouteFiltersDataArrayOutput) Index(i pulumi.IntInput) GetConnectionRouteFiltersDataOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetConnectionRouteFiltersData { + return vs[0].([]GetConnectionRouteFiltersData)[vs[1].(int)] + }).(GetConnectionRouteFiltersDataOutput) +} + +type GetConnectionRouteFiltersPagination struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit int `pulumi:"limit"` + // URL relative to the last item in the response. + Next string `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset int `pulumi:"offset"` + // URL relative to the first item in the response. + Previous string `pulumi:"previous"` + // Total number of elements returned. + Total int `pulumi:"total"` +} + +// GetConnectionRouteFiltersPaginationInput is an input type that accepts GetConnectionRouteFiltersPaginationArgs and GetConnectionRouteFiltersPaginationOutput values. +// You can construct a concrete instance of `GetConnectionRouteFiltersPaginationInput` via: +// +// GetConnectionRouteFiltersPaginationArgs{...} +type GetConnectionRouteFiltersPaginationInput interface { + pulumi.Input + + ToGetConnectionRouteFiltersPaginationOutput() GetConnectionRouteFiltersPaginationOutput + ToGetConnectionRouteFiltersPaginationOutputWithContext(context.Context) GetConnectionRouteFiltersPaginationOutput +} + +type GetConnectionRouteFiltersPaginationArgs struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit pulumi.IntInput `pulumi:"limit"` + // URL relative to the last item in the response. + Next pulumi.StringInput `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset pulumi.IntInput `pulumi:"offset"` + // URL relative to the first item in the response. + Previous pulumi.StringInput `pulumi:"previous"` + // Total number of elements returned. + Total pulumi.IntInput `pulumi:"total"` +} + +func (GetConnectionRouteFiltersPaginationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersPagination)(nil)).Elem() +} + +func (i GetConnectionRouteFiltersPaginationArgs) ToGetConnectionRouteFiltersPaginationOutput() GetConnectionRouteFiltersPaginationOutput { + return i.ToGetConnectionRouteFiltersPaginationOutputWithContext(context.Background()) +} + +func (i GetConnectionRouteFiltersPaginationArgs) ToGetConnectionRouteFiltersPaginationOutputWithContext(ctx context.Context) GetConnectionRouteFiltersPaginationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetConnectionRouteFiltersPaginationOutput) +} + +// GetConnectionRouteFiltersPaginationArrayInput is an input type that accepts GetConnectionRouteFiltersPaginationArray and GetConnectionRouteFiltersPaginationArrayOutput values. +// You can construct a concrete instance of `GetConnectionRouteFiltersPaginationArrayInput` via: +// +// GetConnectionRouteFiltersPaginationArray{ GetConnectionRouteFiltersPaginationArgs{...} } +type GetConnectionRouteFiltersPaginationArrayInput interface { + pulumi.Input + + ToGetConnectionRouteFiltersPaginationArrayOutput() GetConnectionRouteFiltersPaginationArrayOutput + ToGetConnectionRouteFiltersPaginationArrayOutputWithContext(context.Context) GetConnectionRouteFiltersPaginationArrayOutput +} + +type GetConnectionRouteFiltersPaginationArray []GetConnectionRouteFiltersPaginationInput + +func (GetConnectionRouteFiltersPaginationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetConnectionRouteFiltersPagination)(nil)).Elem() +} + +func (i GetConnectionRouteFiltersPaginationArray) ToGetConnectionRouteFiltersPaginationArrayOutput() GetConnectionRouteFiltersPaginationArrayOutput { + return i.ToGetConnectionRouteFiltersPaginationArrayOutputWithContext(context.Background()) +} + +func (i GetConnectionRouteFiltersPaginationArray) ToGetConnectionRouteFiltersPaginationArrayOutputWithContext(ctx context.Context) GetConnectionRouteFiltersPaginationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetConnectionRouteFiltersPaginationArrayOutput) +} + +type GetConnectionRouteFiltersPaginationOutput struct{ *pulumi.OutputState } + +func (GetConnectionRouteFiltersPaginationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetConnectionRouteFiltersPagination)(nil)).Elem() +} + +func (o GetConnectionRouteFiltersPaginationOutput) ToGetConnectionRouteFiltersPaginationOutput() GetConnectionRouteFiltersPaginationOutput { + return o +} + +func (o GetConnectionRouteFiltersPaginationOutput) ToGetConnectionRouteFiltersPaginationOutputWithContext(ctx context.Context) GetConnectionRouteFiltersPaginationOutput { + return o +} + +// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 +func (o GetConnectionRouteFiltersPaginationOutput) Limit() pulumi.IntOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersPagination) int { return v.Limit }).(pulumi.IntOutput) +} + +// URL relative to the last item in the response. +func (o GetConnectionRouteFiltersPaginationOutput) Next() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersPagination) string { return v.Next }).(pulumi.StringOutput) +} + +// The page offset for the pagination request. Index of the first element. Default is 0. +func (o GetConnectionRouteFiltersPaginationOutput) Offset() pulumi.IntOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersPagination) int { return v.Offset }).(pulumi.IntOutput) +} + +// URL relative to the first item in the response. +func (o GetConnectionRouteFiltersPaginationOutput) Previous() pulumi.StringOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersPagination) string { return v.Previous }).(pulumi.StringOutput) +} + +// Total number of elements returned. +func (o GetConnectionRouteFiltersPaginationOutput) Total() pulumi.IntOutput { + return o.ApplyT(func(v GetConnectionRouteFiltersPagination) int { return v.Total }).(pulumi.IntOutput) +} + +type GetConnectionRouteFiltersPaginationArrayOutput struct{ *pulumi.OutputState } + +func (GetConnectionRouteFiltersPaginationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetConnectionRouteFiltersPagination)(nil)).Elem() +} + +func (o GetConnectionRouteFiltersPaginationArrayOutput) ToGetConnectionRouteFiltersPaginationArrayOutput() GetConnectionRouteFiltersPaginationArrayOutput { + return o +} + +func (o GetConnectionRouteFiltersPaginationArrayOutput) ToGetConnectionRouteFiltersPaginationArrayOutputWithContext(ctx context.Context) GetConnectionRouteFiltersPaginationArrayOutput { + return o +} + +func (o GetConnectionRouteFiltersPaginationArrayOutput) Index(i pulumi.IntInput) GetConnectionRouteFiltersPaginationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetConnectionRouteFiltersPagination { + return vs[0].([]GetConnectionRouteFiltersPagination)[vs[1].(int)] + }).(GetConnectionRouteFiltersPaginationOutput) +} + type GetConnectionZSide struct { // Point of access details AccessPoint *GetConnectionZSideAccessPoint `pulumi:"accessPoint"` @@ -35845,6 +36889,2406 @@ func (o GetPortsFilterOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v GetPortsFilter) string { return v.Name }).(pulumi.StringOutput) } +type GetRouteFilterChange struct { + // The URI of the previous Route Filter Change + Href string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type string `pulumi:"type"` + // Unique identifier for the previous change + Uuid string `pulumi:"uuid"` +} + +// GetRouteFilterChangeInput is an input type that accepts GetRouteFilterChangeArgs and GetRouteFilterChangeOutput values. +// You can construct a concrete instance of `GetRouteFilterChangeInput` via: +// +// GetRouteFilterChangeArgs{...} +type GetRouteFilterChangeInput interface { + pulumi.Input + + ToGetRouteFilterChangeOutput() GetRouteFilterChangeOutput + ToGetRouteFilterChangeOutputWithContext(context.Context) GetRouteFilterChangeOutput +} + +type GetRouteFilterChangeArgs struct { + // The URI of the previous Route Filter Change + Href pulumi.StringInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type pulumi.StringInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFilterChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterChange)(nil)).Elem() +} + +func (i GetRouteFilterChangeArgs) ToGetRouteFilterChangeOutput() GetRouteFilterChangeOutput { + return i.ToGetRouteFilterChangeOutputWithContext(context.Background()) +} + +func (i GetRouteFilterChangeArgs) ToGetRouteFilterChangeOutputWithContext(ctx context.Context) GetRouteFilterChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterChangeOutput) +} + +// GetRouteFilterChangeArrayInput is an input type that accepts GetRouteFilterChangeArray and GetRouteFilterChangeArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterChangeArrayInput` via: +// +// GetRouteFilterChangeArray{ GetRouteFilterChangeArgs{...} } +type GetRouteFilterChangeArrayInput interface { + pulumi.Input + + ToGetRouteFilterChangeArrayOutput() GetRouteFilterChangeArrayOutput + ToGetRouteFilterChangeArrayOutputWithContext(context.Context) GetRouteFilterChangeArrayOutput +} + +type GetRouteFilterChangeArray []GetRouteFilterChangeInput + +func (GetRouteFilterChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterChange)(nil)).Elem() +} + +func (i GetRouteFilterChangeArray) ToGetRouteFilterChangeArrayOutput() GetRouteFilterChangeArrayOutput { + return i.ToGetRouteFilterChangeArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterChangeArray) ToGetRouteFilterChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterChangeArrayOutput) +} + +type GetRouteFilterChangeOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterChange)(nil)).Elem() +} + +func (o GetRouteFilterChangeOutput) ToGetRouteFilterChangeOutput() GetRouteFilterChangeOutput { + return o +} + +func (o GetRouteFilterChangeOutput) ToGetRouteFilterChangeOutputWithContext(ctx context.Context) GetRouteFilterChangeOutput { + return o +} + +// The URI of the previous Route Filter Change +func (o GetRouteFilterChangeOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChange) string { return v.Href }).(pulumi.StringOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] +func (o GetRouteFilterChangeOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChange) string { return v.Type }).(pulumi.StringOutput) +} + +// Unique identifier for the previous change +func (o GetRouteFilterChangeOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChange) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFilterChangeArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterChange)(nil)).Elem() +} + +func (o GetRouteFilterChangeArrayOutput) ToGetRouteFilterChangeArrayOutput() GetRouteFilterChangeArrayOutput { + return o +} + +func (o GetRouteFilterChangeArrayOutput) ToGetRouteFilterChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterChangeArrayOutput { + return o +} + +func (o GetRouteFilterChangeArrayOutput) Index(i pulumi.IntInput) GetRouteFilterChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterChange { + return vs[0].([]GetRouteFilterChange)[vs[1].(int)] + }).(GetRouteFilterChangeOutput) +} + +type GetRouteFilterChangeLog struct { + // Created by User Key + CreatedBy string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime string `pulumi:"updatedDateTime"` +} + +// GetRouteFilterChangeLogInput is an input type that accepts GetRouteFilterChangeLogArgs and GetRouteFilterChangeLogOutput values. +// You can construct a concrete instance of `GetRouteFilterChangeLogInput` via: +// +// GetRouteFilterChangeLogArgs{...} +type GetRouteFilterChangeLogInput interface { + pulumi.Input + + ToGetRouteFilterChangeLogOutput() GetRouteFilterChangeLogOutput + ToGetRouteFilterChangeLogOutputWithContext(context.Context) GetRouteFilterChangeLogOutput +} + +type GetRouteFilterChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringInput `pulumi:"updatedDateTime"` +} + +func (GetRouteFilterChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterChangeLogArgs) ToGetRouteFilterChangeLogOutput() GetRouteFilterChangeLogOutput { + return i.ToGetRouteFilterChangeLogOutputWithContext(context.Background()) +} + +func (i GetRouteFilterChangeLogArgs) ToGetRouteFilterChangeLogOutputWithContext(ctx context.Context) GetRouteFilterChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterChangeLogOutput) +} + +// GetRouteFilterChangeLogArrayInput is an input type that accepts GetRouteFilterChangeLogArray and GetRouteFilterChangeLogArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterChangeLogArrayInput` via: +// +// GetRouteFilterChangeLogArray{ GetRouteFilterChangeLogArgs{...} } +type GetRouteFilterChangeLogArrayInput interface { + pulumi.Input + + ToGetRouteFilterChangeLogArrayOutput() GetRouteFilterChangeLogArrayOutput + ToGetRouteFilterChangeLogArrayOutputWithContext(context.Context) GetRouteFilterChangeLogArrayOutput +} + +type GetRouteFilterChangeLogArray []GetRouteFilterChangeLogInput + +func (GetRouteFilterChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterChangeLogArray) ToGetRouteFilterChangeLogArrayOutput() GetRouteFilterChangeLogArrayOutput { + return i.ToGetRouteFilterChangeLogArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterChangeLogArray) ToGetRouteFilterChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterChangeLogArrayOutput) +} + +type GetRouteFilterChangeLogOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterChangeLogOutput) ToGetRouteFilterChangeLogOutput() GetRouteFilterChangeLogOutput { + return o +} + +func (o GetRouteFilterChangeLogOutput) ToGetRouteFilterChangeLogOutputWithContext(ctx context.Context) GetRouteFilterChangeLogOutput { + return o +} + +// Created by User Key +func (o GetRouteFilterChangeLogOutput) CreatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.CreatedBy }).(pulumi.StringOutput) +} + +// Created by User Email Address +func (o GetRouteFilterChangeLogOutput) CreatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.CreatedByEmail }).(pulumi.StringOutput) +} + +// Created by User Full Name +func (o GetRouteFilterChangeLogOutput) CreatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.CreatedByFullName }).(pulumi.StringOutput) +} + +// Created by Date and Time +func (o GetRouteFilterChangeLogOutput) CreatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.CreatedDateTime }).(pulumi.StringOutput) +} + +// Deleted by User Key +func (o GetRouteFilterChangeLogOutput) DeletedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.DeletedBy }).(pulumi.StringOutput) +} + +// Deleted by User Email Address +func (o GetRouteFilterChangeLogOutput) DeletedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.DeletedByEmail }).(pulumi.StringOutput) +} + +// Deleted by User Full Name +func (o GetRouteFilterChangeLogOutput) DeletedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.DeletedByFullName }).(pulumi.StringOutput) +} + +// Deleted by Date and Time +func (o GetRouteFilterChangeLogOutput) DeletedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.DeletedDateTime }).(pulumi.StringOutput) +} + +// Updated by User Key +func (o GetRouteFilterChangeLogOutput) UpdatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.UpdatedBy }).(pulumi.StringOutput) +} + +// Updated by User Email Address +func (o GetRouteFilterChangeLogOutput) UpdatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.UpdatedByEmail }).(pulumi.StringOutput) +} + +// Updated by User Full Name +func (o GetRouteFilterChangeLogOutput) UpdatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.UpdatedByFullName }).(pulumi.StringOutput) +} + +// Updated by Date and Time +func (o GetRouteFilterChangeLogOutput) UpdatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterChangeLog) string { return v.UpdatedDateTime }).(pulumi.StringOutput) +} + +type GetRouteFilterChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterChangeLogArrayOutput) ToGetRouteFilterChangeLogArrayOutput() GetRouteFilterChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterChangeLogArrayOutput) ToGetRouteFilterChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterChangeLogArrayOutput) Index(i pulumi.IntInput) GetRouteFilterChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterChangeLog { + return vs[0].([]GetRouteFilterChangeLog)[vs[1].(int)] + }).(GetRouteFilterChangeLogOutput) +} + +type GetRouteFilterProject struct { + // URI of the Fabric Project + Href string `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId string `pulumi:"projectId"` +} + +// GetRouteFilterProjectInput is an input type that accepts GetRouteFilterProjectArgs and GetRouteFilterProjectOutput values. +// You can construct a concrete instance of `GetRouteFilterProjectInput` via: +// +// GetRouteFilterProjectArgs{...} +type GetRouteFilterProjectInput interface { + pulumi.Input + + ToGetRouteFilterProjectOutput() GetRouteFilterProjectOutput + ToGetRouteFilterProjectOutputWithContext(context.Context) GetRouteFilterProjectOutput +} + +type GetRouteFilterProjectArgs struct { + // URI of the Fabric Project + Href pulumi.StringInput `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId pulumi.StringInput `pulumi:"projectId"` +} + +func (GetRouteFilterProjectArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterProject)(nil)).Elem() +} + +func (i GetRouteFilterProjectArgs) ToGetRouteFilterProjectOutput() GetRouteFilterProjectOutput { + return i.ToGetRouteFilterProjectOutputWithContext(context.Background()) +} + +func (i GetRouteFilterProjectArgs) ToGetRouteFilterProjectOutputWithContext(ctx context.Context) GetRouteFilterProjectOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterProjectOutput) +} + +// GetRouteFilterProjectArrayInput is an input type that accepts GetRouteFilterProjectArray and GetRouteFilterProjectArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterProjectArrayInput` via: +// +// GetRouteFilterProjectArray{ GetRouteFilterProjectArgs{...} } +type GetRouteFilterProjectArrayInput interface { + pulumi.Input + + ToGetRouteFilterProjectArrayOutput() GetRouteFilterProjectArrayOutput + ToGetRouteFilterProjectArrayOutputWithContext(context.Context) GetRouteFilterProjectArrayOutput +} + +type GetRouteFilterProjectArray []GetRouteFilterProjectInput + +func (GetRouteFilterProjectArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterProject)(nil)).Elem() +} + +func (i GetRouteFilterProjectArray) ToGetRouteFilterProjectArrayOutput() GetRouteFilterProjectArrayOutput { + return i.ToGetRouteFilterProjectArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterProjectArray) ToGetRouteFilterProjectArrayOutputWithContext(ctx context.Context) GetRouteFilterProjectArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterProjectArrayOutput) +} + +type GetRouteFilterProjectOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterProjectOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterProject)(nil)).Elem() +} + +func (o GetRouteFilterProjectOutput) ToGetRouteFilterProjectOutput() GetRouteFilterProjectOutput { + return o +} + +func (o GetRouteFilterProjectOutput) ToGetRouteFilterProjectOutputWithContext(ctx context.Context) GetRouteFilterProjectOutput { + return o +} + +// URI of the Fabric Project +func (o GetRouteFilterProjectOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterProject) string { return v.Href }).(pulumi.StringOutput) +} + +// Project id associated with Fabric Project +func (o GetRouteFilterProjectOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterProject) string { return v.ProjectId }).(pulumi.StringOutput) +} + +type GetRouteFilterProjectArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterProjectArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterProject)(nil)).Elem() +} + +func (o GetRouteFilterProjectArrayOutput) ToGetRouteFilterProjectArrayOutput() GetRouteFilterProjectArrayOutput { + return o +} + +func (o GetRouteFilterProjectArrayOutput) ToGetRouteFilterProjectArrayOutputWithContext(ctx context.Context) GetRouteFilterProjectArrayOutput { + return o +} + +func (o GetRouteFilterProjectArrayOutput) Index(i pulumi.IntInput) GetRouteFilterProjectOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterProject { + return vs[0].([]GetRouteFilterProject)[vs[1].(int)] + }).(GetRouteFilterProjectOutput) +} + +type GetRouteFilterRuleChange struct { + // The URI of the previous Route Filter Rule Change + Href string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type string `pulumi:"type"` + // Unique identifier for the previous change + Uuid string `pulumi:"uuid"` +} + +// GetRouteFilterRuleChangeInput is an input type that accepts GetRouteFilterRuleChangeArgs and GetRouteFilterRuleChangeOutput values. +// You can construct a concrete instance of `GetRouteFilterRuleChangeInput` via: +// +// GetRouteFilterRuleChangeArgs{...} +type GetRouteFilterRuleChangeInput interface { + pulumi.Input + + ToGetRouteFilterRuleChangeOutput() GetRouteFilterRuleChangeOutput + ToGetRouteFilterRuleChangeOutputWithContext(context.Context) GetRouteFilterRuleChangeOutput +} + +type GetRouteFilterRuleChangeArgs struct { + // The URI of the previous Route Filter Rule Change + Href pulumi.StringInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type pulumi.StringInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFilterRuleChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRuleChange)(nil)).Elem() +} + +func (i GetRouteFilterRuleChangeArgs) ToGetRouteFilterRuleChangeOutput() GetRouteFilterRuleChangeOutput { + return i.ToGetRouteFilterRuleChangeOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRuleChangeArgs) ToGetRouteFilterRuleChangeOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRuleChangeOutput) +} + +// GetRouteFilterRuleChangeArrayInput is an input type that accepts GetRouteFilterRuleChangeArray and GetRouteFilterRuleChangeArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRuleChangeArrayInput` via: +// +// GetRouteFilterRuleChangeArray{ GetRouteFilterRuleChangeArgs{...} } +type GetRouteFilterRuleChangeArrayInput interface { + pulumi.Input + + ToGetRouteFilterRuleChangeArrayOutput() GetRouteFilterRuleChangeArrayOutput + ToGetRouteFilterRuleChangeArrayOutputWithContext(context.Context) GetRouteFilterRuleChangeArrayOutput +} + +type GetRouteFilterRuleChangeArray []GetRouteFilterRuleChangeInput + +func (GetRouteFilterRuleChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRuleChange)(nil)).Elem() +} + +func (i GetRouteFilterRuleChangeArray) ToGetRouteFilterRuleChangeArrayOutput() GetRouteFilterRuleChangeArrayOutput { + return i.ToGetRouteFilterRuleChangeArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRuleChangeArray) ToGetRouteFilterRuleChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRuleChangeArrayOutput) +} + +type GetRouteFilterRuleChangeOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRuleChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRuleChange)(nil)).Elem() +} + +func (o GetRouteFilterRuleChangeOutput) ToGetRouteFilterRuleChangeOutput() GetRouteFilterRuleChangeOutput { + return o +} + +func (o GetRouteFilterRuleChangeOutput) ToGetRouteFilterRuleChangeOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeOutput { + return o +} + +// The URI of the previous Route Filter Rule Change +func (o GetRouteFilterRuleChangeOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChange) string { return v.Href }).(pulumi.StringOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] +func (o GetRouteFilterRuleChangeOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChange) string { return v.Type }).(pulumi.StringOutput) +} + +// Unique identifier for the previous change +func (o GetRouteFilterRuleChangeOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChange) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFilterRuleChangeArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRuleChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRuleChange)(nil)).Elem() +} + +func (o GetRouteFilterRuleChangeArrayOutput) ToGetRouteFilterRuleChangeArrayOutput() GetRouteFilterRuleChangeArrayOutput { + return o +} + +func (o GetRouteFilterRuleChangeArrayOutput) ToGetRouteFilterRuleChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeArrayOutput { + return o +} + +func (o GetRouteFilterRuleChangeArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRuleChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRuleChange { + return vs[0].([]GetRouteFilterRuleChange)[vs[1].(int)] + }).(GetRouteFilterRuleChangeOutput) +} + +type GetRouteFilterRuleChangeLog struct { + // Created by User Key + CreatedBy string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime string `pulumi:"updatedDateTime"` +} + +// GetRouteFilterRuleChangeLogInput is an input type that accepts GetRouteFilterRuleChangeLogArgs and GetRouteFilterRuleChangeLogOutput values. +// You can construct a concrete instance of `GetRouteFilterRuleChangeLogInput` via: +// +// GetRouteFilterRuleChangeLogArgs{...} +type GetRouteFilterRuleChangeLogInput interface { + pulumi.Input + + ToGetRouteFilterRuleChangeLogOutput() GetRouteFilterRuleChangeLogOutput + ToGetRouteFilterRuleChangeLogOutputWithContext(context.Context) GetRouteFilterRuleChangeLogOutput +} + +type GetRouteFilterRuleChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringInput `pulumi:"updatedDateTime"` +} + +func (GetRouteFilterRuleChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRuleChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterRuleChangeLogArgs) ToGetRouteFilterRuleChangeLogOutput() GetRouteFilterRuleChangeLogOutput { + return i.ToGetRouteFilterRuleChangeLogOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRuleChangeLogArgs) ToGetRouteFilterRuleChangeLogOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRuleChangeLogOutput) +} + +// GetRouteFilterRuleChangeLogArrayInput is an input type that accepts GetRouteFilterRuleChangeLogArray and GetRouteFilterRuleChangeLogArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRuleChangeLogArrayInput` via: +// +// GetRouteFilterRuleChangeLogArray{ GetRouteFilterRuleChangeLogArgs{...} } +type GetRouteFilterRuleChangeLogArrayInput interface { + pulumi.Input + + ToGetRouteFilterRuleChangeLogArrayOutput() GetRouteFilterRuleChangeLogArrayOutput + ToGetRouteFilterRuleChangeLogArrayOutputWithContext(context.Context) GetRouteFilterRuleChangeLogArrayOutput +} + +type GetRouteFilterRuleChangeLogArray []GetRouteFilterRuleChangeLogInput + +func (GetRouteFilterRuleChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRuleChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterRuleChangeLogArray) ToGetRouteFilterRuleChangeLogArrayOutput() GetRouteFilterRuleChangeLogArrayOutput { + return i.ToGetRouteFilterRuleChangeLogArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRuleChangeLogArray) ToGetRouteFilterRuleChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRuleChangeLogArrayOutput) +} + +type GetRouteFilterRuleChangeLogOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRuleChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRuleChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterRuleChangeLogOutput) ToGetRouteFilterRuleChangeLogOutput() GetRouteFilterRuleChangeLogOutput { + return o +} + +func (o GetRouteFilterRuleChangeLogOutput) ToGetRouteFilterRuleChangeLogOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeLogOutput { + return o +} + +// Created by User Key +func (o GetRouteFilterRuleChangeLogOutput) CreatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.CreatedBy }).(pulumi.StringOutput) +} + +// Created by User Email Address +func (o GetRouteFilterRuleChangeLogOutput) CreatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.CreatedByEmail }).(pulumi.StringOutput) +} + +// Created by User Full Name +func (o GetRouteFilterRuleChangeLogOutput) CreatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.CreatedByFullName }).(pulumi.StringOutput) +} + +// Created by Date and Time +func (o GetRouteFilterRuleChangeLogOutput) CreatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.CreatedDateTime }).(pulumi.StringOutput) +} + +// Deleted by User Key +func (o GetRouteFilterRuleChangeLogOutput) DeletedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.DeletedBy }).(pulumi.StringOutput) +} + +// Deleted by User Email Address +func (o GetRouteFilterRuleChangeLogOutput) DeletedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.DeletedByEmail }).(pulumi.StringOutput) +} + +// Deleted by User Full Name +func (o GetRouteFilterRuleChangeLogOutput) DeletedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.DeletedByFullName }).(pulumi.StringOutput) +} + +// Deleted by Date and Time +func (o GetRouteFilterRuleChangeLogOutput) DeletedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.DeletedDateTime }).(pulumi.StringOutput) +} + +// Updated by User Key +func (o GetRouteFilterRuleChangeLogOutput) UpdatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.UpdatedBy }).(pulumi.StringOutput) +} + +// Updated by User Email Address +func (o GetRouteFilterRuleChangeLogOutput) UpdatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.UpdatedByEmail }).(pulumi.StringOutput) +} + +// Updated by User Full Name +func (o GetRouteFilterRuleChangeLogOutput) UpdatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.UpdatedByFullName }).(pulumi.StringOutput) +} + +// Updated by Date and Time +func (o GetRouteFilterRuleChangeLogOutput) UpdatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRuleChangeLog) string { return v.UpdatedDateTime }).(pulumi.StringOutput) +} + +type GetRouteFilterRuleChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRuleChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRuleChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterRuleChangeLogArrayOutput) ToGetRouteFilterRuleChangeLogArrayOutput() GetRouteFilterRuleChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterRuleChangeLogArrayOutput) ToGetRouteFilterRuleChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterRuleChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterRuleChangeLogArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRuleChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRuleChangeLog { + return vs[0].([]GetRouteFilterRuleChangeLog)[vs[1].(int)] + }).(GetRouteFilterRuleChangeLogOutput) +} + +type GetRouteFilterRulesData struct { + // Action that will be taken on IP Addresses matching the rule + Action string `pulumi:"action"` + ChangeLogs []GetRouteFilterRulesDataChangeLog `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes []GetRouteFilterRulesDataChange `pulumi:"changes"` + // Optional description to add to the Route Filter you will be creating + Description string `pulumi:"description"` + // Route filter rules URI + Href string `pulumi:"href"` + // Name of the Route Filter + Name string `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix string `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch string `pulumi:"prefixMatch"` + // State of the Route Filter Rule in its lifecycle + State string `pulumi:"state"` + // Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + Type string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Rule to retrieve data for + Uuid string `pulumi:"uuid"` +} + +// GetRouteFilterRulesDataInput is an input type that accepts GetRouteFilterRulesDataArgs and GetRouteFilterRulesDataOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataInput` via: +// +// GetRouteFilterRulesDataArgs{...} +type GetRouteFilterRulesDataInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataOutput() GetRouteFilterRulesDataOutput + ToGetRouteFilterRulesDataOutputWithContext(context.Context) GetRouteFilterRulesDataOutput +} + +type GetRouteFilterRulesDataArgs struct { + // Action that will be taken on IP Addresses matching the rule + Action pulumi.StringInput `pulumi:"action"` + ChangeLogs GetRouteFilterRulesDataChangeLogArrayInput `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes GetRouteFilterRulesDataChangeArrayInput `pulumi:"changes"` + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringInput `pulumi:"description"` + // Route filter rules URI + Href pulumi.StringInput `pulumi:"href"` + // Name of the Route Filter + Name pulumi.StringInput `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix pulumi.StringInput `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch pulumi.StringInput `pulumi:"prefixMatch"` + // State of the Route Filter Rule in its lifecycle + State pulumi.StringInput `pulumi:"state"` + // Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + Type pulumi.StringInput `pulumi:"type"` + // Equinix Assigned ID for Route Filter Rule to retrieve data for + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFilterRulesDataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesData)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataArgs) ToGetRouteFilterRulesDataOutput() GetRouteFilterRulesDataOutput { + return i.ToGetRouteFilterRulesDataOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataArgs) ToGetRouteFilterRulesDataOutputWithContext(ctx context.Context) GetRouteFilterRulesDataOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataOutput) +} + +// GetRouteFilterRulesDataArrayInput is an input type that accepts GetRouteFilterRulesDataArray and GetRouteFilterRulesDataArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataArrayInput` via: +// +// GetRouteFilterRulesDataArray{ GetRouteFilterRulesDataArgs{...} } +type GetRouteFilterRulesDataArrayInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataArrayOutput() GetRouteFilterRulesDataArrayOutput + ToGetRouteFilterRulesDataArrayOutputWithContext(context.Context) GetRouteFilterRulesDataArrayOutput +} + +type GetRouteFilterRulesDataArray []GetRouteFilterRulesDataInput + +func (GetRouteFilterRulesDataArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesData)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataArray) ToGetRouteFilterRulesDataArrayOutput() GetRouteFilterRulesDataArrayOutput { + return i.ToGetRouteFilterRulesDataArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataArray) ToGetRouteFilterRulesDataArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataArrayOutput) +} + +type GetRouteFilterRulesDataOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesData)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataOutput) ToGetRouteFilterRulesDataOutput() GetRouteFilterRulesDataOutput { + return o +} + +func (o GetRouteFilterRulesDataOutput) ToGetRouteFilterRulesDataOutputWithContext(ctx context.Context) GetRouteFilterRulesDataOutput { + return o +} + +// Action that will be taken on IP Addresses matching the rule +func (o GetRouteFilterRulesDataOutput) Action() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Action }).(pulumi.StringOutput) +} + +func (o GetRouteFilterRulesDataOutput) ChangeLogs() GetRouteFilterRulesDataChangeLogArrayOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) []GetRouteFilterRulesDataChangeLog { return v.ChangeLogs }).(GetRouteFilterRulesDataChangeLogArrayOutput) +} + +// An object with the details of the previous change applied on the Route Filter +func (o GetRouteFilterRulesDataOutput) Changes() GetRouteFilterRulesDataChangeArrayOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) []GetRouteFilterRulesDataChange { return v.Changes }).(GetRouteFilterRulesDataChangeArrayOutput) +} + +// Optional description to add to the Route Filter you will be creating +func (o GetRouteFilterRulesDataOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Description }).(pulumi.StringOutput) +} + +// Route filter rules URI +func (o GetRouteFilterRulesDataOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Href }).(pulumi.StringOutput) +} + +// Name of the Route Filter +func (o GetRouteFilterRulesDataOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Name }).(pulumi.StringOutput) +} + +// IP Address Prefix to Filter on +func (o GetRouteFilterRulesDataOutput) Prefix() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Prefix }).(pulumi.StringOutput) +} + +// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" +func (o GetRouteFilterRulesDataOutput) PrefixMatch() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.PrefixMatch }).(pulumi.StringOutput) +} + +// State of the Route Filter Rule in its lifecycle +func (o GetRouteFilterRulesDataOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.State }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] +func (o GetRouteFilterRulesDataOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Rule to retrieve data for +func (o GetRouteFilterRulesDataOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesData) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFilterRulesDataArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesData)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataArrayOutput) ToGetRouteFilterRulesDataArrayOutput() GetRouteFilterRulesDataArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataArrayOutput) ToGetRouteFilterRulesDataArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRulesDataOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRulesData { + return vs[0].([]GetRouteFilterRulesData)[vs[1].(int)] + }).(GetRouteFilterRulesDataOutput) +} + +type GetRouteFilterRulesDataChange struct { + // The URI of the previous Route Filter Rule Change + Href string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type string `pulumi:"type"` + // Unique identifier for the previous change + Uuid string `pulumi:"uuid"` +} + +// GetRouteFilterRulesDataChangeInput is an input type that accepts GetRouteFilterRulesDataChangeArgs and GetRouteFilterRulesDataChangeOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataChangeInput` via: +// +// GetRouteFilterRulesDataChangeArgs{...} +type GetRouteFilterRulesDataChangeInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataChangeOutput() GetRouteFilterRulesDataChangeOutput + ToGetRouteFilterRulesDataChangeOutputWithContext(context.Context) GetRouteFilterRulesDataChangeOutput +} + +type GetRouteFilterRulesDataChangeArgs struct { + // The URI of the previous Route Filter Rule Change + Href pulumi.StringInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + Type pulumi.StringInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFilterRulesDataChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesDataChange)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataChangeArgs) ToGetRouteFilterRulesDataChangeOutput() GetRouteFilterRulesDataChangeOutput { + return i.ToGetRouteFilterRulesDataChangeOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataChangeArgs) ToGetRouteFilterRulesDataChangeOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataChangeOutput) +} + +// GetRouteFilterRulesDataChangeArrayInput is an input type that accepts GetRouteFilterRulesDataChangeArray and GetRouteFilterRulesDataChangeArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataChangeArrayInput` via: +// +// GetRouteFilterRulesDataChangeArray{ GetRouteFilterRulesDataChangeArgs{...} } +type GetRouteFilterRulesDataChangeArrayInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataChangeArrayOutput() GetRouteFilterRulesDataChangeArrayOutput + ToGetRouteFilterRulesDataChangeArrayOutputWithContext(context.Context) GetRouteFilterRulesDataChangeArrayOutput +} + +type GetRouteFilterRulesDataChangeArray []GetRouteFilterRulesDataChangeInput + +func (GetRouteFilterRulesDataChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesDataChange)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataChangeArray) ToGetRouteFilterRulesDataChangeArrayOutput() GetRouteFilterRulesDataChangeArrayOutput { + return i.ToGetRouteFilterRulesDataChangeArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataChangeArray) ToGetRouteFilterRulesDataChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataChangeArrayOutput) +} + +type GetRouteFilterRulesDataChangeOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesDataChange)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataChangeOutput) ToGetRouteFilterRulesDataChangeOutput() GetRouteFilterRulesDataChangeOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeOutput) ToGetRouteFilterRulesDataChangeOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeOutput { + return o +} + +// The URI of the previous Route Filter Rule Change +func (o GetRouteFilterRulesDataChangeOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChange) string { return v.Href }).(pulumi.StringOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] +func (o GetRouteFilterRulesDataChangeOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChange) string { return v.Type }).(pulumi.StringOutput) +} + +// Unique identifier for the previous change +func (o GetRouteFilterRulesDataChangeOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChange) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFilterRulesDataChangeArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesDataChange)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataChangeArrayOutput) ToGetRouteFilterRulesDataChangeArrayOutput() GetRouteFilterRulesDataChangeArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeArrayOutput) ToGetRouteFilterRulesDataChangeArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRulesDataChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRulesDataChange { + return vs[0].([]GetRouteFilterRulesDataChange)[vs[1].(int)] + }).(GetRouteFilterRulesDataChangeOutput) +} + +type GetRouteFilterRulesDataChangeLog struct { + // Created by User Key + CreatedBy string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime string `pulumi:"updatedDateTime"` +} + +// GetRouteFilterRulesDataChangeLogInput is an input type that accepts GetRouteFilterRulesDataChangeLogArgs and GetRouteFilterRulesDataChangeLogOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataChangeLogInput` via: +// +// GetRouteFilterRulesDataChangeLogArgs{...} +type GetRouteFilterRulesDataChangeLogInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataChangeLogOutput() GetRouteFilterRulesDataChangeLogOutput + ToGetRouteFilterRulesDataChangeLogOutputWithContext(context.Context) GetRouteFilterRulesDataChangeLogOutput +} + +type GetRouteFilterRulesDataChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringInput `pulumi:"updatedDateTime"` +} + +func (GetRouteFilterRulesDataChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesDataChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataChangeLogArgs) ToGetRouteFilterRulesDataChangeLogOutput() GetRouteFilterRulesDataChangeLogOutput { + return i.ToGetRouteFilterRulesDataChangeLogOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataChangeLogArgs) ToGetRouteFilterRulesDataChangeLogOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataChangeLogOutput) +} + +// GetRouteFilterRulesDataChangeLogArrayInput is an input type that accepts GetRouteFilterRulesDataChangeLogArray and GetRouteFilterRulesDataChangeLogArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesDataChangeLogArrayInput` via: +// +// GetRouteFilterRulesDataChangeLogArray{ GetRouteFilterRulesDataChangeLogArgs{...} } +type GetRouteFilterRulesDataChangeLogArrayInput interface { + pulumi.Input + + ToGetRouteFilterRulesDataChangeLogArrayOutput() GetRouteFilterRulesDataChangeLogArrayOutput + ToGetRouteFilterRulesDataChangeLogArrayOutputWithContext(context.Context) GetRouteFilterRulesDataChangeLogArrayOutput +} + +type GetRouteFilterRulesDataChangeLogArray []GetRouteFilterRulesDataChangeLogInput + +func (GetRouteFilterRulesDataChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesDataChangeLog)(nil)).Elem() +} + +func (i GetRouteFilterRulesDataChangeLogArray) ToGetRouteFilterRulesDataChangeLogArrayOutput() GetRouteFilterRulesDataChangeLogArrayOutput { + return i.ToGetRouteFilterRulesDataChangeLogArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesDataChangeLogArray) ToGetRouteFilterRulesDataChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesDataChangeLogArrayOutput) +} + +type GetRouteFilterRulesDataChangeLogOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesDataChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataChangeLogOutput) ToGetRouteFilterRulesDataChangeLogOutput() GetRouteFilterRulesDataChangeLogOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeLogOutput) ToGetRouteFilterRulesDataChangeLogOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeLogOutput { + return o +} + +// Created by User Key +func (o GetRouteFilterRulesDataChangeLogOutput) CreatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.CreatedBy }).(pulumi.StringOutput) +} + +// Created by User Email Address +func (o GetRouteFilterRulesDataChangeLogOutput) CreatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.CreatedByEmail }).(pulumi.StringOutput) +} + +// Created by User Full Name +func (o GetRouteFilterRulesDataChangeLogOutput) CreatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.CreatedByFullName }).(pulumi.StringOutput) +} + +// Created by Date and Time +func (o GetRouteFilterRulesDataChangeLogOutput) CreatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.CreatedDateTime }).(pulumi.StringOutput) +} + +// Deleted by User Key +func (o GetRouteFilterRulesDataChangeLogOutput) DeletedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.DeletedBy }).(pulumi.StringOutput) +} + +// Deleted by User Email Address +func (o GetRouteFilterRulesDataChangeLogOutput) DeletedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.DeletedByEmail }).(pulumi.StringOutput) +} + +// Deleted by User Full Name +func (o GetRouteFilterRulesDataChangeLogOutput) DeletedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.DeletedByFullName }).(pulumi.StringOutput) +} + +// Deleted by Date and Time +func (o GetRouteFilterRulesDataChangeLogOutput) DeletedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.DeletedDateTime }).(pulumi.StringOutput) +} + +// Updated by User Key +func (o GetRouteFilterRulesDataChangeLogOutput) UpdatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.UpdatedBy }).(pulumi.StringOutput) +} + +// Updated by User Email Address +func (o GetRouteFilterRulesDataChangeLogOutput) UpdatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.UpdatedByEmail }).(pulumi.StringOutput) +} + +// Updated by User Full Name +func (o GetRouteFilterRulesDataChangeLogOutput) UpdatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.UpdatedByFullName }).(pulumi.StringOutput) +} + +// Updated by Date and Time +func (o GetRouteFilterRulesDataChangeLogOutput) UpdatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesDataChangeLog) string { return v.UpdatedDateTime }).(pulumi.StringOutput) +} + +type GetRouteFilterRulesDataChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesDataChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesDataChangeLog)(nil)).Elem() +} + +func (o GetRouteFilterRulesDataChangeLogArrayOutput) ToGetRouteFilterRulesDataChangeLogArrayOutput() GetRouteFilterRulesDataChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeLogArrayOutput) ToGetRouteFilterRulesDataChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesDataChangeLogArrayOutput { + return o +} + +func (o GetRouteFilterRulesDataChangeLogArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRulesDataChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRulesDataChangeLog { + return vs[0].([]GetRouteFilterRulesDataChangeLog)[vs[1].(int)] + }).(GetRouteFilterRulesDataChangeLogOutput) +} + +type GetRouteFilterRulesPagination struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit int `pulumi:"limit"` + // URL relative to the last item in the response. + Next string `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset int `pulumi:"offset"` + // URL relative to the first item in the response. + Previous string `pulumi:"previous"` + // Total number of elements returned. + Total int `pulumi:"total"` +} + +// GetRouteFilterRulesPaginationInput is an input type that accepts GetRouteFilterRulesPaginationArgs and GetRouteFilterRulesPaginationOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesPaginationInput` via: +// +// GetRouteFilterRulesPaginationArgs{...} +type GetRouteFilterRulesPaginationInput interface { + pulumi.Input + + ToGetRouteFilterRulesPaginationOutput() GetRouteFilterRulesPaginationOutput + ToGetRouteFilterRulesPaginationOutputWithContext(context.Context) GetRouteFilterRulesPaginationOutput +} + +type GetRouteFilterRulesPaginationArgs struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit pulumi.IntInput `pulumi:"limit"` + // URL relative to the last item in the response. + Next pulumi.StringInput `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset pulumi.IntInput `pulumi:"offset"` + // URL relative to the first item in the response. + Previous pulumi.StringInput `pulumi:"previous"` + // Total number of elements returned. + Total pulumi.IntInput `pulumi:"total"` +} + +func (GetRouteFilterRulesPaginationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesPagination)(nil)).Elem() +} + +func (i GetRouteFilterRulesPaginationArgs) ToGetRouteFilterRulesPaginationOutput() GetRouteFilterRulesPaginationOutput { + return i.ToGetRouteFilterRulesPaginationOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesPaginationArgs) ToGetRouteFilterRulesPaginationOutputWithContext(ctx context.Context) GetRouteFilterRulesPaginationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesPaginationOutput) +} + +// GetRouteFilterRulesPaginationArrayInput is an input type that accepts GetRouteFilterRulesPaginationArray and GetRouteFilterRulesPaginationArrayOutput values. +// You can construct a concrete instance of `GetRouteFilterRulesPaginationArrayInput` via: +// +// GetRouteFilterRulesPaginationArray{ GetRouteFilterRulesPaginationArgs{...} } +type GetRouteFilterRulesPaginationArrayInput interface { + pulumi.Input + + ToGetRouteFilterRulesPaginationArrayOutput() GetRouteFilterRulesPaginationArrayOutput + ToGetRouteFilterRulesPaginationArrayOutputWithContext(context.Context) GetRouteFilterRulesPaginationArrayOutput +} + +type GetRouteFilterRulesPaginationArray []GetRouteFilterRulesPaginationInput + +func (GetRouteFilterRulesPaginationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesPagination)(nil)).Elem() +} + +func (i GetRouteFilterRulesPaginationArray) ToGetRouteFilterRulesPaginationArrayOutput() GetRouteFilterRulesPaginationArrayOutput { + return i.ToGetRouteFilterRulesPaginationArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFilterRulesPaginationArray) ToGetRouteFilterRulesPaginationArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesPaginationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFilterRulesPaginationArrayOutput) +} + +type GetRouteFilterRulesPaginationOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesPaginationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFilterRulesPagination)(nil)).Elem() +} + +func (o GetRouteFilterRulesPaginationOutput) ToGetRouteFilterRulesPaginationOutput() GetRouteFilterRulesPaginationOutput { + return o +} + +func (o GetRouteFilterRulesPaginationOutput) ToGetRouteFilterRulesPaginationOutputWithContext(ctx context.Context) GetRouteFilterRulesPaginationOutput { + return o +} + +// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 +func (o GetRouteFilterRulesPaginationOutput) Limit() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFilterRulesPagination) int { return v.Limit }).(pulumi.IntOutput) +} + +// URL relative to the last item in the response. +func (o GetRouteFilterRulesPaginationOutput) Next() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesPagination) string { return v.Next }).(pulumi.StringOutput) +} + +// The page offset for the pagination request. Index of the first element. Default is 0. +func (o GetRouteFilterRulesPaginationOutput) Offset() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFilterRulesPagination) int { return v.Offset }).(pulumi.IntOutput) +} + +// URL relative to the first item in the response. +func (o GetRouteFilterRulesPaginationOutput) Previous() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFilterRulesPagination) string { return v.Previous }).(pulumi.StringOutput) +} + +// Total number of elements returned. +func (o GetRouteFilterRulesPaginationOutput) Total() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFilterRulesPagination) int { return v.Total }).(pulumi.IntOutput) +} + +type GetRouteFilterRulesPaginationArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFilterRulesPaginationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFilterRulesPagination)(nil)).Elem() +} + +func (o GetRouteFilterRulesPaginationArrayOutput) ToGetRouteFilterRulesPaginationArrayOutput() GetRouteFilterRulesPaginationArrayOutput { + return o +} + +func (o GetRouteFilterRulesPaginationArrayOutput) ToGetRouteFilterRulesPaginationArrayOutputWithContext(ctx context.Context) GetRouteFilterRulesPaginationArrayOutput { + return o +} + +func (o GetRouteFilterRulesPaginationArrayOutput) Index(i pulumi.IntInput) GetRouteFilterRulesPaginationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFilterRulesPagination { + return vs[0].([]GetRouteFilterRulesPagination)[vs[1].(int)] + }).(GetRouteFilterRulesPaginationOutput) +} + +type GetRouteFiltersData struct { + ChangeLogs []GetRouteFiltersDataChangeLog `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes []GetRouteFiltersDataChange `pulumi:"changes"` + // The number of Fabric Connections that this Route Filter is attached to + ConnectionsCount int `pulumi:"connectionsCount"` + // Optional description to add to the Route Filter you will be creating + Description string `pulumi:"description"` + // Route filter URI + Href string `pulumi:"href"` + // Name of the Route Filter + Name string `pulumi:"name"` + // The action that will be taken on ip ranges that don't match the rules present within the Route Filter + NotMatchedRuleAction string `pulumi:"notMatchedRuleAction"` + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Projects []GetRouteFiltersDataProject `pulumi:"projects"` + // The number of Route Filter Rules attached to this Route Filter + RulesCount int `pulumi:"rulesCount"` + // State of the Route Filter in its lifecycle + State string `pulumi:"state"` + // Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + Type string `pulumi:"type"` + // Equinix Assigned ID for Route Filter + Uuid string `pulumi:"uuid"` +} + +// GetRouteFiltersDataInput is an input type that accepts GetRouteFiltersDataArgs and GetRouteFiltersDataOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataInput` via: +// +// GetRouteFiltersDataArgs{...} +type GetRouteFiltersDataInput interface { + pulumi.Input + + ToGetRouteFiltersDataOutput() GetRouteFiltersDataOutput + ToGetRouteFiltersDataOutputWithContext(context.Context) GetRouteFiltersDataOutput +} + +type GetRouteFiltersDataArgs struct { + ChangeLogs GetRouteFiltersDataChangeLogArrayInput `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes GetRouteFiltersDataChangeArrayInput `pulumi:"changes"` + // The number of Fabric Connections that this Route Filter is attached to + ConnectionsCount pulumi.IntInput `pulumi:"connectionsCount"` + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringInput `pulumi:"description"` + // Route filter URI + Href pulumi.StringInput `pulumi:"href"` + // Name of the Route Filter + Name pulumi.StringInput `pulumi:"name"` + // The action that will be taken on ip ranges that don't match the rules present within the Route Filter + NotMatchedRuleAction pulumi.StringInput `pulumi:"notMatchedRuleAction"` + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Projects GetRouteFiltersDataProjectArrayInput `pulumi:"projects"` + // The number of Route Filter Rules attached to this Route Filter + RulesCount pulumi.IntInput `pulumi:"rulesCount"` + // State of the Route Filter in its lifecycle + State pulumi.StringInput `pulumi:"state"` + // Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + Type pulumi.StringInput `pulumi:"type"` + // Equinix Assigned ID for Route Filter + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFiltersDataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersData)(nil)).Elem() +} + +func (i GetRouteFiltersDataArgs) ToGetRouteFiltersDataOutput() GetRouteFiltersDataOutput { + return i.ToGetRouteFiltersDataOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataArgs) ToGetRouteFiltersDataOutputWithContext(ctx context.Context) GetRouteFiltersDataOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataOutput) +} + +// GetRouteFiltersDataArrayInput is an input type that accepts GetRouteFiltersDataArray and GetRouteFiltersDataArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataArrayInput` via: +// +// GetRouteFiltersDataArray{ GetRouteFiltersDataArgs{...} } +type GetRouteFiltersDataArrayInput interface { + pulumi.Input + + ToGetRouteFiltersDataArrayOutput() GetRouteFiltersDataArrayOutput + ToGetRouteFiltersDataArrayOutputWithContext(context.Context) GetRouteFiltersDataArrayOutput +} + +type GetRouteFiltersDataArray []GetRouteFiltersDataInput + +func (GetRouteFiltersDataArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersData)(nil)).Elem() +} + +func (i GetRouteFiltersDataArray) ToGetRouteFiltersDataArrayOutput() GetRouteFiltersDataArrayOutput { + return i.ToGetRouteFiltersDataArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataArray) ToGetRouteFiltersDataArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataArrayOutput) +} + +type GetRouteFiltersDataOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersData)(nil)).Elem() +} + +func (o GetRouteFiltersDataOutput) ToGetRouteFiltersDataOutput() GetRouteFiltersDataOutput { + return o +} + +func (o GetRouteFiltersDataOutput) ToGetRouteFiltersDataOutputWithContext(ctx context.Context) GetRouteFiltersDataOutput { + return o +} + +func (o GetRouteFiltersDataOutput) ChangeLogs() GetRouteFiltersDataChangeLogArrayOutput { + return o.ApplyT(func(v GetRouteFiltersData) []GetRouteFiltersDataChangeLog { return v.ChangeLogs }).(GetRouteFiltersDataChangeLogArrayOutput) +} + +// An object with the details of the previous change applied on the Route Filter +func (o GetRouteFiltersDataOutput) Changes() GetRouteFiltersDataChangeArrayOutput { + return o.ApplyT(func(v GetRouteFiltersData) []GetRouteFiltersDataChange { return v.Changes }).(GetRouteFiltersDataChangeArrayOutput) +} + +// The number of Fabric Connections that this Route Filter is attached to +func (o GetRouteFiltersDataOutput) ConnectionsCount() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFiltersData) int { return v.ConnectionsCount }).(pulumi.IntOutput) +} + +// Optional description to add to the Route Filter you will be creating +func (o GetRouteFiltersDataOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.Description }).(pulumi.StringOutput) +} + +// Route filter URI +func (o GetRouteFiltersDataOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.Href }).(pulumi.StringOutput) +} + +// Name of the Route Filter +func (o GetRouteFiltersDataOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.Name }).(pulumi.StringOutput) +} + +// The action that will be taken on ip ranges that don't match the rules present within the Route Filter +func (o GetRouteFiltersDataOutput) NotMatchedRuleAction() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.NotMatchedRuleAction }).(pulumi.StringOutput) +} + +// The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to +func (o GetRouteFiltersDataOutput) Projects() GetRouteFiltersDataProjectArrayOutput { + return o.ApplyT(func(v GetRouteFiltersData) []GetRouteFiltersDataProject { return v.Projects }).(GetRouteFiltersDataProjectArrayOutput) +} + +// The number of Route Filter Rules attached to this Route Filter +func (o GetRouteFiltersDataOutput) RulesCount() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFiltersData) int { return v.RulesCount }).(pulumi.IntOutput) +} + +// State of the Route Filter in its lifecycle +func (o GetRouteFiltersDataOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.State }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] +func (o GetRouteFiltersDataOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter +func (o GetRouteFiltersDataOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersData) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFiltersDataArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersData)(nil)).Elem() +} + +func (o GetRouteFiltersDataArrayOutput) ToGetRouteFiltersDataArrayOutput() GetRouteFiltersDataArrayOutput { + return o +} + +func (o GetRouteFiltersDataArrayOutput) ToGetRouteFiltersDataArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataArrayOutput { + return o +} + +func (o GetRouteFiltersDataArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersDataOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersData { + return vs[0].([]GetRouteFiltersData)[vs[1].(int)] + }).(GetRouteFiltersDataOutput) +} + +type GetRouteFiltersDataChange struct { + // The URI of the previous Route Filter Change + Href string `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type string `pulumi:"type"` + // Unique identifier for the previous change + Uuid string `pulumi:"uuid"` +} + +// GetRouteFiltersDataChangeInput is an input type that accepts GetRouteFiltersDataChangeArgs and GetRouteFiltersDataChangeOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataChangeInput` via: +// +// GetRouteFiltersDataChangeArgs{...} +type GetRouteFiltersDataChangeInput interface { + pulumi.Input + + ToGetRouteFiltersDataChangeOutput() GetRouteFiltersDataChangeOutput + ToGetRouteFiltersDataChangeOutputWithContext(context.Context) GetRouteFiltersDataChangeOutput +} + +type GetRouteFiltersDataChangeArgs struct { + // The URI of the previous Route Filter Change + Href pulumi.StringInput `pulumi:"href"` + // Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + Type pulumi.StringInput `pulumi:"type"` + // Unique identifier for the previous change + Uuid pulumi.StringInput `pulumi:"uuid"` +} + +func (GetRouteFiltersDataChangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataChange)(nil)).Elem() +} + +func (i GetRouteFiltersDataChangeArgs) ToGetRouteFiltersDataChangeOutput() GetRouteFiltersDataChangeOutput { + return i.ToGetRouteFiltersDataChangeOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataChangeArgs) ToGetRouteFiltersDataChangeOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataChangeOutput) +} + +// GetRouteFiltersDataChangeArrayInput is an input type that accepts GetRouteFiltersDataChangeArray and GetRouteFiltersDataChangeArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataChangeArrayInput` via: +// +// GetRouteFiltersDataChangeArray{ GetRouteFiltersDataChangeArgs{...} } +type GetRouteFiltersDataChangeArrayInput interface { + pulumi.Input + + ToGetRouteFiltersDataChangeArrayOutput() GetRouteFiltersDataChangeArrayOutput + ToGetRouteFiltersDataChangeArrayOutputWithContext(context.Context) GetRouteFiltersDataChangeArrayOutput +} + +type GetRouteFiltersDataChangeArray []GetRouteFiltersDataChangeInput + +func (GetRouteFiltersDataChangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataChange)(nil)).Elem() +} + +func (i GetRouteFiltersDataChangeArray) ToGetRouteFiltersDataChangeArrayOutput() GetRouteFiltersDataChangeArrayOutput { + return i.ToGetRouteFiltersDataChangeArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataChangeArray) ToGetRouteFiltersDataChangeArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataChangeArrayOutput) +} + +type GetRouteFiltersDataChangeOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataChangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataChange)(nil)).Elem() +} + +func (o GetRouteFiltersDataChangeOutput) ToGetRouteFiltersDataChangeOutput() GetRouteFiltersDataChangeOutput { + return o +} + +func (o GetRouteFiltersDataChangeOutput) ToGetRouteFiltersDataChangeOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeOutput { + return o +} + +// The URI of the previous Route Filter Change +func (o GetRouteFiltersDataChangeOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChange) string { return v.Href }).(pulumi.StringOutput) +} + +// Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] +func (o GetRouteFiltersDataChangeOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChange) string { return v.Type }).(pulumi.StringOutput) +} + +// Unique identifier for the previous change +func (o GetRouteFiltersDataChangeOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChange) string { return v.Uuid }).(pulumi.StringOutput) +} + +type GetRouteFiltersDataChangeArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataChangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataChange)(nil)).Elem() +} + +func (o GetRouteFiltersDataChangeArrayOutput) ToGetRouteFiltersDataChangeArrayOutput() GetRouteFiltersDataChangeArrayOutput { + return o +} + +func (o GetRouteFiltersDataChangeArrayOutput) ToGetRouteFiltersDataChangeArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeArrayOutput { + return o +} + +func (o GetRouteFiltersDataChangeArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersDataChangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersDataChange { + return vs[0].([]GetRouteFiltersDataChange)[vs[1].(int)] + }).(GetRouteFiltersDataChangeOutput) +} + +type GetRouteFiltersDataChangeLog struct { + // Created by User Key + CreatedBy string `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail string `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName string `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime string `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy string `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail string `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName string `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime string `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy string `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail string `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName string `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime string `pulumi:"updatedDateTime"` +} + +// GetRouteFiltersDataChangeLogInput is an input type that accepts GetRouteFiltersDataChangeLogArgs and GetRouteFiltersDataChangeLogOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataChangeLogInput` via: +// +// GetRouteFiltersDataChangeLogArgs{...} +type GetRouteFiltersDataChangeLogInput interface { + pulumi.Input + + ToGetRouteFiltersDataChangeLogOutput() GetRouteFiltersDataChangeLogOutput + ToGetRouteFiltersDataChangeLogOutputWithContext(context.Context) GetRouteFiltersDataChangeLogOutput +} + +type GetRouteFiltersDataChangeLogArgs struct { + // Created by User Key + CreatedBy pulumi.StringInput `pulumi:"createdBy"` + // Created by User Email Address + CreatedByEmail pulumi.StringInput `pulumi:"createdByEmail"` + // Created by User Full Name + CreatedByFullName pulumi.StringInput `pulumi:"createdByFullName"` + // Created by Date and Time + CreatedDateTime pulumi.StringInput `pulumi:"createdDateTime"` + // Deleted by User Key + DeletedBy pulumi.StringInput `pulumi:"deletedBy"` + // Deleted by User Email Address + DeletedByEmail pulumi.StringInput `pulumi:"deletedByEmail"` + // Deleted by User Full Name + DeletedByFullName pulumi.StringInput `pulumi:"deletedByFullName"` + // Deleted by Date and Time + DeletedDateTime pulumi.StringInput `pulumi:"deletedDateTime"` + // Updated by User Key + UpdatedBy pulumi.StringInput `pulumi:"updatedBy"` + // Updated by User Email Address + UpdatedByEmail pulumi.StringInput `pulumi:"updatedByEmail"` + // Updated by User Full Name + UpdatedByFullName pulumi.StringInput `pulumi:"updatedByFullName"` + // Updated by Date and Time + UpdatedDateTime pulumi.StringInput `pulumi:"updatedDateTime"` +} + +func (GetRouteFiltersDataChangeLogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataChangeLog)(nil)).Elem() +} + +func (i GetRouteFiltersDataChangeLogArgs) ToGetRouteFiltersDataChangeLogOutput() GetRouteFiltersDataChangeLogOutput { + return i.ToGetRouteFiltersDataChangeLogOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataChangeLogArgs) ToGetRouteFiltersDataChangeLogOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeLogOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataChangeLogOutput) +} + +// GetRouteFiltersDataChangeLogArrayInput is an input type that accepts GetRouteFiltersDataChangeLogArray and GetRouteFiltersDataChangeLogArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataChangeLogArrayInput` via: +// +// GetRouteFiltersDataChangeLogArray{ GetRouteFiltersDataChangeLogArgs{...} } +type GetRouteFiltersDataChangeLogArrayInput interface { + pulumi.Input + + ToGetRouteFiltersDataChangeLogArrayOutput() GetRouteFiltersDataChangeLogArrayOutput + ToGetRouteFiltersDataChangeLogArrayOutputWithContext(context.Context) GetRouteFiltersDataChangeLogArrayOutput +} + +type GetRouteFiltersDataChangeLogArray []GetRouteFiltersDataChangeLogInput + +func (GetRouteFiltersDataChangeLogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataChangeLog)(nil)).Elem() +} + +func (i GetRouteFiltersDataChangeLogArray) ToGetRouteFiltersDataChangeLogArrayOutput() GetRouteFiltersDataChangeLogArrayOutput { + return i.ToGetRouteFiltersDataChangeLogArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataChangeLogArray) ToGetRouteFiltersDataChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeLogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataChangeLogArrayOutput) +} + +type GetRouteFiltersDataChangeLogOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataChangeLogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataChangeLog)(nil)).Elem() +} + +func (o GetRouteFiltersDataChangeLogOutput) ToGetRouteFiltersDataChangeLogOutput() GetRouteFiltersDataChangeLogOutput { + return o +} + +func (o GetRouteFiltersDataChangeLogOutput) ToGetRouteFiltersDataChangeLogOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeLogOutput { + return o +} + +// Created by User Key +func (o GetRouteFiltersDataChangeLogOutput) CreatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.CreatedBy }).(pulumi.StringOutput) +} + +// Created by User Email Address +func (o GetRouteFiltersDataChangeLogOutput) CreatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.CreatedByEmail }).(pulumi.StringOutput) +} + +// Created by User Full Name +func (o GetRouteFiltersDataChangeLogOutput) CreatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.CreatedByFullName }).(pulumi.StringOutput) +} + +// Created by Date and Time +func (o GetRouteFiltersDataChangeLogOutput) CreatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.CreatedDateTime }).(pulumi.StringOutput) +} + +// Deleted by User Key +func (o GetRouteFiltersDataChangeLogOutput) DeletedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.DeletedBy }).(pulumi.StringOutput) +} + +// Deleted by User Email Address +func (o GetRouteFiltersDataChangeLogOutput) DeletedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.DeletedByEmail }).(pulumi.StringOutput) +} + +// Deleted by User Full Name +func (o GetRouteFiltersDataChangeLogOutput) DeletedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.DeletedByFullName }).(pulumi.StringOutput) +} + +// Deleted by Date and Time +func (o GetRouteFiltersDataChangeLogOutput) DeletedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.DeletedDateTime }).(pulumi.StringOutput) +} + +// Updated by User Key +func (o GetRouteFiltersDataChangeLogOutput) UpdatedBy() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.UpdatedBy }).(pulumi.StringOutput) +} + +// Updated by User Email Address +func (o GetRouteFiltersDataChangeLogOutput) UpdatedByEmail() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.UpdatedByEmail }).(pulumi.StringOutput) +} + +// Updated by User Full Name +func (o GetRouteFiltersDataChangeLogOutput) UpdatedByFullName() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.UpdatedByFullName }).(pulumi.StringOutput) +} + +// Updated by Date and Time +func (o GetRouteFiltersDataChangeLogOutput) UpdatedDateTime() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataChangeLog) string { return v.UpdatedDateTime }).(pulumi.StringOutput) +} + +type GetRouteFiltersDataChangeLogArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataChangeLogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataChangeLog)(nil)).Elem() +} + +func (o GetRouteFiltersDataChangeLogArrayOutput) ToGetRouteFiltersDataChangeLogArrayOutput() GetRouteFiltersDataChangeLogArrayOutput { + return o +} + +func (o GetRouteFiltersDataChangeLogArrayOutput) ToGetRouteFiltersDataChangeLogArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataChangeLogArrayOutput { + return o +} + +func (o GetRouteFiltersDataChangeLogArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersDataChangeLogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersDataChangeLog { + return vs[0].([]GetRouteFiltersDataChangeLog)[vs[1].(int)] + }).(GetRouteFiltersDataChangeLogOutput) +} + +type GetRouteFiltersDataProject struct { + // URI of the Fabric Project + Href string `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId string `pulumi:"projectId"` +} + +// GetRouteFiltersDataProjectInput is an input type that accepts GetRouteFiltersDataProjectArgs and GetRouteFiltersDataProjectOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataProjectInput` via: +// +// GetRouteFiltersDataProjectArgs{...} +type GetRouteFiltersDataProjectInput interface { + pulumi.Input + + ToGetRouteFiltersDataProjectOutput() GetRouteFiltersDataProjectOutput + ToGetRouteFiltersDataProjectOutputWithContext(context.Context) GetRouteFiltersDataProjectOutput +} + +type GetRouteFiltersDataProjectArgs struct { + // URI of the Fabric Project + Href pulumi.StringInput `pulumi:"href"` + // Project id associated with Fabric Project + ProjectId pulumi.StringInput `pulumi:"projectId"` +} + +func (GetRouteFiltersDataProjectArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataProject)(nil)).Elem() +} + +func (i GetRouteFiltersDataProjectArgs) ToGetRouteFiltersDataProjectOutput() GetRouteFiltersDataProjectOutput { + return i.ToGetRouteFiltersDataProjectOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataProjectArgs) ToGetRouteFiltersDataProjectOutputWithContext(ctx context.Context) GetRouteFiltersDataProjectOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataProjectOutput) +} + +// GetRouteFiltersDataProjectArrayInput is an input type that accepts GetRouteFiltersDataProjectArray and GetRouteFiltersDataProjectArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersDataProjectArrayInput` via: +// +// GetRouteFiltersDataProjectArray{ GetRouteFiltersDataProjectArgs{...} } +type GetRouteFiltersDataProjectArrayInput interface { + pulumi.Input + + ToGetRouteFiltersDataProjectArrayOutput() GetRouteFiltersDataProjectArrayOutput + ToGetRouteFiltersDataProjectArrayOutputWithContext(context.Context) GetRouteFiltersDataProjectArrayOutput +} + +type GetRouteFiltersDataProjectArray []GetRouteFiltersDataProjectInput + +func (GetRouteFiltersDataProjectArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataProject)(nil)).Elem() +} + +func (i GetRouteFiltersDataProjectArray) ToGetRouteFiltersDataProjectArrayOutput() GetRouteFiltersDataProjectArrayOutput { + return i.ToGetRouteFiltersDataProjectArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersDataProjectArray) ToGetRouteFiltersDataProjectArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataProjectArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersDataProjectArrayOutput) +} + +type GetRouteFiltersDataProjectOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataProjectOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersDataProject)(nil)).Elem() +} + +func (o GetRouteFiltersDataProjectOutput) ToGetRouteFiltersDataProjectOutput() GetRouteFiltersDataProjectOutput { + return o +} + +func (o GetRouteFiltersDataProjectOutput) ToGetRouteFiltersDataProjectOutputWithContext(ctx context.Context) GetRouteFiltersDataProjectOutput { + return o +} + +// URI of the Fabric Project +func (o GetRouteFiltersDataProjectOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataProject) string { return v.Href }).(pulumi.StringOutput) +} + +// Project id associated with Fabric Project +func (o GetRouteFiltersDataProjectOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersDataProject) string { return v.ProjectId }).(pulumi.StringOutput) +} + +type GetRouteFiltersDataProjectArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersDataProjectArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersDataProject)(nil)).Elem() +} + +func (o GetRouteFiltersDataProjectArrayOutput) ToGetRouteFiltersDataProjectArrayOutput() GetRouteFiltersDataProjectArrayOutput { + return o +} + +func (o GetRouteFiltersDataProjectArrayOutput) ToGetRouteFiltersDataProjectArrayOutputWithContext(ctx context.Context) GetRouteFiltersDataProjectArrayOutput { + return o +} + +func (o GetRouteFiltersDataProjectArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersDataProjectOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersDataProject { + return vs[0].([]GetRouteFiltersDataProject)[vs[1].(int)] + }).(GetRouteFiltersDataProjectOutput) +} + +type GetRouteFiltersFilter struct { + // Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + Operator string `pulumi:"operator"` + // The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + Property string `pulumi:"property"` + // The values that you want to apply the property+operator combination to in order to filter your data search + Values []string `pulumi:"values"` +} + +// GetRouteFiltersFilterInput is an input type that accepts GetRouteFiltersFilterArgs and GetRouteFiltersFilterOutput values. +// You can construct a concrete instance of `GetRouteFiltersFilterInput` via: +// +// GetRouteFiltersFilterArgs{...} +type GetRouteFiltersFilterInput interface { + pulumi.Input + + ToGetRouteFiltersFilterOutput() GetRouteFiltersFilterOutput + ToGetRouteFiltersFilterOutputWithContext(context.Context) GetRouteFiltersFilterOutput +} + +type GetRouteFiltersFilterArgs struct { + // Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + Operator pulumi.StringInput `pulumi:"operator"` + // The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + Property pulumi.StringInput `pulumi:"property"` + // The values that you want to apply the property+operator combination to in order to filter your data search + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (GetRouteFiltersFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersFilter)(nil)).Elem() +} + +func (i GetRouteFiltersFilterArgs) ToGetRouteFiltersFilterOutput() GetRouteFiltersFilterOutput { + return i.ToGetRouteFiltersFilterOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersFilterArgs) ToGetRouteFiltersFilterOutputWithContext(ctx context.Context) GetRouteFiltersFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersFilterOutput) +} + +// GetRouteFiltersFilterArrayInput is an input type that accepts GetRouteFiltersFilterArray and GetRouteFiltersFilterArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersFilterArrayInput` via: +// +// GetRouteFiltersFilterArray{ GetRouteFiltersFilterArgs{...} } +type GetRouteFiltersFilterArrayInput interface { + pulumi.Input + + ToGetRouteFiltersFilterArrayOutput() GetRouteFiltersFilterArrayOutput + ToGetRouteFiltersFilterArrayOutputWithContext(context.Context) GetRouteFiltersFilterArrayOutput +} + +type GetRouteFiltersFilterArray []GetRouteFiltersFilterInput + +func (GetRouteFiltersFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersFilter)(nil)).Elem() +} + +func (i GetRouteFiltersFilterArray) ToGetRouteFiltersFilterArrayOutput() GetRouteFiltersFilterArrayOutput { + return i.ToGetRouteFiltersFilterArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersFilterArray) ToGetRouteFiltersFilterArrayOutputWithContext(ctx context.Context) GetRouteFiltersFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersFilterArrayOutput) +} + +type GetRouteFiltersFilterOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersFilter)(nil)).Elem() +} + +func (o GetRouteFiltersFilterOutput) ToGetRouteFiltersFilterOutput() GetRouteFiltersFilterOutput { + return o +} + +func (o GetRouteFiltersFilterOutput) ToGetRouteFiltersFilterOutputWithContext(ctx context.Context) GetRouteFiltersFilterOutput { + return o +} + +// Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] +func (o GetRouteFiltersFilterOutput) Operator() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersFilter) string { return v.Operator }).(pulumi.StringOutput) +} + +// The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" +func (o GetRouteFiltersFilterOutput) Property() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersFilter) string { return v.Property }).(pulumi.StringOutput) +} + +// The values that you want to apply the property+operator combination to in order to filter your data search +func (o GetRouteFiltersFilterOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetRouteFiltersFilter) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type GetRouteFiltersFilterArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersFilter)(nil)).Elem() +} + +func (o GetRouteFiltersFilterArrayOutput) ToGetRouteFiltersFilterArrayOutput() GetRouteFiltersFilterArrayOutput { + return o +} + +func (o GetRouteFiltersFilterArrayOutput) ToGetRouteFiltersFilterArrayOutputWithContext(ctx context.Context) GetRouteFiltersFilterArrayOutput { + return o +} + +func (o GetRouteFiltersFilterArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersFilter { + return vs[0].([]GetRouteFiltersFilter)[vs[1].(int)] + }).(GetRouteFiltersFilterOutput) +} + +type GetRouteFiltersPagination struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit int `pulumi:"limit"` + // URL relative to the last item in the response. + Next string `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset int `pulumi:"offset"` + // URL relative to the first item in the response. + Previous string `pulumi:"previous"` + // Total number of elements returned. + Total int `pulumi:"total"` +} + +// GetRouteFiltersPaginationInput is an input type that accepts GetRouteFiltersPaginationArgs and GetRouteFiltersPaginationOutput values. +// You can construct a concrete instance of `GetRouteFiltersPaginationInput` via: +// +// GetRouteFiltersPaginationArgs{...} +type GetRouteFiltersPaginationInput interface { + pulumi.Input + + ToGetRouteFiltersPaginationOutput() GetRouteFiltersPaginationOutput + ToGetRouteFiltersPaginationOutputWithContext(context.Context) GetRouteFiltersPaginationOutput +} + +type GetRouteFiltersPaginationArgs struct { + // Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Limit pulumi.IntInput `pulumi:"limit"` + // URL relative to the last item in the response. + Next pulumi.StringInput `pulumi:"next"` + // The page offset for the pagination request. Index of the first element. Default is 0. + Offset pulumi.IntInput `pulumi:"offset"` + // URL relative to the first item in the response. + Previous pulumi.StringInput `pulumi:"previous"` + // Total number of elements returned. + Total pulumi.IntInput `pulumi:"total"` +} + +func (GetRouteFiltersPaginationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersPagination)(nil)).Elem() +} + +func (i GetRouteFiltersPaginationArgs) ToGetRouteFiltersPaginationOutput() GetRouteFiltersPaginationOutput { + return i.ToGetRouteFiltersPaginationOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersPaginationArgs) ToGetRouteFiltersPaginationOutputWithContext(ctx context.Context) GetRouteFiltersPaginationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersPaginationOutput) +} + +func (i GetRouteFiltersPaginationArgs) ToGetRouteFiltersPaginationPtrOutput() GetRouteFiltersPaginationPtrOutput { + return i.ToGetRouteFiltersPaginationPtrOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersPaginationArgs) ToGetRouteFiltersPaginationPtrOutputWithContext(ctx context.Context) GetRouteFiltersPaginationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersPaginationOutput).ToGetRouteFiltersPaginationPtrOutputWithContext(ctx) +} + +// GetRouteFiltersPaginationPtrInput is an input type that accepts GetRouteFiltersPaginationArgs, GetRouteFiltersPaginationPtr and GetRouteFiltersPaginationPtrOutput values. +// You can construct a concrete instance of `GetRouteFiltersPaginationPtrInput` via: +// +// GetRouteFiltersPaginationArgs{...} +// +// or: +// +// nil +type GetRouteFiltersPaginationPtrInput interface { + pulumi.Input + + ToGetRouteFiltersPaginationPtrOutput() GetRouteFiltersPaginationPtrOutput + ToGetRouteFiltersPaginationPtrOutputWithContext(context.Context) GetRouteFiltersPaginationPtrOutput +} + +type getRouteFiltersPaginationPtrType GetRouteFiltersPaginationArgs + +func GetRouteFiltersPaginationPtr(v *GetRouteFiltersPaginationArgs) GetRouteFiltersPaginationPtrInput { + return (*getRouteFiltersPaginationPtrType)(v) +} + +func (*getRouteFiltersPaginationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**GetRouteFiltersPagination)(nil)).Elem() +} + +func (i *getRouteFiltersPaginationPtrType) ToGetRouteFiltersPaginationPtrOutput() GetRouteFiltersPaginationPtrOutput { + return i.ToGetRouteFiltersPaginationPtrOutputWithContext(context.Background()) +} + +func (i *getRouteFiltersPaginationPtrType) ToGetRouteFiltersPaginationPtrOutputWithContext(ctx context.Context) GetRouteFiltersPaginationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersPaginationPtrOutput) +} + +type GetRouteFiltersPaginationOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersPaginationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersPagination)(nil)).Elem() +} + +func (o GetRouteFiltersPaginationOutput) ToGetRouteFiltersPaginationOutput() GetRouteFiltersPaginationOutput { + return o +} + +func (o GetRouteFiltersPaginationOutput) ToGetRouteFiltersPaginationOutputWithContext(ctx context.Context) GetRouteFiltersPaginationOutput { + return o +} + +func (o GetRouteFiltersPaginationOutput) ToGetRouteFiltersPaginationPtrOutput() GetRouteFiltersPaginationPtrOutput { + return o.ToGetRouteFiltersPaginationPtrOutputWithContext(context.Background()) +} + +func (o GetRouteFiltersPaginationOutput) ToGetRouteFiltersPaginationPtrOutputWithContext(ctx context.Context) GetRouteFiltersPaginationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v GetRouteFiltersPagination) *GetRouteFiltersPagination { + return &v + }).(GetRouteFiltersPaginationPtrOutput) +} + +// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 +func (o GetRouteFiltersPaginationOutput) Limit() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFiltersPagination) int { return v.Limit }).(pulumi.IntOutput) +} + +// URL relative to the last item in the response. +func (o GetRouteFiltersPaginationOutput) Next() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersPagination) string { return v.Next }).(pulumi.StringOutput) +} + +// The page offset for the pagination request. Index of the first element. Default is 0. +func (o GetRouteFiltersPaginationOutput) Offset() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFiltersPagination) int { return v.Offset }).(pulumi.IntOutput) +} + +// URL relative to the first item in the response. +func (o GetRouteFiltersPaginationOutput) Previous() pulumi.StringOutput { + return o.ApplyT(func(v GetRouteFiltersPagination) string { return v.Previous }).(pulumi.StringOutput) +} + +// Total number of elements returned. +func (o GetRouteFiltersPaginationOutput) Total() pulumi.IntOutput { + return o.ApplyT(func(v GetRouteFiltersPagination) int { return v.Total }).(pulumi.IntOutput) +} + +type GetRouteFiltersPaginationPtrOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersPaginationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**GetRouteFiltersPagination)(nil)).Elem() +} + +func (o GetRouteFiltersPaginationPtrOutput) ToGetRouteFiltersPaginationPtrOutput() GetRouteFiltersPaginationPtrOutput { + return o +} + +func (o GetRouteFiltersPaginationPtrOutput) ToGetRouteFiltersPaginationPtrOutputWithContext(ctx context.Context) GetRouteFiltersPaginationPtrOutput { + return o +} + +func (o GetRouteFiltersPaginationPtrOutput) Elem() GetRouteFiltersPaginationOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) GetRouteFiltersPagination { + if v != nil { + return *v + } + var ret GetRouteFiltersPagination + return ret + }).(GetRouteFiltersPaginationOutput) +} + +// Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 +func (o GetRouteFiltersPaginationPtrOutput) Limit() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) *int { + if v == nil { + return nil + } + return &v.Limit + }).(pulumi.IntPtrOutput) +} + +// URL relative to the last item in the response. +func (o GetRouteFiltersPaginationPtrOutput) Next() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) *string { + if v == nil { + return nil + } + return &v.Next + }).(pulumi.StringPtrOutput) +} + +// The page offset for the pagination request. Index of the first element. Default is 0. +func (o GetRouteFiltersPaginationPtrOutput) Offset() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) *int { + if v == nil { + return nil + } + return &v.Offset + }).(pulumi.IntPtrOutput) +} + +// URL relative to the first item in the response. +func (o GetRouteFiltersPaginationPtrOutput) Previous() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) *string { + if v == nil { + return nil + } + return &v.Previous + }).(pulumi.StringPtrOutput) +} + +// Total number of elements returned. +func (o GetRouteFiltersPaginationPtrOutput) Total() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GetRouteFiltersPagination) *int { + if v == nil { + return nil + } + return &v.Total + }).(pulumi.IntPtrOutput) +} + +type GetRouteFiltersSort struct { + // The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + Direction *string `pulumi:"direction"` + // The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + Property *string `pulumi:"property"` +} + +// GetRouteFiltersSortInput is an input type that accepts GetRouteFiltersSortArgs and GetRouteFiltersSortOutput values. +// You can construct a concrete instance of `GetRouteFiltersSortInput` via: +// +// GetRouteFiltersSortArgs{...} +type GetRouteFiltersSortInput interface { + pulumi.Input + + ToGetRouteFiltersSortOutput() GetRouteFiltersSortOutput + ToGetRouteFiltersSortOutputWithContext(context.Context) GetRouteFiltersSortOutput +} + +type GetRouteFiltersSortArgs struct { + // The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + Direction pulumi.StringPtrInput `pulumi:"direction"` + // The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + Property pulumi.StringPtrInput `pulumi:"property"` +} + +func (GetRouteFiltersSortArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersSort)(nil)).Elem() +} + +func (i GetRouteFiltersSortArgs) ToGetRouteFiltersSortOutput() GetRouteFiltersSortOutput { + return i.ToGetRouteFiltersSortOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersSortArgs) ToGetRouteFiltersSortOutputWithContext(ctx context.Context) GetRouteFiltersSortOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersSortOutput) +} + +// GetRouteFiltersSortArrayInput is an input type that accepts GetRouteFiltersSortArray and GetRouteFiltersSortArrayOutput values. +// You can construct a concrete instance of `GetRouteFiltersSortArrayInput` via: +// +// GetRouteFiltersSortArray{ GetRouteFiltersSortArgs{...} } +type GetRouteFiltersSortArrayInput interface { + pulumi.Input + + ToGetRouteFiltersSortArrayOutput() GetRouteFiltersSortArrayOutput + ToGetRouteFiltersSortArrayOutputWithContext(context.Context) GetRouteFiltersSortArrayOutput +} + +type GetRouteFiltersSortArray []GetRouteFiltersSortInput + +func (GetRouteFiltersSortArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersSort)(nil)).Elem() +} + +func (i GetRouteFiltersSortArray) ToGetRouteFiltersSortArrayOutput() GetRouteFiltersSortArrayOutput { + return i.ToGetRouteFiltersSortArrayOutputWithContext(context.Background()) +} + +func (i GetRouteFiltersSortArray) ToGetRouteFiltersSortArrayOutputWithContext(ctx context.Context) GetRouteFiltersSortArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRouteFiltersSortArrayOutput) +} + +type GetRouteFiltersSortOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersSortOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRouteFiltersSort)(nil)).Elem() +} + +func (o GetRouteFiltersSortOutput) ToGetRouteFiltersSortOutput() GetRouteFiltersSortOutput { + return o +} + +func (o GetRouteFiltersSortOutput) ToGetRouteFiltersSortOutputWithContext(ctx context.Context) GetRouteFiltersSortOutput { + return o +} + +// The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC +func (o GetRouteFiltersSortOutput) Direction() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetRouteFiltersSort) *string { return v.Direction }).(pulumi.StringPtrOutput) +} + +// The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime +func (o GetRouteFiltersSortOutput) Property() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetRouteFiltersSort) *string { return v.Property }).(pulumi.StringPtrOutput) +} + +type GetRouteFiltersSortArrayOutput struct{ *pulumi.OutputState } + +func (GetRouteFiltersSortArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRouteFiltersSort)(nil)).Elem() +} + +func (o GetRouteFiltersSortArrayOutput) ToGetRouteFiltersSortArrayOutput() GetRouteFiltersSortArrayOutput { + return o +} + +func (o GetRouteFiltersSortArrayOutput) ToGetRouteFiltersSortArrayOutputWithContext(ctx context.Context) GetRouteFiltersSortArrayOutput { + return o +} + +func (o GetRouteFiltersSortArrayOutput) Index(i pulumi.IntInput) GetRouteFiltersSortOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRouteFiltersSort { + return vs[0].([]GetRouteFiltersSort)[vs[1].(int)] + }).(GetRouteFiltersSortOutput) +} + type GetRoutingProtocolBfd struct { // Bidirectional Forwarding Detection enablement Enabled bool `pulumi:"enabled"` @@ -42546,6 +45990,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*NetworkOperationPtrInput)(nil)).Elem(), NetworkOperationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkProjectInput)(nil)).Elem(), NetworkProjectArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkProjectPtrInput)(nil)).Elem(), NetworkProjectArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterChangeInput)(nil)).Elem(), RouteFilterChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterChangeArrayInput)(nil)).Elem(), RouteFilterChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterChangeLogInput)(nil)).Elem(), RouteFilterChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterChangeLogArrayInput)(nil)).Elem(), RouteFilterChangeLogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterProjectInput)(nil)).Elem(), RouteFilterProjectArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterProjectPtrInput)(nil)).Elem(), RouteFilterProjectArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleChangeInput)(nil)).Elem(), RouteFilterRuleChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleChangeArrayInput)(nil)).Elem(), RouteFilterRuleChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleChangeLogInput)(nil)).Elem(), RouteFilterRuleChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleChangeLogArrayInput)(nil)).Elem(), RouteFilterRuleChangeLogArray{}) pulumi.RegisterInputType(reflect.TypeOf((*RoutingProtocolBfdInput)(nil)).Elem(), RoutingProtocolBfdArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RoutingProtocolBfdPtrInput)(nil)).Elem(), RoutingProtocolBfdArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RoutingProtocolBgpIpv4Input)(nil)).Elem(), RoutingProtocolBgpIpv4Args{}) @@ -42681,6 +46135,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionOrderInput)(nil)).Elem(), GetConnectionOrderArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionProjectInput)(nil)).Elem(), GetConnectionProjectArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionRedundancyInput)(nil)).Elem(), GetConnectionRedundancyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionRouteFiltersDataInput)(nil)).Elem(), GetConnectionRouteFiltersDataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionRouteFiltersDataArrayInput)(nil)).Elem(), GetConnectionRouteFiltersDataArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionRouteFiltersPaginationInput)(nil)).Elem(), GetConnectionRouteFiltersPaginationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionRouteFiltersPaginationArrayInput)(nil)).Elem(), GetConnectionRouteFiltersPaginationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionZSideInput)(nil)).Elem(), GetConnectionZSideArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionZSideAccessPointInput)(nil)).Elem(), GetConnectionZSideAccessPointArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetConnectionZSideAccessPointPtrInput)(nil)).Elem(), GetConnectionZSideAccessPointArgs{}) @@ -42865,6 +46323,38 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetPortsDatumRedundancyInput)(nil)).Elem(), GetPortsDatumRedundancyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetPortsDatumRedundancyArrayInput)(nil)).Elem(), GetPortsDatumRedundancyArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetPortsFilterInput)(nil)).Elem(), GetPortsFilterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterChangeInput)(nil)).Elem(), GetRouteFilterChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterChangeArrayInput)(nil)).Elem(), GetRouteFilterChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterChangeLogInput)(nil)).Elem(), GetRouteFilterChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterChangeLogArrayInput)(nil)).Elem(), GetRouteFilterChangeLogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterProjectInput)(nil)).Elem(), GetRouteFilterProjectArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterProjectArrayInput)(nil)).Elem(), GetRouteFilterProjectArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRuleChangeInput)(nil)).Elem(), GetRouteFilterRuleChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRuleChangeArrayInput)(nil)).Elem(), GetRouteFilterRuleChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRuleChangeLogInput)(nil)).Elem(), GetRouteFilterRuleChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRuleChangeLogArrayInput)(nil)).Elem(), GetRouteFilterRuleChangeLogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataInput)(nil)).Elem(), GetRouteFilterRulesDataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataArrayInput)(nil)).Elem(), GetRouteFilterRulesDataArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataChangeInput)(nil)).Elem(), GetRouteFilterRulesDataChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataChangeArrayInput)(nil)).Elem(), GetRouteFilterRulesDataChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataChangeLogInput)(nil)).Elem(), GetRouteFilterRulesDataChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesDataChangeLogArrayInput)(nil)).Elem(), GetRouteFilterRulesDataChangeLogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesPaginationInput)(nil)).Elem(), GetRouteFilterRulesPaginationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFilterRulesPaginationArrayInput)(nil)).Elem(), GetRouteFilterRulesPaginationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataInput)(nil)).Elem(), GetRouteFiltersDataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataArrayInput)(nil)).Elem(), GetRouteFiltersDataArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataChangeInput)(nil)).Elem(), GetRouteFiltersDataChangeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataChangeArrayInput)(nil)).Elem(), GetRouteFiltersDataChangeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataChangeLogInput)(nil)).Elem(), GetRouteFiltersDataChangeLogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataChangeLogArrayInput)(nil)).Elem(), GetRouteFiltersDataChangeLogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataProjectInput)(nil)).Elem(), GetRouteFiltersDataProjectArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersDataProjectArrayInput)(nil)).Elem(), GetRouteFiltersDataProjectArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersFilterInput)(nil)).Elem(), GetRouteFiltersFilterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersFilterArrayInput)(nil)).Elem(), GetRouteFiltersFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersPaginationInput)(nil)).Elem(), GetRouteFiltersPaginationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersPaginationPtrInput)(nil)).Elem(), GetRouteFiltersPaginationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersSortInput)(nil)).Elem(), GetRouteFiltersSortArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRouteFiltersSortArrayInput)(nil)).Elem(), GetRouteFiltersSortArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetRoutingProtocolBfdInput)(nil)).Elem(), GetRoutingProtocolBfdArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetRoutingProtocolBgpIpv4Input)(nil)).Elem(), GetRoutingProtocolBgpIpv4Args{}) pulumi.RegisterInputType(reflect.TypeOf((*GetRoutingProtocolBgpIpv6Input)(nil)).Elem(), GetRoutingProtocolBgpIpv6Args{}) @@ -43057,6 +46547,16 @@ func init() { pulumi.RegisterOutputType(NetworkOperationPtrOutput{}) pulumi.RegisterOutputType(NetworkProjectOutput{}) pulumi.RegisterOutputType(NetworkProjectPtrOutput{}) + pulumi.RegisterOutputType(RouteFilterChangeOutput{}) + pulumi.RegisterOutputType(RouteFilterChangeArrayOutput{}) + pulumi.RegisterOutputType(RouteFilterChangeLogOutput{}) + pulumi.RegisterOutputType(RouteFilterChangeLogArrayOutput{}) + pulumi.RegisterOutputType(RouteFilterProjectOutput{}) + pulumi.RegisterOutputType(RouteFilterProjectPtrOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleChangeOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleChangeArrayOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleChangeLogOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleChangeLogArrayOutput{}) pulumi.RegisterOutputType(RoutingProtocolBfdOutput{}) pulumi.RegisterOutputType(RoutingProtocolBfdPtrOutput{}) pulumi.RegisterOutputType(RoutingProtocolBgpIpv4Output{}) @@ -43192,6 +46692,10 @@ func init() { pulumi.RegisterOutputType(GetConnectionOrderOutput{}) pulumi.RegisterOutputType(GetConnectionProjectOutput{}) pulumi.RegisterOutputType(GetConnectionRedundancyOutput{}) + pulumi.RegisterOutputType(GetConnectionRouteFiltersDataOutput{}) + pulumi.RegisterOutputType(GetConnectionRouteFiltersDataArrayOutput{}) + pulumi.RegisterOutputType(GetConnectionRouteFiltersPaginationOutput{}) + pulumi.RegisterOutputType(GetConnectionRouteFiltersPaginationArrayOutput{}) pulumi.RegisterOutputType(GetConnectionZSideOutput{}) pulumi.RegisterOutputType(GetConnectionZSideAccessPointOutput{}) pulumi.RegisterOutputType(GetConnectionZSideAccessPointPtrOutput{}) @@ -43376,6 +46880,38 @@ func init() { pulumi.RegisterOutputType(GetPortsDatumRedundancyOutput{}) pulumi.RegisterOutputType(GetPortsDatumRedundancyArrayOutput{}) pulumi.RegisterOutputType(GetPortsFilterOutput{}) + pulumi.RegisterOutputType(GetRouteFilterChangeOutput{}) + pulumi.RegisterOutputType(GetRouteFilterChangeArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterChangeLogOutput{}) + pulumi.RegisterOutputType(GetRouteFilterChangeLogArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterProjectOutput{}) + pulumi.RegisterOutputType(GetRouteFilterProjectArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRuleChangeOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRuleChangeArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRuleChangeLogOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRuleChangeLogArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataChangeOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataChangeArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataChangeLogOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesDataChangeLogArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesPaginationOutput{}) + pulumi.RegisterOutputType(GetRouteFilterRulesPaginationArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataChangeOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataChangeArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataChangeLogOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataChangeLogArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataProjectOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersDataProjectArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersFilterOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersFilterArrayOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersPaginationOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersPaginationPtrOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersSortOutput{}) + pulumi.RegisterOutputType(GetRouteFiltersSortArrayOutput{}) pulumi.RegisterOutputType(GetRoutingProtocolBfdOutput{}) pulumi.RegisterOutputType(GetRoutingProtocolBgpIpv4Output{}) pulumi.RegisterOutputType(GetRoutingProtocolBgpIpv6Output{}) diff --git a/sdk/go/equinix/fabric/routeFilter.go b/sdk/go/equinix/fabric/routeFilter.go new file mode 100644 index 000000000..a28c4b2d5 --- /dev/null +++ b/sdk/go/equinix/fabric/routeFilter.go @@ -0,0 +1,356 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "errors" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters +type RouteFilter struct { + pulumi.CustomResourceState + + ChangeLogs RouteFilterChangeLogArrayOutput `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes RouteFilterChangeArrayOutput `pulumi:"changes"` + // The number of Fabric Connections that this Route Filter is attached to + ConnectionsCount pulumi.IntOutput `pulumi:"connectionsCount"` + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringOutput `pulumi:"description"` + // Route filter URI + Href pulumi.StringOutput `pulumi:"href"` + // Name of the Route Filter + Name pulumi.StringOutput `pulumi:"name"` + // The action that will be taken on ip ranges that don't match the rules present within the Route Filter + NotMatchedRuleAction pulumi.StringOutput `pulumi:"notMatchedRuleAction"` + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Project RouteFilterProjectOutput `pulumi:"project"` + // The number of Route Filter Rules attached to this Route Filter + RulesCount pulumi.IntOutput `pulumi:"rulesCount"` + // State of the Route Filter in its lifecycle + State pulumi.StringOutput `pulumi:"state"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type pulumi.StringOutput `pulumi:"type"` + // Equinix Assigned ID for Route Filter + Uuid pulumi.StringOutput `pulumi:"uuid"` +} + +// NewRouteFilter registers a new resource with the given unique name, arguments, and options. +func NewRouteFilter(ctx *pulumi.Context, + name string, args *RouteFilterArgs, opts ...pulumi.ResourceOption) (*RouteFilter, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Project == nil { + return nil, errors.New("invalid value for required argument 'Project'") + } + if args.Type == nil { + return nil, errors.New("invalid value for required argument 'Type'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource RouteFilter + err := ctx.RegisterResource("equinix:fabric/routeFilter:RouteFilter", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRouteFilter gets an existing RouteFilter resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetRouteFilter(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RouteFilterState, opts ...pulumi.ResourceOption) (*RouteFilter, error) { + var resource RouteFilter + err := ctx.ReadResource("equinix:fabric/routeFilter:RouteFilter", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering RouteFilter resources. +type routeFilterState struct { + ChangeLogs []RouteFilterChangeLog `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes []RouteFilterChange `pulumi:"changes"` + // The number of Fabric Connections that this Route Filter is attached to + ConnectionsCount *int `pulumi:"connectionsCount"` + // Optional description to add to the Route Filter you will be creating + Description *string `pulumi:"description"` + // Route filter URI + Href *string `pulumi:"href"` + // Name of the Route Filter + Name *string `pulumi:"name"` + // The action that will be taken on ip ranges that don't match the rules present within the Route Filter + NotMatchedRuleAction *string `pulumi:"notMatchedRuleAction"` + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Project *RouteFilterProject `pulumi:"project"` + // The number of Route Filter Rules attached to this Route Filter + RulesCount *int `pulumi:"rulesCount"` + // State of the Route Filter in its lifecycle + State *string `pulumi:"state"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type *string `pulumi:"type"` + // Equinix Assigned ID for Route Filter + Uuid *string `pulumi:"uuid"` +} + +type RouteFilterState struct { + ChangeLogs RouteFilterChangeLogArrayInput + // An object with the details of the previous change applied on the Route Filter + Changes RouteFilterChangeArrayInput + // The number of Fabric Connections that this Route Filter is attached to + ConnectionsCount pulumi.IntPtrInput + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringPtrInput + // Route filter URI + Href pulumi.StringPtrInput + // Name of the Route Filter + Name pulumi.StringPtrInput + // The action that will be taken on ip ranges that don't match the rules present within the Route Filter + NotMatchedRuleAction pulumi.StringPtrInput + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Project RouteFilterProjectPtrInput + // The number of Route Filter Rules attached to this Route Filter + RulesCount pulumi.IntPtrInput + // State of the Route Filter in its lifecycle + State pulumi.StringPtrInput + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type pulumi.StringPtrInput + // Equinix Assigned ID for Route Filter + Uuid pulumi.StringPtrInput +} + +func (RouteFilterState) ElementType() reflect.Type { + return reflect.TypeOf((*routeFilterState)(nil)).Elem() +} + +type routeFilterArgs struct { + // Optional description to add to the Route Filter you will be creating + Description *string `pulumi:"description"` + // Name of the Route Filter + Name *string `pulumi:"name"` + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Project RouteFilterProject `pulumi:"project"` + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type string `pulumi:"type"` +} + +// The set of arguments for constructing a RouteFilter resource. +type RouteFilterArgs struct { + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringPtrInput + // Name of the Route Filter + Name pulumi.StringPtrInput + // The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + Project RouteFilterProjectInput + // Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + Type pulumi.StringInput +} + +func (RouteFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*routeFilterArgs)(nil)).Elem() +} + +type RouteFilterInput interface { + pulumi.Input + + ToRouteFilterOutput() RouteFilterOutput + ToRouteFilterOutputWithContext(ctx context.Context) RouteFilterOutput +} + +func (*RouteFilter) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilter)(nil)).Elem() +} + +func (i *RouteFilter) ToRouteFilterOutput() RouteFilterOutput { + return i.ToRouteFilterOutputWithContext(context.Background()) +} + +func (i *RouteFilter) ToRouteFilterOutputWithContext(ctx context.Context) RouteFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterOutput) +} + +// RouteFilterArrayInput is an input type that accepts RouteFilterArray and RouteFilterArrayOutput values. +// You can construct a concrete instance of `RouteFilterArrayInput` via: +// +// RouteFilterArray{ RouteFilterArgs{...} } +type RouteFilterArrayInput interface { + pulumi.Input + + ToRouteFilterArrayOutput() RouteFilterArrayOutput + ToRouteFilterArrayOutputWithContext(context.Context) RouteFilterArrayOutput +} + +type RouteFilterArray []RouteFilterInput + +func (RouteFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouteFilter)(nil)).Elem() +} + +func (i RouteFilterArray) ToRouteFilterArrayOutput() RouteFilterArrayOutput { + return i.ToRouteFilterArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterArray) ToRouteFilterArrayOutputWithContext(ctx context.Context) RouteFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterArrayOutput) +} + +// RouteFilterMapInput is an input type that accepts RouteFilterMap and RouteFilterMapOutput values. +// You can construct a concrete instance of `RouteFilterMapInput` via: +// +// RouteFilterMap{ "key": RouteFilterArgs{...} } +type RouteFilterMapInput interface { + pulumi.Input + + ToRouteFilterMapOutput() RouteFilterMapOutput + ToRouteFilterMapOutputWithContext(context.Context) RouteFilterMapOutput +} + +type RouteFilterMap map[string]RouteFilterInput + +func (RouteFilterMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouteFilter)(nil)).Elem() +} + +func (i RouteFilterMap) ToRouteFilterMapOutput() RouteFilterMapOutput { + return i.ToRouteFilterMapOutputWithContext(context.Background()) +} + +func (i RouteFilterMap) ToRouteFilterMapOutputWithContext(ctx context.Context) RouteFilterMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterMapOutput) +} + +type RouteFilterOutput struct{ *pulumi.OutputState } + +func (RouteFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilter)(nil)).Elem() +} + +func (o RouteFilterOutput) ToRouteFilterOutput() RouteFilterOutput { + return o +} + +func (o RouteFilterOutput) ToRouteFilterOutputWithContext(ctx context.Context) RouteFilterOutput { + return o +} + +func (o RouteFilterOutput) ChangeLogs() RouteFilterChangeLogArrayOutput { + return o.ApplyT(func(v *RouteFilter) RouteFilterChangeLogArrayOutput { return v.ChangeLogs }).(RouteFilterChangeLogArrayOutput) +} + +// An object with the details of the previous change applied on the Route Filter +func (o RouteFilterOutput) Changes() RouteFilterChangeArrayOutput { + return o.ApplyT(func(v *RouteFilter) RouteFilterChangeArrayOutput { return v.Changes }).(RouteFilterChangeArrayOutput) +} + +// The number of Fabric Connections that this Route Filter is attached to +func (o RouteFilterOutput) ConnectionsCount() pulumi.IntOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.IntOutput { return v.ConnectionsCount }).(pulumi.IntOutput) +} + +// Optional description to add to the Route Filter you will be creating +func (o RouteFilterOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) +} + +// Route filter URI +func (o RouteFilterOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.Href }).(pulumi.StringOutput) +} + +// Name of the Route Filter +func (o RouteFilterOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The action that will be taken on ip ranges that don't match the rules present within the Route Filter +func (o RouteFilterOutput) NotMatchedRuleAction() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.NotMatchedRuleAction }).(pulumi.StringOutput) +} + +// The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to +func (o RouteFilterOutput) Project() RouteFilterProjectOutput { + return o.ApplyT(func(v *RouteFilter) RouteFilterProjectOutput { return v.Project }).(RouteFilterProjectOutput) +} + +// The number of Route Filter Rules attached to this Route Filter +func (o RouteFilterOutput) RulesCount() pulumi.IntOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.IntOutput { return v.RulesCount }).(pulumi.IntOutput) +} + +// State of the Route Filter in its lifecycle +func (o RouteFilterOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] +func (o RouteFilterOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter +func (o RouteFilterOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilter) pulumi.StringOutput { return v.Uuid }).(pulumi.StringOutput) +} + +type RouteFilterArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouteFilter)(nil)).Elem() +} + +func (o RouteFilterArrayOutput) ToRouteFilterArrayOutput() RouteFilterArrayOutput { + return o +} + +func (o RouteFilterArrayOutput) ToRouteFilterArrayOutputWithContext(ctx context.Context) RouteFilterArrayOutput { + return o +} + +func (o RouteFilterArrayOutput) Index(i pulumi.IntInput) RouteFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *RouteFilter { + return vs[0].([]*RouteFilter)[vs[1].(int)] + }).(RouteFilterOutput) +} + +type RouteFilterMapOutput struct{ *pulumi.OutputState } + +func (RouteFilterMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouteFilter)(nil)).Elem() +} + +func (o RouteFilterMapOutput) ToRouteFilterMapOutput() RouteFilterMapOutput { + return o +} + +func (o RouteFilterMapOutput) ToRouteFilterMapOutputWithContext(ctx context.Context) RouteFilterMapOutput { + return o +} + +func (o RouteFilterMapOutput) MapIndex(k pulumi.StringInput) RouteFilterOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *RouteFilter { + return vs[0].(map[string]*RouteFilter)[vs[1].(string)] + }).(RouteFilterOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterInput)(nil)).Elem(), &RouteFilter{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterArrayInput)(nil)).Elem(), RouteFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterMapInput)(nil)).Elem(), RouteFilterMap{}) + pulumi.RegisterOutputType(RouteFilterOutput{}) + pulumi.RegisterOutputType(RouteFilterArrayOutput{}) + pulumi.RegisterOutputType(RouteFilterMapOutput{}) +} diff --git a/sdk/go/equinix/fabric/routeFilterRule.go b/sdk/go/equinix/fabric/routeFilterRule.go new file mode 100644 index 000000000..afb30cb94 --- /dev/null +++ b/sdk/go/equinix/fabric/routeFilterRule.go @@ -0,0 +1,393 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fabric + +import ( + "context" + "reflect" + + "errors" + + "github.com/equinix/pulumi-equinix/sdk/go/equinix/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule +// +// Additional Documentation: +// * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm +// * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/equinix/pulumi-equinix/sdk/go/equinix/fabric" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// rfRule, err := fabric.NewRouteFilterRule(ctx, "rfRule", &fabric.RouteFilterRuleArgs{ +// RouteFilterId: pulumi.String(""), +// Prefix: pulumi.String("192.168.0.0/24"), +// PrefixMatch: pulumi.String("exact"), +// Description: pulumi.String("Route Filter Rule for X Purpose"), +// }) +// if err != nil { +// return err +// } +// ctx.Export("routeFilterRuleId", rfRule.ID()) +// ctx.Export("routeFilterId", rfRule.RouteFilterId) +// ctx.Export("routeFilterRulePrefix", rfRule.Prefix) +// ctx.Export("routeFilterRulePrefixMatch", rfRule.PrefixMatch) +// return nil +// }) +// } +// +// ``` +type RouteFilterRule struct { + pulumi.CustomResourceState + + // Action that will be taken on IP Addresses matching the rule + Action pulumi.StringOutput `pulumi:"action"` + ChangeLogs RouteFilterRuleChangeLogArrayOutput `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes RouteFilterRuleChangeArrayOutput `pulumi:"changes"` + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringOutput `pulumi:"description"` + // Route filter rules URI + Href pulumi.StringOutput `pulumi:"href"` + // Name of the Route Filter + Name pulumi.StringOutput `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix pulumi.StringOutput `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch pulumi.StringOutput `pulumi:"prefixMatch"` + // UUID of the Route Filter Policy to apply this Rule to + RouteFilterId pulumi.StringOutput `pulumi:"routeFilterId"` + // State of the Route Filter Rule in its lifecycle + State pulumi.StringOutput `pulumi:"state"` + // Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + Type pulumi.StringOutput `pulumi:"type"` + // Equinix Assigned ID for Route Filter Rule + Uuid pulumi.StringOutput `pulumi:"uuid"` +} + +// NewRouteFilterRule registers a new resource with the given unique name, arguments, and options. +func NewRouteFilterRule(ctx *pulumi.Context, + name string, args *RouteFilterRuleArgs, opts ...pulumi.ResourceOption) (*RouteFilterRule, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Prefix == nil { + return nil, errors.New("invalid value for required argument 'Prefix'") + } + if args.RouteFilterId == nil { + return nil, errors.New("invalid value for required argument 'RouteFilterId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource RouteFilterRule + err := ctx.RegisterResource("equinix:fabric/routeFilterRule:RouteFilterRule", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRouteFilterRule gets an existing RouteFilterRule resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetRouteFilterRule(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RouteFilterRuleState, opts ...pulumi.ResourceOption) (*RouteFilterRule, error) { + var resource RouteFilterRule + err := ctx.ReadResource("equinix:fabric/routeFilterRule:RouteFilterRule", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering RouteFilterRule resources. +type routeFilterRuleState struct { + // Action that will be taken on IP Addresses matching the rule + Action *string `pulumi:"action"` + ChangeLogs []RouteFilterRuleChangeLog `pulumi:"changeLogs"` + // An object with the details of the previous change applied on the Route Filter + Changes []RouteFilterRuleChange `pulumi:"changes"` + // Optional description to add to the Route Filter you will be creating + Description *string `pulumi:"description"` + // Route filter rules URI + Href *string `pulumi:"href"` + // Name of the Route Filter + Name *string `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix *string `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch *string `pulumi:"prefixMatch"` + // UUID of the Route Filter Policy to apply this Rule to + RouteFilterId *string `pulumi:"routeFilterId"` + // State of the Route Filter Rule in its lifecycle + State *string `pulumi:"state"` + // Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + Type *string `pulumi:"type"` + // Equinix Assigned ID for Route Filter Rule + Uuid *string `pulumi:"uuid"` +} + +type RouteFilterRuleState struct { + // Action that will be taken on IP Addresses matching the rule + Action pulumi.StringPtrInput + ChangeLogs RouteFilterRuleChangeLogArrayInput + // An object with the details of the previous change applied on the Route Filter + Changes RouteFilterRuleChangeArrayInput + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringPtrInput + // Route filter rules URI + Href pulumi.StringPtrInput + // Name of the Route Filter + Name pulumi.StringPtrInput + // IP Address Prefix to Filter on + Prefix pulumi.StringPtrInput + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch pulumi.StringPtrInput + // UUID of the Route Filter Policy to apply this Rule to + RouteFilterId pulumi.StringPtrInput + // State of the Route Filter Rule in its lifecycle + State pulumi.StringPtrInput + // Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + Type pulumi.StringPtrInput + // Equinix Assigned ID for Route Filter Rule + Uuid pulumi.StringPtrInput +} + +func (RouteFilterRuleState) ElementType() reflect.Type { + return reflect.TypeOf((*routeFilterRuleState)(nil)).Elem() +} + +type routeFilterRuleArgs struct { + // Optional description to add to the Route Filter you will be creating + Description *string `pulumi:"description"` + // Name of the Route Filter + Name *string `pulumi:"name"` + // IP Address Prefix to Filter on + Prefix string `pulumi:"prefix"` + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch *string `pulumi:"prefixMatch"` + // UUID of the Route Filter Policy to apply this Rule to + RouteFilterId string `pulumi:"routeFilterId"` +} + +// The set of arguments for constructing a RouteFilterRule resource. +type RouteFilterRuleArgs struct { + // Optional description to add to the Route Filter you will be creating + Description pulumi.StringPtrInput + // Name of the Route Filter + Name pulumi.StringPtrInput + // IP Address Prefix to Filter on + Prefix pulumi.StringInput + // Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + PrefixMatch pulumi.StringPtrInput + // UUID of the Route Filter Policy to apply this Rule to + RouteFilterId pulumi.StringInput +} + +func (RouteFilterRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*routeFilterRuleArgs)(nil)).Elem() +} + +type RouteFilterRuleInput interface { + pulumi.Input + + ToRouteFilterRuleOutput() RouteFilterRuleOutput + ToRouteFilterRuleOutputWithContext(ctx context.Context) RouteFilterRuleOutput +} + +func (*RouteFilterRule) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilterRule)(nil)).Elem() +} + +func (i *RouteFilterRule) ToRouteFilterRuleOutput() RouteFilterRuleOutput { + return i.ToRouteFilterRuleOutputWithContext(context.Background()) +} + +func (i *RouteFilterRule) ToRouteFilterRuleOutputWithContext(ctx context.Context) RouteFilterRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleOutput) +} + +// RouteFilterRuleArrayInput is an input type that accepts RouteFilterRuleArray and RouteFilterRuleArrayOutput values. +// You can construct a concrete instance of `RouteFilterRuleArrayInput` via: +// +// RouteFilterRuleArray{ RouteFilterRuleArgs{...} } +type RouteFilterRuleArrayInput interface { + pulumi.Input + + ToRouteFilterRuleArrayOutput() RouteFilterRuleArrayOutput + ToRouteFilterRuleArrayOutputWithContext(context.Context) RouteFilterRuleArrayOutput +} + +type RouteFilterRuleArray []RouteFilterRuleInput + +func (RouteFilterRuleArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouteFilterRule)(nil)).Elem() +} + +func (i RouteFilterRuleArray) ToRouteFilterRuleArrayOutput() RouteFilterRuleArrayOutput { + return i.ToRouteFilterRuleArrayOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleArray) ToRouteFilterRuleArrayOutputWithContext(ctx context.Context) RouteFilterRuleArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleArrayOutput) +} + +// RouteFilterRuleMapInput is an input type that accepts RouteFilterRuleMap and RouteFilterRuleMapOutput values. +// You can construct a concrete instance of `RouteFilterRuleMapInput` via: +// +// RouteFilterRuleMap{ "key": RouteFilterRuleArgs{...} } +type RouteFilterRuleMapInput interface { + pulumi.Input + + ToRouteFilterRuleMapOutput() RouteFilterRuleMapOutput + ToRouteFilterRuleMapOutputWithContext(context.Context) RouteFilterRuleMapOutput +} + +type RouteFilterRuleMap map[string]RouteFilterRuleInput + +func (RouteFilterRuleMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouteFilterRule)(nil)).Elem() +} + +func (i RouteFilterRuleMap) ToRouteFilterRuleMapOutput() RouteFilterRuleMapOutput { + return i.ToRouteFilterRuleMapOutputWithContext(context.Background()) +} + +func (i RouteFilterRuleMap) ToRouteFilterRuleMapOutputWithContext(ctx context.Context) RouteFilterRuleMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouteFilterRuleMapOutput) +} + +type RouteFilterRuleOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RouteFilterRule)(nil)).Elem() +} + +func (o RouteFilterRuleOutput) ToRouteFilterRuleOutput() RouteFilterRuleOutput { + return o +} + +func (o RouteFilterRuleOutput) ToRouteFilterRuleOutputWithContext(ctx context.Context) RouteFilterRuleOutput { + return o +} + +// Action that will be taken on IP Addresses matching the rule +func (o RouteFilterRuleOutput) Action() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Action }).(pulumi.StringOutput) +} + +func (o RouteFilterRuleOutput) ChangeLogs() RouteFilterRuleChangeLogArrayOutput { + return o.ApplyT(func(v *RouteFilterRule) RouteFilterRuleChangeLogArrayOutput { return v.ChangeLogs }).(RouteFilterRuleChangeLogArrayOutput) +} + +// An object with the details of the previous change applied on the Route Filter +func (o RouteFilterRuleOutput) Changes() RouteFilterRuleChangeArrayOutput { + return o.ApplyT(func(v *RouteFilterRule) RouteFilterRuleChangeArrayOutput { return v.Changes }).(RouteFilterRuleChangeArrayOutput) +} + +// Optional description to add to the Route Filter you will be creating +func (o RouteFilterRuleOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) +} + +// Route filter rules URI +func (o RouteFilterRuleOutput) Href() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Href }).(pulumi.StringOutput) +} + +// Name of the Route Filter +func (o RouteFilterRuleOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// IP Address Prefix to Filter on +func (o RouteFilterRuleOutput) Prefix() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Prefix }).(pulumi.StringOutput) +} + +// Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" +func (o RouteFilterRuleOutput) PrefixMatch() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.PrefixMatch }).(pulumi.StringOutput) +} + +// UUID of the Route Filter Policy to apply this Rule to +func (o RouteFilterRuleOutput) RouteFilterId() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.RouteFilterId }).(pulumi.StringOutput) +} + +// State of the Route Filter Rule in its lifecycle +func (o RouteFilterRuleOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] +func (o RouteFilterRuleOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +// Equinix Assigned ID for Route Filter Rule +func (o RouteFilterRuleOutput) Uuid() pulumi.StringOutput { + return o.ApplyT(func(v *RouteFilterRule) pulumi.StringOutput { return v.Uuid }).(pulumi.StringOutput) +} + +type RouteFilterRuleArrayOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouteFilterRule)(nil)).Elem() +} + +func (o RouteFilterRuleArrayOutput) ToRouteFilterRuleArrayOutput() RouteFilterRuleArrayOutput { + return o +} + +func (o RouteFilterRuleArrayOutput) ToRouteFilterRuleArrayOutputWithContext(ctx context.Context) RouteFilterRuleArrayOutput { + return o +} + +func (o RouteFilterRuleArrayOutput) Index(i pulumi.IntInput) RouteFilterRuleOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *RouteFilterRule { + return vs[0].([]*RouteFilterRule)[vs[1].(int)] + }).(RouteFilterRuleOutput) +} + +type RouteFilterRuleMapOutput struct{ *pulumi.OutputState } + +func (RouteFilterRuleMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouteFilterRule)(nil)).Elem() +} + +func (o RouteFilterRuleMapOutput) ToRouteFilterRuleMapOutput() RouteFilterRuleMapOutput { + return o +} + +func (o RouteFilterRuleMapOutput) ToRouteFilterRuleMapOutputWithContext(ctx context.Context) RouteFilterRuleMapOutput { + return o +} + +func (o RouteFilterRuleMapOutput) MapIndex(k pulumi.StringInput) RouteFilterRuleOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *RouteFilterRule { + return vs[0].(map[string]*RouteFilterRule)[vs[1].(string)] + }).(RouteFilterRuleOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleInput)(nil)).Elem(), &RouteFilterRule{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleArrayInput)(nil)).Elem(), RouteFilterRuleArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouteFilterRuleMapInput)(nil)).Elem(), RouteFilterRuleMap{}) + pulumi.RegisterOutputType(RouteFilterRuleOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleArrayOutput{}) + pulumi.RegisterOutputType(RouteFilterRuleMapOutput{}) +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilter.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilter.java new file mode 100644 index 000000000..cca6c4702 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilter.java @@ -0,0 +1,222 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.equinix.pulumi.Utilities; +import com.equinix.pulumi.fabric.ConnectionRouteFilterArgs; +import com.equinix.pulumi.fabric.inputs.ConnectionRouteFilterState; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.equinix.fabric.ConnectionRouteFilter;
+ * import com.pulumi.equinix.fabric.ConnectionRouteFilterArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var policyAttachment = new ConnectionRouteFilter("policyAttachment", ConnectionRouteFilterArgs.builder()
+ *             .connectionId("")
+ *             .routeFilterId("")
+ *             .direction("INBOUND")
+ *             .build());
+ * 
+ *         ctx.export("connectionRouteFilterId", policyAttachment.id());
+ *         ctx.export("connectionRouteFilterConnectionId", policyAttachment.connectionId());
+ *         ctx.export("connectionRouteFilterDirection", policyAttachment.direction());
+ *         ctx.export("connectionRouteFilterType", policyAttachment.type());
+ *         ctx.export("connectionRouteFilterAttachmentStatus", policyAttachment.attachmentStatus());
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + */ +@ResourceType(type="equinix:fabric/connectionRouteFilter:ConnectionRouteFilter") +public class ConnectionRouteFilter extends com.pulumi.resources.CustomResource { + /** + * Status of the Route Filter Policy attachment lifecycle + * + */ + @Export(name="attachmentStatus", refs={String.class}, tree="[0]") + private Output attachmentStatus; + + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + public Output attachmentStatus() { + return this.attachmentStatus; + } + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Export(name="connectionId", refs={String.class}, tree="[0]") + private Output connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public Output connectionId() { + return this.connectionId; + } + /** + * Direction of the filtering of the attached Route Filter Policy + * + */ + @Export(name="direction", refs={String.class}, tree="[0]") + private Output direction; + + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + public Output direction() { + return this.direction; + } + /** + * URI to the attached Route Filter Policy on the Connection + * + */ + @Export(name="href", refs={String.class}, tree="[0]") + private Output href; + + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + public Output href() { + return this.href; + } + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + @Export(name="routeFilterId", refs={String.class}, tree="[0]") + private Output routeFilterId; + + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public Output type() { + return this.type; + } + /** + * Equinix Assigned ID for Route Filter Policy + * + */ + @Export(name="uuid", refs={String.class}, tree="[0]") + private Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + public Output uuid() { + return this.uuid; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public ConnectionRouteFilter(java.lang.String name) { + this(name, ConnectionRouteFilterArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public ConnectionRouteFilter(java.lang.String name, ConnectionRouteFilterArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public ConnectionRouteFilter(java.lang.String name, ConnectionRouteFilterArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private ConnectionRouteFilter(java.lang.String name, Output id, @Nullable ConnectionRouteFilterState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/connectionRouteFilter:ConnectionRouteFilter", name, state, makeResourceOptions(options, id), false); + } + + private static ConnectionRouteFilterArgs makeArgs(ConnectionRouteFilterArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? ConnectionRouteFilterArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static ConnectionRouteFilter get(java.lang.String name, Output id, @Nullable ConnectionRouteFilterState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new ConnectionRouteFilter(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilterArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilterArgs.java new file mode 100644 index 000000000..ea98c8659 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/ConnectionRouteFilterArgs.java @@ -0,0 +1,165 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class ConnectionRouteFilterArgs extends com.pulumi.resources.ResourceArgs { + + public static final ConnectionRouteFilterArgs Empty = new ConnectionRouteFilterArgs(); + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId", required=true) + private Output connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public Output connectionId() { + return this.connectionId; + } + + /** + * Direction of the filtering of the attached Route Filter Policy + * + */ + @Import(name="direction", required=true) + private Output direction; + + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + public Output direction() { + return this.direction; + } + + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + @Import(name="routeFilterId", required=true) + private Output routeFilterId; + + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + + private ConnectionRouteFilterArgs() {} + + private ConnectionRouteFilterArgs(ConnectionRouteFilterArgs $) { + this.connectionId = $.connectionId; + this.direction = $.direction; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ConnectionRouteFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ConnectionRouteFilterArgs $; + + public Builder() { + $ = new ConnectionRouteFilterArgs(); + } + + public Builder(ConnectionRouteFilterArgs defaults) { + $ = new ConnectionRouteFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(Output connectionId) { + $.connectionId = connectionId; + return this; + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + return connectionId(Output.of(connectionId)); + } + + /** + * @param direction Direction of the filtering of the attached Route Filter Policy + * + * @return builder + * + */ + public Builder direction(Output direction) { + $.direction = direction; + return this; + } + + /** + * @param direction Direction of the filtering of the attached Route Filter Policy + * + * @return builder + * + */ + public Builder direction(String direction) { + return direction(Output.of(direction)); + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + public ConnectionRouteFilterArgs build() { + if ($.connectionId == null) { + throw new MissingRequiredPropertyException("ConnectionRouteFilterArgs", "connectionId"); + } + if ($.direction == null) { + throw new MissingRequiredPropertyException("ConnectionRouteFilterArgs", "direction"); + } + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("ConnectionRouteFilterArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/FabricFunctions.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/FabricFunctions.java index 9b8e7e797..f7d14f167 100644 --- a/sdk/java/src/main/java/com/equinix/pulumi/fabric/FabricFunctions.java +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/FabricFunctions.java @@ -10,6 +10,10 @@ import com.equinix.pulumi.fabric.inputs.GetCloudRoutersPlainArgs; import com.equinix.pulumi.fabric.inputs.GetConnectionArgs; import com.equinix.pulumi.fabric.inputs.GetConnectionPlainArgs; +import com.equinix.pulumi.fabric.inputs.GetConnectionRouteFilterArgs; +import com.equinix.pulumi.fabric.inputs.GetConnectionRouteFilterPlainArgs; +import com.equinix.pulumi.fabric.inputs.GetConnectionRouteFiltersArgs; +import com.equinix.pulumi.fabric.inputs.GetConnectionRouteFiltersPlainArgs; import com.equinix.pulumi.fabric.inputs.GetConnectionsArgs; import com.equinix.pulumi.fabric.inputs.GetConnectionsPlainArgs; import com.equinix.pulumi.fabric.inputs.GetMarketplaceSubscriptionArgs; @@ -22,6 +26,14 @@ import com.equinix.pulumi.fabric.inputs.GetPortPlainArgs; import com.equinix.pulumi.fabric.inputs.GetPortsArgs; import com.equinix.pulumi.fabric.inputs.GetPortsPlainArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterPlainArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterRuleArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterRulePlainArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterRulesArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFilterRulesPlainArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersPlainArgs; import com.equinix.pulumi.fabric.inputs.GetRoutingProtocolArgs; import com.equinix.pulumi.fabric.inputs.GetRoutingProtocolPlainArgs; import com.equinix.pulumi.fabric.inputs.GetServiceProfileArgs; @@ -31,12 +43,18 @@ import com.equinix.pulumi.fabric.outputs.GetCloudRouterResult; import com.equinix.pulumi.fabric.outputs.GetCloudRoutersResult; import com.equinix.pulumi.fabric.outputs.GetConnectionResult; +import com.equinix.pulumi.fabric.outputs.GetConnectionRouteFilterResult; +import com.equinix.pulumi.fabric.outputs.GetConnectionRouteFiltersResult; import com.equinix.pulumi.fabric.outputs.GetConnectionsResult; import com.equinix.pulumi.fabric.outputs.GetMarketplaceSubscriptionResult; import com.equinix.pulumi.fabric.outputs.GetNetworkResult; import com.equinix.pulumi.fabric.outputs.GetNetworksResult; import com.equinix.pulumi.fabric.outputs.GetPortResult; import com.equinix.pulumi.fabric.outputs.GetPortsResult; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterResult; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRuleResult; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRulesResult; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersResult; import com.equinix.pulumi.fabric.outputs.GetRoutingProtocolResult; import com.equinix.pulumi.fabric.outputs.GetServiceProfileResult; import com.equinix.pulumi.fabric.outputs.GetServiceProfilesResult; @@ -559,6 +577,258 @@ public static Output getConnection(GetConnectionArgs args, public static CompletableFuture getConnectionPlain(GetConnectionPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("equinix:fabric/getConnection:getConnection", TypeShape.of(GetConnectionResult.class), args, Utilities.withVersion(options)); } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetConnectionRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var attachedPolicy = FabricFunctions.getConnectionRouteFilter(GetConnectionRouteFilterArgs.builder()
+     *             .connectionId("")
+     *             .routeFilterId("")
+     *             .build());
+     * 
+     *         ctx.export("connectionRouteFilterId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.id()));
+     *         ctx.export("connectionRouteFilterConnectionId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.connectionId()));
+     *         ctx.export("connectionRouteFilterDirection", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.direction()));
+     *         ctx.export("connectionRouteFilterType", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.type()));
+     *         ctx.export("connectionRouteFilterAttachmentStatus", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.attachmentStatus()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getConnectionRouteFilter(GetConnectionRouteFilterArgs args) { + return getConnectionRouteFilter(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetConnectionRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var attachedPolicy = FabricFunctions.getConnectionRouteFilter(GetConnectionRouteFilterArgs.builder()
+     *             .connectionId("")
+     *             .routeFilterId("")
+     *             .build());
+     * 
+     *         ctx.export("connectionRouteFilterId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.id()));
+     *         ctx.export("connectionRouteFilterConnectionId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.connectionId()));
+     *         ctx.export("connectionRouteFilterDirection", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.direction()));
+     *         ctx.export("connectionRouteFilterType", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.type()));
+     *         ctx.export("connectionRouteFilterAttachmentStatus", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.attachmentStatus()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getConnectionRouteFilterPlain(GetConnectionRouteFilterPlainArgs args) { + return getConnectionRouteFilterPlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetConnectionRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var attachedPolicy = FabricFunctions.getConnectionRouteFilter(GetConnectionRouteFilterArgs.builder()
+     *             .connectionId("")
+     *             .routeFilterId("")
+     *             .build());
+     * 
+     *         ctx.export("connectionRouteFilterId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.id()));
+     *         ctx.export("connectionRouteFilterConnectionId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.connectionId()));
+     *         ctx.export("connectionRouteFilterDirection", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.direction()));
+     *         ctx.export("connectionRouteFilterType", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.type()));
+     *         ctx.export("connectionRouteFilterAttachmentStatus", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.attachmentStatus()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getConnectionRouteFilter(GetConnectionRouteFilterArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", TypeShape.of(GetConnectionRouteFilterResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetConnectionRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var attachedPolicy = FabricFunctions.getConnectionRouteFilter(GetConnectionRouteFilterArgs.builder()
+     *             .connectionId("")
+     *             .routeFilterId("")
+     *             .build());
+     * 
+     *         ctx.export("connectionRouteFilterId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.id()));
+     *         ctx.export("connectionRouteFilterConnectionId", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.connectionId()));
+     *         ctx.export("connectionRouteFilterDirection", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.direction()));
+     *         ctx.export("connectionRouteFilterType", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.type()));
+     *         ctx.export("connectionRouteFilterAttachmentStatus", attachedPolicy.applyValue(getConnectionRouteFilterResult -> getConnectionRouteFilterResult.attachmentStatus()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getConnectionRouteFilterPlain(GetConnectionRouteFilterPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", TypeShape.of(GetConnectionRouteFilterResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + */ + public static Output getConnectionRouteFilters(GetConnectionRouteFiltersArgs args) { + return getConnectionRouteFilters(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + */ + public static CompletableFuture getConnectionRouteFiltersPlain(GetConnectionRouteFiltersPlainArgs args) { + return getConnectionRouteFiltersPlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + */ + public static Output getConnectionRouteFilters(GetConnectionRouteFiltersArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", TypeShape.of(GetConnectionRouteFiltersResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + */ + public static CompletableFuture getConnectionRouteFiltersPlain(GetConnectionRouteFiltersPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", TypeShape.of(GetConnectionRouteFiltersResult.class), args, Utilities.withVersion(options)); + } /** * Fabric V4 API compatible data resource that allow user to fetch connection for a given UUID * @@ -1531,6 +1801,934 @@ public static Output getPorts(GetPortsArgs args, InvokeOptions o public static CompletableFuture getPortsPlain(GetPortsPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("equinix:fabric/getPorts:getPorts", TypeShape.of(GetPortsResult.class), args, Utilities.withVersion(options)); } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicy = FabricFunctions.getRouteFilter(GetRouteFilterArgs.builder()
+     *             .uuid(" getRouteFilterResult.id()));
+     *         ctx.export("type", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.type()));
+     *         ctx.export("state", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.state()));
+     *         ctx.export("notMatchedRulesAction", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilter(GetRouteFilterArgs args) { + return getRouteFilter(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicy = FabricFunctions.getRouteFilter(GetRouteFilterArgs.builder()
+     *             .uuid(" getRouteFilterResult.id()));
+     *         ctx.export("type", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.type()));
+     *         ctx.export("state", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.state()));
+     *         ctx.export("notMatchedRulesAction", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterPlain(GetRouteFilterPlainArgs args) { + return getRouteFilterPlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicy = FabricFunctions.getRouteFilter(GetRouteFilterArgs.builder()
+     *             .uuid(" getRouteFilterResult.id()));
+     *         ctx.export("type", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.type()));
+     *         ctx.export("state", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.state()));
+     *         ctx.export("notMatchedRulesAction", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilter(GetRouteFilterArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getRouteFilter:getRouteFilter", TypeShape.of(GetRouteFilterResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicy = FabricFunctions.getRouteFilter(GetRouteFilterArgs.builder()
+     *             .uuid(" getRouteFilterResult.id()));
+     *         ctx.export("type", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.type()));
+     *         ctx.export("state", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.state()));
+     *         ctx.export("notMatchedRulesAction", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicy.applyValue(getRouteFilterResult -> getRouteFilterResult.rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterPlain(GetRouteFilterPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getRouteFilter:getRouteFilter", TypeShape.of(GetRouteFilterResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRuleArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRule = FabricFunctions.getRouteFilterRule(GetRouteFilterRuleArgs.builder()
+     *             .routeFilterId("")
+     *             .uuid("")
+     *             .build());
+     * 
+     *         ctx.export("routeFilterRuleName", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.name()));
+     *         ctx.export("routeFilterRuleDescription", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.description()));
+     *         ctx.export("routeFilterRulePrefix", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefix()));
+     *         ctx.export("routeFilterRulePrefixMatch", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilterRule(GetRouteFilterRuleArgs args) { + return getRouteFilterRule(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRuleArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRule = FabricFunctions.getRouteFilterRule(GetRouteFilterRuleArgs.builder()
+     *             .routeFilterId("")
+     *             .uuid("")
+     *             .build());
+     * 
+     *         ctx.export("routeFilterRuleName", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.name()));
+     *         ctx.export("routeFilterRuleDescription", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.description()));
+     *         ctx.export("routeFilterRulePrefix", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefix()));
+     *         ctx.export("routeFilterRulePrefixMatch", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterRulePlain(GetRouteFilterRulePlainArgs args) { + return getRouteFilterRulePlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRuleArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRule = FabricFunctions.getRouteFilterRule(GetRouteFilterRuleArgs.builder()
+     *             .routeFilterId("")
+     *             .uuid("")
+     *             .build());
+     * 
+     *         ctx.export("routeFilterRuleName", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.name()));
+     *         ctx.export("routeFilterRuleDescription", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.description()));
+     *         ctx.export("routeFilterRulePrefix", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefix()));
+     *         ctx.export("routeFilterRulePrefixMatch", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilterRule(GetRouteFilterRuleArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getRouteFilterRule:getRouteFilterRule", TypeShape.of(GetRouteFilterRuleResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRuleArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRule = FabricFunctions.getRouteFilterRule(GetRouteFilterRuleArgs.builder()
+     *             .routeFilterId("")
+     *             .uuid("")
+     *             .build());
+     * 
+     *         ctx.export("routeFilterRuleName", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.name()));
+     *         ctx.export("routeFilterRuleDescription", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.description()));
+     *         ctx.export("routeFilterRulePrefix", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefix()));
+     *         ctx.export("routeFilterRulePrefixMatch", rfRule.applyValue(getRouteFilterRuleResult -> getRouteFilterRuleResult.prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterRulePlain(GetRouteFilterRulePlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getRouteFilterRule:getRouteFilterRule", TypeShape.of(GetRouteFilterRuleResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRulesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRules = FabricFunctions.getRouteFilterRules(GetRouteFilterRulesArgs.builder()
+     *             .routeFilterId(" getRouteFilterRulesResult.datas()[0].name()));
+     *         ctx.export("firstRouteFilterRuleDescription", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].description()));
+     *         ctx.export("firstRouteFilterRulePrefix", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefix()));
+     *         ctx.export("firstRouteFilterRulePrefixMatch", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilterRules(GetRouteFilterRulesArgs args) { + return getRouteFilterRules(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRulesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRules = FabricFunctions.getRouteFilterRules(GetRouteFilterRulesArgs.builder()
+     *             .routeFilterId(" getRouteFilterRulesResult.datas()[0].name()));
+     *         ctx.export("firstRouteFilterRuleDescription", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].description()));
+     *         ctx.export("firstRouteFilterRulePrefix", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefix()));
+     *         ctx.export("firstRouteFilterRulePrefixMatch", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterRulesPlain(GetRouteFilterRulesPlainArgs args) { + return getRouteFilterRulesPlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRulesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRules = FabricFunctions.getRouteFilterRules(GetRouteFilterRulesArgs.builder()
+     *             .routeFilterId(" getRouteFilterRulesResult.datas()[0].name()));
+     *         ctx.export("firstRouteFilterRuleDescription", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].description()));
+     *         ctx.export("firstRouteFilterRulePrefix", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefix()));
+     *         ctx.export("firstRouteFilterRulePrefixMatch", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilterRules(GetRouteFilterRulesArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getRouteFilterRules:getRouteFilterRules", TypeShape.of(GetRouteFilterRulesResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFilterRulesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfRules = FabricFunctions.getRouteFilterRules(GetRouteFilterRulesArgs.builder()
+     *             .routeFilterId(" getRouteFilterRulesResult.datas()[0].name()));
+     *         ctx.export("firstRouteFilterRuleDescription", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].description()));
+     *         ctx.export("firstRouteFilterRulePrefix", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefix()));
+     *         ctx.export("firstRouteFilterRulePrefixMatch", rfRules.applyValue(getRouteFilterRulesResult -> getRouteFilterRulesResult.datas()[0].prefixMatch()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFilterRulesPlain(GetRouteFilterRulesPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getRouteFilterRules:getRouteFilterRules", TypeShape.of(GetRouteFilterRulesResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersArgs;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersPaginationArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicies = FabricFunctions.getRouteFilters(GetRouteFiltersArgs.builder()
+     *             .filters(            
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/type")
+     *                     .operator("=")
+     *                     .values("BGP_IPv4_PREFIX_FILTER")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/state")
+     *                     .operator("=")
+     *                     .values("PROVISIONED")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/project/projectId")
+     *                     .operator("=")
+     *                     .values("")
+     *                     .build())
+     *             .pagination(GetRouteFiltersPaginationArgs.builder()
+     *                 .offset(0)
+     *                 .limit(5)
+     *                 .total(25)
+     *                 .build())
+     *             .sorts(GetRouteFiltersSortArgs.builder()
+     *                 .direction("ASC")
+     *                 .property("/name")
+     *                 .build())
+     *             .build());
+     * 
+     *         ctx.export("firstRfUuid", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].uuid()));
+     *         ctx.export("type", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].type()));
+     *         ctx.export("state", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].state()));
+     *         ctx.export("notMatchedRuleAction", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilters(GetRouteFiltersArgs args) { + return getRouteFilters(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersArgs;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersPaginationArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicies = FabricFunctions.getRouteFilters(GetRouteFiltersArgs.builder()
+     *             .filters(            
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/type")
+     *                     .operator("=")
+     *                     .values("BGP_IPv4_PREFIX_FILTER")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/state")
+     *                     .operator("=")
+     *                     .values("PROVISIONED")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/project/projectId")
+     *                     .operator("=")
+     *                     .values("")
+     *                     .build())
+     *             .pagination(GetRouteFiltersPaginationArgs.builder()
+     *                 .offset(0)
+     *                 .limit(5)
+     *                 .total(25)
+     *                 .build())
+     *             .sorts(GetRouteFiltersSortArgs.builder()
+     *                 .direction("ASC")
+     *                 .property("/name")
+     *                 .build())
+     *             .build());
+     * 
+     *         ctx.export("firstRfUuid", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].uuid()));
+     *         ctx.export("type", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].type()));
+     *         ctx.export("state", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].state()));
+     *         ctx.export("notMatchedRuleAction", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFiltersPlain(GetRouteFiltersPlainArgs args) { + return getRouteFiltersPlain(args, InvokeOptions.Empty); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersArgs;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersPaginationArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicies = FabricFunctions.getRouteFilters(GetRouteFiltersArgs.builder()
+     *             .filters(            
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/type")
+     *                     .operator("=")
+     *                     .values("BGP_IPv4_PREFIX_FILTER")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/state")
+     *                     .operator("=")
+     *                     .values("PROVISIONED")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/project/projectId")
+     *                     .operator("=")
+     *                     .values("")
+     *                     .build())
+     *             .pagination(GetRouteFiltersPaginationArgs.builder()
+     *                 .offset(0)
+     *                 .limit(5)
+     *                 .total(25)
+     *                 .build())
+     *             .sorts(GetRouteFiltersSortArgs.builder()
+     *                 .direction("ASC")
+     *                 .property("/name")
+     *                 .build())
+     *             .build());
+     * 
+     *         ctx.export("firstRfUuid", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].uuid()));
+     *         ctx.export("type", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].type()));
+     *         ctx.export("state", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].state()));
+     *         ctx.export("notMatchedRuleAction", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRouteFilters(GetRouteFiltersArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("equinix:fabric/getRouteFilters:getRouteFilters", TypeShape.of(GetRouteFiltersResult.class), args, Utilities.withVersion(options)); + } + /** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.equinix.fabric.FabricFunctions;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersArgs;
+     * import com.pulumi.equinix.fabric.inputs.GetRouteFiltersPaginationArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var rfPolicies = FabricFunctions.getRouteFilters(GetRouteFiltersArgs.builder()
+     *             .filters(            
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/type")
+     *                     .operator("=")
+     *                     .values("BGP_IPv4_PREFIX_FILTER")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/state")
+     *                     .operator("=")
+     *                     .values("PROVISIONED")
+     *                     .build(),
+     *                 GetRouteFiltersFilterArgs.builder()
+     *                     .property("/project/projectId")
+     *                     .operator("=")
+     *                     .values("")
+     *                     .build())
+     *             .pagination(GetRouteFiltersPaginationArgs.builder()
+     *                 .offset(0)
+     *                 .limit(5)
+     *                 .total(25)
+     *                 .build())
+     *             .sorts(GetRouteFiltersSortArgs.builder()
+     *                 .direction("ASC")
+     *                 .property("/name")
+     *                 .build())
+     *             .build());
+     * 
+     *         ctx.export("firstRfUuid", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].uuid()));
+     *         ctx.export("type", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].type()));
+     *         ctx.export("state", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].state()));
+     *         ctx.export("notMatchedRuleAction", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].notMatchedRuleAction()));
+     *         ctx.export("connectionsCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].connectionsCount()));
+     *         ctx.export("rulesCount", rfPolicies.applyValue(getRouteFiltersResult -> getRouteFiltersResult.datas()[0].rulesCount()));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRouteFiltersPlain(GetRouteFiltersPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("equinix:fabric/getRouteFilters:getRouteFilters", TypeShape.of(GetRouteFiltersResult.class), args, Utilities.withVersion(options)); + } /** * Fabric V4 API compatible data resource that allow user to fetch routing protocol for a given UUID * diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilter.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilter.java new file mode 100644 index 000000000..16446cd2f --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilter.java @@ -0,0 +1,247 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.equinix.pulumi.Utilities; +import com.equinix.pulumi.fabric.RouteFilterArgs; +import com.equinix.pulumi.fabric.inputs.RouteFilterState; +import com.equinix.pulumi.fabric.outputs.RouteFilterChange; +import com.equinix.pulumi.fabric.outputs.RouteFilterChangeLog; +import com.equinix.pulumi.fabric.outputs.RouteFilterProject; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + */ +@ResourceType(type="equinix:fabric/routeFilter:RouteFilter") +public class RouteFilter extends com.pulumi.resources.CustomResource { + @Export(name="changeLogs", refs={List.class,RouteFilterChangeLog.class}, tree="[0,1]") + private Output> changeLogs; + + public Output> changeLogs() { + return this.changeLogs; + } + /** + * An object with the details of the previous change applied on the Route Filter + * + */ + @Export(name="changes", refs={List.class,RouteFilterChange.class}, tree="[0,1]") + private Output> changes; + + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public Output> changes() { + return this.changes; + } + /** + * The number of Fabric Connections that this Route Filter is attached to + * + */ + @Export(name="connectionsCount", refs={Integer.class}, tree="[0]") + private Output connectionsCount; + + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + public Output connectionsCount() { + return this.connectionsCount; + } + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Export(name="description", refs={String.class}, tree="[0]") + private Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Output description() { + return this.description; + } + /** + * Route filter URI + * + */ + @Export(name="href", refs={String.class}, tree="[0]") + private Output href; + + /** + * @return Route filter URI + * + */ + public Output href() { + return this.href; + } + /** + * Name of the Route Filter + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Name of the Route Filter + * + */ + public Output name() { + return this.name; + } + /** + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + @Export(name="notMatchedRuleAction", refs={String.class}, tree="[0]") + private Output notMatchedRuleAction; + + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + public Output notMatchedRuleAction() { + return this.notMatchedRuleAction; + } + /** + * The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + @Export(name="project", refs={RouteFilterProject.class}, tree="[0]") + private Output project; + + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + public Output project() { + return this.project; + } + /** + * The number of Route Filter Rules attached to this Route Filter + * + */ + @Export(name="rulesCount", refs={Integer.class}, tree="[0]") + private Output rulesCount; + + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + public Output rulesCount() { + return this.rulesCount; + } + /** + * State of the Route Filter in its lifecycle + * + */ + @Export(name="state", refs={String.class}, tree="[0]") + private Output state; + + /** + * @return State of the Route Filter in its lifecycle + * + */ + public Output state() { + return this.state; + } + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public Output type() { + return this.type; + } + /** + * Equinix Assigned ID for Route Filter + * + */ + @Export(name="uuid", refs={String.class}, tree="[0]") + private Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public Output uuid() { + return this.uuid; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public RouteFilter(java.lang.String name) { + this(name, RouteFilterArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public RouteFilter(java.lang.String name, RouteFilterArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public RouteFilter(java.lang.String name, RouteFilterArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/routeFilter:RouteFilter", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private RouteFilter(java.lang.String name, Output id, @Nullable RouteFilterState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/routeFilter:RouteFilter", name, state, makeResourceOptions(options, id), false); + } + + private static RouteFilterArgs makeArgs(RouteFilterArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? RouteFilterArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static RouteFilter get(java.lang.String name, Output id, @Nullable RouteFilterState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new RouteFilter(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterArgs.java new file mode 100644 index 000000000..e72c10c68 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterArgs.java @@ -0,0 +1,202 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.equinix.pulumi.fabric.inputs.RouteFilterProjectArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterArgs Empty = new RouteFilterArgs(); + + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * Name of the Route Filter + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the Route Filter + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + @Import(name="project", required=true) + private Output project; + + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + public Output project() { + return this.project; + } + + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + @Import(name="type", required=true) + private Output type; + + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public Output type() { + return this.type; + } + + private RouteFilterArgs() {} + + private RouteFilterArgs(RouteFilterArgs $) { + this.description = $.description; + this.name = $.name; + this.project = $.project; + this.type = $.type; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterArgs $; + + public Builder() { + $ = new RouteFilterArgs(); + } + + public Builder(RouteFilterArgs defaults) { + $ = new RouteFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param project The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + * @return builder + * + */ + public Builder project(Output project) { + $.project = project; + return this; + } + + /** + * @param project The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + * @return builder + * + */ + public Builder project(RouteFilterProjectArgs project) { + return project(Output.of(project)); + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(Output type) { + $.type = type; + return this; + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + public RouteFilterArgs build() { + if ($.project == null) { + throw new MissingRequiredPropertyException("RouteFilterArgs", "project"); + } + if ($.type == null) { + throw new MissingRequiredPropertyException("RouteFilterArgs", "type"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRule.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRule.java new file mode 100644 index 000000000..6a320d1df --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRule.java @@ -0,0 +1,287 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.equinix.pulumi.Utilities; +import com.equinix.pulumi.fabric.RouteFilterRuleArgs; +import com.equinix.pulumi.fabric.inputs.RouteFilterRuleState; +import com.equinix.pulumi.fabric.outputs.RouteFilterRuleChange; +import com.equinix.pulumi.fabric.outputs.RouteFilterRuleChangeLog; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.equinix.fabric.RouteFilterRule;
+ * import com.pulumi.equinix.fabric.RouteFilterRuleArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var rfRule = new RouteFilterRule("rfRule", RouteFilterRuleArgs.builder()
+ *             .routeFilterId("")
+ *             .prefix("192.168.0.0/24")
+ *             .prefixMatch("exact")
+ *             .description("Route Filter Rule for X Purpose")
+ *             .build());
+ * 
+ *         ctx.export("routeFilterRuleId", rfRule.id());
+ *         ctx.export("routeFilterId", rfRule.routeFilterId());
+ *         ctx.export("routeFilterRulePrefix", rfRule.prefix());
+ *         ctx.export("routeFilterRulePrefixMatch", rfRule.prefixMatch());
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + */ +@ResourceType(type="equinix:fabric/routeFilterRule:RouteFilterRule") +public class RouteFilterRule extends com.pulumi.resources.CustomResource { + /** + * Action that will be taken on IP Addresses matching the rule + * + */ + @Export(name="action", refs={String.class}, tree="[0]") + private Output action; + + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + public Output action() { + return this.action; + } + @Export(name="changeLogs", refs={List.class,RouteFilterRuleChangeLog.class}, tree="[0,1]") + private Output> changeLogs; + + public Output> changeLogs() { + return this.changeLogs; + } + /** + * An object with the details of the previous change applied on the Route Filter + * + */ + @Export(name="changes", refs={List.class,RouteFilterRuleChange.class}, tree="[0,1]") + private Output> changes; + + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public Output> changes() { + return this.changes; + } + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Export(name="description", refs={String.class}, tree="[0]") + private Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Output description() { + return this.description; + } + /** + * Route filter rules URI + * + */ + @Export(name="href", refs={String.class}, tree="[0]") + private Output href; + + /** + * @return Route filter rules URI + * + */ + public Output href() { + return this.href; + } + /** + * Name of the Route Filter + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Name of the Route Filter + * + */ + public Output name() { + return this.name; + } + /** + * IP Address Prefix to Filter on + * + */ + @Export(name="prefix", refs={String.class}, tree="[0]") + private Output prefix; + + /** + * @return IP Address Prefix to Filter on + * + */ + public Output prefix() { + return this.prefix; + } + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + @Export(name="prefixMatch", refs={String.class}, tree="[0]") + private Output prefixMatch; + + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + public Output prefixMatch() { + return this.prefixMatch; + } + /** + * UUID of the Route Filter Policy to apply this Rule to + * + */ + @Export(name="routeFilterId", refs={String.class}, tree="[0]") + private Output routeFilterId; + + /** + * @return UUID of the Route Filter Policy to apply this Rule to + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + /** + * State of the Route Filter Rule in its lifecycle + * + */ + @Export(name="state", refs={String.class}, tree="[0]") + private Output state; + + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + public Output state() { + return this.state; + } + /** + * Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + public Output type() { + return this.type; + } + /** + * Equinix Assigned ID for Route Filter Rule + * + */ + @Export(name="uuid", refs={String.class}, tree="[0]") + private Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter Rule + * + */ + public Output uuid() { + return this.uuid; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public RouteFilterRule(java.lang.String name) { + this(name, RouteFilterRuleArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public RouteFilterRule(java.lang.String name, RouteFilterRuleArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public RouteFilterRule(java.lang.String name, RouteFilterRuleArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/routeFilterRule:RouteFilterRule", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private RouteFilterRule(java.lang.String name, Output id, @Nullable RouteFilterRuleState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("equinix:fabric/routeFilterRule:RouteFilterRule", name, state, makeResourceOptions(options, id), false); + } + + private static RouteFilterRuleArgs makeArgs(RouteFilterRuleArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? RouteFilterRuleArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static RouteFilterRule get(java.lang.String name, Output id, @Nullable RouteFilterRuleState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new RouteFilterRule(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRuleArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRuleArgs.java new file mode 100644 index 000000000..1c0137c4a --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/RouteFilterRuleArgs.java @@ -0,0 +1,238 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterRuleArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterRuleArgs Empty = new RouteFilterRuleArgs(); + + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * Name of the Route Filter + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the Route Filter + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * IP Address Prefix to Filter on + * + */ + @Import(name="prefix", required=true) + private Output prefix; + + /** + * @return IP Address Prefix to Filter on + * + */ + public Output prefix() { + return this.prefix; + } + + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + @Import(name="prefixMatch") + private @Nullable Output prefixMatch; + + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + public Optional> prefixMatch() { + return Optional.ofNullable(this.prefixMatch); + } + + /** + * UUID of the Route Filter Policy to apply this Rule to + * + */ + @Import(name="routeFilterId", required=true) + private Output routeFilterId; + + /** + * @return UUID of the Route Filter Policy to apply this Rule to + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + + private RouteFilterRuleArgs() {} + + private RouteFilterRuleArgs(RouteFilterRuleArgs $) { + this.description = $.description; + this.name = $.name; + this.prefix = $.prefix; + this.prefixMatch = $.prefixMatch; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterRuleArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterRuleArgs $; + + public Builder() { + $ = new RouteFilterRuleArgs(); + } + + public Builder(RouteFilterRuleArgs defaults) { + $ = new RouteFilterRuleArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param prefix IP Address Prefix to Filter on + * + * @return builder + * + */ + public Builder prefix(Output prefix) { + $.prefix = prefix; + return this; + } + + /** + * @param prefix IP Address Prefix to Filter on + * + * @return builder + * + */ + public Builder prefix(String prefix) { + return prefix(Output.of(prefix)); + } + + /** + * @param prefixMatch Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + * @return builder + * + */ + public Builder prefixMatch(@Nullable Output prefixMatch) { + $.prefixMatch = prefixMatch; + return this; + } + + /** + * @param prefixMatch Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + * @return builder + * + */ + public Builder prefixMatch(String prefixMatch) { + return prefixMatch(Output.of(prefixMatch)); + } + + /** + * @param routeFilterId UUID of the Route Filter Policy to apply this Rule to + * + * @return builder + * + */ + public Builder routeFilterId(Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId UUID of the Route Filter Policy to apply this Rule to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + public RouteFilterRuleArgs build() { + if ($.prefix == null) { + throw new MissingRequiredPropertyException("RouteFilterRuleArgs", "prefix"); + } + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("RouteFilterRuleArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/ConnectionRouteFilterState.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/ConnectionRouteFilterState.java new file mode 100644 index 000000000..44acf479c --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/ConnectionRouteFilterState.java @@ -0,0 +1,305 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ConnectionRouteFilterState extends com.pulumi.resources.ResourceArgs { + + public static final ConnectionRouteFilterState Empty = new ConnectionRouteFilterState(); + + /** + * Status of the Route Filter Policy attachment lifecycle + * + */ + @Import(name="attachmentStatus") + private @Nullable Output attachmentStatus; + + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + public Optional> attachmentStatus() { + return Optional.ofNullable(this.attachmentStatus); + } + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId") + private @Nullable Output connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public Optional> connectionId() { + return Optional.ofNullable(this.connectionId); + } + + /** + * Direction of the filtering of the attached Route Filter Policy + * + */ + @Import(name="direction") + private @Nullable Output direction; + + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + public Optional> direction() { + return Optional.ofNullable(this.direction); + } + + /** + * URI to the attached Route Filter Policy on the Connection + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + @Import(name="routeFilterId") + private @Nullable Output routeFilterId; + + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public Optional> routeFilterId() { + return Optional.ofNullable(this.routeFilterId); + } + + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * Equinix Assigned ID for Route Filter Policy + * + */ + @Import(name="uuid") + private @Nullable Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + public Optional> uuid() { + return Optional.ofNullable(this.uuid); + } + + private ConnectionRouteFilterState() {} + + private ConnectionRouteFilterState(ConnectionRouteFilterState $) { + this.attachmentStatus = $.attachmentStatus; + this.connectionId = $.connectionId; + this.direction = $.direction; + this.href = $.href; + this.routeFilterId = $.routeFilterId; + this.type = $.type; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ConnectionRouteFilterState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ConnectionRouteFilterState $; + + public Builder() { + $ = new ConnectionRouteFilterState(); + } + + public Builder(ConnectionRouteFilterState defaults) { + $ = new ConnectionRouteFilterState(Objects.requireNonNull(defaults)); + } + + /** + * @param attachmentStatus Status of the Route Filter Policy attachment lifecycle + * + * @return builder + * + */ + public Builder attachmentStatus(@Nullable Output attachmentStatus) { + $.attachmentStatus = attachmentStatus; + return this; + } + + /** + * @param attachmentStatus Status of the Route Filter Policy attachment lifecycle + * + * @return builder + * + */ + public Builder attachmentStatus(String attachmentStatus) { + return attachmentStatus(Output.of(attachmentStatus)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(@Nullable Output connectionId) { + $.connectionId = connectionId; + return this; + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + return connectionId(Output.of(connectionId)); + } + + /** + * @param direction Direction of the filtering of the attached Route Filter Policy + * + * @return builder + * + */ + public Builder direction(@Nullable Output direction) { + $.direction = direction; + return this; + } + + /** + * @param direction Direction of the filtering of the attached Route Filter Policy + * + * @return builder + * + */ + public Builder direction(String direction) { + return direction(Output.of(direction)); + } + + /** + * @param href URI to the attached Route Filter Policy on the Connection + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href URI to the attached Route Filter Policy on the Connection + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(@Nullable Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Policy + * + * @return builder + * + */ + public Builder uuid(@Nullable Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Policy + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public ConnectionRouteFilterState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterArgs.java new file mode 100644 index 000000000..713eae269 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetConnectionRouteFilterArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetConnectionRouteFilterArgs Empty = new GetConnectionRouteFilterArgs(); + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId", required=true) + private Output connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public Output connectionId() { + return this.connectionId; + } + + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + @Import(name="routeFilterId", required=true) + private Output routeFilterId; + + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + + private GetConnectionRouteFilterArgs() {} + + private GetConnectionRouteFilterArgs(GetConnectionRouteFilterArgs $) { + this.connectionId = $.connectionId; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetConnectionRouteFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetConnectionRouteFilterArgs $; + + public Builder() { + $ = new GetConnectionRouteFilterArgs(); + } + + public Builder(GetConnectionRouteFilterArgs defaults) { + $ = new GetConnectionRouteFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(Output connectionId) { + $.connectionId = connectionId; + return this; + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + return connectionId(Output.of(connectionId)); + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + public GetConnectionRouteFilterArgs build() { + if ($.connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterArgs", "connectionId"); + } + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterPlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterPlainArgs.java new file mode 100644 index 000000000..9c36c997d --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFilterPlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetConnectionRouteFilterPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetConnectionRouteFilterPlainArgs Empty = new GetConnectionRouteFilterPlainArgs(); + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId", required=true) + private String connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public String connectionId() { + return this.connectionId; + } + + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + @Import(name="routeFilterId", required=true) + private String routeFilterId; + + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + + private GetConnectionRouteFilterPlainArgs() {} + + private GetConnectionRouteFilterPlainArgs(GetConnectionRouteFilterPlainArgs $) { + this.connectionId = $.connectionId; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetConnectionRouteFilterPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetConnectionRouteFilterPlainArgs $; + + public Builder() { + $ = new GetConnectionRouteFilterPlainArgs(); + } + + public Builder(GetConnectionRouteFilterPlainArgs defaults) { + $ = new GetConnectionRouteFilterPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + $.connectionId = connectionId; + return this; + } + + /** + * @param routeFilterId Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + public GetConnectionRouteFilterPlainArgs build() { + if ($.connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterPlainArgs", "connectionId"); + } + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterPlainArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersArgs.java new file mode 100644 index 000000000..4a1f05574 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetConnectionRouteFiltersArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetConnectionRouteFiltersArgs Empty = new GetConnectionRouteFiltersArgs(); + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId", required=true) + private Output connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public Output connectionId() { + return this.connectionId; + } + + private GetConnectionRouteFiltersArgs() {} + + private GetConnectionRouteFiltersArgs(GetConnectionRouteFiltersArgs $) { + this.connectionId = $.connectionId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetConnectionRouteFiltersArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetConnectionRouteFiltersArgs $; + + public Builder() { + $ = new GetConnectionRouteFiltersArgs(); + } + + public Builder(GetConnectionRouteFiltersArgs defaults) { + $ = new GetConnectionRouteFiltersArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(Output connectionId) { + $.connectionId = connectionId; + return this; + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + return connectionId(Output.of(connectionId)); + } + + public GetConnectionRouteFiltersArgs build() { + if ($.connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersArgs", "connectionId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersPlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersPlainArgs.java new file mode 100644 index 000000000..bba04b0bf --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetConnectionRouteFiltersPlainArgs.java @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetConnectionRouteFiltersPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetConnectionRouteFiltersPlainArgs Empty = new GetConnectionRouteFiltersPlainArgs(); + + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + @Import(name="connectionId", required=true) + private String connectionId; + + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public String connectionId() { + return this.connectionId; + } + + private GetConnectionRouteFiltersPlainArgs() {} + + private GetConnectionRouteFiltersPlainArgs(GetConnectionRouteFiltersPlainArgs $) { + this.connectionId = $.connectionId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetConnectionRouteFiltersPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetConnectionRouteFiltersPlainArgs $; + + public Builder() { + $ = new GetConnectionRouteFiltersPlainArgs(); + } + + public Builder(GetConnectionRouteFiltersPlainArgs defaults) { + $ = new GetConnectionRouteFiltersPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param connectionId Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + * @return builder + * + */ + public Builder connectionId(String connectionId) { + $.connectionId = connectionId; + return this; + } + + public GetConnectionRouteFiltersPlainArgs build() { + if ($.connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPlainArgs", "connectionId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterArgs.java new file mode 100644 index 000000000..a70d2be33 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFilterArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterArgs Empty = new GetRouteFilterArgs(); + + /** + * Equinix Assigned ID for Route Filter + * + */ + @Import(name="uuid", required=true) + private Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public Output uuid() { + return this.uuid; + } + + private GetRouteFilterArgs() {} + + private GetRouteFilterArgs(GetRouteFilterArgs $) { + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterArgs $; + + public Builder() { + $ = new GetRouteFilterArgs(); + } + + public Builder(GetRouteFilterArgs defaults) { + $ = new GetRouteFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter + * + * @return builder + * + */ + public Builder uuid(Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public GetRouteFilterArgs build() { + if ($.uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterArgs", "uuid"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterPlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterPlainArgs.java new file mode 100644 index 000000000..b10c3702a --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterPlainArgs.java @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFilterPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterPlainArgs Empty = new GetRouteFilterPlainArgs(); + + /** + * Equinix Assigned ID for Route Filter + * + */ + @Import(name="uuid", required=true) + private String uuid; + + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public String uuid() { + return this.uuid; + } + + private GetRouteFilterPlainArgs() {} + + private GetRouteFilterPlainArgs(GetRouteFilterPlainArgs $) { + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterPlainArgs $; + + public Builder() { + $ = new GetRouteFilterPlainArgs(); + } + + public Builder(GetRouteFilterPlainArgs defaults) { + $ = new GetRouteFilterPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter + * + * @return builder + * + */ + public Builder uuid(String uuid) { + $.uuid = uuid; + return this; + } + + public GetRouteFilterPlainArgs build() { + if ($.uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterPlainArgs", "uuid"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRuleArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRuleArgs.java new file mode 100644 index 000000000..3c95c2738 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRuleArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFilterRuleArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterRuleArgs Empty = new GetRouteFilterRuleArgs(); + + /** + * UUID of the Route Filter Policy the rule is attached to + * + */ + @Import(name="routeFilterId", required=true) + private Output routeFilterId; + + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + @Import(name="uuid", required=true) + private Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + public Output uuid() { + return this.uuid; + } + + private GetRouteFilterRuleArgs() {} + + private GetRouteFilterRuleArgs(GetRouteFilterRuleArgs $) { + this.routeFilterId = $.routeFilterId; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterRuleArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterRuleArgs $; + + public Builder() { + $ = new GetRouteFilterRuleArgs(); + } + + public Builder(GetRouteFilterRuleArgs defaults) { + $ = new GetRouteFilterRuleArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Rule to retrieve data for + * + * @return builder + * + */ + public Builder uuid(Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Rule to retrieve data for + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public GetRouteFilterRuleArgs build() { + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleArgs", "routeFilterId"); + } + if ($.uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleArgs", "uuid"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulePlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulePlainArgs.java new file mode 100644 index 000000000..ad7187b84 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulePlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFilterRulePlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterRulePlainArgs Empty = new GetRouteFilterRulePlainArgs(); + + /** + * UUID of the Route Filter Policy the rule is attached to + * + */ + @Import(name="routeFilterId", required=true) + private String routeFilterId; + + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + @Import(name="uuid", required=true) + private String uuid; + + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + public String uuid() { + return this.uuid; + } + + private GetRouteFilterRulePlainArgs() {} + + private GetRouteFilterRulePlainArgs(GetRouteFilterRulePlainArgs $) { + this.routeFilterId = $.routeFilterId; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterRulePlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterRulePlainArgs $; + + public Builder() { + $ = new GetRouteFilterRulePlainArgs(); + } + + public Builder(GetRouteFilterRulePlainArgs defaults) { + $ = new GetRouteFilterRulePlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Rule to retrieve data for + * + * @return builder + * + */ + public Builder uuid(String uuid) { + $.uuid = uuid; + return this; + } + + public GetRouteFilterRulePlainArgs build() { + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulePlainArgs", "routeFilterId"); + } + if ($.uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulePlainArgs", "uuid"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesArgs.java new file mode 100644 index 000000000..34ac9110b --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesArgs.java @@ -0,0 +1,162 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFilterRulesArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterRulesArgs Empty = new GetRouteFilterRulesArgs(); + + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + @Import(name="limit") + private @Nullable Output limit; + + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Optional> limit() { + return Optional.ofNullable(this.limit); + } + + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + @Import(name="offset") + private @Nullable Output offset; + + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Optional> offset() { + return Optional.ofNullable(this.offset); + } + + /** + * UUID of the Route Filter Policy the rule is attached to + * + */ + @Import(name="routeFilterId", required=true) + private Output routeFilterId; + + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public Output routeFilterId() { + return this.routeFilterId; + } + + private GetRouteFilterRulesArgs() {} + + private GetRouteFilterRulesArgs(GetRouteFilterRulesArgs $) { + this.limit = $.limit; + this.offset = $.offset; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterRulesArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterRulesArgs $; + + public Builder() { + $ = new GetRouteFilterRulesArgs(); + } + + public Builder(GetRouteFilterRulesArgs defaults) { + $ = new GetRouteFilterRulesArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(@Nullable Output limit) { + $.limit = limit; + return this; + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(Integer limit) { + return limit(Output.of(limit)); + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(@Nullable Output offset) { + $.offset = offset; + return this; + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(Integer offset) { + return offset(Output.of(offset)); + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + public GetRouteFilterRulesArgs build() { + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesPlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesPlainArgs.java new file mode 100644 index 000000000..83bef295a --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFilterRulesPlainArgs.java @@ -0,0 +1,131 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFilterRulesPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFilterRulesPlainArgs Empty = new GetRouteFilterRulesPlainArgs(); + + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + @Import(name="limit") + private @Nullable Integer limit; + + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Optional limit() { + return Optional.ofNullable(this.limit); + } + + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + @Import(name="offset") + private @Nullable Integer offset; + + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Optional offset() { + return Optional.ofNullable(this.offset); + } + + /** + * UUID of the Route Filter Policy the rule is attached to + * + */ + @Import(name="routeFilterId", required=true) + private String routeFilterId; + + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + + private GetRouteFilterRulesPlainArgs() {} + + private GetRouteFilterRulesPlainArgs(GetRouteFilterRulesPlainArgs $) { + this.limit = $.limit; + this.offset = $.offset; + this.routeFilterId = $.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFilterRulesPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFilterRulesPlainArgs $; + + public Builder() { + $ = new GetRouteFilterRulesPlainArgs(); + } + + public Builder(GetRouteFilterRulesPlainArgs defaults) { + $ = new GetRouteFilterRulesPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(@Nullable Integer limit) { + $.limit = limit; + return this; + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(@Nullable Integer offset) { + $.offset = offset; + return this; + } + + /** + * @param routeFilterId UUID of the Route Filter Policy the rule is attached to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + public GetRouteFilterRulesPlainArgs build() { + if ($.routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPlainArgs", "routeFilterId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersArgs.java new file mode 100644 index 000000000..79bc346e7 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersArgs.java @@ -0,0 +1,184 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersFilterArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersPaginationArgs; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersSortArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFiltersArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFiltersArgs Empty = new GetRouteFiltersArgs(); + + /** + * Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + @Import(name="filters", required=true) + private Output> filters; + + /** + * @return Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + public Output> filters() { + return this.filters; + } + + /** + * Pagination details for the Data Source Search Request + * + */ + @Import(name="pagination") + private @Nullable Output pagination; + + /** + * @return Pagination details for the Data Source Search Request + * + */ + public Optional> pagination() { + return Optional.ofNullable(this.pagination); + } + + /** + * Filters for the Data Source Search Request + * + */ + @Import(name="sorts") + private @Nullable Output> sorts; + + /** + * @return Filters for the Data Source Search Request + * + */ + public Optional>> sorts() { + return Optional.ofNullable(this.sorts); + } + + private GetRouteFiltersArgs() {} + + private GetRouteFiltersArgs(GetRouteFiltersArgs $) { + this.filters = $.filters; + this.pagination = $.pagination; + this.sorts = $.sorts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersArgs $; + + public Builder() { + $ = new GetRouteFiltersArgs(); + } + + public Builder(GetRouteFiltersArgs defaults) { + $ = new GetRouteFiltersArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param filters Filters for the Data Source Search Request. Maximum of 8 total filters. + * + * @return builder + * + */ + public Builder filters(Output> filters) { + $.filters = filters; + return this; + } + + /** + * @param filters Filters for the Data Source Search Request. Maximum of 8 total filters. + * + * @return builder + * + */ + public Builder filters(List filters) { + return filters(Output.of(filters)); + } + + /** + * @param filters Filters for the Data Source Search Request. Maximum of 8 total filters. + * + * @return builder + * + */ + public Builder filters(GetRouteFiltersFilterArgs... filters) { + return filters(List.of(filters)); + } + + /** + * @param pagination Pagination details for the Data Source Search Request + * + * @return builder + * + */ + public Builder pagination(@Nullable Output pagination) { + $.pagination = pagination; + return this; + } + + /** + * @param pagination Pagination details for the Data Source Search Request + * + * @return builder + * + */ + public Builder pagination(GetRouteFiltersPaginationArgs pagination) { + return pagination(Output.of(pagination)); + } + + /** + * @param sorts Filters for the Data Source Search Request + * + * @return builder + * + */ + public Builder sorts(@Nullable Output> sorts) { + $.sorts = sorts; + return this; + } + + /** + * @param sorts Filters for the Data Source Search Request + * + * @return builder + * + */ + public Builder sorts(List sorts) { + return sorts(Output.of(sorts)); + } + + /** + * @param sorts Filters for the Data Source Search Request + * + * @return builder + * + */ + public Builder sorts(GetRouteFiltersSortArgs... sorts) { + return sorts(List.of(sorts)); + } + + public GetRouteFiltersArgs build() { + if ($.filters == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersArgs", "filters"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilter.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilter.java new file mode 100644 index 000000000..b38e347f0 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilter.java @@ -0,0 +1,145 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + + +public final class GetRouteFiltersFilter extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFiltersFilter Empty = new GetRouteFiltersFilter(); + + /** + * Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + @Import(name="operator", required=true) + private String operator; + + /** + * @return Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + public String operator() { + return this.operator; + } + + /** + * The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + @Import(name="property", required=true) + private String property; + + /** + * @return The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + public String property() { + return this.property; + } + + /** + * The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + @Import(name="values", required=true) + private List values; + + /** + * @return The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + public List values() { + return this.values; + } + + private GetRouteFiltersFilter() {} + + private GetRouteFiltersFilter(GetRouteFiltersFilter $) { + this.operator = $.operator; + this.property = $.property; + this.values = $.values; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersFilter defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersFilter $; + + public Builder() { + $ = new GetRouteFiltersFilter(); + } + + public Builder(GetRouteFiltersFilter defaults) { + $ = new GetRouteFiltersFilter(Objects.requireNonNull(defaults)); + } + + /** + * @param operator Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + * @return builder + * + */ + public Builder operator(String operator) { + $.operator = operator; + return this; + } + + /** + * @param property The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + * @return builder + * + */ + public Builder property(String property) { + $.property = property; + return this; + } + + /** + * @param values The values that you want to apply the property+operator combination to in order to filter your data search + * + * @return builder + * + */ + public Builder values(List values) { + $.values = values; + return this; + } + + /** + * @param values The values that you want to apply the property+operator combination to in order to filter your data search + * + * @return builder + * + */ + public Builder values(String... values) { + return values(List.of(values)); + } + + public GetRouteFiltersFilter build() { + if ($.operator == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "operator"); + } + if ($.property == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "property"); + } + if ($.values == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "values"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilterArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilterArgs.java new file mode 100644 index 000000000..dc46737c9 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersFilterArgs.java @@ -0,0 +1,176 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + + +public final class GetRouteFiltersFilterArgs extends com.pulumi.resources.ResourceArgs { + + public static final GetRouteFiltersFilterArgs Empty = new GetRouteFiltersFilterArgs(); + + /** + * Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + @Import(name="operator", required=true) + private Output operator; + + /** + * @return Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + public Output operator() { + return this.operator; + } + + /** + * The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + @Import(name="property", required=true) + private Output property; + + /** + * @return The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + public Output property() { + return this.property; + } + + /** + * The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + @Import(name="values", required=true) + private Output> values; + + /** + * @return The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + public Output> values() { + return this.values; + } + + private GetRouteFiltersFilterArgs() {} + + private GetRouteFiltersFilterArgs(GetRouteFiltersFilterArgs $) { + this.operator = $.operator; + this.property = $.property; + this.values = $.values; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersFilterArgs $; + + public Builder() { + $ = new GetRouteFiltersFilterArgs(); + } + + public Builder(GetRouteFiltersFilterArgs defaults) { + $ = new GetRouteFiltersFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param operator Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + * @return builder + * + */ + public Builder operator(Output operator) { + $.operator = operator; + return this; + } + + /** + * @param operator Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + * @return builder + * + */ + public Builder operator(String operator) { + return operator(Output.of(operator)); + } + + /** + * @param property The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + * @return builder + * + */ + public Builder property(Output property) { + $.property = property; + return this; + } + + /** + * @param property The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + * @return builder + * + */ + public Builder property(String property) { + return property(Output.of(property)); + } + + /** + * @param values The values that you want to apply the property+operator combination to in order to filter your data search + * + * @return builder + * + */ + public Builder values(Output> values) { + $.values = values; + return this; + } + + /** + * @param values The values that you want to apply the property+operator combination to in order to filter your data search + * + * @return builder + * + */ + public Builder values(List values) { + return values(Output.of(values)); + } + + /** + * @param values The values that you want to apply the property+operator combination to in order to filter your data search + * + * @return builder + * + */ + public Builder values(String... values) { + return values(List.of(values)); + } + + public GetRouteFiltersFilterArgs build() { + if ($.operator == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilterArgs", "operator"); + } + if ($.property == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilterArgs", "property"); + } + if ($.values == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilterArgs", "values"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPagination.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPagination.java new file mode 100644 index 000000000..9acff9608 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPagination.java @@ -0,0 +1,195 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFiltersPagination extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFiltersPagination Empty = new GetRouteFiltersPagination(); + + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + @Import(name="limit", required=true) + private Integer limit; + + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Integer limit() { + return this.limit; + } + + /** + * URL relative to the last item in the response. + * + */ + @Import(name="next", required=true) + private String next; + + /** + * @return URL relative to the last item in the response. + * + */ + public String next() { + return this.next; + } + + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + @Import(name="offset", required=true) + private Integer offset; + + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Integer offset() { + return this.offset; + } + + /** + * URL relative to the first item in the response. + * + */ + @Import(name="previous", required=true) + private String previous; + + /** + * @return URL relative to the first item in the response. + * + */ + public String previous() { + return this.previous; + } + + /** + * Total number of elements returned. + * + */ + @Import(name="total", required=true) + private Integer total; + + /** + * @return Total number of elements returned. + * + */ + public Integer total() { + return this.total; + } + + private GetRouteFiltersPagination() {} + + private GetRouteFiltersPagination(GetRouteFiltersPagination $) { + this.limit = $.limit; + this.next = $.next; + this.offset = $.offset; + this.previous = $.previous; + this.total = $.total; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersPagination defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersPagination $; + + public Builder() { + $ = new GetRouteFiltersPagination(); + } + + public Builder(GetRouteFiltersPagination defaults) { + $ = new GetRouteFiltersPagination(Objects.requireNonNull(defaults)); + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(Integer limit) { + $.limit = limit; + return this; + } + + /** + * @param next URL relative to the last item in the response. + * + * @return builder + * + */ + public Builder next(String next) { + $.next = next; + return this; + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(Integer offset) { + $.offset = offset; + return this; + } + + /** + * @param previous URL relative to the first item in the response. + * + * @return builder + * + */ + public Builder previous(String previous) { + $.previous = previous; + return this; + } + + /** + * @param total Total number of elements returned. + * + * @return builder + * + */ + public Builder total(Integer total) { + $.total = total; + return this; + } + + public GetRouteFiltersPagination build() { + if ($.limit == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "limit"); + } + if ($.next == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "next"); + } + if ($.offset == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "offset"); + } + if ($.previous == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "previous"); + } + if ($.total == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "total"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPaginationArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPaginationArgs.java new file mode 100644 index 000000000..2f20db06e --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPaginationArgs.java @@ -0,0 +1,246 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + + +public final class GetRouteFiltersPaginationArgs extends com.pulumi.resources.ResourceArgs { + + public static final GetRouteFiltersPaginationArgs Empty = new GetRouteFiltersPaginationArgs(); + + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + @Import(name="limit", required=true) + private Output limit; + + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Output limit() { + return this.limit; + } + + /** + * URL relative to the last item in the response. + * + */ + @Import(name="next", required=true) + private Output next; + + /** + * @return URL relative to the last item in the response. + * + */ + public Output next() { + return this.next; + } + + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + @Import(name="offset", required=true) + private Output offset; + + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Output offset() { + return this.offset; + } + + /** + * URL relative to the first item in the response. + * + */ + @Import(name="previous", required=true) + private Output previous; + + /** + * @return URL relative to the first item in the response. + * + */ + public Output previous() { + return this.previous; + } + + /** + * Total number of elements returned. + * + */ + @Import(name="total", required=true) + private Output total; + + /** + * @return Total number of elements returned. + * + */ + public Output total() { + return this.total; + } + + private GetRouteFiltersPaginationArgs() {} + + private GetRouteFiltersPaginationArgs(GetRouteFiltersPaginationArgs $) { + this.limit = $.limit; + this.next = $.next; + this.offset = $.offset; + this.previous = $.previous; + this.total = $.total; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersPaginationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersPaginationArgs $; + + public Builder() { + $ = new GetRouteFiltersPaginationArgs(); + } + + public Builder(GetRouteFiltersPaginationArgs defaults) { + $ = new GetRouteFiltersPaginationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(Output limit) { + $.limit = limit; + return this; + } + + /** + * @param limit Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + * @return builder + * + */ + public Builder limit(Integer limit) { + return limit(Output.of(limit)); + } + + /** + * @param next URL relative to the last item in the response. + * + * @return builder + * + */ + public Builder next(Output next) { + $.next = next; + return this; + } + + /** + * @param next URL relative to the last item in the response. + * + * @return builder + * + */ + public Builder next(String next) { + return next(Output.of(next)); + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(Output offset) { + $.offset = offset; + return this; + } + + /** + * @param offset The page offset for the pagination request. Index of the first element. Default is 0. + * + * @return builder + * + */ + public Builder offset(Integer offset) { + return offset(Output.of(offset)); + } + + /** + * @param previous URL relative to the first item in the response. + * + * @return builder + * + */ + public Builder previous(Output previous) { + $.previous = previous; + return this; + } + + /** + * @param previous URL relative to the first item in the response. + * + * @return builder + * + */ + public Builder previous(String previous) { + return previous(Output.of(previous)); + } + + /** + * @param total Total number of elements returned. + * + * @return builder + * + */ + public Builder total(Output total) { + $.total = total; + return this; + } + + /** + * @param total Total number of elements returned. + * + * @return builder + * + */ + public Builder total(Integer total) { + return total(Output.of(total)); + } + + public GetRouteFiltersPaginationArgs build() { + if ($.limit == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPaginationArgs", "limit"); + } + if ($.next == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPaginationArgs", "next"); + } + if ($.offset == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPaginationArgs", "offset"); + } + if ($.previous == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPaginationArgs", "previous"); + } + if ($.total == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPaginationArgs", "total"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPlainArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPlainArgs.java new file mode 100644 index 000000000..f4ab4ad8c --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersPlainArgs.java @@ -0,0 +1,153 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersFilter; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersPagination; +import com.equinix.pulumi.fabric.inputs.GetRouteFiltersSort; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFiltersPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFiltersPlainArgs Empty = new GetRouteFiltersPlainArgs(); + + /** + * Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + @Import(name="filters", required=true) + private List filters; + + /** + * @return Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + public List filters() { + return this.filters; + } + + /** + * Pagination details for the Data Source Search Request + * + */ + @Import(name="pagination") + private @Nullable GetRouteFiltersPagination pagination; + + /** + * @return Pagination details for the Data Source Search Request + * + */ + public Optional pagination() { + return Optional.ofNullable(this.pagination); + } + + /** + * Filters for the Data Source Search Request + * + */ + @Import(name="sorts") + private @Nullable List sorts; + + /** + * @return Filters for the Data Source Search Request + * + */ + public Optional> sorts() { + return Optional.ofNullable(this.sorts); + } + + private GetRouteFiltersPlainArgs() {} + + private GetRouteFiltersPlainArgs(GetRouteFiltersPlainArgs $) { + this.filters = $.filters; + this.pagination = $.pagination; + this.sorts = $.sorts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersPlainArgs $; + + public Builder() { + $ = new GetRouteFiltersPlainArgs(); + } + + public Builder(GetRouteFiltersPlainArgs defaults) { + $ = new GetRouteFiltersPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param filters Filters for the Data Source Search Request. Maximum of 8 total filters. + * + * @return builder + * + */ + public Builder filters(List filters) { + $.filters = filters; + return this; + } + + /** + * @param filters Filters for the Data Source Search Request. Maximum of 8 total filters. + * + * @return builder + * + */ + public Builder filters(GetRouteFiltersFilter... filters) { + return filters(List.of(filters)); + } + + /** + * @param pagination Pagination details for the Data Source Search Request + * + * @return builder + * + */ + public Builder pagination(@Nullable GetRouteFiltersPagination pagination) { + $.pagination = pagination; + return this; + } + + /** + * @param sorts Filters for the Data Source Search Request + * + * @return builder + * + */ + public Builder sorts(@Nullable List sorts) { + $.sorts = sorts; + return this; + } + + /** + * @param sorts Filters for the Data Source Search Request + * + * @return builder + * + */ + public Builder sorts(GetRouteFiltersSort... sorts) { + return sorts(List.of(sorts)); + } + + public GetRouteFiltersPlainArgs build() { + if ($.filters == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPlainArgs", "filters"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSort.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSort.java new file mode 100644 index 000000000..13f13d5b3 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSort.java @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFiltersSort extends com.pulumi.resources.InvokeArgs { + + public static final GetRouteFiltersSort Empty = new GetRouteFiltersSort(); + + /** + * The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + @Import(name="direction") + private @Nullable String direction; + + /** + * @return The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + public Optional direction() { + return Optional.ofNullable(this.direction); + } + + /** + * The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + @Import(name="property") + private @Nullable String property; + + /** + * @return The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + public Optional property() { + return Optional.ofNullable(this.property); + } + + private GetRouteFiltersSort() {} + + private GetRouteFiltersSort(GetRouteFiltersSort $) { + this.direction = $.direction; + this.property = $.property; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersSort defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersSort $; + + public Builder() { + $ = new GetRouteFiltersSort(); + } + + public Builder(GetRouteFiltersSort defaults) { + $ = new GetRouteFiltersSort(Objects.requireNonNull(defaults)); + } + + /** + * @param direction The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + * @return builder + * + */ + public Builder direction(@Nullable String direction) { + $.direction = direction; + return this; + } + + /** + * @param property The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + * @return builder + * + */ + public Builder property(@Nullable String property) { + $.property = property; + return this; + } + + public GetRouteFiltersSort build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSortArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSortArgs.java new file mode 100644 index 000000000..506612c3e --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/GetRouteFiltersSortArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRouteFiltersSortArgs extends com.pulumi.resources.ResourceArgs { + + public static final GetRouteFiltersSortArgs Empty = new GetRouteFiltersSortArgs(); + + /** + * The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + @Import(name="direction") + private @Nullable Output direction; + + /** + * @return The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + public Optional> direction() { + return Optional.ofNullable(this.direction); + } + + /** + * The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + @Import(name="property") + private @Nullable Output property; + + /** + * @return The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + public Optional> property() { + return Optional.ofNullable(this.property); + } + + private GetRouteFiltersSortArgs() {} + + private GetRouteFiltersSortArgs(GetRouteFiltersSortArgs $) { + this.direction = $.direction; + this.property = $.property; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRouteFiltersSortArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRouteFiltersSortArgs $; + + public Builder() { + $ = new GetRouteFiltersSortArgs(); + } + + public Builder(GetRouteFiltersSortArgs defaults) { + $ = new GetRouteFiltersSortArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param direction The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + * @return builder + * + */ + public Builder direction(@Nullable Output direction) { + $.direction = direction; + return this; + } + + /** + * @param direction The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + * @return builder + * + */ + public Builder direction(String direction) { + return direction(Output.of(direction)); + } + + /** + * @param property The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + * @return builder + * + */ + public Builder property(@Nullable Output property) { + $.property = property; + return this; + } + + /** + * @param property The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + * @return builder + * + */ + public Builder property(String property) { + return property(Output.of(property)); + } + + public GetRouteFiltersSortArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeArgs.java new file mode 100644 index 000000000..2209fdc03 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeArgs.java @@ -0,0 +1,157 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterChangeArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterChangeArgs Empty = new RouteFilterChangeArgs(); + + /** + * The URI of the previous Route Filter Change + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return The URI of the previous Route Filter Change + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * Unique identifier for the previous change + * + */ + @Import(name="uuid") + private @Nullable Output uuid; + + /** + * @return Unique identifier for the previous change + * + */ + public Optional> uuid() { + return Optional.ofNullable(this.uuid); + } + + private RouteFilterChangeArgs() {} + + private RouteFilterChangeArgs(RouteFilterChangeArgs $) { + this.href = $.href; + this.type = $.type; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterChangeArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterChangeArgs $; + + public Builder() { + $ = new RouteFilterChangeArgs(); + } + + public Builder(RouteFilterChangeArgs defaults) { + $ = new RouteFilterChangeArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param href The URI of the previous Route Filter Change + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href The URI of the previous Route Filter Change + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param type Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param uuid Unique identifier for the previous change + * + * @return builder + * + */ + public Builder uuid(@Nullable Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Unique identifier for the previous change + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public RouteFilterChangeArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeLogArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeLogArgs.java new file mode 100644 index 000000000..0b87ff430 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterChangeLogArgs.java @@ -0,0 +1,490 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterChangeLogArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterChangeLogArgs Empty = new RouteFilterChangeLogArgs(); + + /** + * Created by User Key + * + */ + @Import(name="createdBy") + private @Nullable Output createdBy; + + /** + * @return Created by User Key + * + */ + public Optional> createdBy() { + return Optional.ofNullable(this.createdBy); + } + + /** + * Created by User Email Address + * + */ + @Import(name="createdByEmail") + private @Nullable Output createdByEmail; + + /** + * @return Created by User Email Address + * + */ + public Optional> createdByEmail() { + return Optional.ofNullable(this.createdByEmail); + } + + /** + * Created by User Full Name + * + */ + @Import(name="createdByFullName") + private @Nullable Output createdByFullName; + + /** + * @return Created by User Full Name + * + */ + public Optional> createdByFullName() { + return Optional.ofNullable(this.createdByFullName); + } + + /** + * Created by Date and Time + * + */ + @Import(name="createdDateTime") + private @Nullable Output createdDateTime; + + /** + * @return Created by Date and Time + * + */ + public Optional> createdDateTime() { + return Optional.ofNullable(this.createdDateTime); + } + + /** + * Deleted by User Key + * + */ + @Import(name="deletedBy") + private @Nullable Output deletedBy; + + /** + * @return Deleted by User Key + * + */ + public Optional> deletedBy() { + return Optional.ofNullable(this.deletedBy); + } + + /** + * Deleted by User Email Address + * + */ + @Import(name="deletedByEmail") + private @Nullable Output deletedByEmail; + + /** + * @return Deleted by User Email Address + * + */ + public Optional> deletedByEmail() { + return Optional.ofNullable(this.deletedByEmail); + } + + /** + * Deleted by User Full Name + * + */ + @Import(name="deletedByFullName") + private @Nullable Output deletedByFullName; + + /** + * @return Deleted by User Full Name + * + */ + public Optional> deletedByFullName() { + return Optional.ofNullable(this.deletedByFullName); + } + + /** + * Deleted by Date and Time + * + */ + @Import(name="deletedDateTime") + private @Nullable Output deletedDateTime; + + /** + * @return Deleted by Date and Time + * + */ + public Optional> deletedDateTime() { + return Optional.ofNullable(this.deletedDateTime); + } + + /** + * Updated by User Key + * + */ + @Import(name="updatedBy") + private @Nullable Output updatedBy; + + /** + * @return Updated by User Key + * + */ + public Optional> updatedBy() { + return Optional.ofNullable(this.updatedBy); + } + + /** + * Updated by User Email Address + * + */ + @Import(name="updatedByEmail") + private @Nullable Output updatedByEmail; + + /** + * @return Updated by User Email Address + * + */ + public Optional> updatedByEmail() { + return Optional.ofNullable(this.updatedByEmail); + } + + /** + * Updated by User Full Name + * + */ + @Import(name="updatedByFullName") + private @Nullable Output updatedByFullName; + + /** + * @return Updated by User Full Name + * + */ + public Optional> updatedByFullName() { + return Optional.ofNullable(this.updatedByFullName); + } + + /** + * Updated by Date and Time + * + */ + @Import(name="updatedDateTime") + private @Nullable Output updatedDateTime; + + /** + * @return Updated by Date and Time + * + */ + public Optional> updatedDateTime() { + return Optional.ofNullable(this.updatedDateTime); + } + + private RouteFilterChangeLogArgs() {} + + private RouteFilterChangeLogArgs(RouteFilterChangeLogArgs $) { + this.createdBy = $.createdBy; + this.createdByEmail = $.createdByEmail; + this.createdByFullName = $.createdByFullName; + this.createdDateTime = $.createdDateTime; + this.deletedBy = $.deletedBy; + this.deletedByEmail = $.deletedByEmail; + this.deletedByFullName = $.deletedByFullName; + this.deletedDateTime = $.deletedDateTime; + this.updatedBy = $.updatedBy; + this.updatedByEmail = $.updatedByEmail; + this.updatedByFullName = $.updatedByFullName; + this.updatedDateTime = $.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterChangeLogArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterChangeLogArgs $; + + public Builder() { + $ = new RouteFilterChangeLogArgs(); + } + + public Builder(RouteFilterChangeLogArgs defaults) { + $ = new RouteFilterChangeLogArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param createdBy Created by User Key + * + * @return builder + * + */ + public Builder createdBy(@Nullable Output createdBy) { + $.createdBy = createdBy; + return this; + } + + /** + * @param createdBy Created by User Key + * + * @return builder + * + */ + public Builder createdBy(String createdBy) { + return createdBy(Output.of(createdBy)); + } + + /** + * @param createdByEmail Created by User Email Address + * + * @return builder + * + */ + public Builder createdByEmail(@Nullable Output createdByEmail) { + $.createdByEmail = createdByEmail; + return this; + } + + /** + * @param createdByEmail Created by User Email Address + * + * @return builder + * + */ + public Builder createdByEmail(String createdByEmail) { + return createdByEmail(Output.of(createdByEmail)); + } + + /** + * @param createdByFullName Created by User Full Name + * + * @return builder + * + */ + public Builder createdByFullName(@Nullable Output createdByFullName) { + $.createdByFullName = createdByFullName; + return this; + } + + /** + * @param createdByFullName Created by User Full Name + * + * @return builder + * + */ + public Builder createdByFullName(String createdByFullName) { + return createdByFullName(Output.of(createdByFullName)); + } + + /** + * @param createdDateTime Created by Date and Time + * + * @return builder + * + */ + public Builder createdDateTime(@Nullable Output createdDateTime) { + $.createdDateTime = createdDateTime; + return this; + } + + /** + * @param createdDateTime Created by Date and Time + * + * @return builder + * + */ + public Builder createdDateTime(String createdDateTime) { + return createdDateTime(Output.of(createdDateTime)); + } + + /** + * @param deletedBy Deleted by User Key + * + * @return builder + * + */ + public Builder deletedBy(@Nullable Output deletedBy) { + $.deletedBy = deletedBy; + return this; + } + + /** + * @param deletedBy Deleted by User Key + * + * @return builder + * + */ + public Builder deletedBy(String deletedBy) { + return deletedBy(Output.of(deletedBy)); + } + + /** + * @param deletedByEmail Deleted by User Email Address + * + * @return builder + * + */ + public Builder deletedByEmail(@Nullable Output deletedByEmail) { + $.deletedByEmail = deletedByEmail; + return this; + } + + /** + * @param deletedByEmail Deleted by User Email Address + * + * @return builder + * + */ + public Builder deletedByEmail(String deletedByEmail) { + return deletedByEmail(Output.of(deletedByEmail)); + } + + /** + * @param deletedByFullName Deleted by User Full Name + * + * @return builder + * + */ + public Builder deletedByFullName(@Nullable Output deletedByFullName) { + $.deletedByFullName = deletedByFullName; + return this; + } + + /** + * @param deletedByFullName Deleted by User Full Name + * + * @return builder + * + */ + public Builder deletedByFullName(String deletedByFullName) { + return deletedByFullName(Output.of(deletedByFullName)); + } + + /** + * @param deletedDateTime Deleted by Date and Time + * + * @return builder + * + */ + public Builder deletedDateTime(@Nullable Output deletedDateTime) { + $.deletedDateTime = deletedDateTime; + return this; + } + + /** + * @param deletedDateTime Deleted by Date and Time + * + * @return builder + * + */ + public Builder deletedDateTime(String deletedDateTime) { + return deletedDateTime(Output.of(deletedDateTime)); + } + + /** + * @param updatedBy Updated by User Key + * + * @return builder + * + */ + public Builder updatedBy(@Nullable Output updatedBy) { + $.updatedBy = updatedBy; + return this; + } + + /** + * @param updatedBy Updated by User Key + * + * @return builder + * + */ + public Builder updatedBy(String updatedBy) { + return updatedBy(Output.of(updatedBy)); + } + + /** + * @param updatedByEmail Updated by User Email Address + * + * @return builder + * + */ + public Builder updatedByEmail(@Nullable Output updatedByEmail) { + $.updatedByEmail = updatedByEmail; + return this; + } + + /** + * @param updatedByEmail Updated by User Email Address + * + * @return builder + * + */ + public Builder updatedByEmail(String updatedByEmail) { + return updatedByEmail(Output.of(updatedByEmail)); + } + + /** + * @param updatedByFullName Updated by User Full Name + * + * @return builder + * + */ + public Builder updatedByFullName(@Nullable Output updatedByFullName) { + $.updatedByFullName = updatedByFullName; + return this; + } + + /** + * @param updatedByFullName Updated by User Full Name + * + * @return builder + * + */ + public Builder updatedByFullName(String updatedByFullName) { + return updatedByFullName(Output.of(updatedByFullName)); + } + + /** + * @param updatedDateTime Updated by Date and Time + * + * @return builder + * + */ + public Builder updatedDateTime(@Nullable Output updatedDateTime) { + $.updatedDateTime = updatedDateTime; + return this; + } + + /** + * @param updatedDateTime Updated by Date and Time + * + * @return builder + * + */ + public Builder updatedDateTime(String updatedDateTime) { + return updatedDateTime(Output.of(updatedDateTime)); + } + + public RouteFilterChangeLogArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterProjectArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterProjectArgs.java new file mode 100644 index 000000000..530b51efe --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterProjectArgs.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterProjectArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterProjectArgs Empty = new RouteFilterProjectArgs(); + + /** + * URI of the Fabric Project + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return URI of the Fabric Project + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Project id associated with Fabric Project + * + */ + @Import(name="projectId", required=true) + private Output projectId; + + /** + * @return Project id associated with Fabric Project + * + */ + public Output projectId() { + return this.projectId; + } + + private RouteFilterProjectArgs() {} + + private RouteFilterProjectArgs(RouteFilterProjectArgs $) { + this.href = $.href; + this.projectId = $.projectId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterProjectArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterProjectArgs $; + + public Builder() { + $ = new RouteFilterProjectArgs(); + } + + public Builder(RouteFilterProjectArgs defaults) { + $ = new RouteFilterProjectArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param href URI of the Fabric Project + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href URI of the Fabric Project + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param projectId Project id associated with Fabric Project + * + * @return builder + * + */ + public Builder projectId(Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId Project id associated with Fabric Project + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + public RouteFilterProjectArgs build() { + if ($.projectId == null) { + throw new MissingRequiredPropertyException("RouteFilterProjectArgs", "projectId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeArgs.java new file mode 100644 index 000000000..6fd9c7264 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeArgs.java @@ -0,0 +1,157 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterRuleChangeArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterRuleChangeArgs Empty = new RouteFilterRuleChangeArgs(); + + /** + * The URI of the previous Route Filter Rule Change + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * Unique identifier for the previous change + * + */ + @Import(name="uuid") + private @Nullable Output uuid; + + /** + * @return Unique identifier for the previous change + * + */ + public Optional> uuid() { + return Optional.ofNullable(this.uuid); + } + + private RouteFilterRuleChangeArgs() {} + + private RouteFilterRuleChangeArgs(RouteFilterRuleChangeArgs $) { + this.href = $.href; + this.type = $.type; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterRuleChangeArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterRuleChangeArgs $; + + public Builder() { + $ = new RouteFilterRuleChangeArgs(); + } + + public Builder(RouteFilterRuleChangeArgs defaults) { + $ = new RouteFilterRuleChangeArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param href The URI of the previous Route Filter Rule Change + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href The URI of the previous Route Filter Rule Change + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param type Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param uuid Unique identifier for the previous change + * + * @return builder + * + */ + public Builder uuid(@Nullable Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Unique identifier for the previous change + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public RouteFilterRuleChangeArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeLogArgs.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeLogArgs.java new file mode 100644 index 000000000..49e1b366d --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleChangeLogArgs.java @@ -0,0 +1,490 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterRuleChangeLogArgs extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterRuleChangeLogArgs Empty = new RouteFilterRuleChangeLogArgs(); + + /** + * Created by User Key + * + */ + @Import(name="createdBy") + private @Nullable Output createdBy; + + /** + * @return Created by User Key + * + */ + public Optional> createdBy() { + return Optional.ofNullable(this.createdBy); + } + + /** + * Created by User Email Address + * + */ + @Import(name="createdByEmail") + private @Nullable Output createdByEmail; + + /** + * @return Created by User Email Address + * + */ + public Optional> createdByEmail() { + return Optional.ofNullable(this.createdByEmail); + } + + /** + * Created by User Full Name + * + */ + @Import(name="createdByFullName") + private @Nullable Output createdByFullName; + + /** + * @return Created by User Full Name + * + */ + public Optional> createdByFullName() { + return Optional.ofNullable(this.createdByFullName); + } + + /** + * Created by Date and Time + * + */ + @Import(name="createdDateTime") + private @Nullable Output createdDateTime; + + /** + * @return Created by Date and Time + * + */ + public Optional> createdDateTime() { + return Optional.ofNullable(this.createdDateTime); + } + + /** + * Deleted by User Key + * + */ + @Import(name="deletedBy") + private @Nullable Output deletedBy; + + /** + * @return Deleted by User Key + * + */ + public Optional> deletedBy() { + return Optional.ofNullable(this.deletedBy); + } + + /** + * Deleted by User Email Address + * + */ + @Import(name="deletedByEmail") + private @Nullable Output deletedByEmail; + + /** + * @return Deleted by User Email Address + * + */ + public Optional> deletedByEmail() { + return Optional.ofNullable(this.deletedByEmail); + } + + /** + * Deleted by User Full Name + * + */ + @Import(name="deletedByFullName") + private @Nullable Output deletedByFullName; + + /** + * @return Deleted by User Full Name + * + */ + public Optional> deletedByFullName() { + return Optional.ofNullable(this.deletedByFullName); + } + + /** + * Deleted by Date and Time + * + */ + @Import(name="deletedDateTime") + private @Nullable Output deletedDateTime; + + /** + * @return Deleted by Date and Time + * + */ + public Optional> deletedDateTime() { + return Optional.ofNullable(this.deletedDateTime); + } + + /** + * Updated by User Key + * + */ + @Import(name="updatedBy") + private @Nullable Output updatedBy; + + /** + * @return Updated by User Key + * + */ + public Optional> updatedBy() { + return Optional.ofNullable(this.updatedBy); + } + + /** + * Updated by User Email Address + * + */ + @Import(name="updatedByEmail") + private @Nullable Output updatedByEmail; + + /** + * @return Updated by User Email Address + * + */ + public Optional> updatedByEmail() { + return Optional.ofNullable(this.updatedByEmail); + } + + /** + * Updated by User Full Name + * + */ + @Import(name="updatedByFullName") + private @Nullable Output updatedByFullName; + + /** + * @return Updated by User Full Name + * + */ + public Optional> updatedByFullName() { + return Optional.ofNullable(this.updatedByFullName); + } + + /** + * Updated by Date and Time + * + */ + @Import(name="updatedDateTime") + private @Nullable Output updatedDateTime; + + /** + * @return Updated by Date and Time + * + */ + public Optional> updatedDateTime() { + return Optional.ofNullable(this.updatedDateTime); + } + + private RouteFilterRuleChangeLogArgs() {} + + private RouteFilterRuleChangeLogArgs(RouteFilterRuleChangeLogArgs $) { + this.createdBy = $.createdBy; + this.createdByEmail = $.createdByEmail; + this.createdByFullName = $.createdByFullName; + this.createdDateTime = $.createdDateTime; + this.deletedBy = $.deletedBy; + this.deletedByEmail = $.deletedByEmail; + this.deletedByFullName = $.deletedByFullName; + this.deletedDateTime = $.deletedDateTime; + this.updatedBy = $.updatedBy; + this.updatedByEmail = $.updatedByEmail; + this.updatedByFullName = $.updatedByFullName; + this.updatedDateTime = $.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterRuleChangeLogArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterRuleChangeLogArgs $; + + public Builder() { + $ = new RouteFilterRuleChangeLogArgs(); + } + + public Builder(RouteFilterRuleChangeLogArgs defaults) { + $ = new RouteFilterRuleChangeLogArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param createdBy Created by User Key + * + * @return builder + * + */ + public Builder createdBy(@Nullable Output createdBy) { + $.createdBy = createdBy; + return this; + } + + /** + * @param createdBy Created by User Key + * + * @return builder + * + */ + public Builder createdBy(String createdBy) { + return createdBy(Output.of(createdBy)); + } + + /** + * @param createdByEmail Created by User Email Address + * + * @return builder + * + */ + public Builder createdByEmail(@Nullable Output createdByEmail) { + $.createdByEmail = createdByEmail; + return this; + } + + /** + * @param createdByEmail Created by User Email Address + * + * @return builder + * + */ + public Builder createdByEmail(String createdByEmail) { + return createdByEmail(Output.of(createdByEmail)); + } + + /** + * @param createdByFullName Created by User Full Name + * + * @return builder + * + */ + public Builder createdByFullName(@Nullable Output createdByFullName) { + $.createdByFullName = createdByFullName; + return this; + } + + /** + * @param createdByFullName Created by User Full Name + * + * @return builder + * + */ + public Builder createdByFullName(String createdByFullName) { + return createdByFullName(Output.of(createdByFullName)); + } + + /** + * @param createdDateTime Created by Date and Time + * + * @return builder + * + */ + public Builder createdDateTime(@Nullable Output createdDateTime) { + $.createdDateTime = createdDateTime; + return this; + } + + /** + * @param createdDateTime Created by Date and Time + * + * @return builder + * + */ + public Builder createdDateTime(String createdDateTime) { + return createdDateTime(Output.of(createdDateTime)); + } + + /** + * @param deletedBy Deleted by User Key + * + * @return builder + * + */ + public Builder deletedBy(@Nullable Output deletedBy) { + $.deletedBy = deletedBy; + return this; + } + + /** + * @param deletedBy Deleted by User Key + * + * @return builder + * + */ + public Builder deletedBy(String deletedBy) { + return deletedBy(Output.of(deletedBy)); + } + + /** + * @param deletedByEmail Deleted by User Email Address + * + * @return builder + * + */ + public Builder deletedByEmail(@Nullable Output deletedByEmail) { + $.deletedByEmail = deletedByEmail; + return this; + } + + /** + * @param deletedByEmail Deleted by User Email Address + * + * @return builder + * + */ + public Builder deletedByEmail(String deletedByEmail) { + return deletedByEmail(Output.of(deletedByEmail)); + } + + /** + * @param deletedByFullName Deleted by User Full Name + * + * @return builder + * + */ + public Builder deletedByFullName(@Nullable Output deletedByFullName) { + $.deletedByFullName = deletedByFullName; + return this; + } + + /** + * @param deletedByFullName Deleted by User Full Name + * + * @return builder + * + */ + public Builder deletedByFullName(String deletedByFullName) { + return deletedByFullName(Output.of(deletedByFullName)); + } + + /** + * @param deletedDateTime Deleted by Date and Time + * + * @return builder + * + */ + public Builder deletedDateTime(@Nullable Output deletedDateTime) { + $.deletedDateTime = deletedDateTime; + return this; + } + + /** + * @param deletedDateTime Deleted by Date and Time + * + * @return builder + * + */ + public Builder deletedDateTime(String deletedDateTime) { + return deletedDateTime(Output.of(deletedDateTime)); + } + + /** + * @param updatedBy Updated by User Key + * + * @return builder + * + */ + public Builder updatedBy(@Nullable Output updatedBy) { + $.updatedBy = updatedBy; + return this; + } + + /** + * @param updatedBy Updated by User Key + * + * @return builder + * + */ + public Builder updatedBy(String updatedBy) { + return updatedBy(Output.of(updatedBy)); + } + + /** + * @param updatedByEmail Updated by User Email Address + * + * @return builder + * + */ + public Builder updatedByEmail(@Nullable Output updatedByEmail) { + $.updatedByEmail = updatedByEmail; + return this; + } + + /** + * @param updatedByEmail Updated by User Email Address + * + * @return builder + * + */ + public Builder updatedByEmail(String updatedByEmail) { + return updatedByEmail(Output.of(updatedByEmail)); + } + + /** + * @param updatedByFullName Updated by User Full Name + * + * @return builder + * + */ + public Builder updatedByFullName(@Nullable Output updatedByFullName) { + $.updatedByFullName = updatedByFullName; + return this; + } + + /** + * @param updatedByFullName Updated by User Full Name + * + * @return builder + * + */ + public Builder updatedByFullName(String updatedByFullName) { + return updatedByFullName(Output.of(updatedByFullName)); + } + + /** + * @param updatedDateTime Updated by Date and Time + * + * @return builder + * + */ + public Builder updatedDateTime(@Nullable Output updatedDateTime) { + $.updatedDateTime = updatedDateTime; + return this; + } + + /** + * @param updatedDateTime Updated by Date and Time + * + * @return builder + * + */ + public Builder updatedDateTime(String updatedDateTime) { + return updatedDateTime(Output.of(updatedDateTime)); + } + + public RouteFilterRuleChangeLogArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleState.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleState.java new file mode 100644 index 000000000..d259d2f04 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterRuleState.java @@ -0,0 +1,487 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.equinix.pulumi.fabric.inputs.RouteFilterRuleChangeArgs; +import com.equinix.pulumi.fabric.inputs.RouteFilterRuleChangeLogArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterRuleState extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterRuleState Empty = new RouteFilterRuleState(); + + /** + * Action that will be taken on IP Addresses matching the rule + * + */ + @Import(name="action") + private @Nullable Output action; + + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + public Optional> action() { + return Optional.ofNullable(this.action); + } + + @Import(name="changeLogs") + private @Nullable Output> changeLogs; + + public Optional>> changeLogs() { + return Optional.ofNullable(this.changeLogs); + } + + /** + * An object with the details of the previous change applied on the Route Filter + * + */ + @Import(name="changes") + private @Nullable Output> changes; + + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public Optional>> changes() { + return Optional.ofNullable(this.changes); + } + + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * Route filter rules URI + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return Route filter rules URI + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Name of the Route Filter + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the Route Filter + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * IP Address Prefix to Filter on + * + */ + @Import(name="prefix") + private @Nullable Output prefix; + + /** + * @return IP Address Prefix to Filter on + * + */ + public Optional> prefix() { + return Optional.ofNullable(this.prefix); + } + + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + @Import(name="prefixMatch") + private @Nullable Output prefixMatch; + + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + public Optional> prefixMatch() { + return Optional.ofNullable(this.prefixMatch); + } + + /** + * UUID of the Route Filter Policy to apply this Rule to + * + */ + @Import(name="routeFilterId") + private @Nullable Output routeFilterId; + + /** + * @return UUID of the Route Filter Policy to apply this Rule to + * + */ + public Optional> routeFilterId() { + return Optional.ofNullable(this.routeFilterId); + } + + /** + * State of the Route Filter Rule in its lifecycle + * + */ + @Import(name="state") + private @Nullable Output state; + + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + public Optional> state() { + return Optional.ofNullable(this.state); + } + + /** + * Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * Equinix Assigned ID for Route Filter Rule + * + */ + @Import(name="uuid") + private @Nullable Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter Rule + * + */ + public Optional> uuid() { + return Optional.ofNullable(this.uuid); + } + + private RouteFilterRuleState() {} + + private RouteFilterRuleState(RouteFilterRuleState $) { + this.action = $.action; + this.changeLogs = $.changeLogs; + this.changes = $.changes; + this.description = $.description; + this.href = $.href; + this.name = $.name; + this.prefix = $.prefix; + this.prefixMatch = $.prefixMatch; + this.routeFilterId = $.routeFilterId; + this.state = $.state; + this.type = $.type; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterRuleState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterRuleState $; + + public Builder() { + $ = new RouteFilterRuleState(); + } + + public Builder(RouteFilterRuleState defaults) { + $ = new RouteFilterRuleState(Objects.requireNonNull(defaults)); + } + + /** + * @param action Action that will be taken on IP Addresses matching the rule + * + * @return builder + * + */ + public Builder action(@Nullable Output action) { + $.action = action; + return this; + } + + /** + * @param action Action that will be taken on IP Addresses matching the rule + * + * @return builder + * + */ + public Builder action(String action) { + return action(Output.of(action)); + } + + public Builder changeLogs(@Nullable Output> changeLogs) { + $.changeLogs = changeLogs; + return this; + } + + public Builder changeLogs(List changeLogs) { + return changeLogs(Output.of(changeLogs)); + } + + public Builder changeLogs(RouteFilterRuleChangeLogArgs... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(@Nullable Output> changes) { + $.changes = changes; + return this; + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(List changes) { + return changes(Output.of(changes)); + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(RouteFilterRuleChangeArgs... changes) { + return changes(List.of(changes)); + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param href Route filter rules URI + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href Route filter rules URI + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param prefix IP Address Prefix to Filter on + * + * @return builder + * + */ + public Builder prefix(@Nullable Output prefix) { + $.prefix = prefix; + return this; + } + + /** + * @param prefix IP Address Prefix to Filter on + * + * @return builder + * + */ + public Builder prefix(String prefix) { + return prefix(Output.of(prefix)); + } + + /** + * @param prefixMatch Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + * @return builder + * + */ + public Builder prefixMatch(@Nullable Output prefixMatch) { + $.prefixMatch = prefixMatch; + return this; + } + + /** + * @param prefixMatch Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + * @return builder + * + */ + public Builder prefixMatch(String prefixMatch) { + return prefixMatch(Output.of(prefixMatch)); + } + + /** + * @param routeFilterId UUID of the Route Filter Policy to apply this Rule to + * + * @return builder + * + */ + public Builder routeFilterId(@Nullable Output routeFilterId) { + $.routeFilterId = routeFilterId; + return this; + } + + /** + * @param routeFilterId UUID of the Route Filter Policy to apply this Rule to + * + * @return builder + * + */ + public Builder routeFilterId(String routeFilterId) { + return routeFilterId(Output.of(routeFilterId)); + } + + /** + * @param state State of the Route Filter Rule in its lifecycle + * + * @return builder + * + */ + public Builder state(@Nullable Output state) { + $.state = state; + return this; + } + + /** + * @param state State of the Route Filter Rule in its lifecycle + * + * @return builder + * + */ + public Builder state(String state) { + return state(Output.of(state)); + } + + /** + * @param type Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Rule + * + * @return builder + * + */ + public Builder uuid(@Nullable Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter Rule + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public RouteFilterRuleState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterState.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterState.java new file mode 100644 index 000000000..5fbdf29a2 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/inputs/RouteFilterState.java @@ -0,0 +1,489 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.inputs; + +import com.equinix.pulumi.fabric.inputs.RouteFilterChangeArgs; +import com.equinix.pulumi.fabric.inputs.RouteFilterChangeLogArgs; +import com.equinix.pulumi.fabric.inputs.RouteFilterProjectArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouteFilterState extends com.pulumi.resources.ResourceArgs { + + public static final RouteFilterState Empty = new RouteFilterState(); + + @Import(name="changeLogs") + private @Nullable Output> changeLogs; + + public Optional>> changeLogs() { + return Optional.ofNullable(this.changeLogs); + } + + /** + * An object with the details of the previous change applied on the Route Filter + * + */ + @Import(name="changes") + private @Nullable Output> changes; + + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public Optional>> changes() { + return Optional.ofNullable(this.changes); + } + + /** + * The number of Fabric Connections that this Route Filter is attached to + * + */ + @Import(name="connectionsCount") + private @Nullable Output connectionsCount; + + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + public Optional> connectionsCount() { + return Optional.ofNullable(this.connectionsCount); + } + + /** + * Optional description to add to the Route Filter you will be creating + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * Route filter URI + * + */ + @Import(name="href") + private @Nullable Output href; + + /** + * @return Route filter URI + * + */ + public Optional> href() { + return Optional.ofNullable(this.href); + } + + /** + * Name of the Route Filter + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the Route Filter + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + @Import(name="notMatchedRuleAction") + private @Nullable Output notMatchedRuleAction; + + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + public Optional> notMatchedRuleAction() { + return Optional.ofNullable(this.notMatchedRuleAction); + } + + /** + * The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + @Import(name="project") + private @Nullable Output project; + + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + public Optional> project() { + return Optional.ofNullable(this.project); + } + + /** + * The number of Route Filter Rules attached to this Route Filter + * + */ + @Import(name="rulesCount") + private @Nullable Output rulesCount; + + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + public Optional> rulesCount() { + return Optional.ofNullable(this.rulesCount); + } + + /** + * State of the Route Filter in its lifecycle + * + */ + @Import(name="state") + private @Nullable Output state; + + /** + * @return State of the Route Filter in its lifecycle + * + */ + public Optional> state() { + return Optional.ofNullable(this.state); + } + + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * Equinix Assigned ID for Route Filter + * + */ + @Import(name="uuid") + private @Nullable Output uuid; + + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public Optional> uuid() { + return Optional.ofNullable(this.uuid); + } + + private RouteFilterState() {} + + private RouteFilterState(RouteFilterState $) { + this.changeLogs = $.changeLogs; + this.changes = $.changes; + this.connectionsCount = $.connectionsCount; + this.description = $.description; + this.href = $.href; + this.name = $.name; + this.notMatchedRuleAction = $.notMatchedRuleAction; + this.project = $.project; + this.rulesCount = $.rulesCount; + this.state = $.state; + this.type = $.type; + this.uuid = $.uuid; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouteFilterState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouteFilterState $; + + public Builder() { + $ = new RouteFilterState(); + } + + public Builder(RouteFilterState defaults) { + $ = new RouteFilterState(Objects.requireNonNull(defaults)); + } + + public Builder changeLogs(@Nullable Output> changeLogs) { + $.changeLogs = changeLogs; + return this; + } + + public Builder changeLogs(List changeLogs) { + return changeLogs(Output.of(changeLogs)); + } + + public Builder changeLogs(RouteFilterChangeLogArgs... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(@Nullable Output> changes) { + $.changes = changes; + return this; + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(List changes) { + return changes(Output.of(changes)); + } + + /** + * @param changes An object with the details of the previous change applied on the Route Filter + * + * @return builder + * + */ + public Builder changes(RouteFilterChangeArgs... changes) { + return changes(List.of(changes)); + } + + /** + * @param connectionsCount The number of Fabric Connections that this Route Filter is attached to + * + * @return builder + * + */ + public Builder connectionsCount(@Nullable Output connectionsCount) { + $.connectionsCount = connectionsCount; + return this; + } + + /** + * @param connectionsCount The number of Fabric Connections that this Route Filter is attached to + * + * @return builder + * + */ + public Builder connectionsCount(Integer connectionsCount) { + return connectionsCount(Output.of(connectionsCount)); + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Optional description to add to the Route Filter you will be creating + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param href Route filter URI + * + * @return builder + * + */ + public Builder href(@Nullable Output href) { + $.href = href; + return this; + } + + /** + * @param href Route filter URI + * + * @return builder + * + */ + public Builder href(String href) { + return href(Output.of(href)); + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the Route Filter + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param notMatchedRuleAction The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + * @return builder + * + */ + public Builder notMatchedRuleAction(@Nullable Output notMatchedRuleAction) { + $.notMatchedRuleAction = notMatchedRuleAction; + return this; + } + + /** + * @param notMatchedRuleAction The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + * @return builder + * + */ + public Builder notMatchedRuleAction(String notMatchedRuleAction) { + return notMatchedRuleAction(Output.of(notMatchedRuleAction)); + } + + /** + * @param project The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + * @return builder + * + */ + public Builder project(@Nullable Output project) { + $.project = project; + return this; + } + + /** + * @param project The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + * @return builder + * + */ + public Builder project(RouteFilterProjectArgs project) { + return project(Output.of(project)); + } + + /** + * @param rulesCount The number of Route Filter Rules attached to this Route Filter + * + * @return builder + * + */ + public Builder rulesCount(@Nullable Output rulesCount) { + $.rulesCount = rulesCount; + return this; + } + + /** + * @param rulesCount The number of Route Filter Rules attached to this Route Filter + * + * @return builder + * + */ + public Builder rulesCount(Integer rulesCount) { + return rulesCount(Output.of(rulesCount)); + } + + /** + * @param state State of the Route Filter in its lifecycle + * + * @return builder + * + */ + public Builder state(@Nullable Output state) { + $.state = state; + return this; + } + + /** + * @param state State of the Route Filter in its lifecycle + * + * @return builder + * + */ + public Builder state(String state) { + return state(Output.of(state)); + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param uuid Equinix Assigned ID for Route Filter + * + * @return builder + * + */ + public Builder uuid(@Nullable Output uuid) { + $.uuid = uuid; + return this; + } + + /** + * @param uuid Equinix Assigned ID for Route Filter + * + * @return builder + * + */ + public Builder uuid(String uuid) { + return uuid(Output.of(uuid)); + } + + public RouteFilterState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFilterResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFilterResult.java new file mode 100644 index 000000000..df473e0ab --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFilterResult.java @@ -0,0 +1,219 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetConnectionRouteFilterResult { + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + private String attachmentStatus; + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + private String connectionId; + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + private String direction; + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + private String href; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + private String routeFilterId; + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + private String uuid; + + private GetConnectionRouteFilterResult() {} + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + public String attachmentStatus() { + return this.attachmentStatus; + } + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public String connectionId() { + return this.connectionId; + } + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + public String direction() { + return this.direction; + } + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + public String href() { + return this.href; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetConnectionRouteFilterResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String attachmentStatus; + private String connectionId; + private String direction; + private String href; + private String id; + private String routeFilterId; + private String type; + private String uuid; + public Builder() {} + public Builder(GetConnectionRouteFilterResult defaults) { + Objects.requireNonNull(defaults); + this.attachmentStatus = defaults.attachmentStatus; + this.connectionId = defaults.connectionId; + this.direction = defaults.direction; + this.href = defaults.href; + this.id = defaults.id; + this.routeFilterId = defaults.routeFilterId; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder attachmentStatus(String attachmentStatus) { + if (attachmentStatus == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "attachmentStatus"); + } + this.attachmentStatus = attachmentStatus; + return this; + } + @CustomType.Setter + public Builder connectionId(String connectionId) { + if (connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "connectionId"); + } + this.connectionId = connectionId; + return this; + } + @CustomType.Setter + public Builder direction(String direction) { + if (direction == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "direction"); + } + this.direction = direction; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder routeFilterId(String routeFilterId) { + if (routeFilterId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "routeFilterId"); + } + this.routeFilterId = routeFilterId; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFilterResult", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetConnectionRouteFilterResult build() { + final var _resultValue = new GetConnectionRouteFilterResult(); + _resultValue.attachmentStatus = attachmentStatus; + _resultValue.connectionId = connectionId; + _resultValue.direction = direction; + _resultValue.href = href; + _resultValue.id = id; + _resultValue.routeFilterId = routeFilterId; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersData.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersData.java new file mode 100644 index 000000000..7b4c4af36 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersData.java @@ -0,0 +1,150 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetConnectionRouteFiltersData { + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + private String attachmentStatus; + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + private String direction; + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + private String href; + /** + * @return Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + private String uuid; + + private GetConnectionRouteFiltersData() {} + /** + * @return Status of the Route Filter Policy attachment lifecycle + * + */ + public String attachmentStatus() { + return this.attachmentStatus; + } + /** + * @return Direction of the filtering of the attached Route Filter Policy + * + */ + public String direction() { + return this.direction; + } + /** + * @return URI to the attached Route Filter Policy on the Connection + * + */ + public String href() { + return this.href; + } + /** + * @return Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter Policy + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetConnectionRouteFiltersData defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String attachmentStatus; + private String direction; + private String href; + private String type; + private String uuid; + public Builder() {} + public Builder(GetConnectionRouteFiltersData defaults) { + Objects.requireNonNull(defaults); + this.attachmentStatus = defaults.attachmentStatus; + this.direction = defaults.direction; + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder attachmentStatus(String attachmentStatus) { + if (attachmentStatus == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersData", "attachmentStatus"); + } + this.attachmentStatus = attachmentStatus; + return this; + } + @CustomType.Setter + public Builder direction(String direction) { + if (direction == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersData", "direction"); + } + this.direction = direction; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersData", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersData", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersData", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetConnectionRouteFiltersData build() { + final var _resultValue = new GetConnectionRouteFiltersData(); + _resultValue.attachmentStatus = attachmentStatus; + _resultValue.direction = direction; + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersPagination.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersPagination.java new file mode 100644 index 000000000..b15850906 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersPagination.java @@ -0,0 +1,151 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetConnectionRouteFiltersPagination { + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + private Integer limit; + /** + * @return URL relative to the last item in the response. + * + */ + private String next; + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + private Integer offset; + /** + * @return URL relative to the first item in the response. + * + */ + private String previous; + /** + * @return Total number of elements returned. + * + */ + private Integer total; + + private GetConnectionRouteFiltersPagination() {} + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Integer limit() { + return this.limit; + } + /** + * @return URL relative to the last item in the response. + * + */ + public String next() { + return this.next; + } + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Integer offset() { + return this.offset; + } + /** + * @return URL relative to the first item in the response. + * + */ + public String previous() { + return this.previous; + } + /** + * @return Total number of elements returned. + * + */ + public Integer total() { + return this.total; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetConnectionRouteFiltersPagination defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Integer limit; + private String next; + private Integer offset; + private String previous; + private Integer total; + public Builder() {} + public Builder(GetConnectionRouteFiltersPagination defaults) { + Objects.requireNonNull(defaults); + this.limit = defaults.limit; + this.next = defaults.next; + this.offset = defaults.offset; + this.previous = defaults.previous; + this.total = defaults.total; + } + + @CustomType.Setter + public Builder limit(Integer limit) { + if (limit == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPagination", "limit"); + } + this.limit = limit; + return this; + } + @CustomType.Setter + public Builder next(String next) { + if (next == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPagination", "next"); + } + this.next = next; + return this; + } + @CustomType.Setter + public Builder offset(Integer offset) { + if (offset == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPagination", "offset"); + } + this.offset = offset; + return this; + } + @CustomType.Setter + public Builder previous(String previous) { + if (previous == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPagination", "previous"); + } + this.previous = previous; + return this; + } + @CustomType.Setter + public Builder total(Integer total) { + if (total == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersPagination", "total"); + } + this.total = total; + return this; + } + public GetConnectionRouteFiltersPagination build() { + final var _resultValue = new GetConnectionRouteFiltersPagination(); + _resultValue.limit = limit; + _resultValue.next = next; + _resultValue.offset = offset; + _resultValue.previous = previous; + _resultValue.total = total; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersResult.java new file mode 100644 index 000000000..94f4d1f3c --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetConnectionRouteFiltersResult.java @@ -0,0 +1,136 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetConnectionRouteFiltersData; +import com.equinix.pulumi.fabric.outputs.GetConnectionRouteFiltersPagination; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetConnectionRouteFiltersResult { + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + private String connectionId; + /** + * @return The list of Rules attached to the given Route Filter Policy UUID + * + */ + private List datas; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Pagination details for the Data Source Search Request + * + */ + private List paginations; + + private GetConnectionRouteFiltersResult() {} + /** + * @return Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + * + */ + public String connectionId() { + return this.connectionId; + } + /** + * @return The list of Rules attached to the given Route Filter Policy UUID + * + */ + public List datas() { + return this.datas; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Pagination details for the Data Source Search Request + * + */ + public List paginations() { + return this.paginations; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetConnectionRouteFiltersResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String connectionId; + private List datas; + private String id; + private List paginations; + public Builder() {} + public Builder(GetConnectionRouteFiltersResult defaults) { + Objects.requireNonNull(defaults); + this.connectionId = defaults.connectionId; + this.datas = defaults.datas; + this.id = defaults.id; + this.paginations = defaults.paginations; + } + + @CustomType.Setter + public Builder connectionId(String connectionId) { + if (connectionId == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersResult", "connectionId"); + } + this.connectionId = connectionId; + return this; + } + @CustomType.Setter + public Builder datas(List datas) { + if (datas == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersResult", "datas"); + } + this.datas = datas; + return this; + } + public Builder datas(GetConnectionRouteFiltersData... datas) { + return datas(List.of(datas)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder paginations(List paginations) { + if (paginations == null) { + throw new MissingRequiredPropertyException("GetConnectionRouteFiltersResult", "paginations"); + } + this.paginations = paginations; + return this; + } + public Builder paginations(GetConnectionRouteFiltersPagination... paginations) { + return paginations(List.of(paginations)); + } + public GetConnectionRouteFiltersResult build() { + final var _resultValue = new GetConnectionRouteFiltersResult(); + _resultValue.connectionId = connectionId; + _resultValue.datas = datas; + _resultValue.id = id; + _resultValue.paginations = paginations; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChange.java new file mode 100644 index 000000000..4dc3a4d2f --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChange.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterChange { + /** + * @return The URI of the previous Route Filter Change + * + */ + private String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + private String type; + /** + * @return Unique identifier for the previous change + * + */ + private String uuid; + + private GetRouteFilterChange() {} + /** + * @return The URI of the previous Route Filter Change + * + */ + public String href() { + return this.href; + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Unique identifier for the previous change + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChange", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChange", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChange", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterChange build() { + final var _resultValue = new GetRouteFilterChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChangeLog.java new file mode 100644 index 000000000..9c6a9de14 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterChangeLog.java @@ -0,0 +1,311 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterChangeLog { + /** + * @return Created by User Key + * + */ + private String createdBy; + /** + * @return Created by User Email Address + * + */ + private String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private String updatedDateTime; + + private GetRouteFilterChangeLog() {} + /** + * @return Created by User Key + * + */ + public String createdBy() { + return this.createdBy; + } + /** + * @return Created by User Email Address + * + */ + public String createdByEmail() { + return this.createdByEmail; + } + /** + * @return Created by User Full Name + * + */ + public String createdByFullName() { + return this.createdByFullName; + } + /** + * @return Created by Date and Time + * + */ + public String createdDateTime() { + return this.createdDateTime; + } + /** + * @return Deleted by User Key + * + */ + public String deletedBy() { + return this.deletedBy; + } + /** + * @return Deleted by User Email Address + * + */ + public String deletedByEmail() { + return this.deletedByEmail; + } + /** + * @return Deleted by User Full Name + * + */ + public String deletedByFullName() { + return this.deletedByFullName; + } + /** + * @return Deleted by Date and Time + * + */ + public String deletedDateTime() { + return this.deletedDateTime; + } + /** + * @return Updated by User Key + * + */ + public String updatedBy() { + return this.updatedBy; + } + /** + * @return Updated by User Email Address + * + */ + public String updatedByEmail() { + return this.updatedByEmail; + } + /** + * @return Updated by User Full Name + * + */ + public String updatedByFullName() { + return this.updatedByFullName; + } + /** + * @return Updated by Date and Time + * + */ + public String updatedDateTime() { + return this.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdBy; + private String createdByEmail; + private String createdByFullName; + private String createdDateTime; + private String deletedBy; + private String deletedByEmail; + private String deletedByFullName; + private String deletedDateTime; + private String updatedBy; + private String updatedByEmail; + private String updatedByFullName; + private String updatedDateTime; + public Builder() {} + public Builder(GetRouteFilterChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(String createdBy) { + if (createdBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "createdBy"); + } + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(String createdByEmail) { + if (createdByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "createdByEmail"); + } + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(String createdByFullName) { + if (createdByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "createdByFullName"); + } + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(String createdDateTime) { + if (createdDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "createdDateTime"); + } + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(String deletedBy) { + if (deletedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "deletedBy"); + } + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(String deletedByEmail) { + if (deletedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "deletedByEmail"); + } + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(String deletedByFullName) { + if (deletedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "deletedByFullName"); + } + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(String deletedDateTime) { + if (deletedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "deletedDateTime"); + } + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(String updatedBy) { + if (updatedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "updatedBy"); + } + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(String updatedByEmail) { + if (updatedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "updatedByEmail"); + } + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(String updatedByFullName) { + if (updatedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "updatedByFullName"); + } + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(String updatedDateTime) { + if (updatedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterChangeLog", "updatedDateTime"); + } + this.updatedDateTime = updatedDateTime; + return this; + } + public GetRouteFilterChangeLog build() { + final var _resultValue = new GetRouteFilterChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterProject.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterProject.java new file mode 100644 index 000000000..b70d470bb --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterProject.java @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterProject { + /** + * @return URI of the Fabric Project + * + */ + private String href; + /** + * @return Project id associated with Fabric Project + * + */ + private String projectId; + + private GetRouteFilterProject() {} + /** + * @return URI of the Fabric Project + * + */ + public String href() { + return this.href; + } + /** + * @return Project id associated with Fabric Project + * + */ + public String projectId() { + return this.projectId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterProject defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String projectId; + public Builder() {} + public Builder(GetRouteFilterProject defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.projectId = defaults.projectId; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterProject", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterProject", "projectId"); + } + this.projectId = projectId; + return this; + } + public GetRouteFilterProject build() { + final var _resultValue = new GetRouteFilterProject(); + _resultValue.href = href; + _resultValue.projectId = projectId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterResult.java new file mode 100644 index 000000000..752e168f2 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterResult.java @@ -0,0 +1,340 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFilterChange; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterChangeLog; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterProject; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterResult { + private List changeLogs; + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + private List changes; + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + private Integer connectionsCount; + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + private String description; + /** + * @return Route filter URI + * + */ + private String href; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Name of the Route Filter + * + */ + private String name; + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + private String notMatchedRuleAction; + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + private List projects; + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + private Integer rulesCount; + /** + * @return State of the Route Filter in its lifecycle + * + */ + private String state; + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter + * + */ + private String uuid; + + private GetRouteFilterResult() {} + public List changeLogs() { + return this.changeLogs; + } + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public List changes() { + return this.changes; + } + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + public Integer connectionsCount() { + return this.connectionsCount; + } + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public String description() { + return this.description; + } + /** + * @return Route filter URI + * + */ + public String href() { + return this.href; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Name of the Route Filter + * + */ + public String name() { + return this.name; + } + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + public String notMatchedRuleAction() { + return this.notMatchedRuleAction; + } + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + public List projects() { + return this.projects; + } + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + public Integer rulesCount() { + return this.rulesCount; + } + /** + * @return State of the Route Filter in its lifecycle + * + */ + public String state() { + return this.state; + } + /** + * @return Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List changeLogs; + private List changes; + private Integer connectionsCount; + private String description; + private String href; + private String id; + private String name; + private String notMatchedRuleAction; + private List projects; + private Integer rulesCount; + private String state; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterResult defaults) { + Objects.requireNonNull(defaults); + this.changeLogs = defaults.changeLogs; + this.changes = defaults.changes; + this.connectionsCount = defaults.connectionsCount; + this.description = defaults.description; + this.href = defaults.href; + this.id = defaults.id; + this.name = defaults.name; + this.notMatchedRuleAction = defaults.notMatchedRuleAction; + this.projects = defaults.projects; + this.rulesCount = defaults.rulesCount; + this.state = defaults.state; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder changeLogs(List changeLogs) { + if (changeLogs == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "changeLogs"); + } + this.changeLogs = changeLogs; + return this; + } + public Builder changeLogs(GetRouteFilterChangeLog... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + @CustomType.Setter + public Builder changes(List changes) { + if (changes == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "changes"); + } + this.changes = changes; + return this; + } + public Builder changes(GetRouteFilterChange... changes) { + return changes(List.of(changes)); + } + @CustomType.Setter + public Builder connectionsCount(Integer connectionsCount) { + if (connectionsCount == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "connectionsCount"); + } + this.connectionsCount = connectionsCount; + return this; + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder notMatchedRuleAction(String notMatchedRuleAction) { + if (notMatchedRuleAction == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "notMatchedRuleAction"); + } + this.notMatchedRuleAction = notMatchedRuleAction; + return this; + } + @CustomType.Setter + public Builder projects(List projects) { + if (projects == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "projects"); + } + this.projects = projects; + return this; + } + public Builder projects(GetRouteFilterProject... projects) { + return projects(List.of(projects)); + } + @CustomType.Setter + public Builder rulesCount(Integer rulesCount) { + if (rulesCount == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "rulesCount"); + } + this.rulesCount = rulesCount; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterResult", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterResult build() { + final var _resultValue = new GetRouteFilterResult(); + _resultValue.changeLogs = changeLogs; + _resultValue.changes = changes; + _resultValue.connectionsCount = connectionsCount; + _resultValue.description = description; + _resultValue.href = href; + _resultValue.id = id; + _resultValue.name = name; + _resultValue.notMatchedRuleAction = notMatchedRuleAction; + _resultValue.projects = projects; + _resultValue.rulesCount = rulesCount; + _resultValue.state = state; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChange.java new file mode 100644 index 000000000..5ad16a341 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChange.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRuleChange { + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + private String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + private String type; + /** + * @return Unique identifier for the previous change + * + */ + private String uuid; + + private GetRouteFilterRuleChange() {} + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + public String href() { + return this.href; + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Unique identifier for the previous change + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRuleChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterRuleChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChange", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChange", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChange", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterRuleChange build() { + final var _resultValue = new GetRouteFilterRuleChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChangeLog.java new file mode 100644 index 000000000..7853c3bf5 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleChangeLog.java @@ -0,0 +1,311 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRuleChangeLog { + /** + * @return Created by User Key + * + */ + private String createdBy; + /** + * @return Created by User Email Address + * + */ + private String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private String updatedDateTime; + + private GetRouteFilterRuleChangeLog() {} + /** + * @return Created by User Key + * + */ + public String createdBy() { + return this.createdBy; + } + /** + * @return Created by User Email Address + * + */ + public String createdByEmail() { + return this.createdByEmail; + } + /** + * @return Created by User Full Name + * + */ + public String createdByFullName() { + return this.createdByFullName; + } + /** + * @return Created by Date and Time + * + */ + public String createdDateTime() { + return this.createdDateTime; + } + /** + * @return Deleted by User Key + * + */ + public String deletedBy() { + return this.deletedBy; + } + /** + * @return Deleted by User Email Address + * + */ + public String deletedByEmail() { + return this.deletedByEmail; + } + /** + * @return Deleted by User Full Name + * + */ + public String deletedByFullName() { + return this.deletedByFullName; + } + /** + * @return Deleted by Date and Time + * + */ + public String deletedDateTime() { + return this.deletedDateTime; + } + /** + * @return Updated by User Key + * + */ + public String updatedBy() { + return this.updatedBy; + } + /** + * @return Updated by User Email Address + * + */ + public String updatedByEmail() { + return this.updatedByEmail; + } + /** + * @return Updated by User Full Name + * + */ + public String updatedByFullName() { + return this.updatedByFullName; + } + /** + * @return Updated by Date and Time + * + */ + public String updatedDateTime() { + return this.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRuleChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdBy; + private String createdByEmail; + private String createdByFullName; + private String createdDateTime; + private String deletedBy; + private String deletedByEmail; + private String deletedByFullName; + private String deletedDateTime; + private String updatedBy; + private String updatedByEmail; + private String updatedByFullName; + private String updatedDateTime; + public Builder() {} + public Builder(GetRouteFilterRuleChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(String createdBy) { + if (createdBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "createdBy"); + } + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(String createdByEmail) { + if (createdByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "createdByEmail"); + } + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(String createdByFullName) { + if (createdByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "createdByFullName"); + } + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(String createdDateTime) { + if (createdDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "createdDateTime"); + } + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(String deletedBy) { + if (deletedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "deletedBy"); + } + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(String deletedByEmail) { + if (deletedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "deletedByEmail"); + } + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(String deletedByFullName) { + if (deletedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "deletedByFullName"); + } + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(String deletedDateTime) { + if (deletedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "deletedDateTime"); + } + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(String updatedBy) { + if (updatedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "updatedBy"); + } + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(String updatedByEmail) { + if (updatedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "updatedByEmail"); + } + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(String updatedByFullName) { + if (updatedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "updatedByFullName"); + } + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(String updatedDateTime) { + if (updatedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleChangeLog", "updatedDateTime"); + } + this.updatedDateTime = updatedDateTime; + return this; + } + public GetRouteFilterRuleChangeLog build() { + final var _resultValue = new GetRouteFilterRuleChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleResult.java new file mode 100644 index 000000000..021e5124e --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRuleResult.java @@ -0,0 +1,335 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRuleChange; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRuleChangeLog; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRuleResult { + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + private String action; + private List changeLogs; + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + private List changes; + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + private String description; + /** + * @return Route filter rules URI + * + */ + private String href; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Name of the Route Filter + * + */ + private String name; + /** + * @return IP Address Prefix to Filter on + * + */ + private String prefix; + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + private String prefixMatch; + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + private String routeFilterId; + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + private String state; + /** + * @return Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + private String uuid; + + private GetRouteFilterRuleResult() {} + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + public String action() { + return this.action; + } + public List changeLogs() { + return this.changeLogs; + } + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public List changes() { + return this.changes; + } + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public String description() { + return this.description; + } + /** + * @return Route filter rules URI + * + */ + public String href() { + return this.href; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Name of the Route Filter + * + */ + public String name() { + return this.name; + } + /** + * @return IP Address Prefix to Filter on + * + */ + public String prefix() { + return this.prefix; + } + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + public String prefixMatch() { + return this.prefixMatch; + } + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + public String state() { + return this.state; + } + /** + * @return Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRuleResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String action; + private List changeLogs; + private List changes; + private String description; + private String href; + private String id; + private String name; + private String prefix; + private String prefixMatch; + private String routeFilterId; + private String state; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterRuleResult defaults) { + Objects.requireNonNull(defaults); + this.action = defaults.action; + this.changeLogs = defaults.changeLogs; + this.changes = defaults.changes; + this.description = defaults.description; + this.href = defaults.href; + this.id = defaults.id; + this.name = defaults.name; + this.prefix = defaults.prefix; + this.prefixMatch = defaults.prefixMatch; + this.routeFilterId = defaults.routeFilterId; + this.state = defaults.state; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder action(String action) { + if (action == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "action"); + } + this.action = action; + return this; + } + @CustomType.Setter + public Builder changeLogs(List changeLogs) { + if (changeLogs == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "changeLogs"); + } + this.changeLogs = changeLogs; + return this; + } + public Builder changeLogs(GetRouteFilterRuleChangeLog... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + @CustomType.Setter + public Builder changes(List changes) { + if (changes == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "changes"); + } + this.changes = changes; + return this; + } + public Builder changes(GetRouteFilterRuleChange... changes) { + return changes(List.of(changes)); + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder prefix(String prefix) { + if (prefix == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "prefix"); + } + this.prefix = prefix; + return this; + } + @CustomType.Setter + public Builder prefixMatch(String prefixMatch) { + if (prefixMatch == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "prefixMatch"); + } + this.prefixMatch = prefixMatch; + return this; + } + @CustomType.Setter + public Builder routeFilterId(String routeFilterId) { + if (routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "routeFilterId"); + } + this.routeFilterId = routeFilterId; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRuleResult", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterRuleResult build() { + final var _resultValue = new GetRouteFilterRuleResult(); + _resultValue.action = action; + _resultValue.changeLogs = changeLogs; + _resultValue.changes = changes; + _resultValue.description = description; + _resultValue.href = href; + _resultValue.id = id; + _resultValue.name = name; + _resultValue.prefix = prefix; + _resultValue.prefixMatch = prefixMatch; + _resultValue.routeFilterId = routeFilterId; + _resultValue.state = state; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesData.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesData.java new file mode 100644 index 000000000..a2fbb44f0 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesData.java @@ -0,0 +1,289 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRulesDataChange; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRulesDataChangeLog; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRulesData { + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + private String action; + private List changeLogs; + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + private List changes; + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + private String description; + /** + * @return Route filter rules URI + * + */ + private String href; + /** + * @return Name of the Route Filter + * + */ + private String name; + /** + * @return IP Address Prefix to Filter on + * + */ + private String prefix; + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + private String prefixMatch; + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + private String state; + /** + * @return Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + private String uuid; + + private GetRouteFilterRulesData() {} + /** + * @return Action that will be taken on IP Addresses matching the rule + * + */ + public String action() { + return this.action; + } + public List changeLogs() { + return this.changeLogs; + } + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public List changes() { + return this.changes; + } + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public String description() { + return this.description; + } + /** + * @return Route filter rules URI + * + */ + public String href() { + return this.href; + } + /** + * @return Name of the Route Filter + * + */ + public String name() { + return this.name; + } + /** + * @return IP Address Prefix to Filter on + * + */ + public String prefix() { + return this.prefix; + } + /** + * @return Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + * + */ + public String prefixMatch() { + return this.prefixMatch; + } + /** + * @return State of the Route Filter Rule in its lifecycle + * + */ + public String state() { + return this.state; + } + /** + * @return Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter Rule to retrieve data for + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRulesData defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String action; + private List changeLogs; + private List changes; + private String description; + private String href; + private String name; + private String prefix; + private String prefixMatch; + private String state; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterRulesData defaults) { + Objects.requireNonNull(defaults); + this.action = defaults.action; + this.changeLogs = defaults.changeLogs; + this.changes = defaults.changes; + this.description = defaults.description; + this.href = defaults.href; + this.name = defaults.name; + this.prefix = defaults.prefix; + this.prefixMatch = defaults.prefixMatch; + this.state = defaults.state; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder action(String action) { + if (action == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "action"); + } + this.action = action; + return this; + } + @CustomType.Setter + public Builder changeLogs(List changeLogs) { + if (changeLogs == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "changeLogs"); + } + this.changeLogs = changeLogs; + return this; + } + public Builder changeLogs(GetRouteFilterRulesDataChangeLog... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + @CustomType.Setter + public Builder changes(List changes) { + if (changes == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "changes"); + } + this.changes = changes; + return this; + } + public Builder changes(GetRouteFilterRulesDataChange... changes) { + return changes(List.of(changes)); + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder prefix(String prefix) { + if (prefix == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "prefix"); + } + this.prefix = prefix; + return this; + } + @CustomType.Setter + public Builder prefixMatch(String prefixMatch) { + if (prefixMatch == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "prefixMatch"); + } + this.prefixMatch = prefixMatch; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesData", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterRulesData build() { + final var _resultValue = new GetRouteFilterRulesData(); + _resultValue.action = action; + _resultValue.changeLogs = changeLogs; + _resultValue.changes = changes; + _resultValue.description = description; + _resultValue.href = href; + _resultValue.name = name; + _resultValue.prefix = prefix; + _resultValue.prefixMatch = prefixMatch; + _resultValue.state = state; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChange.java new file mode 100644 index 000000000..5dfb5899e --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChange.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRulesDataChange { + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + private String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + private String type; + /** + * @return Unique identifier for the previous change + * + */ + private String uuid; + + private GetRouteFilterRulesDataChange() {} + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + public String href() { + return this.href; + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Unique identifier for the previous change + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRulesDataChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFilterRulesDataChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChange", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChange", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChange", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFilterRulesDataChange build() { + final var _resultValue = new GetRouteFilterRulesDataChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChangeLog.java new file mode 100644 index 000000000..59ffa2659 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesDataChangeLog.java @@ -0,0 +1,311 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRulesDataChangeLog { + /** + * @return Created by User Key + * + */ + private String createdBy; + /** + * @return Created by User Email Address + * + */ + private String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private String updatedDateTime; + + private GetRouteFilterRulesDataChangeLog() {} + /** + * @return Created by User Key + * + */ + public String createdBy() { + return this.createdBy; + } + /** + * @return Created by User Email Address + * + */ + public String createdByEmail() { + return this.createdByEmail; + } + /** + * @return Created by User Full Name + * + */ + public String createdByFullName() { + return this.createdByFullName; + } + /** + * @return Created by Date and Time + * + */ + public String createdDateTime() { + return this.createdDateTime; + } + /** + * @return Deleted by User Key + * + */ + public String deletedBy() { + return this.deletedBy; + } + /** + * @return Deleted by User Email Address + * + */ + public String deletedByEmail() { + return this.deletedByEmail; + } + /** + * @return Deleted by User Full Name + * + */ + public String deletedByFullName() { + return this.deletedByFullName; + } + /** + * @return Deleted by Date and Time + * + */ + public String deletedDateTime() { + return this.deletedDateTime; + } + /** + * @return Updated by User Key + * + */ + public String updatedBy() { + return this.updatedBy; + } + /** + * @return Updated by User Email Address + * + */ + public String updatedByEmail() { + return this.updatedByEmail; + } + /** + * @return Updated by User Full Name + * + */ + public String updatedByFullName() { + return this.updatedByFullName; + } + /** + * @return Updated by Date and Time + * + */ + public String updatedDateTime() { + return this.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRulesDataChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdBy; + private String createdByEmail; + private String createdByFullName; + private String createdDateTime; + private String deletedBy; + private String deletedByEmail; + private String deletedByFullName; + private String deletedDateTime; + private String updatedBy; + private String updatedByEmail; + private String updatedByFullName; + private String updatedDateTime; + public Builder() {} + public Builder(GetRouteFilterRulesDataChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(String createdBy) { + if (createdBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "createdBy"); + } + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(String createdByEmail) { + if (createdByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "createdByEmail"); + } + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(String createdByFullName) { + if (createdByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "createdByFullName"); + } + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(String createdDateTime) { + if (createdDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "createdDateTime"); + } + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(String deletedBy) { + if (deletedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "deletedBy"); + } + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(String deletedByEmail) { + if (deletedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "deletedByEmail"); + } + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(String deletedByFullName) { + if (deletedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "deletedByFullName"); + } + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(String deletedDateTime) { + if (deletedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "deletedDateTime"); + } + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(String updatedBy) { + if (updatedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "updatedBy"); + } + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(String updatedByEmail) { + if (updatedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "updatedByEmail"); + } + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(String updatedByFullName) { + if (updatedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "updatedByFullName"); + } + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(String updatedDateTime) { + if (updatedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesDataChangeLog", "updatedDateTime"); + } + this.updatedDateTime = updatedDateTime; + return this; + } + public GetRouteFilterRulesDataChangeLog build() { + final var _resultValue = new GetRouteFilterRulesDataChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesPagination.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesPagination.java new file mode 100644 index 000000000..a9486a8c3 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesPagination.java @@ -0,0 +1,151 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFilterRulesPagination { + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + private Integer limit; + /** + * @return URL relative to the last item in the response. + * + */ + private String next; + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + private Integer offset; + /** + * @return URL relative to the first item in the response. + * + */ + private String previous; + /** + * @return Total number of elements returned. + * + */ + private Integer total; + + private GetRouteFilterRulesPagination() {} + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Integer limit() { + return this.limit; + } + /** + * @return URL relative to the last item in the response. + * + */ + public String next() { + return this.next; + } + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Integer offset() { + return this.offset; + } + /** + * @return URL relative to the first item in the response. + * + */ + public String previous() { + return this.previous; + } + /** + * @return Total number of elements returned. + * + */ + public Integer total() { + return this.total; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRulesPagination defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Integer limit; + private String next; + private Integer offset; + private String previous; + private Integer total; + public Builder() {} + public Builder(GetRouteFilterRulesPagination defaults) { + Objects.requireNonNull(defaults); + this.limit = defaults.limit; + this.next = defaults.next; + this.offset = defaults.offset; + this.previous = defaults.previous; + this.total = defaults.total; + } + + @CustomType.Setter + public Builder limit(Integer limit) { + if (limit == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPagination", "limit"); + } + this.limit = limit; + return this; + } + @CustomType.Setter + public Builder next(String next) { + if (next == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPagination", "next"); + } + this.next = next; + return this; + } + @CustomType.Setter + public Builder offset(Integer offset) { + if (offset == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPagination", "offset"); + } + this.offset = offset; + return this; + } + @CustomType.Setter + public Builder previous(String previous) { + if (previous == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPagination", "previous"); + } + this.previous = previous; + return this; + } + @CustomType.Setter + public Builder total(Integer total) { + if (total == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesPagination", "total"); + } + this.total = total; + return this; + } + public GetRouteFilterRulesPagination build() { + final var _resultValue = new GetRouteFilterRulesPagination(); + _resultValue.limit = limit; + _resultValue.next = next; + _resultValue.offset = offset; + _resultValue.previous = previous; + _resultValue.total = total; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesResult.java new file mode 100644 index 000000000..cb9e76605 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFilterRulesResult.java @@ -0,0 +1,181 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRulesData; +import com.equinix.pulumi.fabric.outputs.GetRouteFilterRulesPagination; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetRouteFilterRulesResult { + /** + * @return The list of Rules attached to the given Route Filter Policy UUID + * + */ + private List datas; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + private @Nullable Integer limit; + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + private @Nullable Integer offset; + /** + * @return Pagination details for the Data Source Search Request + * + */ + private List paginations; + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + private String routeFilterId; + + private GetRouteFilterRulesResult() {} + /** + * @return The list of Rules attached to the given Route Filter Policy UUID + * + */ + public List datas() { + return this.datas; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Optional limit() { + return Optional.ofNullable(this.limit); + } + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Optional offset() { + return Optional.ofNullable(this.offset); + } + /** + * @return Pagination details for the Data Source Search Request + * + */ + public List paginations() { + return this.paginations; + } + /** + * @return UUID of the Route Filter Policy the rule is attached to + * + */ + public String routeFilterId() { + return this.routeFilterId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFilterRulesResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List datas; + private String id; + private @Nullable Integer limit; + private @Nullable Integer offset; + private List paginations; + private String routeFilterId; + public Builder() {} + public Builder(GetRouteFilterRulesResult defaults) { + Objects.requireNonNull(defaults); + this.datas = defaults.datas; + this.id = defaults.id; + this.limit = defaults.limit; + this.offset = defaults.offset; + this.paginations = defaults.paginations; + this.routeFilterId = defaults.routeFilterId; + } + + @CustomType.Setter + public Builder datas(List datas) { + if (datas == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesResult", "datas"); + } + this.datas = datas; + return this; + } + public Builder datas(GetRouteFilterRulesData... datas) { + return datas(List.of(datas)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder limit(@Nullable Integer limit) { + + this.limit = limit; + return this; + } + @CustomType.Setter + public Builder offset(@Nullable Integer offset) { + + this.offset = offset; + return this; + } + @CustomType.Setter + public Builder paginations(List paginations) { + if (paginations == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesResult", "paginations"); + } + this.paginations = paginations; + return this; + } + public Builder paginations(GetRouteFilterRulesPagination... paginations) { + return paginations(List.of(paginations)); + } + @CustomType.Setter + public Builder routeFilterId(String routeFilterId) { + if (routeFilterId == null) { + throw new MissingRequiredPropertyException("GetRouteFilterRulesResult", "routeFilterId"); + } + this.routeFilterId = routeFilterId; + return this; + } + public GetRouteFilterRulesResult build() { + final var _resultValue = new GetRouteFilterRulesResult(); + _resultValue.datas = datas; + _resultValue.id = id; + _resultValue.limit = limit; + _resultValue.offset = offset; + _resultValue.paginations = paginations; + _resultValue.routeFilterId = routeFilterId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersData.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersData.java new file mode 100644 index 000000000..bb326e118 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersData.java @@ -0,0 +1,317 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersDataChange; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersDataChangeLog; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersDataProject; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersData { + private List changeLogs; + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + private List changes; + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + private Integer connectionsCount; + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + private String description; + /** + * @return Route filter URI + * + */ + private String href; + /** + * @return Name of the Route Filter + * + */ + private String name; + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + private String notMatchedRuleAction; + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + private List projects; + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + private Integer rulesCount; + /** + * @return State of the Route Filter in its lifecycle + * + */ + private String state; + /** + * @return Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + * + */ + private String type; + /** + * @return Equinix Assigned ID for Route Filter + * + */ + private String uuid; + + private GetRouteFiltersData() {} + public List changeLogs() { + return this.changeLogs; + } + /** + * @return An object with the details of the previous change applied on the Route Filter + * + */ + public List changes() { + return this.changes; + } + /** + * @return The number of Fabric Connections that this Route Filter is attached to + * + */ + public Integer connectionsCount() { + return this.connectionsCount; + } + /** + * @return Optional description to add to the Route Filter you will be creating + * + */ + public String description() { + return this.description; + } + /** + * @return Route filter URI + * + */ + public String href() { + return this.href; + } + /** + * @return Name of the Route Filter + * + */ + public String name() { + return this.name; + } + /** + * @return The action that will be taken on ip ranges that don't match the rules present within the Route Filter + * + */ + public String notMatchedRuleAction() { + return this.notMatchedRuleAction; + } + /** + * @return The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + * + */ + public List projects() { + return this.projects; + } + /** + * @return The number of Route Filter Rules attached to this Route Filter + * + */ + public Integer rulesCount() { + return this.rulesCount; + } + /** + * @return State of the Route Filter in its lifecycle + * + */ + public String state() { + return this.state; + } + /** + * @return Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Equinix Assigned ID for Route Filter + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersData defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List changeLogs; + private List changes; + private Integer connectionsCount; + private String description; + private String href; + private String name; + private String notMatchedRuleAction; + private List projects; + private Integer rulesCount; + private String state; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFiltersData defaults) { + Objects.requireNonNull(defaults); + this.changeLogs = defaults.changeLogs; + this.changes = defaults.changes; + this.connectionsCount = defaults.connectionsCount; + this.description = defaults.description; + this.href = defaults.href; + this.name = defaults.name; + this.notMatchedRuleAction = defaults.notMatchedRuleAction; + this.projects = defaults.projects; + this.rulesCount = defaults.rulesCount; + this.state = defaults.state; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder changeLogs(List changeLogs) { + if (changeLogs == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "changeLogs"); + } + this.changeLogs = changeLogs; + return this; + } + public Builder changeLogs(GetRouteFiltersDataChangeLog... changeLogs) { + return changeLogs(List.of(changeLogs)); + } + @CustomType.Setter + public Builder changes(List changes) { + if (changes == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "changes"); + } + this.changes = changes; + return this; + } + public Builder changes(GetRouteFiltersDataChange... changes) { + return changes(List.of(changes)); + } + @CustomType.Setter + public Builder connectionsCount(Integer connectionsCount) { + if (connectionsCount == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "connectionsCount"); + } + this.connectionsCount = connectionsCount; + return this; + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder notMatchedRuleAction(String notMatchedRuleAction) { + if (notMatchedRuleAction == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "notMatchedRuleAction"); + } + this.notMatchedRuleAction = notMatchedRuleAction; + return this; + } + @CustomType.Setter + public Builder projects(List projects) { + if (projects == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "projects"); + } + this.projects = projects; + return this; + } + public Builder projects(GetRouteFiltersDataProject... projects) { + return projects(List.of(projects)); + } + @CustomType.Setter + public Builder rulesCount(Integer rulesCount) { + if (rulesCount == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "rulesCount"); + } + this.rulesCount = rulesCount; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersData", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFiltersData build() { + final var _resultValue = new GetRouteFiltersData(); + _resultValue.changeLogs = changeLogs; + _resultValue.changes = changes; + _resultValue.connectionsCount = connectionsCount; + _resultValue.description = description; + _resultValue.href = href; + _resultValue.name = name; + _resultValue.notMatchedRuleAction = notMatchedRuleAction; + _resultValue.projects = projects; + _resultValue.rulesCount = rulesCount; + _resultValue.state = state; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChange.java new file mode 100644 index 000000000..c5ecf9a1a --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChange.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersDataChange { + /** + * @return The URI of the previous Route Filter Change + * + */ + private String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + private String type; + /** + * @return Unique identifier for the previous change + * + */ + private String uuid; + + private GetRouteFiltersDataChange() {} + /** + * @return The URI of the previous Route Filter Change + * + */ + public String href() { + return this.href; + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + public String type() { + return this.type; + } + /** + * @return Unique identifier for the previous change + * + */ + public String uuid() { + return this.uuid; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersDataChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String type; + private String uuid; + public Builder() {} + public Builder(GetRouteFiltersDataChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChange", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChange", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(String uuid) { + if (uuid == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChange", "uuid"); + } + this.uuid = uuid; + return this; + } + public GetRouteFiltersDataChange build() { + final var _resultValue = new GetRouteFiltersDataChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChangeLog.java new file mode 100644 index 000000000..2661540b6 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataChangeLog.java @@ -0,0 +1,311 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersDataChangeLog { + /** + * @return Created by User Key + * + */ + private String createdBy; + /** + * @return Created by User Email Address + * + */ + private String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private String updatedDateTime; + + private GetRouteFiltersDataChangeLog() {} + /** + * @return Created by User Key + * + */ + public String createdBy() { + return this.createdBy; + } + /** + * @return Created by User Email Address + * + */ + public String createdByEmail() { + return this.createdByEmail; + } + /** + * @return Created by User Full Name + * + */ + public String createdByFullName() { + return this.createdByFullName; + } + /** + * @return Created by Date and Time + * + */ + public String createdDateTime() { + return this.createdDateTime; + } + /** + * @return Deleted by User Key + * + */ + public String deletedBy() { + return this.deletedBy; + } + /** + * @return Deleted by User Email Address + * + */ + public String deletedByEmail() { + return this.deletedByEmail; + } + /** + * @return Deleted by User Full Name + * + */ + public String deletedByFullName() { + return this.deletedByFullName; + } + /** + * @return Deleted by Date and Time + * + */ + public String deletedDateTime() { + return this.deletedDateTime; + } + /** + * @return Updated by User Key + * + */ + public String updatedBy() { + return this.updatedBy; + } + /** + * @return Updated by User Email Address + * + */ + public String updatedByEmail() { + return this.updatedByEmail; + } + /** + * @return Updated by User Full Name + * + */ + public String updatedByFullName() { + return this.updatedByFullName; + } + /** + * @return Updated by Date and Time + * + */ + public String updatedDateTime() { + return this.updatedDateTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersDataChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdBy; + private String createdByEmail; + private String createdByFullName; + private String createdDateTime; + private String deletedBy; + private String deletedByEmail; + private String deletedByFullName; + private String deletedDateTime; + private String updatedBy; + private String updatedByEmail; + private String updatedByFullName; + private String updatedDateTime; + public Builder() {} + public Builder(GetRouteFiltersDataChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(String createdBy) { + if (createdBy == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "createdBy"); + } + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(String createdByEmail) { + if (createdByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "createdByEmail"); + } + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(String createdByFullName) { + if (createdByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "createdByFullName"); + } + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(String createdDateTime) { + if (createdDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "createdDateTime"); + } + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(String deletedBy) { + if (deletedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "deletedBy"); + } + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(String deletedByEmail) { + if (deletedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "deletedByEmail"); + } + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(String deletedByFullName) { + if (deletedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "deletedByFullName"); + } + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(String deletedDateTime) { + if (deletedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "deletedDateTime"); + } + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(String updatedBy) { + if (updatedBy == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "updatedBy"); + } + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(String updatedByEmail) { + if (updatedByEmail == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "updatedByEmail"); + } + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(String updatedByFullName) { + if (updatedByFullName == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "updatedByFullName"); + } + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(String updatedDateTime) { + if (updatedDateTime == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataChangeLog", "updatedDateTime"); + } + this.updatedDateTime = updatedDateTime; + return this; + } + public GetRouteFiltersDataChangeLog build() { + final var _resultValue = new GetRouteFiltersDataChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataProject.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataProject.java new file mode 100644 index 000000000..2217a3ebc --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersDataProject.java @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersDataProject { + /** + * @return URI of the Fabric Project + * + */ + private String href; + /** + * @return Project id associated with Fabric Project + * + */ + private String projectId; + + private GetRouteFiltersDataProject() {} + /** + * @return URI of the Fabric Project + * + */ + public String href() { + return this.href; + } + /** + * @return Project id associated with Fabric Project + * + */ + public String projectId() { + return this.projectId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersDataProject defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String href; + private String projectId; + public Builder() {} + public Builder(GetRouteFiltersDataProject defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.projectId = defaults.projectId; + } + + @CustomType.Setter + public Builder href(String href) { + if (href == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataProject", "href"); + } + this.href = href; + return this; + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersDataProject", "projectId"); + } + this.projectId = projectId; + return this; + } + public GetRouteFiltersDataProject build() { + final var _resultValue = new GetRouteFiltersDataProject(); + _resultValue.href = href; + _resultValue.projectId = projectId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersFilter.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersFilter.java new file mode 100644 index 000000000..174df127b --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersFilter.java @@ -0,0 +1,108 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersFilter { + /** + * @return Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + private String operator; + /** + * @return The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + private String property; + /** + * @return The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + private List values; + + private GetRouteFiltersFilter() {} + /** + * @return Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + * + */ + public String operator() { + return this.operator; + } + /** + * @return The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + * + */ + public String property() { + return this.property; + } + /** + * @return The values that you want to apply the property+operator combination to in order to filter your data search + * + */ + public List values() { + return this.values; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersFilter defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String operator; + private String property; + private List values; + public Builder() {} + public Builder(GetRouteFiltersFilter defaults) { + Objects.requireNonNull(defaults); + this.operator = defaults.operator; + this.property = defaults.property; + this.values = defaults.values; + } + + @CustomType.Setter + public Builder operator(String operator) { + if (operator == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "operator"); + } + this.operator = operator; + return this; + } + @CustomType.Setter + public Builder property(String property) { + if (property == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "property"); + } + this.property = property; + return this; + } + @CustomType.Setter + public Builder values(List values) { + if (values == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersFilter", "values"); + } + this.values = values; + return this; + } + public Builder values(String... values) { + return values(List.of(values)); + } + public GetRouteFiltersFilter build() { + final var _resultValue = new GetRouteFiltersFilter(); + _resultValue.operator = operator; + _resultValue.property = property; + _resultValue.values = values; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersPagination.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersPagination.java new file mode 100644 index 000000000..2b5661b0f --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersPagination.java @@ -0,0 +1,151 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRouteFiltersPagination { + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + private Integer limit; + /** + * @return URL relative to the last item in the response. + * + */ + private String next; + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + private Integer offset; + /** + * @return URL relative to the first item in the response. + * + */ + private String previous; + /** + * @return Total number of elements returned. + * + */ + private Integer total; + + private GetRouteFiltersPagination() {} + /** + * @return Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + * + */ + public Integer limit() { + return this.limit; + } + /** + * @return URL relative to the last item in the response. + * + */ + public String next() { + return this.next; + } + /** + * @return The page offset for the pagination request. Index of the first element. Default is 0. + * + */ + public Integer offset() { + return this.offset; + } + /** + * @return URL relative to the first item in the response. + * + */ + public String previous() { + return this.previous; + } + /** + * @return Total number of elements returned. + * + */ + public Integer total() { + return this.total; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersPagination defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Integer limit; + private String next; + private Integer offset; + private String previous; + private Integer total; + public Builder() {} + public Builder(GetRouteFiltersPagination defaults) { + Objects.requireNonNull(defaults); + this.limit = defaults.limit; + this.next = defaults.next; + this.offset = defaults.offset; + this.previous = defaults.previous; + this.total = defaults.total; + } + + @CustomType.Setter + public Builder limit(Integer limit) { + if (limit == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "limit"); + } + this.limit = limit; + return this; + } + @CustomType.Setter + public Builder next(String next) { + if (next == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "next"); + } + this.next = next; + return this; + } + @CustomType.Setter + public Builder offset(Integer offset) { + if (offset == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "offset"); + } + this.offset = offset; + return this; + } + @CustomType.Setter + public Builder previous(String previous) { + if (previous == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "previous"); + } + this.previous = previous; + return this; + } + @CustomType.Setter + public Builder total(Integer total) { + if (total == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersPagination", "total"); + } + this.total = total; + return this; + } + public GetRouteFiltersPagination build() { + final var _resultValue = new GetRouteFiltersPagination(); + _resultValue.limit = limit; + _resultValue.next = next; + _resultValue.offset = offset; + _resultValue.previous = previous; + _resultValue.total = total; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersResult.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersResult.java new file mode 100644 index 000000000..dc2987b61 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersResult.java @@ -0,0 +1,162 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersData; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersFilter; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersPagination; +import com.equinix.pulumi.fabric.outputs.GetRouteFiltersSort; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetRouteFiltersResult { + /** + * @return List of Route Filters + * + */ + private List datas; + /** + * @return Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + private List filters; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Pagination details for the Data Source Search Request + * + */ + private @Nullable GetRouteFiltersPagination pagination; + /** + * @return Filters for the Data Source Search Request + * + */ + private @Nullable List sorts; + + private GetRouteFiltersResult() {} + /** + * @return List of Route Filters + * + */ + public List datas() { + return this.datas; + } + /** + * @return Filters for the Data Source Search Request. Maximum of 8 total filters. + * + */ + public List filters() { + return this.filters; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Pagination details for the Data Source Search Request + * + */ + public Optional pagination() { + return Optional.ofNullable(this.pagination); + } + /** + * @return Filters for the Data Source Search Request + * + */ + public List sorts() { + return this.sorts == null ? List.of() : this.sorts; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List datas; + private List filters; + private String id; + private @Nullable GetRouteFiltersPagination pagination; + private @Nullable List sorts; + public Builder() {} + public Builder(GetRouteFiltersResult defaults) { + Objects.requireNonNull(defaults); + this.datas = defaults.datas; + this.filters = defaults.filters; + this.id = defaults.id; + this.pagination = defaults.pagination; + this.sorts = defaults.sorts; + } + + @CustomType.Setter + public Builder datas(List datas) { + if (datas == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersResult", "datas"); + } + this.datas = datas; + return this; + } + public Builder datas(GetRouteFiltersData... datas) { + return datas(List.of(datas)); + } + @CustomType.Setter + public Builder filters(List filters) { + if (filters == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersResult", "filters"); + } + this.filters = filters; + return this; + } + public Builder filters(GetRouteFiltersFilter... filters) { + return filters(List.of(filters)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRouteFiltersResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder pagination(@Nullable GetRouteFiltersPagination pagination) { + + this.pagination = pagination; + return this; + } + @CustomType.Setter + public Builder sorts(@Nullable List sorts) { + + this.sorts = sorts; + return this; + } + public Builder sorts(GetRouteFiltersSort... sorts) { + return sorts(List.of(sorts)); + } + public GetRouteFiltersResult build() { + final var _resultValue = new GetRouteFiltersResult(); + _resultValue.datas = datas; + _resultValue.filters = filters; + _resultValue.id = id; + _resultValue.pagination = pagination; + _resultValue.sorts = sorts; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersSort.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersSort.java new file mode 100644 index 000000000..8b857670b --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/GetRouteFiltersSort.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetRouteFiltersSort { + /** + * @return The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + private @Nullable String direction; + /** + * @return The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + private @Nullable String property; + + private GetRouteFiltersSort() {} + /** + * @return The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + * + */ + public Optional direction() { + return Optional.ofNullable(this.direction); + } + /** + * @return The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + * + */ + public Optional property() { + return Optional.ofNullable(this.property); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRouteFiltersSort defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String direction; + private @Nullable String property; + public Builder() {} + public Builder(GetRouteFiltersSort defaults) { + Objects.requireNonNull(defaults); + this.direction = defaults.direction; + this.property = defaults.property; + } + + @CustomType.Setter + public Builder direction(@Nullable String direction) { + + this.direction = direction; + return this; + } + @CustomType.Setter + public Builder property(@Nullable String property) { + + this.property = property; + return this; + } + public GetRouteFiltersSort build() { + final var _resultValue = new GetRouteFiltersSort(); + _resultValue.direction = direction; + _resultValue.property = property; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChange.java new file mode 100644 index 000000000..4bf9a99de --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChange.java @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class RouteFilterChange { + /** + * @return The URI of the previous Route Filter Change + * + */ + private @Nullable String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + private @Nullable String type; + /** + * @return Unique identifier for the previous change + * + */ + private @Nullable String uuid; + + private RouteFilterChange() {} + /** + * @return The URI of the previous Route Filter Change + * + */ + public Optional href() { + return Optional.ofNullable(this.href); + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + * + */ + public Optional type() { + return Optional.ofNullable(this.type); + } + /** + * @return Unique identifier for the previous change + * + */ + public Optional uuid() { + return Optional.ofNullable(this.uuid); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(RouteFilterChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String href; + private @Nullable String type; + private @Nullable String uuid; + public Builder() {} + public Builder(RouteFilterChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(@Nullable String href) { + + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(@Nullable String type) { + + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(@Nullable String uuid) { + + this.uuid = uuid; + return this; + } + public RouteFilterChange build() { + final var _resultValue = new RouteFilterChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChangeLog.java new file mode 100644 index 000000000..212d6fc39 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterChangeLog.java @@ -0,0 +1,288 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class RouteFilterChangeLog { + /** + * @return Created by User Key + * + */ + private @Nullable String createdBy; + /** + * @return Created by User Email Address + * + */ + private @Nullable String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private @Nullable String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private @Nullable String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private @Nullable String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private @Nullable String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private @Nullable String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private @Nullable String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private @Nullable String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private @Nullable String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private @Nullable String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private @Nullable String updatedDateTime; + + private RouteFilterChangeLog() {} + /** + * @return Created by User Key + * + */ + public Optional createdBy() { + return Optional.ofNullable(this.createdBy); + } + /** + * @return Created by User Email Address + * + */ + public Optional createdByEmail() { + return Optional.ofNullable(this.createdByEmail); + } + /** + * @return Created by User Full Name + * + */ + public Optional createdByFullName() { + return Optional.ofNullable(this.createdByFullName); + } + /** + * @return Created by Date and Time + * + */ + public Optional createdDateTime() { + return Optional.ofNullable(this.createdDateTime); + } + /** + * @return Deleted by User Key + * + */ + public Optional deletedBy() { + return Optional.ofNullable(this.deletedBy); + } + /** + * @return Deleted by User Email Address + * + */ + public Optional deletedByEmail() { + return Optional.ofNullable(this.deletedByEmail); + } + /** + * @return Deleted by User Full Name + * + */ + public Optional deletedByFullName() { + return Optional.ofNullable(this.deletedByFullName); + } + /** + * @return Deleted by Date and Time + * + */ + public Optional deletedDateTime() { + return Optional.ofNullable(this.deletedDateTime); + } + /** + * @return Updated by User Key + * + */ + public Optional updatedBy() { + return Optional.ofNullable(this.updatedBy); + } + /** + * @return Updated by User Email Address + * + */ + public Optional updatedByEmail() { + return Optional.ofNullable(this.updatedByEmail); + } + /** + * @return Updated by User Full Name + * + */ + public Optional updatedByFullName() { + return Optional.ofNullable(this.updatedByFullName); + } + /** + * @return Updated by Date and Time + * + */ + public Optional updatedDateTime() { + return Optional.ofNullable(this.updatedDateTime); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(RouteFilterChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String createdBy; + private @Nullable String createdByEmail; + private @Nullable String createdByFullName; + private @Nullable String createdDateTime; + private @Nullable String deletedBy; + private @Nullable String deletedByEmail; + private @Nullable String deletedByFullName; + private @Nullable String deletedDateTime; + private @Nullable String updatedBy; + private @Nullable String updatedByEmail; + private @Nullable String updatedByFullName; + private @Nullable String updatedDateTime; + public Builder() {} + public Builder(RouteFilterChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(@Nullable String createdBy) { + + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(@Nullable String createdByEmail) { + + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(@Nullable String createdByFullName) { + + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(@Nullable String createdDateTime) { + + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(@Nullable String deletedBy) { + + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(@Nullable String deletedByEmail) { + + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(@Nullable String deletedByFullName) { + + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(@Nullable String deletedDateTime) { + + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(@Nullable String updatedBy) { + + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(@Nullable String updatedByEmail) { + + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(@Nullable String updatedByFullName) { + + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(@Nullable String updatedDateTime) { + + this.updatedDateTime = updatedDateTime; + return this; + } + public RouteFilterChangeLog build() { + final var _resultValue = new RouteFilterChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterProject.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterProject.java new file mode 100644 index 000000000..9509c6eda --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterProject.java @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class RouteFilterProject { + /** + * @return URI of the Fabric Project + * + */ + private @Nullable String href; + /** + * @return Project id associated with Fabric Project + * + */ + private String projectId; + + private RouteFilterProject() {} + /** + * @return URI of the Fabric Project + * + */ + public Optional href() { + return Optional.ofNullable(this.href); + } + /** + * @return Project id associated with Fabric Project + * + */ + public String projectId() { + return this.projectId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(RouteFilterProject defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String href; + private String projectId; + public Builder() {} + public Builder(RouteFilterProject defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.projectId = defaults.projectId; + } + + @CustomType.Setter + public Builder href(@Nullable String href) { + + this.href = href; + return this; + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("RouteFilterProject", "projectId"); + } + this.projectId = projectId; + return this; + } + public RouteFilterProject build() { + final var _resultValue = new RouteFilterProject(); + _resultValue.href = href; + _resultValue.projectId = projectId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChange.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChange.java new file mode 100644 index 000000000..6e0959c30 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChange.java @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class RouteFilterRuleChange { + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + private @Nullable String href; + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + private @Nullable String type; + /** + * @return Unique identifier for the previous change + * + */ + private @Nullable String uuid; + + private RouteFilterRuleChange() {} + /** + * @return The URI of the previous Route Filter Rule Change + * + */ + public Optional href() { + return Optional.ofNullable(this.href); + } + /** + * @return Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + * + */ + public Optional type() { + return Optional.ofNullable(this.type); + } + /** + * @return Unique identifier for the previous change + * + */ + public Optional uuid() { + return Optional.ofNullable(this.uuid); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(RouteFilterRuleChange defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String href; + private @Nullable String type; + private @Nullable String uuid; + public Builder() {} + public Builder(RouteFilterRuleChange defaults) { + Objects.requireNonNull(defaults); + this.href = defaults.href; + this.type = defaults.type; + this.uuid = defaults.uuid; + } + + @CustomType.Setter + public Builder href(@Nullable String href) { + + this.href = href; + return this; + } + @CustomType.Setter + public Builder type(@Nullable String type) { + + this.type = type; + return this; + } + @CustomType.Setter + public Builder uuid(@Nullable String uuid) { + + this.uuid = uuid; + return this; + } + public RouteFilterRuleChange build() { + final var _resultValue = new RouteFilterRuleChange(); + _resultValue.href = href; + _resultValue.type = type; + _resultValue.uuid = uuid; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChangeLog.java b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChangeLog.java new file mode 100644 index 000000000..d06292b28 --- /dev/null +++ b/sdk/java/src/main/java/com/equinix/pulumi/fabric/outputs/RouteFilterRuleChangeLog.java @@ -0,0 +1,288 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.equinix.pulumi.fabric.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class RouteFilterRuleChangeLog { + /** + * @return Created by User Key + * + */ + private @Nullable String createdBy; + /** + * @return Created by User Email Address + * + */ + private @Nullable String createdByEmail; + /** + * @return Created by User Full Name + * + */ + private @Nullable String createdByFullName; + /** + * @return Created by Date and Time + * + */ + private @Nullable String createdDateTime; + /** + * @return Deleted by User Key + * + */ + private @Nullable String deletedBy; + /** + * @return Deleted by User Email Address + * + */ + private @Nullable String deletedByEmail; + /** + * @return Deleted by User Full Name + * + */ + private @Nullable String deletedByFullName; + /** + * @return Deleted by Date and Time + * + */ + private @Nullable String deletedDateTime; + /** + * @return Updated by User Key + * + */ + private @Nullable String updatedBy; + /** + * @return Updated by User Email Address + * + */ + private @Nullable String updatedByEmail; + /** + * @return Updated by User Full Name + * + */ + private @Nullable String updatedByFullName; + /** + * @return Updated by Date and Time + * + */ + private @Nullable String updatedDateTime; + + private RouteFilterRuleChangeLog() {} + /** + * @return Created by User Key + * + */ + public Optional createdBy() { + return Optional.ofNullable(this.createdBy); + } + /** + * @return Created by User Email Address + * + */ + public Optional createdByEmail() { + return Optional.ofNullable(this.createdByEmail); + } + /** + * @return Created by User Full Name + * + */ + public Optional createdByFullName() { + return Optional.ofNullable(this.createdByFullName); + } + /** + * @return Created by Date and Time + * + */ + public Optional createdDateTime() { + return Optional.ofNullable(this.createdDateTime); + } + /** + * @return Deleted by User Key + * + */ + public Optional deletedBy() { + return Optional.ofNullable(this.deletedBy); + } + /** + * @return Deleted by User Email Address + * + */ + public Optional deletedByEmail() { + return Optional.ofNullable(this.deletedByEmail); + } + /** + * @return Deleted by User Full Name + * + */ + public Optional deletedByFullName() { + return Optional.ofNullable(this.deletedByFullName); + } + /** + * @return Deleted by Date and Time + * + */ + public Optional deletedDateTime() { + return Optional.ofNullable(this.deletedDateTime); + } + /** + * @return Updated by User Key + * + */ + public Optional updatedBy() { + return Optional.ofNullable(this.updatedBy); + } + /** + * @return Updated by User Email Address + * + */ + public Optional updatedByEmail() { + return Optional.ofNullable(this.updatedByEmail); + } + /** + * @return Updated by User Full Name + * + */ + public Optional updatedByFullName() { + return Optional.ofNullable(this.updatedByFullName); + } + /** + * @return Updated by Date and Time + * + */ + public Optional updatedDateTime() { + return Optional.ofNullable(this.updatedDateTime); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(RouteFilterRuleChangeLog defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String createdBy; + private @Nullable String createdByEmail; + private @Nullable String createdByFullName; + private @Nullable String createdDateTime; + private @Nullable String deletedBy; + private @Nullable String deletedByEmail; + private @Nullable String deletedByFullName; + private @Nullable String deletedDateTime; + private @Nullable String updatedBy; + private @Nullable String updatedByEmail; + private @Nullable String updatedByFullName; + private @Nullable String updatedDateTime; + public Builder() {} + public Builder(RouteFilterRuleChangeLog defaults) { + Objects.requireNonNull(defaults); + this.createdBy = defaults.createdBy; + this.createdByEmail = defaults.createdByEmail; + this.createdByFullName = defaults.createdByFullName; + this.createdDateTime = defaults.createdDateTime; + this.deletedBy = defaults.deletedBy; + this.deletedByEmail = defaults.deletedByEmail; + this.deletedByFullName = defaults.deletedByFullName; + this.deletedDateTime = defaults.deletedDateTime; + this.updatedBy = defaults.updatedBy; + this.updatedByEmail = defaults.updatedByEmail; + this.updatedByFullName = defaults.updatedByFullName; + this.updatedDateTime = defaults.updatedDateTime; + } + + @CustomType.Setter + public Builder createdBy(@Nullable String createdBy) { + + this.createdBy = createdBy; + return this; + } + @CustomType.Setter + public Builder createdByEmail(@Nullable String createdByEmail) { + + this.createdByEmail = createdByEmail; + return this; + } + @CustomType.Setter + public Builder createdByFullName(@Nullable String createdByFullName) { + + this.createdByFullName = createdByFullName; + return this; + } + @CustomType.Setter + public Builder createdDateTime(@Nullable String createdDateTime) { + + this.createdDateTime = createdDateTime; + return this; + } + @CustomType.Setter + public Builder deletedBy(@Nullable String deletedBy) { + + this.deletedBy = deletedBy; + return this; + } + @CustomType.Setter + public Builder deletedByEmail(@Nullable String deletedByEmail) { + + this.deletedByEmail = deletedByEmail; + return this; + } + @CustomType.Setter + public Builder deletedByFullName(@Nullable String deletedByFullName) { + + this.deletedByFullName = deletedByFullName; + return this; + } + @CustomType.Setter + public Builder deletedDateTime(@Nullable String deletedDateTime) { + + this.deletedDateTime = deletedDateTime; + return this; + } + @CustomType.Setter + public Builder updatedBy(@Nullable String updatedBy) { + + this.updatedBy = updatedBy; + return this; + } + @CustomType.Setter + public Builder updatedByEmail(@Nullable String updatedByEmail) { + + this.updatedByEmail = updatedByEmail; + return this; + } + @CustomType.Setter + public Builder updatedByFullName(@Nullable String updatedByFullName) { + + this.updatedByFullName = updatedByFullName; + return this; + } + @CustomType.Setter + public Builder updatedDateTime(@Nullable String updatedDateTime) { + + this.updatedDateTime = updatedDateTime; + return this; + } + public RouteFilterRuleChangeLog build() { + final var _resultValue = new RouteFilterRuleChangeLog(); + _resultValue.createdBy = createdBy; + _resultValue.createdByEmail = createdByEmail; + _resultValue.createdByFullName = createdByFullName; + _resultValue.createdDateTime = createdDateTime; + _resultValue.deletedBy = deletedBy; + _resultValue.deletedByEmail = deletedByEmail; + _resultValue.deletedByFullName = deletedByFullName; + _resultValue.deletedDateTime = deletedDateTime; + _resultValue.updatedBy = updatedBy; + _resultValue.updatedByEmail = updatedByEmail; + _resultValue.updatedByFullName = updatedByFullName; + _resultValue.updatedDateTime = updatedDateTime; + return _resultValue; + } + } +} diff --git a/sdk/nodejs/fabric/connectionRouteFilter.ts b/sdk/nodejs/fabric/connectionRouteFilter.ts new file mode 100644 index 000000000..7f7325244 --- /dev/null +++ b/sdk/nodejs/fabric/connectionRouteFilter.ts @@ -0,0 +1,183 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const policyAttachment = new equinix.fabric.ConnectionRouteFilter("policyAttachment", { + * connectionId: "", + * routeFilterId: "", + * direction: "INBOUND", + * }); + * export const connectionRouteFilterId = policyAttachment.id; + * export const connectionRouteFilterConnectionId = policyAttachment.connectionId; + * export const connectionRouteFilterDirection = policyAttachment.direction; + * export const connectionRouteFilterType = policyAttachment.type; + * export const connectionRouteFilterAttachmentStatus = policyAttachment.attachmentStatus; + * ``` + */ +export class ConnectionRouteFilter extends pulumi.CustomResource { + /** + * Get an existing ConnectionRouteFilter resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: ConnectionRouteFilterState, opts?: pulumi.CustomResourceOptions): ConnectionRouteFilter { + return new ConnectionRouteFilter(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'equinix:fabric/connectionRouteFilter:ConnectionRouteFilter'; + + /** + * Returns true if the given object is an instance of ConnectionRouteFilter. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is ConnectionRouteFilter { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === ConnectionRouteFilter.__pulumiType; + } + + /** + * Status of the Route Filter Policy attachment lifecycle + */ + public /*out*/ readonly attachmentStatus!: pulumi.Output; + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + public readonly connectionId!: pulumi.Output; + /** + * Direction of the filtering of the attached Route Filter Policy + */ + public readonly direction!: pulumi.Output; + /** + * URI to the attached Route Filter Policy on the Connection + */ + public /*out*/ readonly href!: pulumi.Output; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + public readonly routeFilterId!: pulumi.Output; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + public /*out*/ readonly type!: pulumi.Output; + /** + * Equinix Assigned ID for Route Filter Policy + */ + public /*out*/ readonly uuid!: pulumi.Output; + + /** + * Create a ConnectionRouteFilter resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: ConnectionRouteFilterArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: ConnectionRouteFilterArgs | ConnectionRouteFilterState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as ConnectionRouteFilterState | undefined; + resourceInputs["attachmentStatus"] = state ? state.attachmentStatus : undefined; + resourceInputs["connectionId"] = state ? state.connectionId : undefined; + resourceInputs["direction"] = state ? state.direction : undefined; + resourceInputs["href"] = state ? state.href : undefined; + resourceInputs["routeFilterId"] = state ? state.routeFilterId : undefined; + resourceInputs["type"] = state ? state.type : undefined; + resourceInputs["uuid"] = state ? state.uuid : undefined; + } else { + const args = argsOrState as ConnectionRouteFilterArgs | undefined; + if ((!args || args.connectionId === undefined) && !opts.urn) { + throw new Error("Missing required property 'connectionId'"); + } + if ((!args || args.direction === undefined) && !opts.urn) { + throw new Error("Missing required property 'direction'"); + } + if ((!args || args.routeFilterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'routeFilterId'"); + } + resourceInputs["connectionId"] = args ? args.connectionId : undefined; + resourceInputs["direction"] = args ? args.direction : undefined; + resourceInputs["routeFilterId"] = args ? args.routeFilterId : undefined; + resourceInputs["attachmentStatus"] = undefined /*out*/; + resourceInputs["href"] = undefined /*out*/; + resourceInputs["type"] = undefined /*out*/; + resourceInputs["uuid"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(ConnectionRouteFilter.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering ConnectionRouteFilter resources. + */ +export interface ConnectionRouteFilterState { + /** + * Status of the Route Filter Policy attachment lifecycle + */ + attachmentStatus?: pulumi.Input; + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId?: pulumi.Input; + /** + * Direction of the filtering of the attached Route Filter Policy + */ + direction?: pulumi.Input; + /** + * URI to the attached Route Filter Policy on the Connection + */ + href?: pulumi.Input; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + routeFilterId?: pulumi.Input; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + type?: pulumi.Input; + /** + * Equinix Assigned ID for Route Filter Policy + */ + uuid?: pulumi.Input; +} + +/** + * The set of arguments for constructing a ConnectionRouteFilter resource. + */ +export interface ConnectionRouteFilterArgs { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId: pulumi.Input; + /** + * Direction of the filtering of the attached Route Filter Policy + */ + direction: pulumi.Input; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + routeFilterId: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getConnectionRouteFilter.ts b/sdk/nodejs/fabric/getConnectionRouteFilter.ts new file mode 100644 index 000000000..9fb51dcf2 --- /dev/null +++ b/sdk/nodejs/fabric/getConnectionRouteFilter.ts @@ -0,0 +1,134 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const attachedPolicy = equinix.fabric.getConnectionRouteFilter({ + * connectionId: "", + * routeFilterId: "", + * }); + * export const connectionRouteFilterId = attachedPolicy.then(attachedPolicy => attachedPolicy.id); + * export const connectionRouteFilterConnectionId = attachedPolicy.then(attachedPolicy => attachedPolicy.connectionId); + * export const connectionRouteFilterDirection = attachedPolicy.then(attachedPolicy => attachedPolicy.direction); + * export const connectionRouteFilterType = attachedPolicy.then(attachedPolicy => attachedPolicy.type); + * export const connectionRouteFilterAttachmentStatus = attachedPolicy.then(attachedPolicy => attachedPolicy.attachmentStatus); + * ``` + */ +export function getConnectionRouteFilter(args: GetConnectionRouteFilterArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", { + "connectionId": args.connectionId, + "routeFilterId": args.routeFilterId, + }, opts); +} + +/** + * A collection of arguments for invoking getConnectionRouteFilter. + */ +export interface GetConnectionRouteFilterArgs { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId: string; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + routeFilterId: string; +} + +/** + * A collection of values returned by getConnectionRouteFilter. + */ +export interface GetConnectionRouteFilterResult { + /** + * Status of the Route Filter Policy attachment lifecycle + */ + readonly attachmentStatus: string; + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + readonly connectionId: string; + /** + * Direction of the filtering of the attached Route Filter Policy + */ + readonly direction: string; + /** + * URI to the attached Route Filter Policy on the Connection + */ + readonly href: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + readonly routeFilterId: string; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + readonly type: string; + /** + * Equinix Assigned ID for Route Filter Policy + */ + readonly uuid: string; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const attachedPolicy = equinix.fabric.getConnectionRouteFilter({ + * connectionId: "", + * routeFilterId: "", + * }); + * export const connectionRouteFilterId = attachedPolicy.then(attachedPolicy => attachedPolicy.id); + * export const connectionRouteFilterConnectionId = attachedPolicy.then(attachedPolicy => attachedPolicy.connectionId); + * export const connectionRouteFilterDirection = attachedPolicy.then(attachedPolicy => attachedPolicy.direction); + * export const connectionRouteFilterType = attachedPolicy.then(attachedPolicy => attachedPolicy.type); + * export const connectionRouteFilterAttachmentStatus = attachedPolicy.then(attachedPolicy => attachedPolicy.attachmentStatus); + * ``` + */ +export function getConnectionRouteFilterOutput(args: GetConnectionRouteFilterOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter", { + "connectionId": args.connectionId, + "routeFilterId": args.routeFilterId, + }, opts); +} + +/** + * A collection of arguments for invoking getConnectionRouteFilter. + */ +export interface GetConnectionRouteFilterOutputArgs { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId: pulumi.Input; + /** + * Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + */ + routeFilterId: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getConnectionRouteFilters.ts b/sdk/nodejs/fabric/getConnectionRouteFilters.ts new file mode 100644 index 000000000..5eef91361 --- /dev/null +++ b/sdk/nodejs/fabric/getConnectionRouteFilters.ts @@ -0,0 +1,77 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + */ +export function getConnectionRouteFilters(args: GetConnectionRouteFiltersArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", { + "connectionId": args.connectionId, + }, opts); +} + +/** + * A collection of arguments for invoking getConnectionRouteFilters. + */ +export interface GetConnectionRouteFiltersArgs { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId: string; +} + +/** + * A collection of values returned by getConnectionRouteFilters. + */ +export interface GetConnectionRouteFiltersResult { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + readonly connectionId: string; + /** + * The list of Rules attached to the given Route Filter Policy UUID + */ + readonly datas: outputs.fabric.GetConnectionRouteFiltersData[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Pagination details for the Data Source Search Request + */ + readonly paginations: outputs.fabric.GetConnectionRouteFiltersPagination[]; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + */ +export function getConnectionRouteFiltersOutput(args: GetConnectionRouteFiltersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters", { + "connectionId": args.connectionId, + }, opts); +} + +/** + * A collection of arguments for invoking getConnectionRouteFilters. + */ +export interface GetConnectionRouteFiltersOutputArgs { + /** + * Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + */ + connectionId: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getRouteFilter.ts b/sdk/nodejs/fabric/getRouteFilter.ts new file mode 100644 index 000000000..7f2bc06df --- /dev/null +++ b/sdk/nodejs/fabric/getRouteFilter.ts @@ -0,0 +1,144 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfPolicy = equinix.fabric.getRouteFilter({ + * uuid: " rfPolicy.id); + * export const type = rfPolicy.then(rfPolicy => rfPolicy.type); + * export const state = rfPolicy.then(rfPolicy => rfPolicy.state); + * export const notMatchedRulesAction = rfPolicy.then(rfPolicy => rfPolicy.notMatchedRuleAction); + * export const connectionsCount = rfPolicy.then(rfPolicy => rfPolicy.connectionsCount); + * export const rulesCount = rfPolicy.then(rfPolicy => rfPolicy.rulesCount); + * ``` + */ +export function getRouteFilter(args: GetRouteFilterArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getRouteFilter:getRouteFilter", { + "uuid": args.uuid, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilter. + */ +export interface GetRouteFilterArgs { + /** + * Equinix Assigned ID for Route Filter + */ + uuid: string; +} + +/** + * A collection of values returned by getRouteFilter. + */ +export interface GetRouteFilterResult { + readonly changeLogs: outputs.fabric.GetRouteFilterChangeLog[]; + /** + * An object with the details of the previous change applied on the Route Filter + */ + readonly changes: outputs.fabric.GetRouteFilterChange[]; + /** + * The number of Fabric Connections that this Route Filter is attached to + */ + readonly connectionsCount: number; + /** + * Optional description to add to the Route Filter you will be creating + */ + readonly description: string; + /** + * Route filter URI + */ + readonly href: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Name of the Route Filter + */ + readonly name: string; + /** + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter + */ + readonly notMatchedRuleAction: string; + /** + * The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + */ + readonly projects: outputs.fabric.GetRouteFilterProject[]; + /** + * The number of Route Filter Rules attached to this Route Filter + */ + readonly rulesCount: number; + /** + * State of the Route Filter in its lifecycle + */ + readonly state: string; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + readonly type: string; + /** + * Equinix Assigned ID for Route Filter + */ + readonly uuid: string; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfPolicy = equinix.fabric.getRouteFilter({ + * uuid: " rfPolicy.id); + * export const type = rfPolicy.then(rfPolicy => rfPolicy.type); + * export const state = rfPolicy.then(rfPolicy => rfPolicy.state); + * export const notMatchedRulesAction = rfPolicy.then(rfPolicy => rfPolicy.notMatchedRuleAction); + * export const connectionsCount = rfPolicy.then(rfPolicy => rfPolicy.connectionsCount); + * export const rulesCount = rfPolicy.then(rfPolicy => rfPolicy.rulesCount); + * ``` + */ +export function getRouteFilterOutput(args: GetRouteFilterOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getRouteFilter:getRouteFilter", { + "uuid": args.uuid, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilter. + */ +export interface GetRouteFilterOutputArgs { + /** + * Equinix Assigned ID for Route Filter + */ + uuid: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getRouteFilterRule.ts b/sdk/nodejs/fabric/getRouteFilterRule.ts new file mode 100644 index 000000000..4740163c9 --- /dev/null +++ b/sdk/nodejs/fabric/getRouteFilterRule.ts @@ -0,0 +1,152 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfRule = equinix.fabric.getRouteFilterRule({ + * routeFilterId: "", + * uuid: "", + * }); + * export const routeFilterRuleName = rfRule.then(rfRule => rfRule.name); + * export const routeFilterRuleDescription = rfRule.then(rfRule => rfRule.description); + * export const routeFilterRulePrefix = rfRule.then(rfRule => rfRule.prefix); + * export const routeFilterRulePrefixMatch = rfRule.then(rfRule => rfRule.prefixMatch); + * ``` + */ +export function getRouteFilterRule(args: GetRouteFilterRuleArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getRouteFilterRule:getRouteFilterRule", { + "routeFilterId": args.routeFilterId, + "uuid": args.uuid, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilterRule. + */ +export interface GetRouteFilterRuleArgs { + /** + * UUID of the Route Filter Policy the rule is attached to + */ + routeFilterId: string; + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + */ + uuid: string; +} + +/** + * A collection of values returned by getRouteFilterRule. + */ +export interface GetRouteFilterRuleResult { + /** + * Action that will be taken on IP Addresses matching the rule + */ + readonly action: string; + readonly changeLogs: outputs.fabric.GetRouteFilterRuleChangeLog[]; + /** + * An object with the details of the previous change applied on the Route Filter + */ + readonly changes: outputs.fabric.GetRouteFilterRuleChange[]; + /** + * Optional description to add to the Route Filter you will be creating + */ + readonly description: string; + /** + * Route filter rules URI + */ + readonly href: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Name of the Route Filter + */ + readonly name: string; + /** + * IP Address Prefix to Filter on + */ + readonly prefix: string; + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + */ + readonly prefixMatch: string; + /** + * UUID of the Route Filter Policy the rule is attached to + */ + readonly routeFilterId: string; + /** + * State of the Route Filter Rule in its lifecycle + */ + readonly state: string; + /** + * Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + */ + readonly type: string; + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + */ + readonly uuid: string; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfRule = equinix.fabric.getRouteFilterRule({ + * routeFilterId: "", + * uuid: "", + * }); + * export const routeFilterRuleName = rfRule.then(rfRule => rfRule.name); + * export const routeFilterRuleDescription = rfRule.then(rfRule => rfRule.description); + * export const routeFilterRulePrefix = rfRule.then(rfRule => rfRule.prefix); + * export const routeFilterRulePrefixMatch = rfRule.then(rfRule => rfRule.prefixMatch); + * ``` + */ +export function getRouteFilterRuleOutput(args: GetRouteFilterRuleOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getRouteFilterRule:getRouteFilterRule", { + "routeFilterId": args.routeFilterId, + "uuid": args.uuid, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilterRule. + */ +export interface GetRouteFilterRuleOutputArgs { + /** + * UUID of the Route Filter Policy the rule is attached to + */ + routeFilterId: pulumi.Input; + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + */ + uuid: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getRouteFilterRules.ts b/sdk/nodejs/fabric/getRouteFilterRules.ts new file mode 100644 index 000000000..ad425e70c --- /dev/null +++ b/sdk/nodejs/fabric/getRouteFilterRules.ts @@ -0,0 +1,139 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfRules = equinix.fabric.getRouteFilterRules({ + * routeFilterId: " rfRules.datas?.[0]?.name); + * export const firstRouteFilterRuleDescription = rfRules.then(rfRules => rfRules.datas?.[0]?.description); + * export const firstRouteFilterRulePrefix = rfRules.then(rfRules => rfRules.datas?.[0]?.prefix); + * export const firstRouteFilterRulePrefixMatch = rfRules.then(rfRules => rfRules.datas?.[0]?.prefixMatch); + * ``` + */ +export function getRouteFilterRules(args: GetRouteFilterRulesArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getRouteFilterRules:getRouteFilterRules", { + "limit": args.limit, + "offset": args.offset, + "routeFilterId": args.routeFilterId, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilterRules. + */ +export interface GetRouteFilterRulesArgs { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit?: number; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset?: number; + /** + * UUID of the Route Filter Policy the rule is attached to + */ + routeFilterId: string; +} + +/** + * A collection of values returned by getRouteFilterRules. + */ +export interface GetRouteFilterRulesResult { + /** + * The list of Rules attached to the given Route Filter Policy UUID + */ + readonly datas: outputs.fabric.GetRouteFilterRulesData[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + readonly limit?: number; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + readonly offset?: number; + /** + * Pagination details for the Data Source Search Request + */ + readonly paginations: outputs.fabric.GetRouteFilterRulesPagination[]; + /** + * UUID of the Route Filter Policy the rule is attached to + */ + readonly routeFilterId: string; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfRules = equinix.fabric.getRouteFilterRules({ + * routeFilterId: " rfRules.datas?.[0]?.name); + * export const firstRouteFilterRuleDescription = rfRules.then(rfRules => rfRules.datas?.[0]?.description); + * export const firstRouteFilterRulePrefix = rfRules.then(rfRules => rfRules.datas?.[0]?.prefix); + * export const firstRouteFilterRulePrefixMatch = rfRules.then(rfRules => rfRules.datas?.[0]?.prefixMatch); + * ``` + */ +export function getRouteFilterRulesOutput(args: GetRouteFilterRulesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getRouteFilterRules:getRouteFilterRules", { + "limit": args.limit, + "offset": args.offset, + "routeFilterId": args.routeFilterId, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilterRules. + */ +export interface GetRouteFilterRulesOutputArgs { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit?: pulumi.Input; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset?: pulumi.Input; + /** + * UUID of the Route Filter Policy the rule is attached to + */ + routeFilterId: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/getRouteFilters.ts b/sdk/nodejs/fabric/getRouteFilters.ts new file mode 100644 index 000000000..395983ddd --- /dev/null +++ b/sdk/nodejs/fabric/getRouteFilters.ts @@ -0,0 +1,185 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfPolicies = equinix.fabric.getRouteFilters({ + * filters: [ + * { + * property: "/type", + * operator: "=", + * values: ["BGP_IPv4_PREFIX_FILTER"], + * }, + * { + * property: "/state", + * operator: "=", + * values: ["PROVISIONED"], + * }, + * { + * property: "/project/projectId", + * operator: "=", + * values: [""], + * }, + * ], + * pagination: { + * offset: 0, + * limit: 5, + * total: 25, + * }, + * sorts: [{ + * direction: "ASC", + * property: "/name", + * }], + * }); + * export const firstRfUuid = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.uuid); + * export const type = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.type); + * export const state = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.state); + * export const notMatchedRuleAction = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.notMatchedRuleAction); + * export const connectionsCount = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.connectionsCount); + * export const rulesCount = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.rulesCount); + * ``` + */ +export function getRouteFilters(args: GetRouteFiltersArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("equinix:fabric/getRouteFilters:getRouteFilters", { + "filters": args.filters, + "pagination": args.pagination, + "sorts": args.sorts, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilters. + */ +export interface GetRouteFiltersArgs { + /** + * Filters for the Data Source Search Request. Maximum of 8 total filters. + */ + filters: inputs.fabric.GetRouteFiltersFilter[]; + /** + * Pagination details for the Data Source Search Request + */ + pagination?: inputs.fabric.GetRouteFiltersPagination; + /** + * Filters for the Data Source Search Request + */ + sorts?: inputs.fabric.GetRouteFiltersSort[]; +} + +/** + * A collection of values returned by getRouteFilters. + */ +export interface GetRouteFiltersResult { + /** + * List of Route Filters + */ + readonly datas: outputs.fabric.GetRouteFiltersData[]; + /** + * Filters for the Data Source Search Request. Maximum of 8 total filters. + */ + readonly filters: outputs.fabric.GetRouteFiltersFilter[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Pagination details for the Data Source Search Request + */ + readonly pagination?: outputs.fabric.GetRouteFiltersPagination; + /** + * Filters for the Data Source Search Request + */ + readonly sorts?: outputs.fabric.GetRouteFiltersSort[]; +} +/** + * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfPolicies = equinix.fabric.getRouteFilters({ + * filters: [ + * { + * property: "/type", + * operator: "=", + * values: ["BGP_IPv4_PREFIX_FILTER"], + * }, + * { + * property: "/state", + * operator: "=", + * values: ["PROVISIONED"], + * }, + * { + * property: "/project/projectId", + * operator: "=", + * values: [""], + * }, + * ], + * pagination: { + * offset: 0, + * limit: 5, + * total: 25, + * }, + * sorts: [{ + * direction: "ASC", + * property: "/name", + * }], + * }); + * export const firstRfUuid = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.uuid); + * export const type = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.type); + * export const state = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.state); + * export const notMatchedRuleAction = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.notMatchedRuleAction); + * export const connectionsCount = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.connectionsCount); + * export const rulesCount = rfPolicies.then(rfPolicies => rfPolicies.datas?.[0]?.rulesCount); + * ``` + */ +export function getRouteFiltersOutput(args: GetRouteFiltersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("equinix:fabric/getRouteFilters:getRouteFilters", { + "filters": args.filters, + "pagination": args.pagination, + "sorts": args.sorts, + }, opts); +} + +/** + * A collection of arguments for invoking getRouteFilters. + */ +export interface GetRouteFiltersOutputArgs { + /** + * Filters for the Data Source Search Request. Maximum of 8 total filters. + */ + filters: pulumi.Input[]>; + /** + * Pagination details for the Data Source Search Request + */ + pagination?: pulumi.Input; + /** + * Filters for the Data Source Search Request + */ + sorts?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/fabric/index.ts b/sdk/nodejs/fabric/index.ts index 29c03cb1e..a283ad705 100644 --- a/sdk/nodejs/fabric/index.ts +++ b/sdk/nodejs/fabric/index.ts @@ -15,6 +15,11 @@ export type Connection = import("./connection").Connection; export const Connection: typeof import("./connection").Connection = null as any; utilities.lazyLoad(exports, ["Connection"], () => require("./connection")); +export { ConnectionRouteFilterArgs, ConnectionRouteFilterState } from "./connectionRouteFilter"; +export type ConnectionRouteFilter = import("./connectionRouteFilter").ConnectionRouteFilter; +export const ConnectionRouteFilter: typeof import("./connectionRouteFilter").ConnectionRouteFilter = null as any; +utilities.lazyLoad(exports, ["ConnectionRouteFilter"], () => require("./connectionRouteFilter")); + export { GetCloudRouterArgs, GetCloudRouterResult, GetCloudRouterOutputArgs } from "./getCloudRouter"; export const getCloudRouter: typeof import("./getCloudRouter").getCloudRouter = null as any; export const getCloudRouterOutput: typeof import("./getCloudRouter").getCloudRouterOutput = null as any; @@ -30,6 +35,16 @@ export const getConnection: typeof import("./getConnection").getConnection = nul export const getConnectionOutput: typeof import("./getConnection").getConnectionOutput = null as any; utilities.lazyLoad(exports, ["getConnection","getConnectionOutput"], () => require("./getConnection")); +export { GetConnectionRouteFilterArgs, GetConnectionRouteFilterResult, GetConnectionRouteFilterOutputArgs } from "./getConnectionRouteFilter"; +export const getConnectionRouteFilter: typeof import("./getConnectionRouteFilter").getConnectionRouteFilter = null as any; +export const getConnectionRouteFilterOutput: typeof import("./getConnectionRouteFilter").getConnectionRouteFilterOutput = null as any; +utilities.lazyLoad(exports, ["getConnectionRouteFilter","getConnectionRouteFilterOutput"], () => require("./getConnectionRouteFilter")); + +export { GetConnectionRouteFiltersArgs, GetConnectionRouteFiltersResult, GetConnectionRouteFiltersOutputArgs } from "./getConnectionRouteFilters"; +export const getConnectionRouteFilters: typeof import("./getConnectionRouteFilters").getConnectionRouteFilters = null as any; +export const getConnectionRouteFiltersOutput: typeof import("./getConnectionRouteFilters").getConnectionRouteFiltersOutput = null as any; +utilities.lazyLoad(exports, ["getConnectionRouteFilters","getConnectionRouteFiltersOutput"], () => require("./getConnectionRouteFilters")); + export { GetConnectionsArgs, GetConnectionsResult, GetConnectionsOutputArgs } from "./getConnections"; export const getConnections: typeof import("./getConnections").getConnections = null as any; export const getConnectionsOutput: typeof import("./getConnections").getConnectionsOutput = null as any; @@ -60,6 +75,26 @@ export const getPorts: typeof import("./getPorts").getPorts = null as any; export const getPortsOutput: typeof import("./getPorts").getPortsOutput = null as any; utilities.lazyLoad(exports, ["getPorts","getPortsOutput"], () => require("./getPorts")); +export { GetRouteFilterArgs, GetRouteFilterResult, GetRouteFilterOutputArgs } from "./getRouteFilter"; +export const getRouteFilter: typeof import("./getRouteFilter").getRouteFilter = null as any; +export const getRouteFilterOutput: typeof import("./getRouteFilter").getRouteFilterOutput = null as any; +utilities.lazyLoad(exports, ["getRouteFilter","getRouteFilterOutput"], () => require("./getRouteFilter")); + +export { GetRouteFilterRuleArgs, GetRouteFilterRuleResult, GetRouteFilterRuleOutputArgs } from "./getRouteFilterRule"; +export const getRouteFilterRule: typeof import("./getRouteFilterRule").getRouteFilterRule = null as any; +export const getRouteFilterRuleOutput: typeof import("./getRouteFilterRule").getRouteFilterRuleOutput = null as any; +utilities.lazyLoad(exports, ["getRouteFilterRule","getRouteFilterRuleOutput"], () => require("./getRouteFilterRule")); + +export { GetRouteFilterRulesArgs, GetRouteFilterRulesResult, GetRouteFilterRulesOutputArgs } from "./getRouteFilterRules"; +export const getRouteFilterRules: typeof import("./getRouteFilterRules").getRouteFilterRules = null as any; +export const getRouteFilterRulesOutput: typeof import("./getRouteFilterRules").getRouteFilterRulesOutput = null as any; +utilities.lazyLoad(exports, ["getRouteFilterRules","getRouteFilterRulesOutput"], () => require("./getRouteFilterRules")); + +export { GetRouteFiltersArgs, GetRouteFiltersResult, GetRouteFiltersOutputArgs } from "./getRouteFilters"; +export const getRouteFilters: typeof import("./getRouteFilters").getRouteFilters = null as any; +export const getRouteFiltersOutput: typeof import("./getRouteFilters").getRouteFiltersOutput = null as any; +utilities.lazyLoad(exports, ["getRouteFilters","getRouteFiltersOutput"], () => require("./getRouteFilters")); + export { GetRoutingProtocolArgs, GetRoutingProtocolResult, GetRoutingProtocolOutputArgs } from "./getRoutingProtocol"; export const getRoutingProtocol: typeof import("./getRoutingProtocol").getRoutingProtocol = null as any; export const getRoutingProtocolOutput: typeof import("./getRoutingProtocol").getRoutingProtocolOutput = null as any; @@ -80,6 +115,16 @@ export type Network = import("./network").Network; export const Network: typeof import("./network").Network = null as any; utilities.lazyLoad(exports, ["Network"], () => require("./network")); +export { RouteFilterArgs, RouteFilterState } from "./routeFilter"; +export type RouteFilter = import("./routeFilter").RouteFilter; +export const RouteFilter: typeof import("./routeFilter").RouteFilter = null as any; +utilities.lazyLoad(exports, ["RouteFilter"], () => require("./routeFilter")); + +export { RouteFilterRuleArgs, RouteFilterRuleState } from "./routeFilterRule"; +export type RouteFilterRule = import("./routeFilterRule").RouteFilterRule; +export const RouteFilterRule: typeof import("./routeFilterRule").RouteFilterRule = null as any; +utilities.lazyLoad(exports, ["RouteFilterRule"], () => require("./routeFilterRule")); + export { RoutingProtocolArgs, RoutingProtocolState } from "./routingProtocol"; export type RoutingProtocol = import("./routingProtocol").RoutingProtocol; export const RoutingProtocol: typeof import("./routingProtocol").RoutingProtocol = null as any; @@ -102,8 +147,14 @@ const _module = { return new CloudRouter(name, undefined, { urn }) case "equinix:fabric/connection:Connection": return new Connection(name, undefined, { urn }) + case "equinix:fabric/connectionRouteFilter:ConnectionRouteFilter": + return new ConnectionRouteFilter(name, undefined, { urn }) case "equinix:fabric/network:Network": return new Network(name, undefined, { urn }) + case "equinix:fabric/routeFilter:RouteFilter": + return new RouteFilter(name, undefined, { urn }) + case "equinix:fabric/routeFilterRule:RouteFilterRule": + return new RouteFilterRule(name, undefined, { urn }) case "equinix:fabric/routingProtocol:RoutingProtocol": return new RoutingProtocol(name, undefined, { urn }) case "equinix:fabric/serviceProfile:ServiceProfile": @@ -115,6 +166,9 @@ const _module = { }; pulumi.runtime.registerResourceModule("equinix", "fabric/cloudRouter", _module) pulumi.runtime.registerResourceModule("equinix", "fabric/connection", _module) +pulumi.runtime.registerResourceModule("equinix", "fabric/connectionRouteFilter", _module) pulumi.runtime.registerResourceModule("equinix", "fabric/network", _module) +pulumi.runtime.registerResourceModule("equinix", "fabric/routeFilter", _module) +pulumi.runtime.registerResourceModule("equinix", "fabric/routeFilterRule", _module) pulumi.runtime.registerResourceModule("equinix", "fabric/routingProtocol", _module) pulumi.runtime.registerResourceModule("equinix", "fabric/serviceProfile", _module) diff --git a/sdk/nodejs/fabric/routeFilter.ts b/sdk/nodejs/fabric/routeFilter.ts new file mode 100644 index 000000000..7cd7abf59 --- /dev/null +++ b/sdk/nodejs/fabric/routeFilter.ts @@ -0,0 +1,213 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + */ +export class RouteFilter extends pulumi.CustomResource { + /** + * Get an existing RouteFilter resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: RouteFilterState, opts?: pulumi.CustomResourceOptions): RouteFilter { + return new RouteFilter(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'equinix:fabric/routeFilter:RouteFilter'; + + /** + * Returns true if the given object is an instance of RouteFilter. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is RouteFilter { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === RouteFilter.__pulumiType; + } + + public /*out*/ readonly changeLogs!: pulumi.Output; + /** + * An object with the details of the previous change applied on the Route Filter + */ + public /*out*/ readonly changes!: pulumi.Output; + /** + * The number of Fabric Connections that this Route Filter is attached to + */ + public /*out*/ readonly connectionsCount!: pulumi.Output; + /** + * Optional description to add to the Route Filter you will be creating + */ + public readonly description!: pulumi.Output; + /** + * Route filter URI + */ + public /*out*/ readonly href!: pulumi.Output; + /** + * Name of the Route Filter + */ + public readonly name!: pulumi.Output; + /** + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter + */ + public /*out*/ readonly notMatchedRuleAction!: pulumi.Output; + /** + * The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + */ + public readonly project!: pulumi.Output; + /** + * The number of Route Filter Rules attached to this Route Filter + */ + public /*out*/ readonly rulesCount!: pulumi.Output; + /** + * State of the Route Filter in its lifecycle + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + public readonly type!: pulumi.Output; + /** + * Equinix Assigned ID for Route Filter + */ + public /*out*/ readonly uuid!: pulumi.Output; + + /** + * Create a RouteFilter resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: RouteFilterArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: RouteFilterArgs | RouteFilterState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as RouteFilterState | undefined; + resourceInputs["changeLogs"] = state ? state.changeLogs : undefined; + resourceInputs["changes"] = state ? state.changes : undefined; + resourceInputs["connectionsCount"] = state ? state.connectionsCount : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["href"] = state ? state.href : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["notMatchedRuleAction"] = state ? state.notMatchedRuleAction : undefined; + resourceInputs["project"] = state ? state.project : undefined; + resourceInputs["rulesCount"] = state ? state.rulesCount : undefined; + resourceInputs["state"] = state ? state.state : undefined; + resourceInputs["type"] = state ? state.type : undefined; + resourceInputs["uuid"] = state ? state.uuid : undefined; + } else { + const args = argsOrState as RouteFilterArgs | undefined; + if ((!args || args.project === undefined) && !opts.urn) { + throw new Error("Missing required property 'project'"); + } + if ((!args || args.type === undefined) && !opts.urn) { + throw new Error("Missing required property 'type'"); + } + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["project"] = args ? args.project : undefined; + resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["changeLogs"] = undefined /*out*/; + resourceInputs["changes"] = undefined /*out*/; + resourceInputs["connectionsCount"] = undefined /*out*/; + resourceInputs["href"] = undefined /*out*/; + resourceInputs["notMatchedRuleAction"] = undefined /*out*/; + resourceInputs["rulesCount"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + resourceInputs["uuid"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(RouteFilter.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering RouteFilter resources. + */ +export interface RouteFilterState { + changeLogs?: pulumi.Input[]>; + /** + * An object with the details of the previous change applied on the Route Filter + */ + changes?: pulumi.Input[]>; + /** + * The number of Fabric Connections that this Route Filter is attached to + */ + connectionsCount?: pulumi.Input; + /** + * Optional description to add to the Route Filter you will be creating + */ + description?: pulumi.Input; + /** + * Route filter URI + */ + href?: pulumi.Input; + /** + * Name of the Route Filter + */ + name?: pulumi.Input; + /** + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter + */ + notMatchedRuleAction?: pulumi.Input; + /** + * The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + */ + project?: pulumi.Input; + /** + * The number of Route Filter Rules attached to this Route Filter + */ + rulesCount?: pulumi.Input; + /** + * State of the Route Filter in its lifecycle + */ + state?: pulumi.Input; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + type?: pulumi.Input; + /** + * Equinix Assigned ID for Route Filter + */ + uuid?: pulumi.Input; +} + +/** + * The set of arguments for constructing a RouteFilter resource. + */ +export interface RouteFilterArgs { + /** + * Optional description to add to the Route Filter you will be creating + */ + description?: pulumi.Input; + /** + * Name of the Route Filter + */ + name?: pulumi.Input; + /** + * The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to + */ + project: pulumi.Input; + /** + * Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + */ + type: pulumi.Input; +} diff --git a/sdk/nodejs/fabric/routeFilterRule.ts b/sdk/nodejs/fabric/routeFilterRule.ts new file mode 100644 index 000000000..b4f0d6ba4 --- /dev/null +++ b/sdk/nodejs/fabric/routeFilterRule.ts @@ -0,0 +1,235 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as enums from "../types/enums"; +import * as utilities from "../utilities"; + +/** + * Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule + * + * Additional Documentation: + * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as equinix from "@equinix-labs/pulumi-equinix"; + * + * const rfRule = new equinix.fabric.RouteFilterRule("rfRule", { + * routeFilterId: "", + * prefix: "192.168.0.0/24", + * prefixMatch: "exact", + * description: "Route Filter Rule for X Purpose", + * }); + * export const routeFilterRuleId = rfRule.id; + * export const routeFilterId = rfRule.routeFilterId; + * export const routeFilterRulePrefix = rfRule.prefix; + * export const routeFilterRulePrefixMatch = rfRule.prefixMatch; + * ``` + */ +export class RouteFilterRule extends pulumi.CustomResource { + /** + * Get an existing RouteFilterRule resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: RouteFilterRuleState, opts?: pulumi.CustomResourceOptions): RouteFilterRule { + return new RouteFilterRule(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'equinix:fabric/routeFilterRule:RouteFilterRule'; + + /** + * Returns true if the given object is an instance of RouteFilterRule. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is RouteFilterRule { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === RouteFilterRule.__pulumiType; + } + + /** + * Action that will be taken on IP Addresses matching the rule + */ + public /*out*/ readonly action!: pulumi.Output; + public /*out*/ readonly changeLogs!: pulumi.Output; + /** + * An object with the details of the previous change applied on the Route Filter + */ + public /*out*/ readonly changes!: pulumi.Output; + /** + * Optional description to add to the Route Filter you will be creating + */ + public readonly description!: pulumi.Output; + /** + * Route filter rules URI + */ + public /*out*/ readonly href!: pulumi.Output; + /** + * Name of the Route Filter + */ + public readonly name!: pulumi.Output; + /** + * IP Address Prefix to Filter on + */ + public readonly prefix!: pulumi.Output; + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + */ + public readonly prefixMatch!: pulumi.Output; + /** + * UUID of the Route Filter Policy to apply this Rule to + */ + public readonly routeFilterId!: pulumi.Output; + /** + * State of the Route Filter Rule in its lifecycle + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + */ + public /*out*/ readonly type!: pulumi.Output; + /** + * Equinix Assigned ID for Route Filter Rule + */ + public /*out*/ readonly uuid!: pulumi.Output; + + /** + * Create a RouteFilterRule resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: RouteFilterRuleArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: RouteFilterRuleArgs | RouteFilterRuleState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as RouteFilterRuleState | undefined; + resourceInputs["action"] = state ? state.action : undefined; + resourceInputs["changeLogs"] = state ? state.changeLogs : undefined; + resourceInputs["changes"] = state ? state.changes : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["href"] = state ? state.href : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["prefix"] = state ? state.prefix : undefined; + resourceInputs["prefixMatch"] = state ? state.prefixMatch : undefined; + resourceInputs["routeFilterId"] = state ? state.routeFilterId : undefined; + resourceInputs["state"] = state ? state.state : undefined; + resourceInputs["type"] = state ? state.type : undefined; + resourceInputs["uuid"] = state ? state.uuid : undefined; + } else { + const args = argsOrState as RouteFilterRuleArgs | undefined; + if ((!args || args.prefix === undefined) && !opts.urn) { + throw new Error("Missing required property 'prefix'"); + } + if ((!args || args.routeFilterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'routeFilterId'"); + } + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["prefix"] = args ? args.prefix : undefined; + resourceInputs["prefixMatch"] = args ? args.prefixMatch : undefined; + resourceInputs["routeFilterId"] = args ? args.routeFilterId : undefined; + resourceInputs["action"] = undefined /*out*/; + resourceInputs["changeLogs"] = undefined /*out*/; + resourceInputs["changes"] = undefined /*out*/; + resourceInputs["href"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + resourceInputs["type"] = undefined /*out*/; + resourceInputs["uuid"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(RouteFilterRule.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering RouteFilterRule resources. + */ +export interface RouteFilterRuleState { + /** + * Action that will be taken on IP Addresses matching the rule + */ + action?: pulumi.Input; + changeLogs?: pulumi.Input[]>; + /** + * An object with the details of the previous change applied on the Route Filter + */ + changes?: pulumi.Input[]>; + /** + * Optional description to add to the Route Filter you will be creating + */ + description?: pulumi.Input; + /** + * Route filter rules URI + */ + href?: pulumi.Input; + /** + * Name of the Route Filter + */ + name?: pulumi.Input; + /** + * IP Address Prefix to Filter on + */ + prefix?: pulumi.Input; + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + */ + prefixMatch?: pulumi.Input; + /** + * UUID of the Route Filter Policy to apply this Rule to + */ + routeFilterId?: pulumi.Input; + /** + * State of the Route Filter Rule in its lifecycle + */ + state?: pulumi.Input; + /** + * Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + */ + type?: pulumi.Input; + /** + * Equinix Assigned ID for Route Filter Rule + */ + uuid?: pulumi.Input; +} + +/** + * The set of arguments for constructing a RouteFilterRule resource. + */ +export interface RouteFilterRuleArgs { + /** + * Optional description to add to the Route Filter you will be creating + */ + description?: pulumi.Input; + /** + * Name of the Route Filter + */ + name?: pulumi.Input; + /** + * IP Address Prefix to Filter on + */ + prefix: pulumi.Input; + /** + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + */ + prefixMatch?: pulumi.Input; + /** + * UUID of the Route Filter Policy to apply this Rule to + */ + routeFilterId: pulumi.Input; +} diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 5546b148e..ee5276295 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -17,20 +17,29 @@ "config/vars.ts", "fabric/cloudRouter.ts", "fabric/connection.ts", + "fabric/connectionRouteFilter.ts", "fabric/getCloudRouter.ts", "fabric/getCloudRouters.ts", "fabric/getConnection.ts", + "fabric/getConnectionRouteFilter.ts", + "fabric/getConnectionRouteFilters.ts", "fabric/getConnections.ts", "fabric/getMarketplaceSubscription.ts", "fabric/getNetwork.ts", "fabric/getNetworks.ts", "fabric/getPort.ts", "fabric/getPorts.ts", + "fabric/getRouteFilter.ts", + "fabric/getRouteFilterRule.ts", + "fabric/getRouteFilterRules.ts", + "fabric/getRouteFilters.ts", "fabric/getRoutingProtocol.ts", "fabric/getServiceProfile.ts", "fabric/getServiceProfiles.ts", "fabric/index.ts", "fabric/network.ts", + "fabric/routeFilter.ts", + "fabric/routeFilterRule.ts", "fabric/routingProtocol.ts", "fabric/serviceProfile.ts", "index.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 247111b83..fbe4752d9 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -1246,6 +1246,104 @@ export namespace fabric { name: pulumi.Input; } + export interface GetRouteFiltersFilter { + /** + * Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + */ + operator: string; + /** + * The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + */ + property: string; + /** + * The values that you want to apply the property+operator combination to in order to filter your data search + */ + values: string[]; + } + + export interface GetRouteFiltersFilterArgs { + /** + * Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + */ + operator: pulumi.Input; + /** + * The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + */ + property: pulumi.Input; + /** + * The values that you want to apply the property+operator combination to in order to filter your data search + */ + values: pulumi.Input[]>; + } + + export interface GetRouteFiltersPagination { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit?: number; + /** + * URL relative to the last item in the response. + */ + next?: string; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset?: number; + /** + * URL relative to the first item in the response. + */ + previous?: string; + /** + * Total number of elements returned. + */ + total?: number; + } + + export interface GetRouteFiltersPaginationArgs { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit?: pulumi.Input; + /** + * URL relative to the last item in the response. + */ + next?: pulumi.Input; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset?: pulumi.Input; + /** + * URL relative to the first item in the response. + */ + previous?: pulumi.Input; + /** + * Total number of elements returned. + */ + total?: pulumi.Input; + } + + export interface GetRouteFiltersSort { + /** + * The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + */ + direction?: string; + /** + * The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + */ + property?: string; + } + + export interface GetRouteFiltersSortArgs { + /** + * The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + */ + direction?: pulumi.Input; + /** + * The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + */ + property?: pulumi.Input; + } + export interface GetServiceProfilesFilter { /** * Operators to use on your filtered field with the values given. One of [=] @@ -1435,6 +1533,149 @@ export namespace fabric { projectId: pulumi.Input; } + export interface RouteFilterChange { + /** + * The URI of the previous Route Filter Change + */ + href?: pulumi.Input; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + */ + type?: pulumi.Input; + /** + * Unique identifier for the previous change + */ + uuid?: pulumi.Input; + } + + export interface RouteFilterChangeLog { + /** + * Created by User Key + */ + createdBy?: pulumi.Input; + /** + * Created by User Email Address + */ + createdByEmail?: pulumi.Input; + /** + * Created by User Full Name + */ + createdByFullName?: pulumi.Input; + /** + * Created by Date and Time + */ + createdDateTime?: pulumi.Input; + /** + * Deleted by User Key + */ + deletedBy?: pulumi.Input; + /** + * Deleted by User Email Address + */ + deletedByEmail?: pulumi.Input; + /** + * Deleted by User Full Name + */ + deletedByFullName?: pulumi.Input; + /** + * Deleted by Date and Time + */ + deletedDateTime?: pulumi.Input; + /** + * Updated by User Key + */ + updatedBy?: pulumi.Input; + /** + * Updated by User Email Address + */ + updatedByEmail?: pulumi.Input; + /** + * Updated by User Full Name + */ + updatedByFullName?: pulumi.Input; + /** + * Updated by Date and Time + */ + updatedDateTime?: pulumi.Input; + } + + export interface RouteFilterProject { + /** + * URI of the Fabric Project + */ + href?: pulumi.Input; + /** + * Project id associated with Fabric Project + */ + projectId: pulumi.Input; + } + + export interface RouteFilterRuleChange { + /** + * The URI of the previous Route Filter Rule Change + */ + href?: pulumi.Input; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + */ + type?: pulumi.Input; + /** + * Unique identifier for the previous change + */ + uuid?: pulumi.Input; + } + + export interface RouteFilterRuleChangeLog { + /** + * Created by User Key + */ + createdBy?: pulumi.Input; + /** + * Created by User Email Address + */ + createdByEmail?: pulumi.Input; + /** + * Created by User Full Name + */ + createdByFullName?: pulumi.Input; + /** + * Created by Date and Time + */ + createdDateTime?: pulumi.Input; + /** + * Deleted by User Key + */ + deletedBy?: pulumi.Input; + /** + * Deleted by User Email Address + */ + deletedByEmail?: pulumi.Input; + /** + * Deleted by User Full Name + */ + deletedByFullName?: pulumi.Input; + /** + * Deleted by Date and Time + */ + deletedDateTime?: pulumi.Input; + /** + * Updated by User Key + */ + updatedBy?: pulumi.Input; + /** + * Updated by User Email Address + */ + updatedByEmail?: pulumi.Input; + /** + * Updated by User Full Name + */ + updatedByFullName?: pulumi.Input; + /** + * Updated by Date and Time + */ + updatedDateTime?: pulumi.Input; + } + export interface RoutingProtocolBfd { /** * Bidirectional Forwarding Detection enablement diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index a61d8834a..016b883e1 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -1907,6 +1907,52 @@ export namespace fabric { priority: string; } + export interface GetConnectionRouteFiltersData { + /** + * Status of the Route Filter Policy attachment lifecycle + */ + attachmentStatus: string; + /** + * Direction of the filtering of the attached Route Filter Policy + */ + direction: string; + /** + * URI to the attached Route Filter Policy on the Connection + */ + href: string; + /** + * Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + */ + type: string; + /** + * Equinix Assigned ID for Route Filter Policy + */ + uuid: string; + } + + export interface GetConnectionRouteFiltersPagination { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit: number; + /** + * URL relative to the last item in the response. + */ + next: string; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset: number; + /** + * URL relative to the first item in the response. + */ + previous: string; + /** + * Total number of elements returned. + */ + total: number; + } + export interface GetConnectionZSide { /** * Point of access details @@ -3988,87 +4034,99 @@ export namespace fabric { name: string; } - export interface GetRoutingProtocolBfd { + export interface GetRouteFilterChange { /** - * Bidirectional Forwarding Detection enablement + * The URI of the previous Route Filter Change */ - enabled: boolean; + href: string; /** - * Interval range between the received BFD control packets + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] */ - interval?: string; + type: string; + /** + * Unique identifier for the previous change + */ + uuid: string; } - export interface GetRoutingProtocolBgpIpv4 { + export interface GetRouteFilterChangeLog { /** - * Customer side peering ip + * Created by User Key */ - customerPeerIp: string; + createdBy: string; /** - * Admin status for the BGP session + * Created by User Email Address */ - enabled?: boolean; + createdByEmail: string; /** - * Equinix side peering ip + * Created by User Full Name */ - equinixPeerIp: string; + createdByFullName: string; /** - * Inbound Multi Exit Discriminator attribute + * Created by Date and Time */ - inboundMed: number; + createdDateTime: string; /** - * AS path prepend count. One of: 0, 1, 3, 5 + * Deleted by User Key */ - outboundAsPrependCount: string; + deletedBy: string; /** - * Outbound Multi Exit Discriminator attribute + * Deleted by User Email Address */ - outboundMed: number; - } - - export interface GetRoutingProtocolBgpIpv6 { + deletedByEmail: string; /** - * Customer side peering ip + * Deleted by User Full Name */ - customerPeerIp: string; + deletedByFullName: string; /** - * Admin status for the BGP session + * Deleted by Date and Time */ - enabled?: boolean; + deletedDateTime: string; /** - * Equinix side peering ip + * Updated by User Key */ - equinixPeerIp: string; + updatedBy: string; /** - * Inbound Multi Exit Discriminator attribute + * Updated by User Email Address */ - inboundMed: number; + updatedByEmail: string; /** - * AS path prepend count. One of: 0, 1, 3, 5 + * Updated by User Full Name */ - outboundAsPrependCount: string; + updatedByFullName: string; /** - * Outbound Multi Exit Discriminator attribute + * Updated by Date and Time */ - outboundMed: number; + updatedDateTime: string; } - export interface GetRoutingProtocolChange { + export interface GetRouteFilterProject { /** - * Routing Protocol Change URI + * URI of the Fabric Project */ href: string; /** - * Type of change + * Project id associated with Fabric Project + */ + projectId: string; + } + + export interface GetRouteFilterRuleChange { + /** + * The URI of the previous Route Filter Rule Change + */ + href: string; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] */ type: string; /** - * Uniquely identifies a change + * Unique identifier for the previous change */ uuid: string; } - export interface GetRoutingProtocolChangeLog { + export interface GetRouteFilterRuleChangeLog { /** * Created by User Key */ @@ -4119,188 +4177,626 @@ export namespace fabric { updatedDateTime: string; } - export interface GetRoutingProtocolDirectIpv4 { + export interface GetRouteFilterRulesData { /** - * Equinix side Interface IP address + * Action that will be taken on IP Addresses matching the rule */ - equinixIfaceIp: string; - } - - export interface GetRoutingProtocolDirectIpv6 { + action: string; + changeLogs: outputs.fabric.GetRouteFilterRulesDataChangeLog[]; /** - * Equinix side Interface IP address + * An object with the details of the previous change applied on the Route Filter */ - equinixIfaceIp?: string; - } - - export interface GetRoutingProtocolOperation { + changes: outputs.fabric.GetRouteFilterRulesDataChange[]; /** - * Errors occurred + * Optional description to add to the Route Filter you will be creating */ - errors: outputs.fabric.GetRoutingProtocolOperationError[]; - } - - export interface GetRoutingProtocolOperationError { + description: string; /** - * Pricing error additional Info + * Route filter rules URI */ - additionalInfos: outputs.fabric.GetRoutingProtocolOperationErrorAdditionalInfo[]; + href: string; /** - * CorrelationId + * Name of the Route Filter */ - correlationId: string; + name: string; /** - * Details + * IP Address Prefix to Filter on */ - details: string; + prefix: string; /** - * Error code + * Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" */ - errorCode: string; + prefixMatch: string; /** - * Error Message + * State of the Route Filter Rule in its lifecycle */ - errorMessage: string; + state: string; /** - * Help + * Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] */ - help: string; + type: string; + /** + * Equinix Assigned ID for Route Filter Rule to retrieve data for + */ + uuid: string; } - export interface GetRoutingProtocolOperationErrorAdditionalInfo { + export interface GetRouteFilterRulesDataChange { /** - * Property at which the error potentially occurred + * The URI of the previous Route Filter Rule Change */ - property: string; + href: string; /** - * Reason for the error + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] */ - reason: string; + type: string; + /** + * Unique identifier for the previous change + */ + uuid: string; } - export interface GetServiceProfileAccessPointTypeConfig { + export interface GetRouteFilterRulesDataChangeLog { /** - * Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller + * Created by User Key */ - allowBandwidthAutoApproval?: boolean; + createdBy: string; /** - * Availability of a bandwidth upgrade. The default is false + * Created by User Email Address */ - allowBandwidthUpgrade?: boolean; + createdByEmail: string; /** - * Setting to enable or disable the ability of the buyer to customize the bandwidth + * Created by User Full Name */ - allowCustomBandwidth?: boolean; + createdByFullName: string; /** - * Setting to allow or prohibit remote connections to the service profile + * Created by Date and Time */ - allowRemoteConnections?: boolean; + createdDateTime: string; /** - * Api configuration details + * Deleted by User Key */ - apiConfig?: outputs.fabric.GetServiceProfileAccessPointTypeConfigApiConfig; + deletedBy: string; /** - * Authentication key details + * Deleted by User Email Address */ - authenticationKey?: outputs.fabric.GetServiceProfileAccessPointTypeConfigAuthenticationKey; + deletedByEmail: string; /** - * Percentage of port bandwidth at which an allocation alert is generated + * Deleted by User Full Name */ - bandwidthAlertThreshold?: number; + deletedByFullName: string; /** - * Custom name for Connection + * Deleted by Date and Time */ - connectionLabel?: string; + deletedDateTime: string; /** - * Mandate redundant connections + * Updated by User Key */ - connectionRedundancyRequired?: boolean; + updatedBy: string; /** - * Enable auto generate service key + * Updated by User Email Address */ - enableAutoGenerateServiceKey?: boolean; + updatedByEmail: string; /** - * Link protocol configuration details + * Updated by User Full Name */ - linkProtocolConfig?: outputs.fabric.GetServiceProfileAccessPointTypeConfigLinkProtocolConfig; + updatedByFullName: string; /** - * Supported bandwidths + * Updated by Date and Time */ - supportedBandwidths?: number[]; + updatedDateTime: string; + } + + export interface GetRouteFilterRulesPagination { /** - * Type of access point type config - VD, COLO + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 */ - type: string; + limit: number; /** - * Colo/Port Uuid + * URL relative to the last item in the response. */ - uuid: string; - } - - export interface GetServiceProfileAccessPointTypeConfigApiConfig { + next: string; /** - * Setting showing that oversubscription support is available (true) or not (false). The default is false + * The page offset for the pagination request. Index of the first element. Default is 0. */ - allowOverSubscription?: boolean; + offset: number; /** - * Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. + * URL relative to the first item in the response. */ - apiAvailable?: boolean; + previous: string; /** - * Indicates if the connection bandwidth can be obtained directly from the cloud service provider. + * Total number of elements returned. */ - bandwidthFromApi?: boolean; + total: number; + } + + export interface GetRouteFiltersData { + changeLogs: outputs.fabric.GetRouteFiltersDataChangeLog[]; /** - * Setting indicating that the port is managed by Equinix (true) or not (false) + * An object with the details of the previous change applied on the Route Filter */ - equinixManagedPort?: boolean; + changes: outputs.fabric.GetRouteFiltersDataChange[]; /** - * Setting indicating that the VLAN is managed by Equinix (true) or not (false) + * The number of Fabric Connections that this Route Filter is attached to */ - equinixManagedVlan?: boolean; + connectionsCount: number; /** - * A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. + * Optional description to add to the Route Filter you will be creating */ - integrationId?: string; + description: string; /** - * Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + * Route filter URI */ - overSubscriptionLimit?: number; - } - - export interface GetServiceProfileAccessPointTypeConfigAuthenticationKey { + href: string; /** - * Description of authorization key + * Name of the Route Filter */ - description?: string; + name: string; /** - * Name of the parameter that must be provided to authorize the connection. + * The action that will be taken on ip ranges that don't match the rules present within the Route Filter */ - label?: string; + notMatchedRuleAction: string; /** - * Requirement to configure an authentication key. + * The Project object that contains projectId and href that is related to the Fabric Project containing connections the Route Filter can be attached to */ - required?: boolean; - } - - export interface GetServiceProfileAccessPointTypeConfigLinkProtocolConfig { + projects: outputs.fabric.GetRouteFiltersDataProject[]; /** - * Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. + * The number of Route Filter Rules attached to this Route Filter */ - encapsulation?: string; + rulesCount: number; /** - * Additional tagging information required by the seller profile. + * State of the Route Filter in its lifecycle */ - encapsulationStrategy?: string; + state: string; /** - * Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + * Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] */ - reuseVlanSTag?: boolean; + type: string; + /** + * Equinix Assigned ID for Route Filter + */ + uuid: string; } - export interface GetServiceProfileAccount { + export interface GetRouteFiltersDataChange { /** - * Legal name of the accountholder. + * The URI of the previous Route Filter Change + */ + href: string; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + */ + type: string; + /** + * Unique identifier for the previous change + */ + uuid: string; + } + + export interface GetRouteFiltersDataChangeLog { + /** + * Created by User Key + */ + createdBy: string; + /** + * Created by User Email Address + */ + createdByEmail: string; + /** + * Created by User Full Name + */ + createdByFullName: string; + /** + * Created by Date and Time + */ + createdDateTime: string; + /** + * Deleted by User Key + */ + deletedBy: string; + /** + * Deleted by User Email Address + */ + deletedByEmail: string; + /** + * Deleted by User Full Name + */ + deletedByFullName: string; + /** + * Deleted by Date and Time + */ + deletedDateTime: string; + /** + * Updated by User Key + */ + updatedBy: string; + /** + * Updated by User Email Address + */ + updatedByEmail: string; + /** + * Updated by User Full Name + */ + updatedByFullName: string; + /** + * Updated by Date and Time + */ + updatedDateTime: string; + } + + export interface GetRouteFiltersDataProject { + /** + * URI of the Fabric Project + */ + href: string; + /** + * Project id associated with Fabric Project + */ + projectId: string; + } + + export interface GetRouteFiltersFilter { + /** + * Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + */ + operator: string; + /** + * The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + */ + property: string; + /** + * The values that you want to apply the property+operator combination to in order to filter your data search + */ + values: string[]; + } + + export interface GetRouteFiltersPagination { + /** + * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + */ + limit: number; + /** + * URL relative to the last item in the response. + */ + next: string; + /** + * The page offset for the pagination request. Index of the first element. Default is 0. + */ + offset: number; + /** + * URL relative to the first item in the response. + */ + previous: string; + /** + * Total number of elements returned. + */ + total: number; + } + + export interface GetRouteFiltersSort { + /** + * The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + */ + direction?: string; + /** + * The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + */ + property?: string; + } + + export interface GetRoutingProtocolBfd { + /** + * Bidirectional Forwarding Detection enablement + */ + enabled: boolean; + /** + * Interval range between the received BFD control packets + */ + interval?: string; + } + + export interface GetRoutingProtocolBgpIpv4 { + /** + * Customer side peering ip + */ + customerPeerIp: string; + /** + * Admin status for the BGP session + */ + enabled?: boolean; + /** + * Equinix side peering ip + */ + equinixPeerIp: string; + /** + * Inbound Multi Exit Discriminator attribute + */ + inboundMed: number; + /** + * AS path prepend count. One of: 0, 1, 3, 5 + */ + outboundAsPrependCount: string; + /** + * Outbound Multi Exit Discriminator attribute + */ + outboundMed: number; + } + + export interface GetRoutingProtocolBgpIpv6 { + /** + * Customer side peering ip + */ + customerPeerIp: string; + /** + * Admin status for the BGP session + */ + enabled?: boolean; + /** + * Equinix side peering ip + */ + equinixPeerIp: string; + /** + * Inbound Multi Exit Discriminator attribute + */ + inboundMed: number; + /** + * AS path prepend count. One of: 0, 1, 3, 5 + */ + outboundAsPrependCount: string; + /** + * Outbound Multi Exit Discriminator attribute + */ + outboundMed: number; + } + + export interface GetRoutingProtocolChange { + /** + * Routing Protocol Change URI + */ + href: string; + /** + * Type of change + */ + type: string; + /** + * Uniquely identifies a change + */ + uuid: string; + } + + export interface GetRoutingProtocolChangeLog { + /** + * Created by User Key + */ + createdBy: string; + /** + * Created by User Email Address + */ + createdByEmail: string; + /** + * Created by User Full Name + */ + createdByFullName: string; + /** + * Created by Date and Time + */ + createdDateTime: string; + /** + * Deleted by User Key + */ + deletedBy: string; + /** + * Deleted by User Email Address + */ + deletedByEmail: string; + /** + * Deleted by User Full Name + */ + deletedByFullName: string; + /** + * Deleted by Date and Time + */ + deletedDateTime: string; + /** + * Updated by User Key + */ + updatedBy: string; + /** + * Updated by User Email Address + */ + updatedByEmail: string; + /** + * Updated by User Full Name + */ + updatedByFullName: string; + /** + * Updated by Date and Time + */ + updatedDateTime: string; + } + + export interface GetRoutingProtocolDirectIpv4 { + /** + * Equinix side Interface IP address + */ + equinixIfaceIp: string; + } + + export interface GetRoutingProtocolDirectIpv6 { + /** + * Equinix side Interface IP address + */ + equinixIfaceIp?: string; + } + + export interface GetRoutingProtocolOperation { + /** + * Errors occurred + */ + errors: outputs.fabric.GetRoutingProtocolOperationError[]; + } + + export interface GetRoutingProtocolOperationError { + /** + * Pricing error additional Info + */ + additionalInfos: outputs.fabric.GetRoutingProtocolOperationErrorAdditionalInfo[]; + /** + * CorrelationId + */ + correlationId: string; + /** + * Details + */ + details: string; + /** + * Error code + */ + errorCode: string; + /** + * Error Message + */ + errorMessage: string; + /** + * Help + */ + help: string; + } + + export interface GetRoutingProtocolOperationErrorAdditionalInfo { + /** + * Property at which the error potentially occurred + */ + property: string; + /** + * Reason for the error + */ + reason: string; + } + + export interface GetServiceProfileAccessPointTypeConfig { + /** + * Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller + */ + allowBandwidthAutoApproval?: boolean; + /** + * Availability of a bandwidth upgrade. The default is false + */ + allowBandwidthUpgrade?: boolean; + /** + * Setting to enable or disable the ability of the buyer to customize the bandwidth + */ + allowCustomBandwidth?: boolean; + /** + * Setting to allow or prohibit remote connections to the service profile + */ + allowRemoteConnections?: boolean; + /** + * Api configuration details + */ + apiConfig?: outputs.fabric.GetServiceProfileAccessPointTypeConfigApiConfig; + /** + * Authentication key details + */ + authenticationKey?: outputs.fabric.GetServiceProfileAccessPointTypeConfigAuthenticationKey; + /** + * Percentage of port bandwidth at which an allocation alert is generated + */ + bandwidthAlertThreshold?: number; + /** + * Custom name for Connection + */ + connectionLabel?: string; + /** + * Mandate redundant connections + */ + connectionRedundancyRequired?: boolean; + /** + * Enable auto generate service key + */ + enableAutoGenerateServiceKey?: boolean; + /** + * Link protocol configuration details + */ + linkProtocolConfig?: outputs.fabric.GetServiceProfileAccessPointTypeConfigLinkProtocolConfig; + /** + * Supported bandwidths + */ + supportedBandwidths?: number[]; + /** + * Type of access point type config - VD, COLO + */ + type: string; + /** + * Colo/Port Uuid + */ + uuid: string; + } + + export interface GetServiceProfileAccessPointTypeConfigApiConfig { + /** + * Setting showing that oversubscription support is available (true) or not (false). The default is false + */ + allowOverSubscription?: boolean; + /** + * Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. + */ + apiAvailable?: boolean; + /** + * Indicates if the connection bandwidth can be obtained directly from the cloud service provider. + */ + bandwidthFromApi?: boolean; + /** + * Setting indicating that the port is managed by Equinix (true) or not (false) + */ + equinixManagedPort?: boolean; + /** + * Setting indicating that the VLAN is managed by Equinix (true) or not (false) + */ + equinixManagedVlan?: boolean; + /** + * A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. + */ + integrationId?: string; + /** + * Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + */ + overSubscriptionLimit?: number; + } + + export interface GetServiceProfileAccessPointTypeConfigAuthenticationKey { + /** + * Description of authorization key + */ + description?: string; + /** + * Name of the parameter that must be provided to authorize the connection. + */ + label?: string; + /** + * Requirement to configure an authentication key. + */ + required?: boolean; + } + + export interface GetServiceProfileAccessPointTypeConfigLinkProtocolConfig { + /** + * Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. + */ + encapsulation?: string; + /** + * Additional tagging information required by the seller profile. + */ + encapsulationStrategy?: string; + /** + * Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + */ + reuseVlanSTag?: boolean; + } + + export interface GetServiceProfileAccount { + /** + * Legal name of the accountholder. */ accountName: string; /** @@ -5217,6 +5713,149 @@ export namespace fabric { projectId: string; } + export interface RouteFilterChange { + /** + * The URI of the previous Route Filter Change + */ + href: string; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + */ + type: string; + /** + * Unique identifier for the previous change + */ + uuid: string; + } + + export interface RouteFilterChangeLog { + /** + * Created by User Key + */ + createdBy: string; + /** + * Created by User Email Address + */ + createdByEmail: string; + /** + * Created by User Full Name + */ + createdByFullName: string; + /** + * Created by Date and Time + */ + createdDateTime: string; + /** + * Deleted by User Key + */ + deletedBy: string; + /** + * Deleted by User Email Address + */ + deletedByEmail: string; + /** + * Deleted by User Full Name + */ + deletedByFullName: string; + /** + * Deleted by Date and Time + */ + deletedDateTime: string; + /** + * Updated by User Key + */ + updatedBy: string; + /** + * Updated by User Email Address + */ + updatedByEmail: string; + /** + * Updated by User Full Name + */ + updatedByFullName: string; + /** + * Updated by Date and Time + */ + updatedDateTime: string; + } + + export interface RouteFilterProject { + /** + * URI of the Fabric Project + */ + href: string; + /** + * Project id associated with Fabric Project + */ + projectId: string; + } + + export interface RouteFilterRuleChange { + /** + * The URI of the previous Route Filter Rule Change + */ + href: string; + /** + * Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + */ + type: string; + /** + * Unique identifier for the previous change + */ + uuid: string; + } + + export interface RouteFilterRuleChangeLog { + /** + * Created by User Key + */ + createdBy: string; + /** + * Created by User Email Address + */ + createdByEmail: string; + /** + * Created by User Full Name + */ + createdByFullName: string; + /** + * Created by Date and Time + */ + createdDateTime: string; + /** + * Deleted by User Key + */ + deletedBy: string; + /** + * Deleted by User Email Address + */ + deletedByEmail: string; + /** + * Deleted by User Full Name + */ + deletedByFullName: string; + /** + * Deleted by Date and Time + */ + deletedDateTime: string; + /** + * Updated by User Key + */ + updatedBy: string; + /** + * Updated by User Email Address + */ + updatedByEmail: string; + /** + * Updated by User Full Name + */ + updatedByFullName: string; + /** + * Updated by Date and Time + */ + updatedDateTime: string; + } + export interface RoutingProtocolBfd { /** * Bidirectional Forwarding Detection enablement diff --git a/sdk/python/pulumi_equinix/__init__.py b/sdk/python/pulumi_equinix/__init__.py index 882b076db..b235c1f0b 100644 --- a/sdk/python/pulumi_equinix/__init__.py +++ b/sdk/python/pulumi_equinix/__init__.py @@ -43,6 +43,14 @@ "equinix:fabric/connection:Connection": "Connection" } }, + { + "pkg": "equinix", + "mod": "fabric/connectionRouteFilter", + "fqn": "pulumi_equinix.fabric", + "classes": { + "equinix:fabric/connectionRouteFilter:ConnectionRouteFilter": "ConnectionRouteFilter" + } + }, { "pkg": "equinix", "mod": "fabric/network", @@ -51,6 +59,22 @@ "equinix:fabric/network:Network": "Network" } }, + { + "pkg": "equinix", + "mod": "fabric/routeFilter", + "fqn": "pulumi_equinix.fabric", + "classes": { + "equinix:fabric/routeFilter:RouteFilter": "RouteFilter" + } + }, + { + "pkg": "equinix", + "mod": "fabric/routeFilterRule", + "fqn": "pulumi_equinix.fabric", + "classes": { + "equinix:fabric/routeFilterRule:RouteFilterRule": "RouteFilterRule" + } + }, { "pkg": "equinix", "mod": "fabric/routingProtocol", diff --git a/sdk/python/pulumi_equinix/fabric/__init__.py b/sdk/python/pulumi_equinix/fabric/__init__.py index 689037e52..11d997766 100644 --- a/sdk/python/pulumi_equinix/fabric/__init__.py +++ b/sdk/python/pulumi_equinix/fabric/__init__.py @@ -8,19 +8,28 @@ from ._enums import * from .cloud_router import * from .connection import * +from .connection_route_filter import * from .get_cloud_router import * from .get_cloud_routers import * from .get_connection import * +from .get_connection_route_filter import * +from .get_connection_route_filters import * from .get_connections import * from .get_marketplace_subscription import * from .get_network import * from .get_networks import * from .get_port import * from .get_ports import * +from .get_route_filter import * +from .get_route_filter_rule import * +from .get_route_filter_rules import * +from .get_route_filters import * from .get_routing_protocol import * from .get_service_profile import * from .get_service_profiles import * from .network import * +from .route_filter import * +from .route_filter_rule import * from .routing_protocol import * from .service_profile import * from ._inputs import * diff --git a/sdk/python/pulumi_equinix/fabric/_inputs.py b/sdk/python/pulumi_equinix/fabric/_inputs.py index d4f21062b..7887c3915 100644 --- a/sdk/python/pulumi_equinix/fabric/_inputs.py +++ b/sdk/python/pulumi_equinix/fabric/_inputs.py @@ -67,6 +67,11 @@ 'NetworkNotificationArgs', 'NetworkOperationArgs', 'NetworkProjectArgs', + 'RouteFilterChangeArgs', + 'RouteFilterChangeLogArgs', + 'RouteFilterProjectArgs', + 'RouteFilterRuleChangeArgs', + 'RouteFilterRuleChangeLogArgs', 'RoutingProtocolBfdArgs', 'RoutingProtocolBgpIpv4Args', 'RoutingProtocolBgpIpv6Args', @@ -103,6 +108,9 @@ 'GetNetworksPaginationArgs', 'GetNetworksSortArgs', 'GetPortsFilterArgs', + 'GetRouteFiltersFilterArgs', + 'GetRouteFiltersPaginationArgs', + 'GetRouteFiltersSortArgs', 'GetServiceProfilesFilterArgs', 'GetServiceProfilesPaginationArgs', 'GetServiceProfilesSortArgs', @@ -4185,6 +4193,552 @@ def project_id(self, value: pulumi.Input[str]): pulumi.set(self, "project_id", value) +@pulumi.input_type +class RouteFilterChangeArgs: + def __init__(__self__, *, + href: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] href: The URI of the previous Route Filter Change + :param pulumi.Input[str] type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + :param pulumi.Input[str] uuid: Unique identifier for the previous change + """ + if href is not None: + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + The URI of the previous Route Filter Change + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def uuid(self) -> Optional[pulumi.Input[str]]: + """ + Unique identifier for the previous change + """ + return pulumi.get(self, "uuid") + + @uuid.setter + def uuid(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uuid", value) + + +@pulumi.input_type +class RouteFilterChangeLogArgs: + def __init__(__self__, *, + created_by: Optional[pulumi.Input[str]] = None, + created_by_email: Optional[pulumi.Input[str]] = None, + created_by_full_name: Optional[pulumi.Input[str]] = None, + created_date_time: Optional[pulumi.Input[str]] = None, + deleted_by: Optional[pulumi.Input[str]] = None, + deleted_by_email: Optional[pulumi.Input[str]] = None, + deleted_by_full_name: Optional[pulumi.Input[str]] = None, + deleted_date_time: Optional[pulumi.Input[str]] = None, + updated_by: Optional[pulumi.Input[str]] = None, + updated_by_email: Optional[pulumi.Input[str]] = None, + updated_by_full_name: Optional[pulumi.Input[str]] = None, + updated_date_time: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] created_by: Created by User Key + :param pulumi.Input[str] created_by_email: Created by User Email Address + :param pulumi.Input[str] created_by_full_name: Created by User Full Name + :param pulumi.Input[str] created_date_time: Created by Date and Time + :param pulumi.Input[str] deleted_by: Deleted by User Key + :param pulumi.Input[str] deleted_by_email: Deleted by User Email Address + :param pulumi.Input[str] deleted_by_full_name: Deleted by User Full Name + :param pulumi.Input[str] deleted_date_time: Deleted by Date and Time + :param pulumi.Input[str] updated_by: Updated by User Key + :param pulumi.Input[str] updated_by_email: Updated by User Email Address + :param pulumi.Input[str] updated_by_full_name: Updated by User Full Name + :param pulumi.Input[str] updated_date_time: Updated by Date and Time + """ + if created_by is not None: + pulumi.set(__self__, "created_by", created_by) + if created_by_email is not None: + pulumi.set(__self__, "created_by_email", created_by_email) + if created_by_full_name is not None: + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + if created_date_time is not None: + pulumi.set(__self__, "created_date_time", created_date_time) + if deleted_by is not None: + pulumi.set(__self__, "deleted_by", deleted_by) + if deleted_by_email is not None: + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + if deleted_by_full_name is not None: + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + if deleted_date_time is not None: + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + if updated_by is not None: + pulumi.set(__self__, "updated_by", updated_by) + if updated_by_email is not None: + pulumi.set(__self__, "updated_by_email", updated_by_email) + if updated_by_full_name is not None: + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + if updated_date_time is not None: + pulumi.set(__self__, "updated_date_time", updated_date_time) + + @property + @pulumi.getter(name="createdBy") + def created_by(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @created_by.setter + def created_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by", value) + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @created_by_email.setter + def created_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by_email", value) + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @created_by_full_name.setter + def created_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by_full_name", value) + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @created_date_time.setter + def created_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_date_time", value) + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") + + @deleted_by.setter + def deleted_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by", value) + + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") + + @deleted_by_email.setter + def deleted_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by_email", value) + + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") + + @deleted_by_full_name.setter + def deleted_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by_full_name", value) + + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") + + @deleted_date_time.setter + def deleted_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_date_time", value) + + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Key + """ + return pulumi.get(self, "updated_by") + + @updated_by.setter + def updated_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by", value) + + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Email Address + """ + return pulumi.get(self, "updated_by_email") + + @updated_by_email.setter + def updated_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by_email", value) + + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @updated_by_full_name.setter + def updated_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by_full_name", value) + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") + + @updated_date_time.setter + def updated_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_date_time", value) + + +@pulumi.input_type +class RouteFilterProjectArgs: + def __init__(__self__, *, + project_id: pulumi.Input[str], + href: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] project_id: Project id associated with Fabric Project + :param pulumi.Input[str] href: URI of the Fabric Project + """ + pulumi.set(__self__, "project_id", project_id) + if href is not None: + pulumi.set(__self__, "href", href) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Input[str]: + """ + Project id associated with Fabric Project + """ + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: pulumi.Input[str]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + URI of the Fabric Project + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + +@pulumi.input_type +class RouteFilterRuleChangeArgs: + def __init__(__self__, *, + href: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] href: The URI of the previous Route Filter Rule Change + :param pulumi.Input[str] type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + :param pulumi.Input[str] uuid: Unique identifier for the previous change + """ + if href is not None: + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + The URI of the previous Route Filter Rule Change + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def uuid(self) -> Optional[pulumi.Input[str]]: + """ + Unique identifier for the previous change + """ + return pulumi.get(self, "uuid") + + @uuid.setter + def uuid(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uuid", value) + + +@pulumi.input_type +class RouteFilterRuleChangeLogArgs: + def __init__(__self__, *, + created_by: Optional[pulumi.Input[str]] = None, + created_by_email: Optional[pulumi.Input[str]] = None, + created_by_full_name: Optional[pulumi.Input[str]] = None, + created_date_time: Optional[pulumi.Input[str]] = None, + deleted_by: Optional[pulumi.Input[str]] = None, + deleted_by_email: Optional[pulumi.Input[str]] = None, + deleted_by_full_name: Optional[pulumi.Input[str]] = None, + deleted_date_time: Optional[pulumi.Input[str]] = None, + updated_by: Optional[pulumi.Input[str]] = None, + updated_by_email: Optional[pulumi.Input[str]] = None, + updated_by_full_name: Optional[pulumi.Input[str]] = None, + updated_date_time: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] created_by: Created by User Key + :param pulumi.Input[str] created_by_email: Created by User Email Address + :param pulumi.Input[str] created_by_full_name: Created by User Full Name + :param pulumi.Input[str] created_date_time: Created by Date and Time + :param pulumi.Input[str] deleted_by: Deleted by User Key + :param pulumi.Input[str] deleted_by_email: Deleted by User Email Address + :param pulumi.Input[str] deleted_by_full_name: Deleted by User Full Name + :param pulumi.Input[str] deleted_date_time: Deleted by Date and Time + :param pulumi.Input[str] updated_by: Updated by User Key + :param pulumi.Input[str] updated_by_email: Updated by User Email Address + :param pulumi.Input[str] updated_by_full_name: Updated by User Full Name + :param pulumi.Input[str] updated_date_time: Updated by Date and Time + """ + if created_by is not None: + pulumi.set(__self__, "created_by", created_by) + if created_by_email is not None: + pulumi.set(__self__, "created_by_email", created_by_email) + if created_by_full_name is not None: + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + if created_date_time is not None: + pulumi.set(__self__, "created_date_time", created_date_time) + if deleted_by is not None: + pulumi.set(__self__, "deleted_by", deleted_by) + if deleted_by_email is not None: + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + if deleted_by_full_name is not None: + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + if deleted_date_time is not None: + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + if updated_by is not None: + pulumi.set(__self__, "updated_by", updated_by) + if updated_by_email is not None: + pulumi.set(__self__, "updated_by_email", updated_by_email) + if updated_by_full_name is not None: + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + if updated_date_time is not None: + pulumi.set(__self__, "updated_date_time", updated_date_time) + + @property + @pulumi.getter(name="createdBy") + def created_by(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @created_by.setter + def created_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by", value) + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @created_by_email.setter + def created_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by_email", value) + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @created_by_full_name.setter + def created_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_by_full_name", value) + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @created_date_time.setter + def created_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_date_time", value) + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") + + @deleted_by.setter + def deleted_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by", value) + + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") + + @deleted_by_email.setter + def deleted_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by_email", value) + + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") + + @deleted_by_full_name.setter + def deleted_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_by_full_name", value) + + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") + + @deleted_date_time.setter + def deleted_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deleted_date_time", value) + + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Key + """ + return pulumi.get(self, "updated_by") + + @updated_by.setter + def updated_by(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by", value) + + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Email Address + """ + return pulumi.get(self, "updated_by_email") + + @updated_by_email.setter + def updated_by_email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by_email", value) + + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> Optional[pulumi.Input[str]]: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @updated_by_full_name.setter + def updated_by_full_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_by_full_name", value) + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> Optional[pulumi.Input[str]]: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") + + @updated_date_time.setter + def updated_date_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "updated_date_time", value) + + @pulumi.input_type class RoutingProtocolBfdArgs: def __init__(__self__, *, @@ -6861,6 +7415,179 @@ def name(self, value: str): pulumi.set(self, "name", value) +@pulumi.input_type +class GetRouteFiltersFilterArgs: + def __init__(__self__, *, + operator: str, + property: str, + values: Sequence[str]): + """ + :param str operator: Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + :param str property: The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search + """ + pulumi.set(__self__, "operator", operator) + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def operator(self) -> str: + """ + Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + """ + return pulumi.get(self, "operator") + + @operator.setter + def operator(self, value: str): + pulumi.set(self, "operator", value) + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + """ + The values that you want to apply the property+operator combination to in order to filter your data search + """ + return pulumi.get(self, "values") + + @values.setter + def values(self, value: Sequence[str]): + pulumi.set(self, "values", value) + + @property + @pulumi.getter + def property(self) -> str: + """ + The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + """ + return pulumi.get(self, "property") + + @property.setter + def property(self, value: str): + pulumi.set(self, "property", value) + + +@pulumi.input_type +class GetRouteFiltersPaginationArgs: + def __init__(__self__, *, + limit: int, + next: str, + offset: int, + previous: str, + total: int): + """ + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param str next: URL relative to the last item in the response. + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + :param str previous: URL relative to the first item in the response. + :param int total: Total number of elements returned. + """ + pulumi.set(__self__, "limit", limit) + pulumi.set(__self__, "next", next) + pulumi.set(__self__, "offset", offset) + pulumi.set(__self__, "previous", previous) + pulumi.set(__self__, "total", total) + + @property + @pulumi.getter + def limit(self) -> int: + """ + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + """ + return pulumi.get(self, "limit") + + @limit.setter + def limit(self, value: int): + pulumi.set(self, "limit", value) + + @property + @pulumi.getter + def next(self) -> str: + """ + URL relative to the last item in the response. + """ + return pulumi.get(self, "next") + + @next.setter + def next(self, value: str): + pulumi.set(self, "next", value) + + @property + @pulumi.getter + def offset(self) -> int: + """ + The page offset for the pagination request. Index of the first element. Default is 0. + """ + return pulumi.get(self, "offset") + + @offset.setter + def offset(self, value: int): + pulumi.set(self, "offset", value) + + @property + @pulumi.getter + def previous(self) -> str: + """ + URL relative to the first item in the response. + """ + return pulumi.get(self, "previous") + + @previous.setter + def previous(self, value: str): + pulumi.set(self, "previous", value) + + @property + @pulumi.getter + def total(self) -> int: + """ + Total number of elements returned. + """ + return pulumi.get(self, "total") + + @total.setter + def total(self, value: int): + pulumi.set(self, "total", value) + + +@pulumi.input_type +class GetRouteFiltersSortArgs: + def __init__(__self__, *, + direction: Optional[str] = None, + property: Optional[str] = None): + """ + :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + :param str property: The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + """ + if direction is not None: + pulumi.set(__self__, "direction", direction) + if property is not None: + pulumi.set(__self__, "property", property) + + @property + @pulumi.getter + def direction(self) -> Optional[str]: + """ + The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + """ + return pulumi.get(self, "direction") + + @direction.setter + def direction(self, value: Optional[str]): + pulumi.set(self, "direction", value) + + @property + @pulumi.getter + def property(self) -> Optional[str]: + """ + The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + """ + return pulumi.get(self, "property") + + @property.setter + def property(self, value: Optional[str]): + pulumi.set(self, "property", value) + + @pulumi.input_type class GetServiceProfilesFilterArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_equinix/fabric/connection_route_filter.py b/sdk/python/pulumi_equinix/fabric/connection_route_filter.py new file mode 100644 index 000000000..0a09e210f --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/connection_route_filter.py @@ -0,0 +1,396 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['ConnectionRouteFilterArgs', 'ConnectionRouteFilter'] + +@pulumi.input_type +class ConnectionRouteFilterArgs: + def __init__(__self__, *, + connection_id: pulumi.Input[str], + direction: pulumi.Input[str], + route_filter_id: pulumi.Input[str]): + """ + The set of arguments for constructing a ConnectionRouteFilter resource. + :param pulumi.Input[str] connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param pulumi.Input[str] direction: Direction of the filtering of the attached Route Filter Policy + :param pulumi.Input[str] route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + pulumi.set(__self__, "connection_id", connection_id) + pulumi.set(__self__, "direction", direction) + pulumi.set(__self__, "route_filter_id", route_filter_id) + + @property + @pulumi.getter(name="connectionId") + def connection_id(self) -> pulumi.Input[str]: + """ + Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + return pulumi.get(self, "connection_id") + + @connection_id.setter + def connection_id(self, value: pulumi.Input[str]): + pulumi.set(self, "connection_id", value) + + @property + @pulumi.getter + def direction(self) -> pulumi.Input[str]: + """ + Direction of the filtering of the attached Route Filter Policy + """ + return pulumi.get(self, "direction") + + @direction.setter + def direction(self, value: pulumi.Input[str]): + pulumi.set(self, "direction", value) + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> pulumi.Input[str]: + """ + Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + return pulumi.get(self, "route_filter_id") + + @route_filter_id.setter + def route_filter_id(self, value: pulumi.Input[str]): + pulumi.set(self, "route_filter_id", value) + + +@pulumi.input_type +class _ConnectionRouteFilterState: + def __init__(__self__, *, + attachment_status: Optional[pulumi.Input[str]] = None, + connection_id: Optional[pulumi.Input[str]] = None, + direction: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering ConnectionRouteFilter resources. + :param pulumi.Input[str] attachment_status: Status of the Route Filter Policy attachment lifecycle + :param pulumi.Input[str] connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param pulumi.Input[str] direction: Direction of the filtering of the attached Route Filter Policy + :param pulumi.Input[str] href: URI to the attached Route Filter Policy on the Connection + :param pulumi.Input[str] route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter Policy + """ + if attachment_status is not None: + pulumi.set(__self__, "attachment_status", attachment_status) + if connection_id is not None: + pulumi.set(__self__, "connection_id", connection_id) + if direction is not None: + pulumi.set(__self__, "direction", direction) + if href is not None: + pulumi.set(__self__, "href", href) + if route_filter_id is not None: + pulumi.set(__self__, "route_filter_id", route_filter_id) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter(name="attachmentStatus") + def attachment_status(self) -> Optional[pulumi.Input[str]]: + """ + Status of the Route Filter Policy attachment lifecycle + """ + return pulumi.get(self, "attachment_status") + + @attachment_status.setter + def attachment_status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "attachment_status", value) + + @property + @pulumi.getter(name="connectionId") + def connection_id(self) -> Optional[pulumi.Input[str]]: + """ + Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + return pulumi.get(self, "connection_id") + + @connection_id.setter + def connection_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "connection_id", value) + + @property + @pulumi.getter + def direction(self) -> Optional[pulumi.Input[str]]: + """ + Direction of the filtering of the attached Route Filter Policy + """ + return pulumi.get(self, "direction") + + @direction.setter + def direction(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "direction", value) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + URI to the attached Route Filter Policy on the Connection + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> Optional[pulumi.Input[str]]: + """ + Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + return pulumi.get(self, "route_filter_id") + + @route_filter_id.setter + def route_filter_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "route_filter_id", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def uuid(self) -> Optional[pulumi.Input[str]]: + """ + Equinix Assigned ID for Route Filter Policy + """ + return pulumi.get(self, "uuid") + + @uuid.setter + def uuid(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uuid", value) + + +class ConnectionRouteFilter(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + connection_id: Optional[pulumi.Input[str]] = None, + direction: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + policy_attachment = equinix.fabric.ConnectionRouteFilter("policyAttachment", + connection_id="", + route_filter_id="", + direction="INBOUND") + pulumi.export("connectionRouteFilterId", policy_attachment.id) + pulumi.export("connectionRouteFilterConnectionId", policy_attachment.connection_id) + pulumi.export("connectionRouteFilterDirection", policy_attachment.direction) + pulumi.export("connectionRouteFilterType", policy_attachment.type) + pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment.attachment_status) + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param pulumi.Input[str] direction: Direction of the filtering of the attached Route Filter Policy + :param pulumi.Input[str] route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ConnectionRouteFilterArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Fabric V4 API compatible resource allows attachment of Route Filter Polices to Fabric Connections + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + policy_attachment = equinix.fabric.ConnectionRouteFilter("policyAttachment", + connection_id="", + route_filter_id="", + direction="INBOUND") + pulumi.export("connectionRouteFilterId", policy_attachment.id) + pulumi.export("connectionRouteFilterConnectionId", policy_attachment.connection_id) + pulumi.export("connectionRouteFilterDirection", policy_attachment.direction) + pulumi.export("connectionRouteFilterType", policy_attachment.type) + pulumi.export("connectionRouteFilterAttachmentStatus", policy_attachment.attachment_status) + ``` + + :param str resource_name: The name of the resource. + :param ConnectionRouteFilterArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(ConnectionRouteFilterArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + connection_id: Optional[pulumi.Input[str]] = None, + direction: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = ConnectionRouteFilterArgs.__new__(ConnectionRouteFilterArgs) + + if connection_id is None and not opts.urn: + raise TypeError("Missing required property 'connection_id'") + __props__.__dict__["connection_id"] = connection_id + if direction is None and not opts.urn: + raise TypeError("Missing required property 'direction'") + __props__.__dict__["direction"] = direction + if route_filter_id is None and not opts.urn: + raise TypeError("Missing required property 'route_filter_id'") + __props__.__dict__["route_filter_id"] = route_filter_id + __props__.__dict__["attachment_status"] = None + __props__.__dict__["href"] = None + __props__.__dict__["type"] = None + __props__.__dict__["uuid"] = None + super(ConnectionRouteFilter, __self__).__init__( + 'equinix:fabric/connectionRouteFilter:ConnectionRouteFilter', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + attachment_status: Optional[pulumi.Input[str]] = None, + connection_id: Optional[pulumi.Input[str]] = None, + direction: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None) -> 'ConnectionRouteFilter': + """ + Get an existing ConnectionRouteFilter resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] attachment_status: Status of the Route Filter Policy attachment lifecycle + :param pulumi.Input[str] connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param pulumi.Input[str] direction: Direction of the filtering of the attached Route Filter Policy + :param pulumi.Input[str] href: URI to the attached Route Filter Policy on the Connection + :param pulumi.Input[str] route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter Policy + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _ConnectionRouteFilterState.__new__(_ConnectionRouteFilterState) + + __props__.__dict__["attachment_status"] = attachment_status + __props__.__dict__["connection_id"] = connection_id + __props__.__dict__["direction"] = direction + __props__.__dict__["href"] = href + __props__.__dict__["route_filter_id"] = route_filter_id + __props__.__dict__["type"] = type + __props__.__dict__["uuid"] = uuid + return ConnectionRouteFilter(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="attachmentStatus") + def attachment_status(self) -> pulumi.Output[str]: + """ + Status of the Route Filter Policy attachment lifecycle + """ + return pulumi.get(self, "attachment_status") + + @property + @pulumi.getter(name="connectionId") + def connection_id(self) -> pulumi.Output[str]: + """ + Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + return pulumi.get(self, "connection_id") + + @property + @pulumi.getter + def direction(self) -> pulumi.Output[str]: + """ + Direction of the filtering of the attached Route Filter Policy + """ + return pulumi.get(self, "direction") + + @property + @pulumi.getter + def href(self) -> pulumi.Output[str]: + """ + URI to the attached Route Filter Policy on the Connection + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> pulumi.Output[str]: + """ + Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + return pulumi.get(self, "route_filter_id") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> pulumi.Output[str]: + """ + Equinix Assigned ID for Route Filter Policy + """ + return pulumi.get(self, "uuid") + diff --git a/sdk/python/pulumi_equinix/fabric/get_connection_route_filter.py b/sdk/python/pulumi_equinix/fabric/get_connection_route_filter.py new file mode 100644 index 000000000..d6a40dab9 --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/get_connection_route_filter.py @@ -0,0 +1,207 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetConnectionRouteFilterResult', + 'AwaitableGetConnectionRouteFilterResult', + 'get_connection_route_filter', + 'get_connection_route_filter_output', +] + +@pulumi.output_type +class GetConnectionRouteFilterResult: + """ + A collection of values returned by getConnectionRouteFilter. + """ + def __init__(__self__, attachment_status=None, connection_id=None, direction=None, href=None, id=None, route_filter_id=None, type=None, uuid=None): + if attachment_status and not isinstance(attachment_status, str): + raise TypeError("Expected argument 'attachment_status' to be a str") + pulumi.set(__self__, "attachment_status", attachment_status) + if connection_id and not isinstance(connection_id, str): + raise TypeError("Expected argument 'connection_id' to be a str") + pulumi.set(__self__, "connection_id", connection_id) + if direction and not isinstance(direction, str): + raise TypeError("Expected argument 'direction' to be a str") + pulumi.set(__self__, "direction", direction) + if href and not isinstance(href, str): + raise TypeError("Expected argument 'href' to be a str") + pulumi.set(__self__, "href", href) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if route_filter_id and not isinstance(route_filter_id, str): + raise TypeError("Expected argument 'route_filter_id' to be a str") + pulumi.set(__self__, "route_filter_id", route_filter_id) + if type and not isinstance(type, str): + raise TypeError("Expected argument 'type' to be a str") + pulumi.set(__self__, "type", type) + if uuid and not isinstance(uuid, str): + raise TypeError("Expected argument 'uuid' to be a str") + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter(name="attachmentStatus") + def attachment_status(self) -> str: + """ + Status of the Route Filter Policy attachment lifecycle + """ + return pulumi.get(self, "attachment_status") + + @property + @pulumi.getter(name="connectionId") + def connection_id(self) -> str: + """ + Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + return pulumi.get(self, "connection_id") + + @property + @pulumi.getter + def direction(self) -> str: + """ + Direction of the filtering of the attached Route Filter Policy + """ + return pulumi.get(self, "direction") + + @property + @pulumi.getter + def href(self) -> str: + """ + URI to the attached Route Filter Policy on the Connection + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> str: + """ + Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + return pulumi.get(self, "route_filter_id") + + @property + @pulumi.getter + def type(self) -> str: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Equinix Assigned ID for Route Filter Policy + """ + return pulumi.get(self, "uuid") + + +class AwaitableGetConnectionRouteFilterResult(GetConnectionRouteFilterResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetConnectionRouteFilterResult( + attachment_status=self.attachment_status, + connection_id=self.connection_id, + direction=self.direction, + href=self.href, + id=self.id, + route_filter_id=self.route_filter_id, + type=self.type, + uuid=self.uuid) + + +def get_connection_route_filter(connection_id: Optional[str] = None, + route_filter_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetConnectionRouteFilterResult: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + attached_policy = equinix.fabric.get_connection_route_filter(connection_id="", + route_filter_id="") + pulumi.export("connectionRouteFilterId", attached_policy.id) + pulumi.export("connectionRouteFilterConnectionId", attached_policy.connection_id) + pulumi.export("connectionRouteFilterDirection", attached_policy.direction) + pulumi.export("connectionRouteFilterType", attached_policy.type) + pulumi.export("connectionRouteFilterAttachmentStatus", attached_policy.attachment_status) + ``` + + + :param str connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param str route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + __args__ = dict() + __args__['connectionId'] = connection_id + __args__['routeFilterId'] = route_filter_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('equinix:fabric/getConnectionRouteFilter:getConnectionRouteFilter', __args__, opts=opts, typ=GetConnectionRouteFilterResult).value + + return AwaitableGetConnectionRouteFilterResult( + attachment_status=pulumi.get(__ret__, 'attachment_status'), + connection_id=pulumi.get(__ret__, 'connection_id'), + direction=pulumi.get(__ret__, 'direction'), + href=pulumi.get(__ret__, 'href'), + id=pulumi.get(__ret__, 'id'), + route_filter_id=pulumi.get(__ret__, 'route_filter_id'), + type=pulumi.get(__ret__, 'type'), + uuid=pulumi.get(__ret__, 'uuid')) + + +@_utilities.lift_output_func(get_connection_route_filter) +def get_connection_route_filter_output(connection_id: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetConnectionRouteFilterResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter policy attachment to a fabric connection + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + attached_policy = equinix.fabric.get_connection_route_filter(connection_id="", + route_filter_id="") + pulumi.export("connectionRouteFilterId", attached_policy.id) + pulumi.export("connectionRouteFilterConnectionId", attached_policy.connection_id) + pulumi.export("connectionRouteFilterDirection", attached_policy.direction) + pulumi.export("connectionRouteFilterType", attached_policy.type) + pulumi.export("connectionRouteFilterAttachmentStatus", attached_policy.attachment_status) + ``` + + + :param str connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + :param str route_filter_id: Equinix Assigned UUID of the Route Filter Policy to attach to the Equinix Connection + """ + ... diff --git a/sdk/python/pulumi_equinix/fabric/get_connection_route_filters.py b/sdk/python/pulumi_equinix/fabric/get_connection_route_filters.py new file mode 100644 index 000000000..b2d0479f4 --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/get_connection_route_filters.py @@ -0,0 +1,121 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetConnectionRouteFiltersResult', + 'AwaitableGetConnectionRouteFiltersResult', + 'get_connection_route_filters', + 'get_connection_route_filters_output', +] + +@pulumi.output_type +class GetConnectionRouteFiltersResult: + """ + A collection of values returned by getConnectionRouteFilters. + """ + def __init__(__self__, connection_id=None, datas=None, id=None, paginations=None): + if connection_id and not isinstance(connection_id, str): + raise TypeError("Expected argument 'connection_id' to be a str") + pulumi.set(__self__, "connection_id", connection_id) + if datas and not isinstance(datas, list): + raise TypeError("Expected argument 'datas' to be a list") + pulumi.set(__self__, "datas", datas) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if paginations and not isinstance(paginations, list): + raise TypeError("Expected argument 'paginations' to be a list") + pulumi.set(__self__, "paginations", paginations) + + @property + @pulumi.getter(name="connectionId") + def connection_id(self) -> str: + """ + Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + return pulumi.get(self, "connection_id") + + @property + @pulumi.getter + def datas(self) -> Sequence['outputs.GetConnectionRouteFiltersDataResult']: + """ + The list of Rules attached to the given Route Filter Policy UUID + """ + return pulumi.get(self, "datas") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def paginations(self) -> Sequence['outputs.GetConnectionRouteFiltersPaginationResult']: + """ + Pagination details for the Data Source Search Request + """ + return pulumi.get(self, "paginations") + + +class AwaitableGetConnectionRouteFiltersResult(GetConnectionRouteFiltersResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetConnectionRouteFiltersResult( + connection_id=self.connection_id, + datas=self.datas, + id=self.id, + paginations=self.paginations) + + +def get_connection_route_filters(connection_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetConnectionRouteFiltersResult: + """ + Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + + :param str connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + __args__ = dict() + __args__['connectionId'] = connection_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('equinix:fabric/getConnectionRouteFilters:getConnectionRouteFilters', __args__, opts=opts, typ=GetConnectionRouteFiltersResult).value + + return AwaitableGetConnectionRouteFiltersResult( + connection_id=pulumi.get(__ret__, 'connection_id'), + datas=pulumi.get(__ret__, 'datas'), + id=pulumi.get(__ret__, 'id'), + paginations=pulumi.get(__ret__, 'paginations')) + + +@_utilities.lift_output_func(get_connection_route_filters) +def get_connection_route_filters_output(connection_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetConnectionRouteFiltersResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch all route filter policies attached to a fabric connection + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + + :param str connection_id: Equinix Assigned UUID of the Equinix Connection to attach the Route Filter Policy to + """ + ... diff --git a/sdk/python/pulumi_equinix/fabric/get_route_filter.py b/sdk/python/pulumi_equinix/fabric/get_route_filter.py new file mode 100644 index 000000000..d1b5a6022 --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/get_route_filter.py @@ -0,0 +1,265 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetRouteFilterResult', + 'AwaitableGetRouteFilterResult', + 'get_route_filter', + 'get_route_filter_output', +] + +@pulumi.output_type +class GetRouteFilterResult: + """ + A collection of values returned by getRouteFilter. + """ + def __init__(__self__, change_logs=None, changes=None, connections_count=None, description=None, href=None, id=None, name=None, not_matched_rule_action=None, projects=None, rules_count=None, state=None, type=None, uuid=None): + if change_logs and not isinstance(change_logs, list): + raise TypeError("Expected argument 'change_logs' to be a list") + pulumi.set(__self__, "change_logs", change_logs) + if changes and not isinstance(changes, list): + raise TypeError("Expected argument 'changes' to be a list") + pulumi.set(__self__, "changes", changes) + if connections_count and not isinstance(connections_count, int): + raise TypeError("Expected argument 'connections_count' to be a int") + pulumi.set(__self__, "connections_count", connections_count) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if href and not isinstance(href, str): + raise TypeError("Expected argument 'href' to be a str") + pulumi.set(__self__, "href", href) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if not_matched_rule_action and not isinstance(not_matched_rule_action, str): + raise TypeError("Expected argument 'not_matched_rule_action' to be a str") + pulumi.set(__self__, "not_matched_rule_action", not_matched_rule_action) + if projects and not isinstance(projects, list): + raise TypeError("Expected argument 'projects' to be a list") + pulumi.set(__self__, "projects", projects) + if rules_count and not isinstance(rules_count, int): + raise TypeError("Expected argument 'rules_count' to be a int") + pulumi.set(__self__, "rules_count", rules_count) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if type and not isinstance(type, str): + raise TypeError("Expected argument 'type' to be a str") + pulumi.set(__self__, "type", type) + if uuid and not isinstance(uuid, str): + raise TypeError("Expected argument 'uuid' to be a str") + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetRouteFilterChangeLogResult']: + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> Sequence['outputs.GetRouteFilterChangeResult']: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> int: + """ + The number of Fabric Connections that this Route Filter is attached to + """ + return pulumi.get(self, "connections_count") + + @property + @pulumi.getter + def description(self) -> str: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def href(self) -> str: + """ + Route filter URI + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="notMatchedRuleAction") + def not_matched_rule_action(self) -> str: + """ + The action that will be taken on ip ranges that don't match the rules present within the Route Filter + """ + return pulumi.get(self, "not_matched_rule_action") + + @property + @pulumi.getter + def projects(self) -> Sequence['outputs.GetRouteFilterProjectResult']: + """ + The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + """ + return pulumi.get(self, "projects") + + @property + @pulumi.getter(name="rulesCount") + def rules_count(self) -> int: + """ + The number of Route Filter Rules attached to this Route Filter + """ + return pulumi.get(self, "rules_count") + + @property + @pulumi.getter + def state(self) -> str: + """ + State of the Route Filter in its lifecycle + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> str: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Equinix Assigned ID for Route Filter + """ + return pulumi.get(self, "uuid") + + +class AwaitableGetRouteFilterResult(GetRouteFilterResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRouteFilterResult( + change_logs=self.change_logs, + changes=self.changes, + connections_count=self.connections_count, + description=self.description, + href=self.href, + id=self.id, + name=self.name, + not_matched_rule_action=self.not_matched_rule_action, + projects=self.projects, + rules_count=self.rules_count, + state=self.state, + type=self.type, + uuid=self.uuid) + + +def get_route_filter(uuid: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRouteFilterResult: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_policy = equinix.fabric.get_route_filter(uuid=" pulumi.Output[GetRouteFilterResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_policy = equinix.fabric.get_route_filter(uuid=" str: + """ + Action that will be taken on IP Addresses matching the rule + """ + return pulumi.get(self, "action") + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetRouteFilterRuleChangeLogResult']: + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> Sequence['outputs.GetRouteFilterRuleChangeResult']: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter + def description(self) -> str: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def href(self) -> str: + """ + Route filter rules URI + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def prefix(self) -> str: + """ + IP Address Prefix to Filter on + """ + return pulumi.get(self, "prefix") + + @property + @pulumi.getter(name="prefixMatch") + def prefix_match(self) -> str: + """ + Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + """ + return pulumi.get(self, "prefix_match") + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> str: + """ + UUID of the Route Filter Policy the rule is attached to + """ + return pulumi.get(self, "route_filter_id") + + @property + @pulumi.getter + def state(self) -> str: + """ + State of the Route Filter Rule in its lifecycle + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> str: + """ + Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Equinix Assigned ID for Route Filter Rule to retrieve data for + """ + return pulumi.get(self, "uuid") + + +class AwaitableGetRouteFilterRuleResult(GetRouteFilterRuleResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRouteFilterRuleResult( + action=self.action, + change_logs=self.change_logs, + changes=self.changes, + description=self.description, + href=self.href, + id=self.id, + name=self.name, + prefix=self.prefix, + prefix_match=self.prefix_match, + route_filter_id=self.route_filter_id, + state=self.state, + type=self.type, + uuid=self.uuid) + + +def get_route_filter_rule(route_filter_id: Optional[str] = None, + uuid: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRouteFilterRuleResult: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rule = equinix.fabric.get_route_filter_rule(route_filter_id="", + uuid="") + pulumi.export("routeFilterRuleName", rf_rule.name) + pulumi.export("routeFilterRuleDescription", rf_rule.description) + pulumi.export("routeFilterRulePrefix", rf_rule.prefix) + pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) + ``` + + + :param str route_filter_id: UUID of the Route Filter Policy the rule is attached to + :param str uuid: Equinix Assigned ID for Route Filter Rule to retrieve data for + """ + __args__ = dict() + __args__['routeFilterId'] = route_filter_id + __args__['uuid'] = uuid + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('equinix:fabric/getRouteFilterRule:getRouteFilterRule', __args__, opts=opts, typ=GetRouteFilterRuleResult).value + + return AwaitableGetRouteFilterRuleResult( + action=pulumi.get(__ret__, 'action'), + change_logs=pulumi.get(__ret__, 'change_logs'), + changes=pulumi.get(__ret__, 'changes'), + description=pulumi.get(__ret__, 'description'), + href=pulumi.get(__ret__, 'href'), + id=pulumi.get(__ret__, 'id'), + name=pulumi.get(__ret__, 'name'), + prefix=pulumi.get(__ret__, 'prefix'), + prefix_match=pulumi.get(__ret__, 'prefix_match'), + route_filter_id=pulumi.get(__ret__, 'route_filter_id'), + state=pulumi.get(__ret__, 'state'), + type=pulumi.get(__ret__, 'type'), + uuid=pulumi.get(__ret__, 'uuid')) + + +@_utilities.lift_output_func(get_route_filter_rule) +def get_route_filter_rule_output(route_filter_id: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRouteFilterRuleResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given UUID + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rule = equinix.fabric.get_route_filter_rule(route_filter_id="", + uuid="") + pulumi.export("routeFilterRuleName", rf_rule.name) + pulumi.export("routeFilterRuleDescription", rf_rule.description) + pulumi.export("routeFilterRulePrefix", rf_rule.prefix) + pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) + ``` + + + :param str route_filter_id: UUID of the Route Filter Policy the rule is attached to + :param str uuid: Equinix Assigned ID for Route Filter Rule to retrieve data for + """ + ... diff --git a/sdk/python/pulumi_equinix/fabric/get_route_filter_rules.py b/sdk/python/pulumi_equinix/fabric/get_route_filter_rules.py new file mode 100644 index 000000000..4bcb2c395 --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/get_route_filter_rules.py @@ -0,0 +1,187 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetRouteFilterRulesResult', + 'AwaitableGetRouteFilterRulesResult', + 'get_route_filter_rules', + 'get_route_filter_rules_output', +] + +@pulumi.output_type +class GetRouteFilterRulesResult: + """ + A collection of values returned by getRouteFilterRules. + """ + def __init__(__self__, datas=None, id=None, limit=None, offset=None, paginations=None, route_filter_id=None): + if datas and not isinstance(datas, list): + raise TypeError("Expected argument 'datas' to be a list") + pulumi.set(__self__, "datas", datas) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if limit and not isinstance(limit, int): + raise TypeError("Expected argument 'limit' to be a int") + pulumi.set(__self__, "limit", limit) + if offset and not isinstance(offset, int): + raise TypeError("Expected argument 'offset' to be a int") + pulumi.set(__self__, "offset", offset) + if paginations and not isinstance(paginations, list): + raise TypeError("Expected argument 'paginations' to be a list") + pulumi.set(__self__, "paginations", paginations) + if route_filter_id and not isinstance(route_filter_id, str): + raise TypeError("Expected argument 'route_filter_id' to be a str") + pulumi.set(__self__, "route_filter_id", route_filter_id) + + @property + @pulumi.getter + def datas(self) -> Sequence['outputs.GetRouteFilterRulesDataResult']: + """ + The list of Rules attached to the given Route Filter Policy UUID + """ + return pulumi.get(self, "datas") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def limit(self) -> Optional[int]: + """ + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + """ + return pulumi.get(self, "limit") + + @property + @pulumi.getter + def offset(self) -> Optional[int]: + """ + The page offset for the pagination request. Index of the first element. Default is 0. + """ + return pulumi.get(self, "offset") + + @property + @pulumi.getter + def paginations(self) -> Sequence['outputs.GetRouteFilterRulesPaginationResult']: + """ + Pagination details for the Data Source Search Request + """ + return pulumi.get(self, "paginations") + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> str: + """ + UUID of the Route Filter Policy the rule is attached to + """ + return pulumi.get(self, "route_filter_id") + + +class AwaitableGetRouteFilterRulesResult(GetRouteFilterRulesResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRouteFilterRulesResult( + datas=self.datas, + id=self.id, + limit=self.limit, + offset=self.offset, + paginations=self.paginations, + route_filter_id=self.route_filter_id) + + +def get_route_filter_rules(limit: Optional[int] = None, + offset: Optional[int] = None, + route_filter_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRouteFilterRulesResult: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rules = equinix.fabric.get_route_filter_rules(route_filter_id=" pulumi.Output[GetRouteFilterRulesResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rules = equinix.fabric.get_route_filter_rules(route_filter_id=" Sequence['outputs.GetRouteFiltersDataResult']: + """ + List of Route Filters + """ + return pulumi.get(self, "datas") + + @property + @pulumi.getter + def filters(self) -> Sequence['outputs.GetRouteFiltersFilterResult']: + """ + Filters for the Data Source Search Request. Maximum of 8 total filters. + """ + return pulumi.get(self, "filters") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def pagination(self) -> Optional['outputs.GetRouteFiltersPaginationResult']: + """ + Pagination details for the Data Source Search Request + """ + return pulumi.get(self, "pagination") + + @property + @pulumi.getter + def sorts(self) -> Optional[Sequence['outputs.GetRouteFiltersSortResult']]: + """ + Filters for the Data Source Search Request + """ + return pulumi.get(self, "sorts") + + +class AwaitableGetRouteFiltersResult(GetRouteFiltersResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRouteFiltersResult( + datas=self.datas, + filters=self.filters, + id=self.id, + pagination=self.pagination, + sorts=self.sorts) + + +def get_route_filters(filters: Optional[Sequence[Union['GetRouteFiltersFilterArgs', 'GetRouteFiltersFilterArgsDict']]] = None, + pagination: Optional[Union['GetRouteFiltersPaginationArgs', 'GetRouteFiltersPaginationArgsDict']] = None, + sorts: Optional[Sequence[Union['GetRouteFiltersSortArgs', 'GetRouteFiltersSortArgsDict']]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRouteFiltersResult: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_policies = equinix.fabric.get_route_filters(filters=[ + { + "property": "/type", + "operator": "=", + "values": ["BGP_IPv4_PREFIX_FILTER"], + }, + { + "property": "/state", + "operator": "=", + "values": ["PROVISIONED"], + }, + { + "property": "/project/projectId", + "operator": "=", + "values": [""], + }, + ], + pagination={ + "offset": 0, + "limit": 5, + "total": 25, + }, + sorts=[{ + "direction": "ASC", + "property": "/name", + }]) + pulumi.export("firstRfUuid", rf_policies.datas[0].uuid) + pulumi.export("type", rf_policies.datas[0].type) + pulumi.export("state", rf_policies.datas[0].state) + pulumi.export("notMatchedRuleAction", rf_policies.datas[0].not_matched_rule_action) + pulumi.export("connectionsCount", rf_policies.datas[0].connections_count) + pulumi.export("rulesCount", rf_policies.datas[0].rules_count) + ``` + + + :param Sequence[Union['GetRouteFiltersFilterArgs', 'GetRouteFiltersFilterArgsDict']] filters: Filters for the Data Source Search Request. Maximum of 8 total filters. + :param Union['GetRouteFiltersPaginationArgs', 'GetRouteFiltersPaginationArgsDict'] pagination: Pagination details for the Data Source Search Request + :param Sequence[Union['GetRouteFiltersSortArgs', 'GetRouteFiltersSortArgsDict']] sorts: Filters for the Data Source Search Request + """ + __args__ = dict() + __args__['filters'] = filters + __args__['pagination'] = pagination + __args__['sorts'] = sorts + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('equinix:fabric/getRouteFilters:getRouteFilters', __args__, opts=opts, typ=GetRouteFiltersResult).value + + return AwaitableGetRouteFiltersResult( + datas=pulumi.get(__ret__, 'datas'), + filters=pulumi.get(__ret__, 'filters'), + id=pulumi.get(__ret__, 'id'), + pagination=pulumi.get(__ret__, 'pagination'), + sorts=pulumi.get(__ret__, 'sorts')) + + +@_utilities.lift_output_func(get_route_filters) +def get_route_filters_output(filters: Optional[pulumi.Input[Sequence[Union['GetRouteFiltersFilterArgs', 'GetRouteFiltersFilterArgsDict']]]] = None, + pagination: Optional[pulumi.Input[Optional[Union['GetRouteFiltersPaginationArgs', 'GetRouteFiltersPaginationArgsDict']]]] = None, + sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetRouteFiltersSortArgs', 'GetRouteFiltersSortArgsDict']]]]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRouteFiltersResult]: + """ + Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_policies = equinix.fabric.get_route_filters(filters=[ + { + "property": "/type", + "operator": "=", + "values": ["BGP_IPv4_PREFIX_FILTER"], + }, + { + "property": "/state", + "operator": "=", + "values": ["PROVISIONED"], + }, + { + "property": "/project/projectId", + "operator": "=", + "values": [""], + }, + ], + pagination={ + "offset": 0, + "limit": 5, + "total": 25, + }, + sorts=[{ + "direction": "ASC", + "property": "/name", + }]) + pulumi.export("firstRfUuid", rf_policies.datas[0].uuid) + pulumi.export("type", rf_policies.datas[0].type) + pulumi.export("state", rf_policies.datas[0].state) + pulumi.export("notMatchedRuleAction", rf_policies.datas[0].not_matched_rule_action) + pulumi.export("connectionsCount", rf_policies.datas[0].connections_count) + pulumi.export("rulesCount", rf_policies.datas[0].rules_count) + ``` + + + :param Sequence[Union['GetRouteFiltersFilterArgs', 'GetRouteFiltersFilterArgsDict']] filters: Filters for the Data Source Search Request. Maximum of 8 total filters. + :param Union['GetRouteFiltersPaginationArgs', 'GetRouteFiltersPaginationArgsDict'] pagination: Pagination details for the Data Source Search Request + :param Sequence[Union['GetRouteFiltersSortArgs', 'GetRouteFiltersSortArgsDict']] sorts: Filters for the Data Source Search Request + """ + ... diff --git a/sdk/python/pulumi_equinix/fabric/outputs.py b/sdk/python/pulumi_equinix/fabric/outputs.py index e0823856c..38333119b 100644 --- a/sdk/python/pulumi_equinix/fabric/outputs.py +++ b/sdk/python/pulumi_equinix/fabric/outputs.py @@ -68,6 +68,11 @@ 'NetworkNotification', 'NetworkOperation', 'NetworkProject', + 'RouteFilterChange', + 'RouteFilterChangeLog', + 'RouteFilterProject', + 'RouteFilterRuleChange', + 'RouteFilterRuleChangeLog', 'RoutingProtocolBfd', 'RoutingProtocolBgpIpv4', 'RoutingProtocolBgpIpv6', @@ -139,6 +144,8 @@ 'GetConnectionOrderResult', 'GetConnectionProjectResult', 'GetConnectionRedundancyResult', + 'GetConnectionRouteFiltersDataResult', + 'GetConnectionRouteFiltersPaginationResult', 'GetConnectionZSideResult', 'GetConnectionZSideAccessPointResult', 'GetConnectionZSideAccessPointAccountResult', @@ -238,6 +245,22 @@ 'GetPortsDatumOperationResult', 'GetPortsDatumRedundancyResult', 'GetPortsFilterResult', + 'GetRouteFilterChangeResult', + 'GetRouteFilterChangeLogResult', + 'GetRouteFilterProjectResult', + 'GetRouteFilterRuleChangeResult', + 'GetRouteFilterRuleChangeLogResult', + 'GetRouteFilterRulesDataResult', + 'GetRouteFilterRulesDataChangeResult', + 'GetRouteFilterRulesDataChangeLogResult', + 'GetRouteFilterRulesPaginationResult', + 'GetRouteFiltersDataResult', + 'GetRouteFiltersDataChangeResult', + 'GetRouteFiltersDataChangeLogResult', + 'GetRouteFiltersDataProjectResult', + 'GetRouteFiltersFilterResult', + 'GetRouteFiltersPaginationResult', + 'GetRouteFiltersSortResult', 'GetRoutingProtocolBfdResult', 'GetRoutingProtocolBgpIpv4Result', 'GetRoutingProtocolBgpIpv6Result', @@ -4116,251 +4139,15 @@ def project_id(self) -> str: @pulumi.output_type -class RoutingProtocolBfd(dict): - def __init__(__self__, *, - enabled: bool, - interval: Optional[str] = None): - """ - :param bool enabled: Bidirectional Forwarding Detection enablement - :param str interval: Interval range between the received BFD control packets - """ - pulumi.set(__self__, "enabled", enabled) - if interval is not None: - pulumi.set(__self__, "interval", interval) - - @property - @pulumi.getter - def enabled(self) -> bool: - """ - Bidirectional Forwarding Detection enablement - """ - return pulumi.get(self, "enabled") - - @property - @pulumi.getter - def interval(self) -> Optional[str]: - """ - Interval range between the received BFD control packets - """ - return pulumi.get(self, "interval") - - -@pulumi.output_type -class RoutingProtocolBgpIpv4(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "customerPeerIp": - suggest = "customer_peer_ip" - elif key == "equinixPeerIp": - suggest = "equinix_peer_ip" - elif key == "inboundMed": - suggest = "inbound_med" - elif key == "outboundAsPrependCount": - suggest = "outbound_as_prepend_count" - elif key == "outboundMed": - suggest = "outbound_med" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolBgpIpv4. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - RoutingProtocolBgpIpv4.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - RoutingProtocolBgpIpv4.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - customer_peer_ip: str, - enabled: Optional[bool] = None, - equinix_peer_ip: Optional[str] = None, - inbound_med: Optional[int] = None, - outbound_as_prepend_count: Optional[str] = None, - outbound_med: Optional[int] = None): - """ - :param str customer_peer_ip: Customer side peering ip - :param bool enabled: Admin status for the BGP session - :param str equinix_peer_ip: Equinix side peering ip - :param int inbound_med: Inbound Multi Exit Discriminator attribute - :param str outbound_as_prepend_count: AS path prepend count. One of: 0, 1, 3, 5 - :param int outbound_med: Outbound Multi Exit Discriminator attribute - """ - pulumi.set(__self__, "customer_peer_ip", customer_peer_ip) - if enabled is not None: - pulumi.set(__self__, "enabled", enabled) - if equinix_peer_ip is not None: - pulumi.set(__self__, "equinix_peer_ip", equinix_peer_ip) - if inbound_med is not None: - pulumi.set(__self__, "inbound_med", inbound_med) - if outbound_as_prepend_count is not None: - pulumi.set(__self__, "outbound_as_prepend_count", outbound_as_prepend_count) - if outbound_med is not None: - pulumi.set(__self__, "outbound_med", outbound_med) - - @property - @pulumi.getter(name="customerPeerIp") - def customer_peer_ip(self) -> str: - """ - Customer side peering ip - """ - return pulumi.get(self, "customer_peer_ip") - - @property - @pulumi.getter - def enabled(self) -> Optional[bool]: - """ - Admin status for the BGP session - """ - return pulumi.get(self, "enabled") - - @property - @pulumi.getter(name="equinixPeerIp") - def equinix_peer_ip(self) -> Optional[str]: - """ - Equinix side peering ip - """ - return pulumi.get(self, "equinix_peer_ip") - - @property - @pulumi.getter(name="inboundMed") - def inbound_med(self) -> Optional[int]: - """ - Inbound Multi Exit Discriminator attribute - """ - return pulumi.get(self, "inbound_med") - - @property - @pulumi.getter(name="outboundAsPrependCount") - def outbound_as_prepend_count(self) -> Optional[str]: - """ - AS path prepend count. One of: 0, 1, 3, 5 - """ - return pulumi.get(self, "outbound_as_prepend_count") - - @property - @pulumi.getter(name="outboundMed") - def outbound_med(self) -> Optional[int]: - """ - Outbound Multi Exit Discriminator attribute - """ - return pulumi.get(self, "outbound_med") - - -@pulumi.output_type -class RoutingProtocolBgpIpv6(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "customerPeerIp": - suggest = "customer_peer_ip" - elif key == "equinixPeerIp": - suggest = "equinix_peer_ip" - elif key == "inboundMed": - suggest = "inbound_med" - elif key == "outboundAsPrependCount": - suggest = "outbound_as_prepend_count" - elif key == "outboundMed": - suggest = "outbound_med" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolBgpIpv6. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - RoutingProtocolBgpIpv6.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - RoutingProtocolBgpIpv6.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - customer_peer_ip: str, - enabled: Optional[bool] = None, - equinix_peer_ip: Optional[str] = None, - inbound_med: Optional[int] = None, - outbound_as_prepend_count: Optional[str] = None, - outbound_med: Optional[int] = None): - """ - :param str customer_peer_ip: Customer side peering ip - :param bool enabled: Admin status for the BGP session - :param str equinix_peer_ip: Equinix side peering ip - :param int inbound_med: Inbound Multi Exit Discriminator attribute - :param str outbound_as_prepend_count: AS path prepend count. One of: 0, 1, 3, 5 - :param int outbound_med: Outbound Multi Exit Discriminator attribute - """ - pulumi.set(__self__, "customer_peer_ip", customer_peer_ip) - if enabled is not None: - pulumi.set(__self__, "enabled", enabled) - if equinix_peer_ip is not None: - pulumi.set(__self__, "equinix_peer_ip", equinix_peer_ip) - if inbound_med is not None: - pulumi.set(__self__, "inbound_med", inbound_med) - if outbound_as_prepend_count is not None: - pulumi.set(__self__, "outbound_as_prepend_count", outbound_as_prepend_count) - if outbound_med is not None: - pulumi.set(__self__, "outbound_med", outbound_med) - - @property - @pulumi.getter(name="customerPeerIp") - def customer_peer_ip(self) -> str: - """ - Customer side peering ip - """ - return pulumi.get(self, "customer_peer_ip") - - @property - @pulumi.getter - def enabled(self) -> Optional[bool]: - """ - Admin status for the BGP session - """ - return pulumi.get(self, "enabled") - - @property - @pulumi.getter(name="equinixPeerIp") - def equinix_peer_ip(self) -> Optional[str]: - """ - Equinix side peering ip - """ - return pulumi.get(self, "equinix_peer_ip") - - @property - @pulumi.getter(name="inboundMed") - def inbound_med(self) -> Optional[int]: - """ - Inbound Multi Exit Discriminator attribute - """ - return pulumi.get(self, "inbound_med") - - @property - @pulumi.getter(name="outboundAsPrependCount") - def outbound_as_prepend_count(self) -> Optional[str]: - """ - AS path prepend count. One of: 0, 1, 3, 5 - """ - return pulumi.get(self, "outbound_as_prepend_count") - - @property - @pulumi.getter(name="outboundMed") - def outbound_med(self) -> Optional[int]: - """ - Outbound Multi Exit Discriminator attribute - """ - return pulumi.get(self, "outbound_med") - - -@pulumi.output_type -class RoutingProtocolChange(dict): +class RouteFilterChange(dict): def __init__(__self__, *, href: Optional[str] = None, type: Optional[str] = None, uuid: Optional[str] = None): """ - :param str href: Routing Protocol Change URI - :param str type: Type of change - :param str uuid: Uniquely identifies a change + :param str href: The URI of the previous Route Filter Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + :param str uuid: Unique identifier for the previous change """ if href is not None: pulumi.set(__self__, "href", href) @@ -4373,7 +4160,7 @@ def __init__(__self__, *, @pulumi.getter def href(self) -> Optional[str]: """ - Routing Protocol Change URI + The URI of the previous Route Filter Change """ return pulumi.get(self, "href") @@ -4381,7 +4168,7 @@ def href(self) -> Optional[str]: @pulumi.getter def type(self) -> Optional[str]: """ - Type of change + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] """ return pulumi.get(self, "type") @@ -4389,13 +4176,13 @@ def type(self) -> Optional[str]: @pulumi.getter def uuid(self) -> Optional[str]: """ - Uniquely identifies a change + Unique identifier for the previous change """ return pulumi.get(self, "uuid") @pulumi.output_type -class RoutingProtocolChangeLog(dict): +class RouteFilterChangeLog(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -4425,14 +4212,14 @@ def __key_warning(key: str): suggest = "updated_date_time" if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolChangeLog. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in RouteFilterChangeLog. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - RoutingProtocolChangeLog.__key_warning(key) + RouteFilterChangeLog.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - RoutingProtocolChangeLog.__key_warning(key) + RouteFilterChangeLog.__key_warning(key) return super().get(key, default) def __init__(__self__, *, @@ -4585,1331 +4372,2722 @@ def updated_date_time(self) -> Optional[str]: @pulumi.output_type -class RoutingProtocolDirectIpv4(dict): +class RouteFilterProject(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "equinixIfaceIp": - suggest = "equinix_iface_ip" + if key == "projectId": + suggest = "project_id" if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolDirectIpv4. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in RouteFilterProject. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - RoutingProtocolDirectIpv4.__key_warning(key) + RouteFilterProject.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - RoutingProtocolDirectIpv4.__key_warning(key) + RouteFilterProject.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - equinix_iface_ip: str): + project_id: str, + href: Optional[str] = None): """ - :param str equinix_iface_ip: Equinix side Interface IP address + :param str project_id: Project id associated with Fabric Project + :param str href: URI of the Fabric Project """ - pulumi.set(__self__, "equinix_iface_ip", equinix_iface_ip) + pulumi.set(__self__, "project_id", project_id) + if href is not None: + pulumi.set(__self__, "href", href) @property - @pulumi.getter(name="equinixIfaceIp") - def equinix_iface_ip(self) -> str: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Equinix side Interface IP address + Project id associated with Fabric Project """ - return pulumi.get(self, "equinix_iface_ip") - - -@pulumi.output_type -class RoutingProtocolDirectIpv6(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "equinixIfaceIp": - suggest = "equinix_iface_ip" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolDirectIpv6. Access the value via the '{suggest}' property getter instead.") + return pulumi.get(self, "project_id") - def __getitem__(self, key: str) -> Any: - RoutingProtocolDirectIpv6.__key_warning(key) - return super().__getitem__(key) + @property + @pulumi.getter + def href(self) -> Optional[str]: + """ + URI of the Fabric Project + """ + return pulumi.get(self, "href") - def get(self, key: str, default = None) -> Any: - RoutingProtocolDirectIpv6.__key_warning(key) - return super().get(key, default) +@pulumi.output_type +class RouteFilterRuleChange(dict): def __init__(__self__, *, - equinix_iface_ip: Optional[str] = None): + href: Optional[str] = None, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - :param str equinix_iface_ip: Equinix side Interface IP address + :param str href: The URI of the previous Route Filter Rule Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + :param str uuid: Unique identifier for the previous change """ - if equinix_iface_ip is not None: - pulumi.set(__self__, "equinix_iface_ip", equinix_iface_ip) + if href is not None: + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="equinixIfaceIp") - def equinix_iface_ip(self) -> Optional[str]: + @pulumi.getter + def href(self) -> Optional[str]: """ - Equinix side Interface IP address + The URI of the previous Route Filter Rule Change """ - return pulumi.get(self, "equinix_iface_ip") - + return pulumi.get(self, "href") -@pulumi.output_type -class RoutingProtocolOperation(dict): - def __init__(__self__, *, - errors: Optional[Sequence['outputs.RoutingProtocolOperationError']] = None): + @property + @pulumi.getter + def type(self) -> Optional[str]: """ - :param Sequence['RoutingProtocolOperationErrorArgs'] errors: Errors occurred + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] """ - if errors is not None: - pulumi.set(__self__, "errors", errors) + return pulumi.get(self, "type") @property @pulumi.getter - def errors(self) -> Optional[Sequence['outputs.RoutingProtocolOperationError']]: + def uuid(self) -> Optional[str]: """ - Errors occurred + Unique identifier for the previous change """ - return pulumi.get(self, "errors") + return pulumi.get(self, "uuid") @pulumi.output_type -class RoutingProtocolOperationError(dict): +class RouteFilterRuleChangeLog(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "additionalInfos": - suggest = "additional_infos" - elif key == "correlationId": - suggest = "correlation_id" - elif key == "errorCode": - suggest = "error_code" - elif key == "errorMessage": - suggest = "error_message" + if key == "createdBy": + suggest = "created_by" + elif key == "createdByEmail": + suggest = "created_by_email" + elif key == "createdByFullName": + suggest = "created_by_full_name" + elif key == "createdDateTime": + suggest = "created_date_time" + elif key == "deletedBy": + suggest = "deleted_by" + elif key == "deletedByEmail": + suggest = "deleted_by_email" + elif key == "deletedByFullName": + suggest = "deleted_by_full_name" + elif key == "deletedDateTime": + suggest = "deleted_date_time" + elif key == "updatedBy": + suggest = "updated_by" + elif key == "updatedByEmail": + suggest = "updated_by_email" + elif key == "updatedByFullName": + suggest = "updated_by_full_name" + elif key == "updatedDateTime": + suggest = "updated_date_time" if suggest: - pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolOperationError. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in RouteFilterRuleChangeLog. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - RoutingProtocolOperationError.__key_warning(key) + RouteFilterRuleChangeLog.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - RoutingProtocolOperationError.__key_warning(key) + RouteFilterRuleChangeLog.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - additional_infos: Optional[Sequence['outputs.RoutingProtocolOperationErrorAdditionalInfo']] = None, - correlation_id: Optional[str] = None, - details: Optional[str] = None, - error_code: Optional[str] = None, - error_message: Optional[str] = None, - help: Optional[str] = None): + created_by: Optional[str] = None, + created_by_email: Optional[str] = None, + created_by_full_name: Optional[str] = None, + created_date_time: Optional[str] = None, + deleted_by: Optional[str] = None, + deleted_by_email: Optional[str] = None, + deleted_by_full_name: Optional[str] = None, + deleted_date_time: Optional[str] = None, + updated_by: Optional[str] = None, + updated_by_email: Optional[str] = None, + updated_by_full_name: Optional[str] = None, + updated_date_time: Optional[str] = None): """ - :param Sequence['RoutingProtocolOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info - :param str correlation_id: CorrelationId - :param str details: Details - :param str error_code: Error code - :param str error_message: Error Message - :param str help: Help + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - if additional_infos is not None: - pulumi.set(__self__, "additional_infos", additional_infos) - if correlation_id is not None: - pulumi.set(__self__, "correlation_id", correlation_id) - if details is not None: - pulumi.set(__self__, "details", details) - if error_code is not None: - pulumi.set(__self__, "error_code", error_code) - if error_message is not None: - pulumi.set(__self__, "error_message", error_message) - if help is not None: - pulumi.set(__self__, "help", help) + if created_by is not None: + pulumi.set(__self__, "created_by", created_by) + if created_by_email is not None: + pulumi.set(__self__, "created_by_email", created_by_email) + if created_by_full_name is not None: + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + if created_date_time is not None: + pulumi.set(__self__, "created_date_time", created_date_time) + if deleted_by is not None: + pulumi.set(__self__, "deleted_by", deleted_by) + if deleted_by_email is not None: + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + if deleted_by_full_name is not None: + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + if deleted_date_time is not None: + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + if updated_by is not None: + pulumi.set(__self__, "updated_by", updated_by) + if updated_by_email is not None: + pulumi.set(__self__, "updated_by_email", updated_by_email) + if updated_by_full_name is not None: + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + if updated_date_time is not None: + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Optional[Sequence['outputs.RoutingProtocolOperationErrorAdditionalInfo']]: + @pulumi.getter(name="createdBy") + def created_by(self) -> Optional[str]: """ - Pricing error additional Info + Created by User Key """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "created_by") @property - @pulumi.getter(name="correlationId") - def correlation_id(self) -> Optional[str]: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> Optional[str]: """ - CorrelationId + Created by User Email Address """ - return pulumi.get(self, "correlation_id") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter - def details(self) -> Optional[str]: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> Optional[str]: """ - Details + Created by User Full Name """ - return pulumi.get(self, "details") + return pulumi.get(self, "created_by_full_name") @property - @pulumi.getter(name="errorCode") - def error_code(self) -> Optional[str]: + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> Optional[str]: """ - Error code + Created by Date and Time """ - return pulumi.get(self, "error_code") + return pulumi.get(self, "created_date_time") @property - @pulumi.getter(name="errorMessage") - def error_message(self) -> Optional[str]: + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> Optional[str]: """ - Error Message + Deleted by User Key """ - return pulumi.get(self, "error_message") + return pulumi.get(self, "deleted_by") @property - @pulumi.getter - def help(self) -> Optional[str]: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> Optional[str]: """ - Help + Deleted by User Email Address """ - return pulumi.get(self, "help") - + return pulumi.get(self, "deleted_by_email") -@pulumi.output_type -class RoutingProtocolOperationErrorAdditionalInfo(dict): - def __init__(__self__, *, - property: Optional[str] = None, - reason: Optional[str] = None): + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> Optional[str]: """ - :param str property: Property at which the error potentially occurred - :param str reason: Reason for the error + Deleted by User Full Name """ - if property is not None: - pulumi.set(__self__, "property", property) - if reason is not None: - pulumi.set(__self__, "reason", reason) + return pulumi.get(self, "deleted_by_full_name") @property - @pulumi.getter - def reason(self) -> Optional[str]: + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> Optional[str]: """ - Reason for the error + Deleted by Date and Time """ - return pulumi.get(self, "reason") + return pulumi.get(self, "deleted_date_time") @property - @pulumi.getter - def property(self) -> Optional[str]: + @pulumi.getter(name="updatedBy") + def updated_by(self) -> Optional[str]: """ - Property at which the error potentially occurred + Updated by User Key """ - return pulumi.get(self, "property") + return pulumi.get(self, "updated_by") + + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> Optional[str]: + """ + Updated by User Email Address + """ + return pulumi.get(self, "updated_by_email") + + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> Optional[str]: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> Optional[str]: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class ServiceProfileAccessPointTypeConfig(dict): +class RoutingProtocolBfd(dict): + def __init__(__self__, *, + enabled: bool, + interval: Optional[str] = None): + """ + :param bool enabled: Bidirectional Forwarding Detection enablement + :param str interval: Interval range between the received BFD control packets + """ + pulumi.set(__self__, "enabled", enabled) + if interval is not None: + pulumi.set(__self__, "interval", interval) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + Bidirectional Forwarding Detection enablement + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter + def interval(self) -> Optional[str]: + """ + Interval range between the received BFD control packets + """ + return pulumi.get(self, "interval") + + +@pulumi.output_type +class RoutingProtocolBgpIpv4(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "allowBandwidthAutoApproval": - suggest = "allow_bandwidth_auto_approval" - elif key == "allowBandwidthUpgrade": - suggest = "allow_bandwidth_upgrade" - elif key == "allowCustomBandwidth": - suggest = "allow_custom_bandwidth" - elif key == "allowRemoteConnections": - suggest = "allow_remote_connections" - elif key == "apiConfig": - suggest = "api_config" - elif key == "authenticationKey": - suggest = "authentication_key" - elif key == "bandwidthAlertThreshold": - suggest = "bandwidth_alert_threshold" - elif key == "connectionLabel": - suggest = "connection_label" - elif key == "connectionRedundancyRequired": - suggest = "connection_redundancy_required" - elif key == "enableAutoGenerateServiceKey": - suggest = "enable_auto_generate_service_key" - elif key == "linkProtocolConfig": - suggest = "link_protocol_config" - elif key == "supportedBandwidths": - suggest = "supported_bandwidths" + if key == "customerPeerIp": + suggest = "customer_peer_ip" + elif key == "equinixPeerIp": + suggest = "equinix_peer_ip" + elif key == "inboundMed": + suggest = "inbound_med" + elif key == "outboundAsPrependCount": + suggest = "outbound_as_prepend_count" + elif key == "outboundMed": + suggest = "outbound_med" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfig. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolBgpIpv4. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileAccessPointTypeConfig.__key_warning(key) + RoutingProtocolBgpIpv4.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileAccessPointTypeConfig.__key_warning(key) + RoutingProtocolBgpIpv4.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - type: str, - allow_bandwidth_auto_approval: Optional[bool] = None, - allow_bandwidth_upgrade: Optional[bool] = None, - allow_custom_bandwidth: Optional[bool] = None, - allow_remote_connections: Optional[bool] = None, - api_config: Optional['outputs.ServiceProfileAccessPointTypeConfigApiConfig'] = None, - authentication_key: Optional['outputs.ServiceProfileAccessPointTypeConfigAuthenticationKey'] = None, - bandwidth_alert_threshold: Optional[float] = None, - connection_label: Optional[str] = None, - connection_redundancy_required: Optional[bool] = None, - enable_auto_generate_service_key: Optional[bool] = None, - link_protocol_config: Optional['outputs.ServiceProfileAccessPointTypeConfigLinkProtocolConfig'] = None, - supported_bandwidths: Optional[Sequence[int]] = None, - uuid: Optional[str] = None): + customer_peer_ip: str, + enabled: Optional[bool] = None, + equinix_peer_ip: Optional[str] = None, + inbound_med: Optional[int] = None, + outbound_as_prepend_count: Optional[str] = None, + outbound_med: Optional[int] = None): """ - :param Union[str, 'ProfileAccessPointType'] type: Type of access point type config - VD, COLO - :param bool allow_bandwidth_auto_approval: Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller - :param bool allow_bandwidth_upgrade: Availability of a bandwidth upgrade. The default is false - :param bool allow_custom_bandwidth: Setting to enable or disable the ability of the buyer to customize the bandwidth - :param bool allow_remote_connections: Setting to allow or prohibit remote connections to the service profile - :param 'ServiceProfileAccessPointTypeConfigApiConfigArgs' api_config: Api configuration details - :param 'ServiceProfileAccessPointTypeConfigAuthenticationKeyArgs' authentication_key: Authentication key details - :param float bandwidth_alert_threshold: Percentage of port bandwidth at which an allocation alert is generated - :param str connection_label: Custom name for Connection - :param bool connection_redundancy_required: Mandate redundant connections - :param bool enable_auto_generate_service_key: Enable auto generate service key - :param 'ServiceProfileAccessPointTypeConfigLinkProtocolConfigArgs' link_protocol_config: Link protocol configuration details - :param Sequence[int] supported_bandwidths: Supported bandwidths - :param str uuid: Colo/Port Uuid + :param str customer_peer_ip: Customer side peering ip + :param bool enabled: Admin status for the BGP session + :param str equinix_peer_ip: Equinix side peering ip + :param int inbound_med: Inbound Multi Exit Discriminator attribute + :param str outbound_as_prepend_count: AS path prepend count. One of: 0, 1, 3, 5 + :param int outbound_med: Outbound Multi Exit Discriminator attribute """ - pulumi.set(__self__, "type", type) - if allow_bandwidth_auto_approval is not None: - pulumi.set(__self__, "allow_bandwidth_auto_approval", allow_bandwidth_auto_approval) - if allow_bandwidth_upgrade is not None: - pulumi.set(__self__, "allow_bandwidth_upgrade", allow_bandwidth_upgrade) - if allow_custom_bandwidth is not None: - pulumi.set(__self__, "allow_custom_bandwidth", allow_custom_bandwidth) - if allow_remote_connections is not None: - pulumi.set(__self__, "allow_remote_connections", allow_remote_connections) - if api_config is not None: - pulumi.set(__self__, "api_config", api_config) - if authentication_key is not None: - pulumi.set(__self__, "authentication_key", authentication_key) - if bandwidth_alert_threshold is not None: - pulumi.set(__self__, "bandwidth_alert_threshold", bandwidth_alert_threshold) - if connection_label is not None: - pulumi.set(__self__, "connection_label", connection_label) - if connection_redundancy_required is not None: - pulumi.set(__self__, "connection_redundancy_required", connection_redundancy_required) - if enable_auto_generate_service_key is not None: - pulumi.set(__self__, "enable_auto_generate_service_key", enable_auto_generate_service_key) - if link_protocol_config is not None: - pulumi.set(__self__, "link_protocol_config", link_protocol_config) - if supported_bandwidths is not None: - pulumi.set(__self__, "supported_bandwidths", supported_bandwidths) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "customer_peer_ip", customer_peer_ip) + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + if equinix_peer_ip is not None: + pulumi.set(__self__, "equinix_peer_ip", equinix_peer_ip) + if inbound_med is not None: + pulumi.set(__self__, "inbound_med", inbound_med) + if outbound_as_prepend_count is not None: + pulumi.set(__self__, "outbound_as_prepend_count", outbound_as_prepend_count) + if outbound_med is not None: + pulumi.set(__self__, "outbound_med", outbound_med) @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="customerPeerIp") + def customer_peer_ip(self) -> str: """ - Type of access point type config - VD, COLO + Customer side peering ip """ - return pulumi.get(self, "type") + return pulumi.get(self, "customer_peer_ip") @property - @pulumi.getter(name="allowBandwidthAutoApproval") - def allow_bandwidth_auto_approval(self) -> Optional[bool]: + @pulumi.getter + def enabled(self) -> Optional[bool]: """ - Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller + Admin status for the BGP session """ - return pulumi.get(self, "allow_bandwidth_auto_approval") + return pulumi.get(self, "enabled") @property - @pulumi.getter(name="allowBandwidthUpgrade") - def allow_bandwidth_upgrade(self) -> Optional[bool]: + @pulumi.getter(name="equinixPeerIp") + def equinix_peer_ip(self) -> Optional[str]: """ - Availability of a bandwidth upgrade. The default is false + Equinix side peering ip """ - return pulumi.get(self, "allow_bandwidth_upgrade") + return pulumi.get(self, "equinix_peer_ip") @property - @pulumi.getter(name="allowCustomBandwidth") - def allow_custom_bandwidth(self) -> Optional[bool]: + @pulumi.getter(name="inboundMed") + def inbound_med(self) -> Optional[int]: """ - Setting to enable or disable the ability of the buyer to customize the bandwidth + Inbound Multi Exit Discriminator attribute """ - return pulumi.get(self, "allow_custom_bandwidth") + return pulumi.get(self, "inbound_med") @property - @pulumi.getter(name="allowRemoteConnections") - def allow_remote_connections(self) -> Optional[bool]: + @pulumi.getter(name="outboundAsPrependCount") + def outbound_as_prepend_count(self) -> Optional[str]: """ - Setting to allow or prohibit remote connections to the service profile + AS path prepend count. One of: 0, 1, 3, 5 """ - return pulumi.get(self, "allow_remote_connections") + return pulumi.get(self, "outbound_as_prepend_count") @property - @pulumi.getter(name="apiConfig") - def api_config(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigApiConfig']: + @pulumi.getter(name="outboundMed") + def outbound_med(self) -> Optional[int]: """ - Api configuration details + Outbound Multi Exit Discriminator attribute """ - return pulumi.get(self, "api_config") + return pulumi.get(self, "outbound_med") - @property - @pulumi.getter(name="authenticationKey") - def authentication_key(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigAuthenticationKey']: - """ - Authentication key details - """ - return pulumi.get(self, "authentication_key") - @property - @pulumi.getter(name="bandwidthAlertThreshold") - def bandwidth_alert_threshold(self) -> Optional[float]: - """ - Percentage of port bandwidth at which an allocation alert is generated - """ - return pulumi.get(self, "bandwidth_alert_threshold") +@pulumi.output_type +class RoutingProtocolBgpIpv6(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "customerPeerIp": + suggest = "customer_peer_ip" + elif key == "equinixPeerIp": + suggest = "equinix_peer_ip" + elif key == "inboundMed": + suggest = "inbound_med" + elif key == "outboundAsPrependCount": + suggest = "outbound_as_prepend_count" + elif key == "outboundMed": + suggest = "outbound_med" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolBgpIpv6. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RoutingProtocolBgpIpv6.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RoutingProtocolBgpIpv6.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + customer_peer_ip: str, + enabled: Optional[bool] = None, + equinix_peer_ip: Optional[str] = None, + inbound_med: Optional[int] = None, + outbound_as_prepend_count: Optional[str] = None, + outbound_med: Optional[int] = None): + """ + :param str customer_peer_ip: Customer side peering ip + :param bool enabled: Admin status for the BGP session + :param str equinix_peer_ip: Equinix side peering ip + :param int inbound_med: Inbound Multi Exit Discriminator attribute + :param str outbound_as_prepend_count: AS path prepend count. One of: 0, 1, 3, 5 + :param int outbound_med: Outbound Multi Exit Discriminator attribute + """ + pulumi.set(__self__, "customer_peer_ip", customer_peer_ip) + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + if equinix_peer_ip is not None: + pulumi.set(__self__, "equinix_peer_ip", equinix_peer_ip) + if inbound_med is not None: + pulumi.set(__self__, "inbound_med", inbound_med) + if outbound_as_prepend_count is not None: + pulumi.set(__self__, "outbound_as_prepend_count", outbound_as_prepend_count) + if outbound_med is not None: + pulumi.set(__self__, "outbound_med", outbound_med) + + @property + @pulumi.getter(name="customerPeerIp") + def customer_peer_ip(self) -> str: + """ + Customer side peering ip + """ + return pulumi.get(self, "customer_peer_ip") + + @property + @pulumi.getter + def enabled(self) -> Optional[bool]: + """ + Admin status for the BGP session + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="equinixPeerIp") + def equinix_peer_ip(self) -> Optional[str]: + """ + Equinix side peering ip + """ + return pulumi.get(self, "equinix_peer_ip") + + @property + @pulumi.getter(name="inboundMed") + def inbound_med(self) -> Optional[int]: + """ + Inbound Multi Exit Discriminator attribute + """ + return pulumi.get(self, "inbound_med") + + @property + @pulumi.getter(name="outboundAsPrependCount") + def outbound_as_prepend_count(self) -> Optional[str]: + """ + AS path prepend count. One of: 0, 1, 3, 5 + """ + return pulumi.get(self, "outbound_as_prepend_count") + + @property + @pulumi.getter(name="outboundMed") + def outbound_med(self) -> Optional[int]: + """ + Outbound Multi Exit Discriminator attribute + """ + return pulumi.get(self, "outbound_med") + + +@pulumi.output_type +class RoutingProtocolChange(dict): + def __init__(__self__, *, + href: Optional[str] = None, + type: Optional[str] = None, + uuid: Optional[str] = None): + """ + :param str href: Routing Protocol Change URI + :param str type: Type of change + :param str uuid: Uniquely identifies a change + """ + if href is not None: + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def href(self) -> Optional[str]: + """ + Routing Protocol Change URI + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def type(self) -> Optional[str]: + """ + Type of change + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Uniquely identifies a change + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class RoutingProtocolChangeLog(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "createdBy": + suggest = "created_by" + elif key == "createdByEmail": + suggest = "created_by_email" + elif key == "createdByFullName": + suggest = "created_by_full_name" + elif key == "createdDateTime": + suggest = "created_date_time" + elif key == "deletedBy": + suggest = "deleted_by" + elif key == "deletedByEmail": + suggest = "deleted_by_email" + elif key == "deletedByFullName": + suggest = "deleted_by_full_name" + elif key == "deletedDateTime": + suggest = "deleted_date_time" + elif key == "updatedBy": + suggest = "updated_by" + elif key == "updatedByEmail": + suggest = "updated_by_email" + elif key == "updatedByFullName": + suggest = "updated_by_full_name" + elif key == "updatedDateTime": + suggest = "updated_date_time" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolChangeLog. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RoutingProtocolChangeLog.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RoutingProtocolChangeLog.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + created_by: Optional[str] = None, + created_by_email: Optional[str] = None, + created_by_full_name: Optional[str] = None, + created_date_time: Optional[str] = None, + deleted_by: Optional[str] = None, + deleted_by_email: Optional[str] = None, + deleted_by_full_name: Optional[str] = None, + deleted_date_time: Optional[str] = None, + updated_by: Optional[str] = None, + updated_by_email: Optional[str] = None, + updated_by_full_name: Optional[str] = None, + updated_date_time: Optional[str] = None): + """ + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time + """ + if created_by is not None: + pulumi.set(__self__, "created_by", created_by) + if created_by_email is not None: + pulumi.set(__self__, "created_by_email", created_by_email) + if created_by_full_name is not None: + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + if created_date_time is not None: + pulumi.set(__self__, "created_date_time", created_date_time) + if deleted_by is not None: + pulumi.set(__self__, "deleted_by", deleted_by) + if deleted_by_email is not None: + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + if deleted_by_full_name is not None: + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + if deleted_date_time is not None: + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + if updated_by is not None: + pulumi.set(__self__, "updated_by", updated_by) + if updated_by_email is not None: + pulumi.set(__self__, "updated_by_email", updated_by_email) + if updated_by_full_name is not None: + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + if updated_date_time is not None: + pulumi.set(__self__, "updated_date_time", updated_date_time) + + @property + @pulumi.getter(name="createdBy") + def created_by(self) -> Optional[str]: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> Optional[str]: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> Optional[str]: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> Optional[str]: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> Optional[str]: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") + + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> Optional[str]: + """ + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") + + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> Optional[str]: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") + + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> Optional[str]: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") + + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> Optional[str]: + """ + Updated by User Key + """ + return pulumi.get(self, "updated_by") + + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> Optional[str]: + """ + Updated by User Email Address + """ + return pulumi.get(self, "updated_by_email") + + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> Optional[str]: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> Optional[str]: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") + + +@pulumi.output_type +class RoutingProtocolDirectIpv4(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "equinixIfaceIp": + suggest = "equinix_iface_ip" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolDirectIpv4. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RoutingProtocolDirectIpv4.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RoutingProtocolDirectIpv4.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + equinix_iface_ip: str): + """ + :param str equinix_iface_ip: Equinix side Interface IP address + """ + pulumi.set(__self__, "equinix_iface_ip", equinix_iface_ip) + + @property + @pulumi.getter(name="equinixIfaceIp") + def equinix_iface_ip(self) -> str: + """ + Equinix side Interface IP address + """ + return pulumi.get(self, "equinix_iface_ip") + + +@pulumi.output_type +class RoutingProtocolDirectIpv6(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "equinixIfaceIp": + suggest = "equinix_iface_ip" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolDirectIpv6. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RoutingProtocolDirectIpv6.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RoutingProtocolDirectIpv6.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + equinix_iface_ip: Optional[str] = None): + """ + :param str equinix_iface_ip: Equinix side Interface IP address + """ + if equinix_iface_ip is not None: + pulumi.set(__self__, "equinix_iface_ip", equinix_iface_ip) + + @property + @pulumi.getter(name="equinixIfaceIp") + def equinix_iface_ip(self) -> Optional[str]: + """ + Equinix side Interface IP address + """ + return pulumi.get(self, "equinix_iface_ip") + + +@pulumi.output_type +class RoutingProtocolOperation(dict): + def __init__(__self__, *, + errors: Optional[Sequence['outputs.RoutingProtocolOperationError']] = None): + """ + :param Sequence['RoutingProtocolOperationErrorArgs'] errors: Errors occurred + """ + if errors is not None: + pulumi.set(__self__, "errors", errors) + + @property + @pulumi.getter + def errors(self) -> Optional[Sequence['outputs.RoutingProtocolOperationError']]: + """ + Errors occurred + """ + return pulumi.get(self, "errors") + + +@pulumi.output_type +class RoutingProtocolOperationError(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "additionalInfos": + suggest = "additional_infos" + elif key == "correlationId": + suggest = "correlation_id" + elif key == "errorCode": + suggest = "error_code" + elif key == "errorMessage": + suggest = "error_message" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RoutingProtocolOperationError. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RoutingProtocolOperationError.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RoutingProtocolOperationError.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + additional_infos: Optional[Sequence['outputs.RoutingProtocolOperationErrorAdditionalInfo']] = None, + correlation_id: Optional[str] = None, + details: Optional[str] = None, + error_code: Optional[str] = None, + error_message: Optional[str] = None, + help: Optional[str] = None): + """ + :param Sequence['RoutingProtocolOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info + :param str correlation_id: CorrelationId + :param str details: Details + :param str error_code: Error code + :param str error_message: Error Message + :param str help: Help + """ + if additional_infos is not None: + pulumi.set(__self__, "additional_infos", additional_infos) + if correlation_id is not None: + pulumi.set(__self__, "correlation_id", correlation_id) + if details is not None: + pulumi.set(__self__, "details", details) + if error_code is not None: + pulumi.set(__self__, "error_code", error_code) + if error_message is not None: + pulumi.set(__self__, "error_message", error_message) + if help is not None: + pulumi.set(__self__, "help", help) + + @property + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Optional[Sequence['outputs.RoutingProtocolOperationErrorAdditionalInfo']]: + """ + Pricing error additional Info + """ + return pulumi.get(self, "additional_infos") + + @property + @pulumi.getter(name="correlationId") + def correlation_id(self) -> Optional[str]: + """ + CorrelationId + """ + return pulumi.get(self, "correlation_id") + + @property + @pulumi.getter + def details(self) -> Optional[str]: + """ + Details + """ + return pulumi.get(self, "details") + + @property + @pulumi.getter(name="errorCode") + def error_code(self) -> Optional[str]: + """ + Error code + """ + return pulumi.get(self, "error_code") + + @property + @pulumi.getter(name="errorMessage") + def error_message(self) -> Optional[str]: + """ + Error Message + """ + return pulumi.get(self, "error_message") + + @property + @pulumi.getter + def help(self) -> Optional[str]: + """ + Help + """ + return pulumi.get(self, "help") + + +@pulumi.output_type +class RoutingProtocolOperationErrorAdditionalInfo(dict): + def __init__(__self__, *, + property: Optional[str] = None, + reason: Optional[str] = None): + """ + :param str property: Property at which the error potentially occurred + :param str reason: Reason for the error + """ + if property is not None: + pulumi.set(__self__, "property", property) + if reason is not None: + pulumi.set(__self__, "reason", reason) + + @property + @pulumi.getter + def reason(self) -> Optional[str]: + """ + Reason for the error + """ + return pulumi.get(self, "reason") + + @property + @pulumi.getter + def property(self) -> Optional[str]: + """ + Property at which the error potentially occurred + """ + return pulumi.get(self, "property") + + +@pulumi.output_type +class ServiceProfileAccessPointTypeConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "allowBandwidthAutoApproval": + suggest = "allow_bandwidth_auto_approval" + elif key == "allowBandwidthUpgrade": + suggest = "allow_bandwidth_upgrade" + elif key == "allowCustomBandwidth": + suggest = "allow_custom_bandwidth" + elif key == "allowRemoteConnections": + suggest = "allow_remote_connections" + elif key == "apiConfig": + suggest = "api_config" + elif key == "authenticationKey": + suggest = "authentication_key" + elif key == "bandwidthAlertThreshold": + suggest = "bandwidth_alert_threshold" + elif key == "connectionLabel": + suggest = "connection_label" + elif key == "connectionRedundancyRequired": + suggest = "connection_redundancy_required" + elif key == "enableAutoGenerateServiceKey": + suggest = "enable_auto_generate_service_key" + elif key == "linkProtocolConfig": + suggest = "link_protocol_config" + elif key == "supportedBandwidths": + suggest = "supported_bandwidths" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileAccessPointTypeConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileAccessPointTypeConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + type: str, + allow_bandwidth_auto_approval: Optional[bool] = None, + allow_bandwidth_upgrade: Optional[bool] = None, + allow_custom_bandwidth: Optional[bool] = None, + allow_remote_connections: Optional[bool] = None, + api_config: Optional['outputs.ServiceProfileAccessPointTypeConfigApiConfig'] = None, + authentication_key: Optional['outputs.ServiceProfileAccessPointTypeConfigAuthenticationKey'] = None, + bandwidth_alert_threshold: Optional[float] = None, + connection_label: Optional[str] = None, + connection_redundancy_required: Optional[bool] = None, + enable_auto_generate_service_key: Optional[bool] = None, + link_protocol_config: Optional['outputs.ServiceProfileAccessPointTypeConfigLinkProtocolConfig'] = None, + supported_bandwidths: Optional[Sequence[int]] = None, + uuid: Optional[str] = None): + """ + :param Union[str, 'ProfileAccessPointType'] type: Type of access point type config - VD, COLO + :param bool allow_bandwidth_auto_approval: Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller + :param bool allow_bandwidth_upgrade: Availability of a bandwidth upgrade. The default is false + :param bool allow_custom_bandwidth: Setting to enable or disable the ability of the buyer to customize the bandwidth + :param bool allow_remote_connections: Setting to allow or prohibit remote connections to the service profile + :param 'ServiceProfileAccessPointTypeConfigApiConfigArgs' api_config: Api configuration details + :param 'ServiceProfileAccessPointTypeConfigAuthenticationKeyArgs' authentication_key: Authentication key details + :param float bandwidth_alert_threshold: Percentage of port bandwidth at which an allocation alert is generated + :param str connection_label: Custom name for Connection + :param bool connection_redundancy_required: Mandate redundant connections + :param bool enable_auto_generate_service_key: Enable auto generate service key + :param 'ServiceProfileAccessPointTypeConfigLinkProtocolConfigArgs' link_protocol_config: Link protocol configuration details + :param Sequence[int] supported_bandwidths: Supported bandwidths + :param str uuid: Colo/Port Uuid + """ + pulumi.set(__self__, "type", type) + if allow_bandwidth_auto_approval is not None: + pulumi.set(__self__, "allow_bandwidth_auto_approval", allow_bandwidth_auto_approval) + if allow_bandwidth_upgrade is not None: + pulumi.set(__self__, "allow_bandwidth_upgrade", allow_bandwidth_upgrade) + if allow_custom_bandwidth is not None: + pulumi.set(__self__, "allow_custom_bandwidth", allow_custom_bandwidth) + if allow_remote_connections is not None: + pulumi.set(__self__, "allow_remote_connections", allow_remote_connections) + if api_config is not None: + pulumi.set(__self__, "api_config", api_config) + if authentication_key is not None: + pulumi.set(__self__, "authentication_key", authentication_key) + if bandwidth_alert_threshold is not None: + pulumi.set(__self__, "bandwidth_alert_threshold", bandwidth_alert_threshold) + if connection_label is not None: + pulumi.set(__self__, "connection_label", connection_label) + if connection_redundancy_required is not None: + pulumi.set(__self__, "connection_redundancy_required", connection_redundancy_required) + if enable_auto_generate_service_key is not None: + pulumi.set(__self__, "enable_auto_generate_service_key", enable_auto_generate_service_key) + if link_protocol_config is not None: + pulumi.set(__self__, "link_protocol_config", link_protocol_config) + if supported_bandwidths is not None: + pulumi.set(__self__, "supported_bandwidths", supported_bandwidths) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def type(self) -> str: + """ + Type of access point type config - VD, COLO + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="allowBandwidthAutoApproval") + def allow_bandwidth_auto_approval(self) -> Optional[bool]: + """ + Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the seller + """ + return pulumi.get(self, "allow_bandwidth_auto_approval") + + @property + @pulumi.getter(name="allowBandwidthUpgrade") + def allow_bandwidth_upgrade(self) -> Optional[bool]: + """ + Availability of a bandwidth upgrade. The default is false + """ + return pulumi.get(self, "allow_bandwidth_upgrade") + + @property + @pulumi.getter(name="allowCustomBandwidth") + def allow_custom_bandwidth(self) -> Optional[bool]: + """ + Setting to enable or disable the ability of the buyer to customize the bandwidth + """ + return pulumi.get(self, "allow_custom_bandwidth") + + @property + @pulumi.getter(name="allowRemoteConnections") + def allow_remote_connections(self) -> Optional[bool]: + """ + Setting to allow or prohibit remote connections to the service profile + """ + return pulumi.get(self, "allow_remote_connections") + + @property + @pulumi.getter(name="apiConfig") + def api_config(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigApiConfig']: + """ + Api configuration details + """ + return pulumi.get(self, "api_config") + + @property + @pulumi.getter(name="authenticationKey") + def authentication_key(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigAuthenticationKey']: + """ + Authentication key details + """ + return pulumi.get(self, "authentication_key") + + @property + @pulumi.getter(name="bandwidthAlertThreshold") + def bandwidth_alert_threshold(self) -> Optional[float]: + """ + Percentage of port bandwidth at which an allocation alert is generated + """ + return pulumi.get(self, "bandwidth_alert_threshold") + + @property + @pulumi.getter(name="connectionLabel") + def connection_label(self) -> Optional[str]: + """ + Custom name for Connection + """ + return pulumi.get(self, "connection_label") + + @property + @pulumi.getter(name="connectionRedundancyRequired") + def connection_redundancy_required(self) -> Optional[bool]: + """ + Mandate redundant connections + """ + return pulumi.get(self, "connection_redundancy_required") + + @property + @pulumi.getter(name="enableAutoGenerateServiceKey") + def enable_auto_generate_service_key(self) -> Optional[bool]: + """ + Enable auto generate service key + """ + return pulumi.get(self, "enable_auto_generate_service_key") + + @property + @pulumi.getter(name="linkProtocolConfig") + def link_protocol_config(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigLinkProtocolConfig']: + """ + Link protocol configuration details + """ + return pulumi.get(self, "link_protocol_config") + + @property + @pulumi.getter(name="supportedBandwidths") + def supported_bandwidths(self) -> Optional[Sequence[int]]: + """ + Supported bandwidths + """ + return pulumi.get(self, "supported_bandwidths") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Colo/Port Uuid + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class ServiceProfileAccessPointTypeConfigApiConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "allowOverSubscription": + suggest = "allow_over_subscription" + elif key == "apiAvailable": + suggest = "api_available" + elif key == "bandwidthFromApi": + suggest = "bandwidth_from_api" + elif key == "equinixManagedPort": + suggest = "equinix_managed_port" + elif key == "equinixManagedVlan": + suggest = "equinix_managed_vlan" + elif key == "integrationId": + suggest = "integration_id" + elif key == "overSubscriptionLimit": + suggest = "over_subscription_limit" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfigApiConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileAccessPointTypeConfigApiConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileAccessPointTypeConfigApiConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + allow_over_subscription: Optional[bool] = None, + api_available: Optional[bool] = None, + bandwidth_from_api: Optional[bool] = None, + equinix_managed_port: Optional[bool] = None, + equinix_managed_vlan: Optional[bool] = None, + integration_id: Optional[str] = None, + over_subscription_limit: Optional[int] = None): + """ + :param bool allow_over_subscription: Setting showing that oversubscription support is available (true) or not (false). The default is false + :param bool api_available: Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. + :param bool bandwidth_from_api: Indicates if the connection bandwidth can be obtained directly from the cloud service provider. + :param bool equinix_managed_port: Setting indicating that the port is managed by Equinix (true) or not (false) + :param bool equinix_managed_vlan: Setting indicating that the VLAN is managed by Equinix (true) or not (false) + :param str integration_id: A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. + :param int over_subscription_limit: Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + """ + if allow_over_subscription is not None: + pulumi.set(__self__, "allow_over_subscription", allow_over_subscription) + if api_available is not None: + pulumi.set(__self__, "api_available", api_available) + if bandwidth_from_api is not None: + pulumi.set(__self__, "bandwidth_from_api", bandwidth_from_api) + if equinix_managed_port is not None: + pulumi.set(__self__, "equinix_managed_port", equinix_managed_port) + if equinix_managed_vlan is not None: + pulumi.set(__self__, "equinix_managed_vlan", equinix_managed_vlan) + if integration_id is not None: + pulumi.set(__self__, "integration_id", integration_id) + if over_subscription_limit is not None: + pulumi.set(__self__, "over_subscription_limit", over_subscription_limit) + + @property + @pulumi.getter(name="allowOverSubscription") + def allow_over_subscription(self) -> Optional[bool]: + """ + Setting showing that oversubscription support is available (true) or not (false). The default is false + """ + return pulumi.get(self, "allow_over_subscription") + + @property + @pulumi.getter(name="apiAvailable") + def api_available(self) -> Optional[bool]: + """ + Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. + """ + return pulumi.get(self, "api_available") + + @property + @pulumi.getter(name="bandwidthFromApi") + def bandwidth_from_api(self) -> Optional[bool]: + """ + Indicates if the connection bandwidth can be obtained directly from the cloud service provider. + """ + return pulumi.get(self, "bandwidth_from_api") + + @property + @pulumi.getter(name="equinixManagedPort") + def equinix_managed_port(self) -> Optional[bool]: + """ + Setting indicating that the port is managed by Equinix (true) or not (false) + """ + return pulumi.get(self, "equinix_managed_port") + + @property + @pulumi.getter(name="equinixManagedVlan") + def equinix_managed_vlan(self) -> Optional[bool]: + """ + Setting indicating that the VLAN is managed by Equinix (true) or not (false) + """ + return pulumi.get(self, "equinix_managed_vlan") + + @property + @pulumi.getter(name="integrationId") + def integration_id(self) -> Optional[str]: + """ + A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. + """ + return pulumi.get(self, "integration_id") + + @property + @pulumi.getter(name="overSubscriptionLimit") + def over_subscription_limit(self) -> Optional[int]: + """ + Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + """ + return pulumi.get(self, "over_subscription_limit") + + +@pulumi.output_type +class ServiceProfileAccessPointTypeConfigAuthenticationKey(dict): + def __init__(__self__, *, + description: Optional[str] = None, + label: Optional[str] = None, + required: Optional[bool] = None): + """ + :param str description: Description of authorization key + :param str label: Name of the parameter that must be provided to authorize the connection. + :param bool required: Requirement to configure an authentication key. + """ + if description is not None: + pulumi.set(__self__, "description", description) + if label is not None: + pulumi.set(__self__, "label", label) + if required is not None: + pulumi.set(__self__, "required", required) + + @property + @pulumi.getter + def description(self) -> Optional[str]: + """ + Description of authorization key + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def label(self) -> Optional[str]: + """ + Name of the parameter that must be provided to authorize the connection. + """ + return pulumi.get(self, "label") + + @property + @pulumi.getter + def required(self) -> Optional[bool]: + """ + Requirement to configure an authentication key. + """ + return pulumi.get(self, "required") + + +@pulumi.output_type +class ServiceProfileAccessPointTypeConfigLinkProtocolConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "encapsulationStrategy": + suggest = "encapsulation_strategy" + elif key == "reuseVlanSTag": + suggest = "reuse_vlan_s_tag" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfigLinkProtocolConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileAccessPointTypeConfigLinkProtocolConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileAccessPointTypeConfigLinkProtocolConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + encapsulation: Optional[str] = None, + encapsulation_strategy: Optional[str] = None, + reuse_vlan_s_tag: Optional[bool] = None): + """ + :param str encapsulation: Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. + :param str encapsulation_strategy: Additional tagging information required by the seller profile. + :param bool reuse_vlan_s_tag: Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + """ + if encapsulation is not None: + pulumi.set(__self__, "encapsulation", encapsulation) + if encapsulation_strategy is not None: + pulumi.set(__self__, "encapsulation_strategy", encapsulation_strategy) + if reuse_vlan_s_tag is not None: + pulumi.set(__self__, "reuse_vlan_s_tag", reuse_vlan_s_tag) + + @property + @pulumi.getter + def encapsulation(self) -> Optional[str]: + """ + Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. + """ + return pulumi.get(self, "encapsulation") + + @property + @pulumi.getter(name="encapsulationStrategy") + def encapsulation_strategy(self) -> Optional[str]: + """ + Additional tagging information required by the seller profile. + """ + return pulumi.get(self, "encapsulation_strategy") + + @property + @pulumi.getter(name="reuseVlanSTag") + def reuse_vlan_s_tag(self) -> Optional[bool]: + """ + Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + """ + return pulumi.get(self, "reuse_vlan_s_tag") + + +@pulumi.output_type +class ServiceProfileAccount(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "accountName": + suggest = "account_name" + elif key == "accountNumber": + suggest = "account_number" + elif key == "globalCustId": + suggest = "global_cust_id" + elif key == "globalOrgId": + suggest = "global_org_id" + elif key == "globalOrganizationName": + suggest = "global_organization_name" + elif key == "orgId": + suggest = "org_id" + elif key == "organizationName": + suggest = "organization_name" + elif key == "ucmId": + suggest = "ucm_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccount. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileAccount.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileAccount.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + account_name: Optional[str] = None, + account_number: Optional[int] = None, + global_cust_id: Optional[str] = None, + global_org_id: Optional[str] = None, + global_organization_name: Optional[str] = None, + org_id: Optional[int] = None, + organization_name: Optional[str] = None, + ucm_id: Optional[str] = None): + """ + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id + """ + if account_name is not None: + pulumi.set(__self__, "account_name", account_name) + if account_number is not None: + pulumi.set(__self__, "account_number", account_number) + if global_cust_id is not None: + pulumi.set(__self__, "global_cust_id", global_cust_id) + if global_org_id is not None: + pulumi.set(__self__, "global_org_id", global_org_id) + if global_organization_name is not None: + pulumi.set(__self__, "global_organization_name", global_organization_name) + if org_id is not None: + pulumi.set(__self__, "org_id", org_id) + if organization_name is not None: + pulumi.set(__self__, "organization_name", organization_name) + if ucm_id is not None: + pulumi.set(__self__, "ucm_id", ucm_id) + + @property + @pulumi.getter(name="accountName") + def account_name(self) -> Optional[str]: + """ + Legal name of the accountholder. + """ + return pulumi.get(self, "account_name") + + @property + @pulumi.getter(name="accountNumber") + def account_number(self) -> Optional[int]: + """ + Equinix-assigned account number. + """ + return pulumi.get(self, "account_number") + + @property + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> Optional[str]: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_cust_id") + + @property + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> Optional[str]: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_org_id") + + @property + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> Optional[str]: + """ + Equinix-assigned name of the subscriber's parent organization. + """ + return pulumi.get(self, "global_organization_name") + + @property + @pulumi.getter(name="orgId") + def org_id(self) -> Optional[int]: + """ + Equinix-assigned ID of the subscriber's organization. + """ + return pulumi.get(self, "org_id") + + @property + @pulumi.getter(name="organizationName") + def organization_name(self) -> Optional[str]: + """ + Equinix-assigned name of the subscriber's organization. + """ + return pulumi.get(self, "organization_name") + + @property + @pulumi.getter(name="ucmId") + def ucm_id(self) -> Optional[str]: + """ + Enterprise datastore id + """ + return pulumi.get(self, "ucm_id") + + +@pulumi.output_type +class ServiceProfileChangeLog(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "createdBy": + suggest = "created_by" + elif key == "createdByEmail": + suggest = "created_by_email" + elif key == "createdByFullName": + suggest = "created_by_full_name" + elif key == "createdDateTime": + suggest = "created_date_time" + elif key == "deletedBy": + suggest = "deleted_by" + elif key == "deletedByEmail": + suggest = "deleted_by_email" + elif key == "deletedByFullName": + suggest = "deleted_by_full_name" + elif key == "deletedDateTime": + suggest = "deleted_date_time" + elif key == "updatedBy": + suggest = "updated_by" + elif key == "updatedByEmail": + suggest = "updated_by_email" + elif key == "updatedByFullName": + suggest = "updated_by_full_name" + elif key == "updatedDateTime": + suggest = "updated_date_time" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileChangeLog. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileChangeLog.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileChangeLog.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + created_by: Optional[str] = None, + created_by_email: Optional[str] = None, + created_by_full_name: Optional[str] = None, + created_date_time: Optional[str] = None, + deleted_by: Optional[str] = None, + deleted_by_email: Optional[str] = None, + deleted_by_full_name: Optional[str] = None, + deleted_date_time: Optional[str] = None, + updated_by: Optional[str] = None, + updated_by_email: Optional[str] = None, + updated_by_full_name: Optional[str] = None, + updated_date_time: Optional[str] = None): + """ + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time + """ + if created_by is not None: + pulumi.set(__self__, "created_by", created_by) + if created_by_email is not None: + pulumi.set(__self__, "created_by_email", created_by_email) + if created_by_full_name is not None: + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + if created_date_time is not None: + pulumi.set(__self__, "created_date_time", created_date_time) + if deleted_by is not None: + pulumi.set(__self__, "deleted_by", deleted_by) + if deleted_by_email is not None: + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + if deleted_by_full_name is not None: + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + if deleted_date_time is not None: + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + if updated_by is not None: + pulumi.set(__self__, "updated_by", updated_by) + if updated_by_email is not None: + pulumi.set(__self__, "updated_by_email", updated_by_email) + if updated_by_full_name is not None: + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + if updated_date_time is not None: + pulumi.set(__self__, "updated_date_time", updated_date_time) + + @property + @pulumi.getter(name="createdBy") + def created_by(self) -> Optional[str]: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> Optional[str]: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> Optional[str]: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> Optional[str]: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> Optional[str]: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") + + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> Optional[str]: + """ + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") + + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> Optional[str]: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") + + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> Optional[str]: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") + + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> Optional[str]: + """ + Updated by User Key + """ + return pulumi.get(self, "updated_by") + + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> Optional[str]: + """ + Updated by User Email Address + """ + return pulumi.get(self, "updated_by_email") + + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> Optional[str]: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> Optional[str]: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") + + +@pulumi.output_type +class ServiceProfileCustomField(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataType": + suggest = "data_type" + elif key == "captureInEmail": + suggest = "capture_in_email" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileCustomField. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileCustomField.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileCustomField.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_type: str, + label: str, + required: bool, + capture_in_email: Optional[bool] = None, + description: Optional[str] = None, + options: Optional[Sequence[str]] = None): + """ + :param str data_type: Data type + :param str label: Label + :param bool required: Required field + :param bool capture_in_email: Required field + :param str description: Description + :param Sequence[str] options: Options + """ + pulumi.set(__self__, "data_type", data_type) + pulumi.set(__self__, "label", label) + pulumi.set(__self__, "required", required) + if capture_in_email is not None: + pulumi.set(__self__, "capture_in_email", capture_in_email) + if description is not None: + pulumi.set(__self__, "description", description) + if options is not None: + pulumi.set(__self__, "options", options) @property - @pulumi.getter(name="connectionLabel") - def connection_label(self) -> Optional[str]: + @pulumi.getter(name="dataType") + def data_type(self) -> str: """ - Custom name for Connection + Data type """ - return pulumi.get(self, "connection_label") + return pulumi.get(self, "data_type") @property - @pulumi.getter(name="connectionRedundancyRequired") - def connection_redundancy_required(self) -> Optional[bool]: + @pulumi.getter + def label(self) -> str: """ - Mandate redundant connections + Label """ - return pulumi.get(self, "connection_redundancy_required") + return pulumi.get(self, "label") @property - @pulumi.getter(name="enableAutoGenerateServiceKey") - def enable_auto_generate_service_key(self) -> Optional[bool]: + @pulumi.getter + def required(self) -> bool: """ - Enable auto generate service key + Required field """ - return pulumi.get(self, "enable_auto_generate_service_key") + return pulumi.get(self, "required") @property - @pulumi.getter(name="linkProtocolConfig") - def link_protocol_config(self) -> Optional['outputs.ServiceProfileAccessPointTypeConfigLinkProtocolConfig']: + @pulumi.getter(name="captureInEmail") + def capture_in_email(self) -> Optional[bool]: """ - Link protocol configuration details + Required field """ - return pulumi.get(self, "link_protocol_config") + return pulumi.get(self, "capture_in_email") @property - @pulumi.getter(name="supportedBandwidths") - def supported_bandwidths(self) -> Optional[Sequence[int]]: + @pulumi.getter + def description(self) -> Optional[str]: """ - Supported bandwidths + Description """ - return pulumi.get(self, "supported_bandwidths") + return pulumi.get(self, "description") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def options(self) -> Optional[Sequence[str]]: """ - Colo/Port Uuid + Options """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "options") @pulumi.output_type -class ServiceProfileAccessPointTypeConfigApiConfig(dict): +class ServiceProfileMarketingInfo(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "allowOverSubscription": - suggest = "allow_over_subscription" - elif key == "apiAvailable": - suggest = "api_available" - elif key == "bandwidthFromApi": - suggest = "bandwidth_from_api" - elif key == "equinixManagedPort": - suggest = "equinix_managed_port" - elif key == "equinixManagedVlan": - suggest = "equinix_managed_vlan" - elif key == "integrationId": - suggest = "integration_id" - elif key == "overSubscriptionLimit": - suggest = "over_subscription_limit" + if key == "processSteps": + suggest = "process_steps" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfigApiConfig. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMarketingInfo. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileAccessPointTypeConfigApiConfig.__key_warning(key) + ServiceProfileMarketingInfo.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileAccessPointTypeConfigApiConfig.__key_warning(key) + ServiceProfileMarketingInfo.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - allow_over_subscription: Optional[bool] = None, - api_available: Optional[bool] = None, - bandwidth_from_api: Optional[bool] = None, - equinix_managed_port: Optional[bool] = None, - equinix_managed_vlan: Optional[bool] = None, - integration_id: Optional[str] = None, - over_subscription_limit: Optional[int] = None): + logo: Optional[str] = None, + process_steps: Optional[Sequence['outputs.ServiceProfileMarketingInfoProcessStep']] = None, + promotion: Optional[bool] = None): """ - :param bool allow_over_subscription: Setting showing that oversubscription support is available (true) or not (false). The default is false - :param bool api_available: Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. - :param bool bandwidth_from_api: Indicates if the connection bandwidth can be obtained directly from the cloud service provider. - :param bool equinix_managed_port: Setting indicating that the port is managed by Equinix (true) or not (false) - :param bool equinix_managed_vlan: Setting indicating that the VLAN is managed by Equinix (true) or not (false) - :param str integration_id: A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. - :param int over_subscription_limit: Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + :param str logo: Logo + :param Sequence['ServiceProfileMarketingInfoProcessStepArgs'] process_steps: Process Step + :param bool promotion: Promotion """ - if allow_over_subscription is not None: - pulumi.set(__self__, "allow_over_subscription", allow_over_subscription) - if api_available is not None: - pulumi.set(__self__, "api_available", api_available) - if bandwidth_from_api is not None: - pulumi.set(__self__, "bandwidth_from_api", bandwidth_from_api) - if equinix_managed_port is not None: - pulumi.set(__self__, "equinix_managed_port", equinix_managed_port) - if equinix_managed_vlan is not None: - pulumi.set(__self__, "equinix_managed_vlan", equinix_managed_vlan) - if integration_id is not None: - pulumi.set(__self__, "integration_id", integration_id) - if over_subscription_limit is not None: - pulumi.set(__self__, "over_subscription_limit", over_subscription_limit) + if logo is not None: + pulumi.set(__self__, "logo", logo) + if process_steps is not None: + pulumi.set(__self__, "process_steps", process_steps) + if promotion is not None: + pulumi.set(__self__, "promotion", promotion) @property - @pulumi.getter(name="allowOverSubscription") - def allow_over_subscription(self) -> Optional[bool]: + @pulumi.getter + def logo(self) -> Optional[str]: """ - Setting showing that oversubscription support is available (true) or not (false). The default is false + Logo """ - return pulumi.get(self, "allow_over_subscription") + return pulumi.get(self, "logo") @property - @pulumi.getter(name="apiAvailable") - def api_available(self) -> Optional[bool]: + @pulumi.getter(name="processSteps") + def process_steps(self) -> Optional[Sequence['outputs.ServiceProfileMarketingInfoProcessStep']]: """ - Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API. + Process Step """ - return pulumi.get(self, "api_available") + return pulumi.get(self, "process_steps") @property - @pulumi.getter(name="bandwidthFromApi") - def bandwidth_from_api(self) -> Optional[bool]: + @pulumi.getter + def promotion(self) -> Optional[bool]: """ - Indicates if the connection bandwidth can be obtained directly from the cloud service provider. + Promotion """ - return pulumi.get(self, "bandwidth_from_api") + return pulumi.get(self, "promotion") - @property - @pulumi.getter(name="equinixManagedPort") - def equinix_managed_port(self) -> Optional[bool]: + +@pulumi.output_type +class ServiceProfileMarketingInfoProcessStep(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "subTitle": + suggest = "sub_title" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMarketingInfoProcessStep. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileMarketingInfoProcessStep.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileMarketingInfoProcessStep.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + description: Optional[str] = None, + sub_title: Optional[str] = None, + title: Optional[str] = None): """ - Setting indicating that the port is managed by Equinix (true) or not (false) + :param str description: Description + :param str sub_title: Sub Title + :param str title: Title """ - return pulumi.get(self, "equinix_managed_port") + if description is not None: + pulumi.set(__self__, "description", description) + if sub_title is not None: + pulumi.set(__self__, "sub_title", sub_title) + if title is not None: + pulumi.set(__self__, "title", title) @property - @pulumi.getter(name="equinixManagedVlan") - def equinix_managed_vlan(self) -> Optional[bool]: + @pulumi.getter + def description(self) -> Optional[str]: """ - Setting indicating that the VLAN is managed by Equinix (true) or not (false) + Description """ - return pulumi.get(self, "equinix_managed_vlan") + return pulumi.get(self, "description") @property - @pulumi.getter(name="integrationId") - def integration_id(self) -> Optional[str]: + @pulumi.getter(name="subTitle") + def sub_title(self) -> Optional[str]: """ - A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API. + Sub Title """ - return pulumi.get(self, "integration_id") + return pulumi.get(self, "sub_title") @property - @pulumi.getter(name="overSubscriptionLimit") - def over_subscription_limit(self) -> Optional[int]: + @pulumi.getter + def title(self) -> Optional[str]: """ - Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps. + Title """ - return pulumi.get(self, "over_subscription_limit") + return pulumi.get(self, "title") @pulumi.output_type -class ServiceProfileAccessPointTypeConfigAuthenticationKey(dict): +class ServiceProfileMetro(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "displayName": + suggest = "display_name" + elif key == "inTrail": + suggest = "in_trail" + elif key == "sellerRegions": + suggest = "seller_regions" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMetro. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfileMetro.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfileMetro.__key_warning(key) + return super().get(key, default) + def __init__(__self__, *, - description: Optional[str] = None, - label: Optional[str] = None, - required: Optional[bool] = None): + code: Optional[str] = None, + display_name: Optional[str] = None, + ibxs: Optional[Sequence[str]] = None, + in_trail: Optional[bool] = None, + name: Optional[str] = None, + seller_regions: Optional[Mapping[str, str]] = None): + """ + :param str code: Metro Code - Example SV + :param str display_name: Display Name + :param Sequence[str] ibxs: IBX- Equinix International Business Exchange list + :param bool in_trail: In Trail + :param str name: Metro Name + :param Mapping[str, str] seller_regions: Seller Regions + """ + if code is not None: + pulumi.set(__self__, "code", code) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if ibxs is not None: + pulumi.set(__self__, "ibxs", ibxs) + if in_trail is not None: + pulumi.set(__self__, "in_trail", in_trail) + if name is not None: + pulumi.set(__self__, "name", name) + if seller_regions is not None: + pulumi.set(__self__, "seller_regions", seller_regions) + + @property + @pulumi.getter + def code(self) -> Optional[str]: + """ + Metro Code - Example SV + """ + return pulumi.get(self, "code") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[str]: """ - :param str description: Description of authorization key - :param str label: Name of the parameter that must be provided to authorize the connection. - :param bool required: Requirement to configure an authentication key. + Display Name """ - if description is not None: - pulumi.set(__self__, "description", description) - if label is not None: - pulumi.set(__self__, "label", label) - if required is not None: - pulumi.set(__self__, "required", required) + return pulumi.get(self, "display_name") @property @pulumi.getter - def description(self) -> Optional[str]: + def ibxs(self) -> Optional[Sequence[str]]: """ - Description of authorization key + IBX- Equinix International Business Exchange list """ - return pulumi.get(self, "description") + return pulumi.get(self, "ibxs") @property - @pulumi.getter - def label(self) -> Optional[str]: + @pulumi.getter(name="inTrail") + def in_trail(self) -> Optional[bool]: """ - Name of the parameter that must be provided to authorize the connection. + In Trail """ - return pulumi.get(self, "label") + return pulumi.get(self, "in_trail") @property @pulumi.getter - def required(self) -> Optional[bool]: + def name(self) -> Optional[str]: """ - Requirement to configure an authentication key. + Metro Name """ - return pulumi.get(self, "required") + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="sellerRegions") + def seller_regions(self) -> Optional[Mapping[str, str]]: + """ + Seller Regions + """ + return pulumi.get(self, "seller_regions") @pulumi.output_type -class ServiceProfileAccessPointTypeConfigLinkProtocolConfig(dict): +class ServiceProfileNotification(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "encapsulationStrategy": - suggest = "encapsulation_strategy" - elif key == "reuseVlanSTag": - suggest = "reuse_vlan_s_tag" + if key == "sendInterval": + suggest = "send_interval" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccessPointTypeConfigLinkProtocolConfig. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileNotification. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileAccessPointTypeConfigLinkProtocolConfig.__key_warning(key) + ServiceProfileNotification.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileAccessPointTypeConfigLinkProtocolConfig.__key_warning(key) + ServiceProfileNotification.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - encapsulation: Optional[str] = None, - encapsulation_strategy: Optional[str] = None, - reuse_vlan_s_tag: Optional[bool] = None): + emails: Sequence[str], + type: str, + send_interval: Optional[str] = None): """ - :param str encapsulation: Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. - :param str encapsulation_strategy: Additional tagging information required by the seller profile. - :param bool reuse_vlan_s_tag: Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + :param Sequence[str] emails: Array of contact emails + :param Union[str, 'NotificationsType'] type: Notification Type - ALL,CONNECTION*APPROVAL,SALES*REP_NOTIFICATIONS, NOTIFICATIONS + :param str send_interval: Send interval """ - if encapsulation is not None: - pulumi.set(__self__, "encapsulation", encapsulation) - if encapsulation_strategy is not None: - pulumi.set(__self__, "encapsulation_strategy", encapsulation_strategy) - if reuse_vlan_s_tag is not None: - pulumi.set(__self__, "reuse_vlan_s_tag", reuse_vlan_s_tag) + pulumi.set(__self__, "emails", emails) + pulumi.set(__self__, "type", type) + if send_interval is not None: + pulumi.set(__self__, "send_interval", send_interval) @property @pulumi.getter - def encapsulation(self) -> Optional[str]: + def emails(self) -> Sequence[str]: """ - Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard. + Array of contact emails """ - return pulumi.get(self, "encapsulation") + return pulumi.get(self, "emails") @property - @pulumi.getter(name="encapsulationStrategy") - def encapsulation_strategy(self) -> Optional[str]: + @pulumi.getter + def type(self) -> str: """ - Additional tagging information required by the seller profile. + Notification Type - ALL,CONNECTION*APPROVAL,SALES*REP_NOTIFICATIONS, NOTIFICATIONS """ - return pulumi.get(self, "encapsulation_strategy") + return pulumi.get(self, "type") @property - @pulumi.getter(name="reuseVlanSTag") - def reuse_vlan_s_tag(self) -> Optional[bool]: + @pulumi.getter(name="sendInterval") + def send_interval(self) -> Optional[str]: """ - Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. + Send interval """ - return pulumi.get(self, "reuse_vlan_s_tag") + return pulumi.get(self, "send_interval") @pulumi.output_type -class ServiceProfileAccount(dict): +class ServiceProfilePort(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "accountName": - suggest = "account_name" - elif key == "accountNumber": - suggest = "account_number" - elif key == "globalCustId": - suggest = "global_cust_id" - elif key == "globalOrgId": - suggest = "global_org_id" - elif key == "globalOrganizationName": - suggest = "global_organization_name" - elif key == "orgId": - suggest = "org_id" - elif key == "organizationName": - suggest = "organization_name" - elif key == "ucmId": - suggest = "ucm_id" + if key == "crossConnectId": + suggest = "cross_connect_id" + elif key == "sellerRegion": + suggest = "seller_region" + elif key == "sellerRegionDescription": + suggest = "seller_region_description" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileAccount. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in ServiceProfilePort. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileAccount.__key_warning(key) + ServiceProfilePort.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileAccount.__key_warning(key) + ServiceProfilePort.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - account_name: Optional[str] = None, - account_number: Optional[int] = None, - global_cust_id: Optional[str] = None, - global_org_id: Optional[str] = None, - global_organization_name: Optional[str] = None, - org_id: Optional[int] = None, - organization_name: Optional[str] = None, - ucm_id: Optional[str] = None): + type: str, + uuid: str, + cross_connect_id: Optional[str] = None, + location: Optional['outputs.ServiceProfilePortLocation'] = None, + seller_region: Optional[str] = None, + seller_region_description: Optional[str] = None): """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id + :param str type: Colo/Port Type + :param str uuid: Colo/Port Uuid + :param str cross_connect_id: Cross Connect Id + :param 'ServiceProfilePortLocationArgs' location: Colo/Port Location + :param str seller_region: Seller Region + :param str seller_region_description: Seller Region details """ - if account_name is not None: - pulumi.set(__self__, "account_name", account_name) - if account_number is not None: - pulumi.set(__self__, "account_number", account_number) - if global_cust_id is not None: - pulumi.set(__self__, "global_cust_id", global_cust_id) - if global_org_id is not None: - pulumi.set(__self__, "global_org_id", global_org_id) - if global_organization_name is not None: - pulumi.set(__self__, "global_organization_name", global_organization_name) - if org_id is not None: - pulumi.set(__self__, "org_id", org_id) - if organization_name is not None: - pulumi.set(__self__, "organization_name", organization_name) - if ucm_id is not None: - pulumi.set(__self__, "ucm_id", ucm_id) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + if cross_connect_id is not None: + pulumi.set(__self__, "cross_connect_id", cross_connect_id) + if location is not None: + pulumi.set(__self__, "location", location) + if seller_region is not None: + pulumi.set(__self__, "seller_region", seller_region) + if seller_region_description is not None: + pulumi.set(__self__, "seller_region_description", seller_region_description) @property - @pulumi.getter(name="accountName") - def account_name(self) -> Optional[str]: + @pulumi.getter + def type(self) -> str: """ - Legal name of the accountholder. + Colo/Port Type """ - return pulumi.get(self, "account_name") + return pulumi.get(self, "type") @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> Optional[int]: + @pulumi.getter + def uuid(self) -> str: """ - Equinix-assigned account number. + Colo/Port Uuid """ - return pulumi.get(self, "account_number") + return pulumi.get(self, "uuid") @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> Optional[str]: + @pulumi.getter(name="crossConnectId") + def cross_connect_id(self) -> Optional[str]: """ - Equinix-assigned ID of the subscriber's parent organization. + Cross Connect Id """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "cross_connect_id") + + @property + @pulumi.getter + def location(self) -> Optional['outputs.ServiceProfilePortLocation']: + """ + Colo/Port Location + """ + return pulumi.get(self, "location") + + @property + @pulumi.getter(name="sellerRegion") + def seller_region(self) -> Optional[str]: + """ + Seller Region + """ + return pulumi.get(self, "seller_region") + + @property + @pulumi.getter(name="sellerRegionDescription") + def seller_region_description(self) -> Optional[str]: + """ + Seller Region details + """ + return pulumi.get(self, "seller_region_description") + + +@pulumi.output_type +class ServiceProfilePortLocation(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metroCode": + suggest = "metro_code" + elif key == "metroName": + suggest = "metro_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfilePortLocation. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceProfilePortLocation.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceProfilePortLocation.__key_warning(key) + return super().get(key, default) - @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> Optional[str]: + def __init__(__self__, *, + ibx: Optional[str] = None, + metro_code: Optional[str] = None, + metro_name: Optional[str] = None, + region: Optional[str] = None): """ - Equinix-assigned ID of the subscriber's parent organization. + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - return pulumi.get(self, "global_org_id") + if ibx is not None: + pulumi.set(__self__, "ibx", ibx) + if metro_code is not None: + pulumi.set(__self__, "metro_code", metro_code) + if metro_name is not None: + pulumi.set(__self__, "metro_name", metro_name) + if region is not None: + pulumi.set(__self__, "region", region) @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> Optional[str]: + @pulumi.getter + def ibx(self) -> Optional[str]: """ - Equinix-assigned name of the subscriber's parent organization. + IBX Code """ - return pulumi.get(self, "global_organization_name") + return pulumi.get(self, "ibx") @property - @pulumi.getter(name="orgId") - def org_id(self) -> Optional[int]: + @pulumi.getter(name="metroCode") + def metro_code(self) -> Optional[str]: """ - Equinix-assigned ID of the subscriber's organization. + Access point metro code """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "metro_code") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> Optional[str]: + @pulumi.getter(name="metroName") + def metro_name(self) -> Optional[str]: """ - Equinix-assigned name of the subscriber's organization. + Access point metro name """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "metro_name") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> Optional[str]: + @pulumi.getter + def region(self) -> Optional[str]: """ - Enterprise datastore id + Access point region """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "region") @pulumi.output_type -class ServiceProfileChangeLog(dict): +class ServiceProfileProject(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "createdBy": - suggest = "created_by" - elif key == "createdByEmail": - suggest = "created_by_email" - elif key == "createdByFullName": - suggest = "created_by_full_name" - elif key == "createdDateTime": - suggest = "created_date_time" - elif key == "deletedBy": - suggest = "deleted_by" - elif key == "deletedByEmail": - suggest = "deleted_by_email" - elif key == "deletedByFullName": - suggest = "deleted_by_full_name" - elif key == "deletedDateTime": - suggest = "deleted_date_time" - elif key == "updatedBy": - suggest = "updated_by" - elif key == "updatedByEmail": - suggest = "updated_by_email" - elif key == "updatedByFullName": - suggest = "updated_by_full_name" - elif key == "updatedDateTime": - suggest = "updated_date_time" + if key == "projectId": + suggest = "project_id" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileChangeLog. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileProject. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileChangeLog.__key_warning(key) + ServiceProfileProject.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileChangeLog.__key_warning(key) + ServiceProfileProject.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - created_by: Optional[str] = None, - created_by_email: Optional[str] = None, - created_by_full_name: Optional[str] = None, - created_date_time: Optional[str] = None, - deleted_by: Optional[str] = None, - deleted_by_email: Optional[str] = None, - deleted_by_full_name: Optional[str] = None, - deleted_date_time: Optional[str] = None, - updated_by: Optional[str] = None, - updated_by_email: Optional[str] = None, - updated_by_full_name: Optional[str] = None, - updated_date_time: Optional[str] = None): + href: Optional[str] = None, + project_id: Optional[str] = None): """ - :param str created_by: Created by User Key - :param str created_by_email: Created by User Email Address - :param str created_by_full_name: Created by User Full Name - :param str created_date_time: Created by Date and Time - :param str deleted_by: Deleted by User Key - :param str deleted_by_email: Deleted by User Email Address - :param str deleted_by_full_name: Deleted by User Full Name - :param str deleted_date_time: Deleted by Date and Time - :param str updated_by: Updated by User Key - :param str updated_by_email: Updated by User Email Address - :param str updated_by_full_name: Updated by User Full Name - :param str updated_date_time: Updated by Date and Time + :param str href: Unique Resource URL + :param str project_id: Project Id """ - if created_by is not None: - pulumi.set(__self__, "created_by", created_by) - if created_by_email is not None: - pulumi.set(__self__, "created_by_email", created_by_email) - if created_by_full_name is not None: - pulumi.set(__self__, "created_by_full_name", created_by_full_name) - if created_date_time is not None: - pulumi.set(__self__, "created_date_time", created_date_time) - if deleted_by is not None: - pulumi.set(__self__, "deleted_by", deleted_by) - if deleted_by_email is not None: - pulumi.set(__self__, "deleted_by_email", deleted_by_email) - if deleted_by_full_name is not None: - pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) - if deleted_date_time is not None: - pulumi.set(__self__, "deleted_date_time", deleted_date_time) - if updated_by is not None: - pulumi.set(__self__, "updated_by", updated_by) - if updated_by_email is not None: - pulumi.set(__self__, "updated_by_email", updated_by_email) - if updated_by_full_name is not None: - pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) - if updated_date_time is not None: - pulumi.set(__self__, "updated_date_time", updated_date_time) + if href is not None: + pulumi.set(__self__, "href", href) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) @property - @pulumi.getter(name="createdBy") - def created_by(self) -> Optional[str]: + @pulumi.getter + def href(self) -> Optional[str]: """ - Created by User Key + Unique Resource URL """ - return pulumi.get(self, "created_by") + return pulumi.get(self, "href") @property - @pulumi.getter(name="createdByEmail") - def created_by_email(self) -> Optional[str]: + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[str]: """ - Created by User Email Address + Project Id """ - return pulumi.get(self, "created_by_email") + return pulumi.get(self, "project_id") - @property - @pulumi.getter(name="createdByFullName") - def created_by_full_name(self) -> Optional[str]: - """ - Created by User Full Name - """ - return pulumi.get(self, "created_by_full_name") - @property - @pulumi.getter(name="createdDateTime") - def created_date_time(self) -> Optional[str]: - """ - Created by Date and Time - """ - return pulumi.get(self, "created_date_time") +@pulumi.output_type +class ServiceProfileVirtualDevice(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "interfaceUuid": + suggest = "interface_uuid" - @property - @pulumi.getter(name="deletedBy") - def deleted_by(self) -> Optional[str]: - """ - Deleted by User Key - """ - return pulumi.get(self, "deleted_by") + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileVirtualDevice. Access the value via the '{suggest}' property getter instead.") - @property - @pulumi.getter(name="deletedByEmail") - def deleted_by_email(self) -> Optional[str]: - """ - Deleted by User Email Address - """ - return pulumi.get(self, "deleted_by_email") + def __getitem__(self, key: str) -> Any: + ServiceProfileVirtualDevice.__key_warning(key) + return super().__getitem__(key) - @property - @pulumi.getter(name="deletedByFullName") - def deleted_by_full_name(self) -> Optional[str]: - """ - Deleted by User Full Name - """ - return pulumi.get(self, "deleted_by_full_name") + def get(self, key: str, default = None) -> Any: + ServiceProfileVirtualDevice.__key_warning(key) + return super().get(key, default) - @property - @pulumi.getter(name="deletedDateTime") - def deleted_date_time(self) -> Optional[str]: + def __init__(__self__, *, + type: str, + uuid: str, + interface_uuid: Optional[str] = None, + location: Optional['outputs.ServiceProfileVirtualDeviceLocation'] = None): """ - Deleted by Date and Time + :param str type: Virtual Device Type + :param str uuid: Virtual Device Uuid + :param str interface_uuid: Device Interface Uuid + :param 'ServiceProfileVirtualDeviceLocationArgs' location: Device Location """ - return pulumi.get(self, "deleted_date_time") + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + if interface_uuid is not None: + pulumi.set(__self__, "interface_uuid", interface_uuid) + if location is not None: + pulumi.set(__self__, "location", location) @property - @pulumi.getter(name="updatedBy") - def updated_by(self) -> Optional[str]: + @pulumi.getter + def type(self) -> str: """ - Updated by User Key + Virtual Device Type """ - return pulumi.get(self, "updated_by") + return pulumi.get(self, "type") @property - @pulumi.getter(name="updatedByEmail") - def updated_by_email(self) -> Optional[str]: + @pulumi.getter + def uuid(self) -> str: """ - Updated by User Email Address + Virtual Device Uuid """ - return pulumi.get(self, "updated_by_email") + return pulumi.get(self, "uuid") @property - @pulumi.getter(name="updatedByFullName") - def updated_by_full_name(self) -> Optional[str]: + @pulumi.getter(name="interfaceUuid") + def interface_uuid(self) -> Optional[str]: """ - Updated by User Full Name + Device Interface Uuid """ - return pulumi.get(self, "updated_by_full_name") + return pulumi.get(self, "interface_uuid") @property - @pulumi.getter(name="updatedDateTime") - def updated_date_time(self) -> Optional[str]: + @pulumi.getter + def location(self) -> Optional['outputs.ServiceProfileVirtualDeviceLocation']: """ - Updated by Date and Time + Device Location """ - return pulumi.get(self, "updated_date_time") + return pulumi.get(self, "location") @pulumi.output_type -class ServiceProfileCustomField(dict): +class ServiceProfileVirtualDeviceLocation(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "dataType": - suggest = "data_type" - elif key == "captureInEmail": - suggest = "capture_in_email" + if key == "metroCode": + suggest = "metro_code" + elif key == "metroName": + suggest = "metro_name" if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileCustomField. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in ServiceProfileVirtualDeviceLocation. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - ServiceProfileCustomField.__key_warning(key) + ServiceProfileVirtualDeviceLocation.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - ServiceProfileCustomField.__key_warning(key) + ServiceProfileVirtualDeviceLocation.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - data_type: str, - label: str, - required: bool, - capture_in_email: Optional[bool] = None, - description: Optional[str] = None, - options: Optional[Sequence[str]] = None): + ibx: Optional[str] = None, + metro_code: Optional[str] = None, + metro_name: Optional[str] = None, + region: Optional[str] = None): """ - :param str data_type: Data type - :param str label: Label - :param bool required: Required field - :param bool capture_in_email: Required field - :param str description: Description - :param Sequence[str] options: Options + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - pulumi.set(__self__, "data_type", data_type) - pulumi.set(__self__, "label", label) - pulumi.set(__self__, "required", required) - if capture_in_email is not None: - pulumi.set(__self__, "capture_in_email", capture_in_email) - if description is not None: - pulumi.set(__self__, "description", description) - if options is not None: - pulumi.set(__self__, "options", options) + if ibx is not None: + pulumi.set(__self__, "ibx", ibx) + if metro_code is not None: + pulumi.set(__self__, "metro_code", metro_code) + if metro_name is not None: + pulumi.set(__self__, "metro_name", metro_name) + if region is not None: + pulumi.set(__self__, "region", region) @property - @pulumi.getter(name="dataType") - def data_type(self) -> str: + @pulumi.getter + def ibx(self) -> Optional[str]: """ - Data type + IBX Code """ - return pulumi.get(self, "data_type") + return pulumi.get(self, "ibx") @property - @pulumi.getter - def label(self) -> str: + @pulumi.getter(name="metroCode") + def metro_code(self) -> Optional[str]: """ - Label + Access point metro code """ - return pulumi.get(self, "label") + return pulumi.get(self, "metro_code") @property - @pulumi.getter - def required(self) -> bool: + @pulumi.getter(name="metroName") + def metro_name(self) -> Optional[str]: """ - Required field + Access point metro name """ - return pulumi.get(self, "required") + return pulumi.get(self, "metro_name") @property - @pulumi.getter(name="captureInEmail") - def capture_in_email(self) -> Optional[bool]: + @pulumi.getter + def region(self) -> Optional[str]: """ - Required field + Access point region """ - return pulumi.get(self, "capture_in_email") + return pulumi.get(self, "region") - @property - @pulumi.getter - def description(self) -> Optional[str]: + +@pulumi.output_type +class GetCloudRouterAccountResult(dict): + def __init__(__self__, *, + account_number: int): """ - Description + :param int account_number: Account Number """ - return pulumi.get(self, "description") + pulumi.set(__self__, "account_number", account_number) @property - @pulumi.getter - def options(self) -> Optional[Sequence[str]]: + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: """ - Options + Account Number """ - return pulumi.get(self, "options") + return pulumi.get(self, "account_number") @pulumi.output_type -class ServiceProfileMarketingInfo(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "processSteps": - suggest = "process_steps" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMarketingInfo. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfileMarketingInfo.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ServiceProfileMarketingInfo.__key_warning(key) - return super().get(key, default) - +class GetCloudRouterChangeLogResult(dict): def __init__(__self__, *, - logo: Optional[str] = None, - process_steps: Optional[Sequence['outputs.ServiceProfileMarketingInfoProcessStep']] = None, - promotion: Optional[bool] = None): + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): """ - :param str logo: Logo - :param Sequence['ServiceProfileMarketingInfoProcessStepArgs'] process_steps: Process Step - :param bool promotion: Promotion + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - if logo is not None: - pulumi.set(__self__, "logo", logo) - if process_steps is not None: - pulumi.set(__self__, "process_steps", process_steps) - if promotion is not None: - pulumi.set(__self__, "promotion", promotion) + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter - def logo(self) -> Optional[str]: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: """ - Logo + Created by User Key """ - return pulumi.get(self, "logo") + return pulumi.get(self, "created_by") @property - @pulumi.getter(name="processSteps") - def process_steps(self) -> Optional[Sequence['outputs.ServiceProfileMarketingInfoProcessStep']]: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: """ - Process Step + Created by User Email Address """ - return pulumi.get(self, "process_steps") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter - def promotion(self) -> Optional[bool]: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: """ - Promotion + Created by User Full Name """ - return pulumi.get(self, "promotion") + return pulumi.get(self, "created_by_full_name") + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") -@pulumi.output_type -class ServiceProfileMarketingInfoProcessStep(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "subTitle": - suggest = "sub_title" + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMarketingInfoProcessStep. Access the value via the '{suggest}' property getter instead.") + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: + """ + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") - def __getitem__(self, key: str) -> Any: - ServiceProfileMarketingInfoProcessStep.__key_warning(key) - return super().__getitem__(key) + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") - def get(self, key: str, default = None) -> Any: - ServiceProfileMarketingInfoProcessStep.__key_warning(key) - return super().get(key, default) + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") - def __init__(__self__, *, - description: Optional[str] = None, - sub_title: Optional[str] = None, - title: Optional[str] = None): + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: """ - :param str description: Description - :param str sub_title: Sub Title - :param str title: Title + Updated by User Key """ - if description is not None: - pulumi.set(__self__, "description", description) - if sub_title is not None: - pulumi.set(__self__, "sub_title", sub_title) - if title is not None: - pulumi.set(__self__, "title", title) + return pulumi.get(self, "updated_by") @property - @pulumi.getter - def description(self) -> Optional[str]: + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - Description + Updated by User Email Address """ - return pulumi.get(self, "description") + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter(name="subTitle") - def sub_title(self) -> Optional[str]: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - Sub Title + Updated by User Full Name """ - return pulumi.get(self, "sub_title") + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter - def title(self) -> Optional[str]: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Title + Updated by Date and Time """ - return pulumi.get(self, "title") + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class ServiceProfileMetro(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "displayName": - suggest = "display_name" - elif key == "inTrail": - suggest = "in_trail" - elif key == "sellerRegions": - suggest = "seller_regions" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileMetro. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfileMetro.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ServiceProfileMetro.__key_warning(key) - return super().get(key, default) - +class GetCloudRouterLocationResult(dict): def __init__(__self__, *, - code: Optional[str] = None, - display_name: Optional[str] = None, - ibxs: Optional[Sequence[str]] = None, - in_trail: Optional[bool] = None, - name: Optional[str] = None, - seller_regions: Optional[Mapping[str, str]] = None): + ibx: str, + metro_code: str, + metro_name: str, + region: str): """ - :param str code: Metro Code - Example SV - :param str display_name: Display Name - :param Sequence[str] ibxs: IBX- Equinix International Business Exchange list - :param bool in_trail: In Trail - :param str name: Metro Name - :param Mapping[str, str] seller_regions: Seller Regions + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - if code is not None: - pulumi.set(__self__, "code", code) - if display_name is not None: - pulumi.set(__self__, "display_name", display_name) - if ibxs is not None: - pulumi.set(__self__, "ibxs", ibxs) - if in_trail is not None: - pulumi.set(__self__, "in_trail", in_trail) - if name is not None: - pulumi.set(__self__, "name", name) - if seller_regions is not None: - pulumi.set(__self__, "seller_regions", seller_regions) + pulumi.set(__self__, "ibx", ibx) + pulumi.set(__self__, "metro_code", metro_code) + pulumi.set(__self__, "metro_name", metro_name) + pulumi.set(__self__, "region", region) @property @pulumi.getter - def code(self) -> Optional[str]: + def ibx(self) -> str: """ - Metro Code - Example SV + IBX Code """ - return pulumi.get(self, "code") + return pulumi.get(self, "ibx") @property - @pulumi.getter(name="displayName") - def display_name(self) -> Optional[str]: + @pulumi.getter(name="metroCode") + def metro_code(self) -> str: """ - Display Name + Access point metro code """ - return pulumi.get(self, "display_name") + return pulumi.get(self, "metro_code") @property - @pulumi.getter - def ibxs(self) -> Optional[Sequence[str]]: + @pulumi.getter(name="metroName") + def metro_name(self) -> str: """ - IBX- Equinix International Business Exchange list + Access point metro name """ - return pulumi.get(self, "ibxs") + return pulumi.get(self, "metro_name") @property - @pulumi.getter(name="inTrail") - def in_trail(self) -> Optional[bool]: + @pulumi.getter + def region(self) -> str: """ - In Trail + Access point region """ - return pulumi.get(self, "in_trail") + return pulumi.get(self, "region") + + +@pulumi.output_type +class GetCloudRouterMarketplaceSubscriptionResult(dict): + def __init__(__self__, *, + type: str, + uuid: str): + """ + :param str type: Marketplace Subscription type like; AWS_MARKETPLACE_SUBSCRIPTION + :param str uuid: Equinix-assigned Marketplace Subscription identifier + """ + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def name(self) -> Optional[str]: + def type(self) -> str: """ - Metro Name + Marketplace Subscription type like; AWS_MARKETPLACE_SUBSCRIPTION """ - return pulumi.get(self, "name") + return pulumi.get(self, "type") @property - @pulumi.getter(name="sellerRegions") - def seller_regions(self) -> Optional[Mapping[str, str]]: + @pulumi.getter + def uuid(self) -> str: """ - Seller Regions + Equinix-assigned Marketplace Subscription identifier """ - return pulumi.get(self, "seller_regions") + return pulumi.get(self, "uuid") @pulumi.output_type -class ServiceProfileNotification(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "sendInterval": - suggest = "send_interval" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileNotification. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfileNotification.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ServiceProfileNotification.__key_warning(key) - return super().get(key, default) - +class GetCloudRouterNotificationResult(dict): def __init__(__self__, *, emails: Sequence[str], type: str, send_interval: Optional[str] = None): """ :param Sequence[str] emails: Array of contact emails - :param Union[str, 'NotificationsType'] type: Notification Type - ALL,CONNECTION*APPROVAL,SALES*REP_NOTIFICATIONS, NOTIFICATIONS + :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS :param str send_interval: Send interval """ pulumi.set(__self__, "emails", emails) @@ -5929,7 +7107,7 @@ def emails(self) -> Sequence[str]: @pulumi.getter def type(self) -> str: """ - Notification Type - ALL,CONNECTION*APPROVAL,SALES*REP_NOTIFICATIONS, NOTIFICATIONS + Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS """ return pulumi.get(self, "type") @@ -5943,371 +7121,332 @@ def send_interval(self) -> Optional[str]: @pulumi.output_type -class ServiceProfilePort(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "crossConnectId": - suggest = "cross_connect_id" - elif key == "sellerRegion": - suggest = "seller_region" - elif key == "sellerRegionDescription": - suggest = "seller_region_description" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfilePort. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfilePort.__key_warning(key) - return super().__getitem__(key) +class GetCloudRouterOrderResult(dict): + def __init__(__self__, *, + billing_tier: str, + order_id: str, + order_number: str, + purchase_order_number: str): + """ + :param str billing_tier: Billing tier for connection bandwidth + :param str order_id: Order Identification + :param str order_number: Order Reference Number + :param str purchase_order_number: Purchase order number + """ + pulumi.set(__self__, "billing_tier", billing_tier) + pulumi.set(__self__, "order_id", order_id) + pulumi.set(__self__, "order_number", order_number) + pulumi.set(__self__, "purchase_order_number", purchase_order_number) - def get(self, key: str, default = None) -> Any: - ServiceProfilePort.__key_warning(key) - return super().get(key, default) + @property + @pulumi.getter(name="billingTier") + def billing_tier(self) -> str: + """ + Billing tier for connection bandwidth + """ + return pulumi.get(self, "billing_tier") - def __init__(__self__, *, - type: str, - uuid: str, - cross_connect_id: Optional[str] = None, - location: Optional['outputs.ServiceProfilePortLocation'] = None, - seller_region: Optional[str] = None, - seller_region_description: Optional[str] = None): + @property + @pulumi.getter(name="orderId") + def order_id(self) -> str: """ - :param str type: Colo/Port Type - :param str uuid: Colo/Port Uuid - :param str cross_connect_id: Cross Connect Id - :param 'ServiceProfilePortLocationArgs' location: Colo/Port Location - :param str seller_region: Seller Region - :param str seller_region_description: Seller Region details + Order Identification """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) - if cross_connect_id is not None: - pulumi.set(__self__, "cross_connect_id", cross_connect_id) - if location is not None: - pulumi.set(__self__, "location", location) - if seller_region is not None: - pulumi.set(__self__, "seller_region", seller_region) - if seller_region_description is not None: - pulumi.set(__self__, "seller_region_description", seller_region_description) + return pulumi.get(self, "order_id") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="orderNumber") + def order_number(self) -> str: """ - Colo/Port Type + Order Reference Number """ - return pulumi.get(self, "type") + return pulumi.get(self, "order_number") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="purchaseOrderNumber") + def purchase_order_number(self) -> str: """ - Colo/Port Uuid + Purchase order number """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "purchase_order_number") - @property - @pulumi.getter(name="crossConnectId") - def cross_connect_id(self) -> Optional[str]: + +@pulumi.output_type +class GetCloudRouterPackageResult(dict): + def __init__(__self__, *, + code: str): """ - Cross Connect Id + :param str code: Fabric Cloud Router package code """ - return pulumi.get(self, "cross_connect_id") + pulumi.set(__self__, "code", code) @property @pulumi.getter - def location(self) -> Optional['outputs.ServiceProfilePortLocation']: + def code(self) -> str: """ - Colo/Port Location + Fabric Cloud Router package code """ - return pulumi.get(self, "location") + return pulumi.get(self, "code") + + +@pulumi.output_type +class GetCloudRouterProjectResult(dict): + def __init__(__self__, *, + href: str, + project_id: str): + """ + :param str href: Unique Resource URL + :param str project_id: Project Id + """ + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) @property - @pulumi.getter(name="sellerRegion") - def seller_region(self) -> Optional[str]: + @pulumi.getter + def href(self) -> str: """ - Seller Region + Unique Resource URL """ - return pulumi.get(self, "seller_region") + return pulumi.get(self, "href") @property - @pulumi.getter(name="sellerRegionDescription") - def seller_region_description(self) -> Optional[str]: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Seller Region details + Project Id """ - return pulumi.get(self, "seller_region_description") + return pulumi.get(self, "project_id") @pulumi.output_type -class ServiceProfilePortLocation(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "metroCode": - suggest = "metro_code" - elif key == "metroName": - suggest = "metro_name" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfilePortLocation. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfilePortLocation.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ServiceProfilePortLocation.__key_warning(key) - return super().get(key, default) - +class GetCloudRoutersDataResult(dict): def __init__(__self__, *, - ibx: Optional[str] = None, - metro_code: Optional[str] = None, - metro_name: Optional[str] = None, - region: Optional[str] = None): + accounts: Sequence['outputs.GetCloudRoutersDataAccountResult'], + bgp_ipv4_routes_count: int, + bgp_ipv6_routes_count: int, + change_logs: Sequence['outputs.GetCloudRoutersDataChangeLogResult'], + connections_count: int, + description: str, + distinct_ipv4_prefixes_count: int, + distinct_ipv6_prefixes_count: int, + equinix_asn: int, + href: str, + locations: Sequence['outputs.GetCloudRoutersDataLocationResult'], + marketplace_subscriptions: Sequence['outputs.GetCloudRoutersDataMarketplaceSubscriptionResult'], + name: str, + notifications: Sequence['outputs.GetCloudRoutersDataNotificationResult'], + orders: Sequence['outputs.GetCloudRoutersDataOrderResult'], + packages: Sequence['outputs.GetCloudRoutersDataPackageResult'], + projects: Sequence['outputs.GetCloudRoutersDataProjectResult'], + state: str, + type: str, + uuid: str): """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + :param Sequence['GetCloudRoutersDataAccountArgs'] accounts: Customer account information that is associated with this Fabric Cloud Router + :param int bgp_ipv4_routes_count: Number of IPv4 BGP routes in use (including non-distinct prefixes) + :param int bgp_ipv6_routes_count: Number of IPv6 BGP routes in use (including non-distinct prefixes) + :param Sequence['GetCloudRoutersDataChangeLogArgs'] change_logs: Captures Fabric Cloud Router lifecycle change information + :param int connections_count: Number of connections associated with this Fabric Cloud Router instance + :param str description: Customer-provided Fabric Cloud Router description + :param int distinct_ipv4_prefixes_count: Number of distinct IPv4 routes + :param int distinct_ipv6_prefixes_count: Number of distinct IPv6 routes + :param int equinix_asn: Equinix ASN + :param str href: Fabric Cloud Router URI information + :param Sequence['GetCloudRoutersDataLocationArgs'] locations: Fabric Cloud Router location + :param Sequence['GetCloudRoutersDataMarketplaceSubscriptionArgs'] marketplace_subscriptions: Equinix Fabric Entity for Marketplace Subscription + :param str name: Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores + :param Sequence['GetCloudRoutersDataNotificationArgs'] notifications: Preferences for notifications on Fabric Cloud Router configuration or status changes + :param Sequence['GetCloudRoutersDataOrderArgs'] orders: Order information related to this Fabric Cloud Router + :param Sequence['GetCloudRoutersDataPackageArgs'] packages: Fabric Cloud Router Package Type + :param Sequence['GetCloudRoutersDataProjectArgs'] projects: Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects + :param str state: Fabric Cloud Router overall state + :param str type: Defines the FCR type like; XF_ROUTER + :param str uuid: Equinix-assigned Fabric Cloud Router identifier """ - if ibx is not None: - pulumi.set(__self__, "ibx", ibx) - if metro_code is not None: - pulumi.set(__self__, "metro_code", metro_code) - if metro_name is not None: - pulumi.set(__self__, "metro_name", metro_name) - if region is not None: - pulumi.set(__self__, "region", region) + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "bgp_ipv4_routes_count", bgp_ipv4_routes_count) + pulumi.set(__self__, "bgp_ipv6_routes_count", bgp_ipv6_routes_count) + pulumi.set(__self__, "change_logs", change_logs) + pulumi.set(__self__, "connections_count", connections_count) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "distinct_ipv4_prefixes_count", distinct_ipv4_prefixes_count) + pulumi.set(__self__, "distinct_ipv6_prefixes_count", distinct_ipv6_prefixes_count) + pulumi.set(__self__, "equinix_asn", equinix_asn) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "locations", locations) + pulumi.set(__self__, "marketplace_subscriptions", marketplace_subscriptions) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "notifications", notifications) + pulumi.set(__self__, "orders", orders) + pulumi.set(__self__, "packages", packages) + pulumi.set(__self__, "projects", projects) + pulumi.set(__self__, "state", state) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def ibx(self) -> Optional[str]: + def accounts(self) -> Sequence['outputs.GetCloudRoutersDataAccountResult']: """ - IBX Code + Customer account information that is associated with this Fabric Cloud Router """ - return pulumi.get(self, "ibx") + return pulumi.get(self, "accounts") @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> Optional[str]: + @pulumi.getter(name="bgpIpv4RoutesCount") + def bgp_ipv4_routes_count(self) -> int: """ - Access point metro code + Number of IPv4 BGP routes in use (including non-distinct prefixes) """ - return pulumi.get(self, "metro_code") + return pulumi.get(self, "bgp_ipv4_routes_count") @property - @pulumi.getter(name="metroName") - def metro_name(self) -> Optional[str]: + @pulumi.getter(name="bgpIpv6RoutesCount") + def bgp_ipv6_routes_count(self) -> int: """ - Access point metro name + Number of IPv6 BGP routes in use (including non-distinct prefixes) """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "bgp_ipv6_routes_count") @property - @pulumi.getter - def region(self) -> Optional[str]: + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetCloudRoutersDataChangeLogResult']: """ - Access point region + Captures Fabric Cloud Router lifecycle change information """ - return pulumi.get(self, "region") - - -@pulumi.output_type -class ServiceProfileProject(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "projectId": - suggest = "project_id" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileProject. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfileProject.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ServiceProfileProject.__key_warning(key) - return super().get(key, default) + return pulumi.get(self, "change_logs") - def __init__(__self__, *, - href: Optional[str] = None, - project_id: Optional[str] = None): + @property + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> int: """ - :param str href: Unique Resource URL - :param str project_id: Project Id + Number of connections associated with this Fabric Cloud Router instance """ - if href is not None: - pulumi.set(__self__, "href", href) - if project_id is not None: - pulumi.set(__self__, "project_id", project_id) + return pulumi.get(self, "connections_count") @property @pulumi.getter - def href(self) -> Optional[str]: + def description(self) -> str: """ - Unique Resource URL + Customer-provided Fabric Cloud Router description """ - return pulumi.get(self, "href") + return pulumi.get(self, "description") @property - @pulumi.getter(name="projectId") - def project_id(self) -> Optional[str]: + @pulumi.getter(name="distinctIpv4PrefixesCount") + def distinct_ipv4_prefixes_count(self) -> int: """ - Project Id + Number of distinct IPv4 routes """ - return pulumi.get(self, "project_id") - - -@pulumi.output_type -class ServiceProfileVirtualDevice(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "interfaceUuid": - suggest = "interface_uuid" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileVirtualDevice. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ServiceProfileVirtualDevice.__key_warning(key) - return super().__getitem__(key) + return pulumi.get(self, "distinct_ipv4_prefixes_count") - def get(self, key: str, default = None) -> Any: - ServiceProfileVirtualDevice.__key_warning(key) - return super().get(key, default) + @property + @pulumi.getter(name="distinctIpv6PrefixesCount") + def distinct_ipv6_prefixes_count(self) -> int: + """ + Number of distinct IPv6 routes + """ + return pulumi.get(self, "distinct_ipv6_prefixes_count") - def __init__(__self__, *, - type: str, - uuid: str, - interface_uuid: Optional[str] = None, - location: Optional['outputs.ServiceProfileVirtualDeviceLocation'] = None): + @property + @pulumi.getter(name="equinixAsn") + def equinix_asn(self) -> int: """ - :param str type: Virtual Device Type - :param str uuid: Virtual Device Uuid - :param str interface_uuid: Device Interface Uuid - :param 'ServiceProfileVirtualDeviceLocationArgs' location: Device Location + Equinix ASN """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) - if interface_uuid is not None: - pulumi.set(__self__, "interface_uuid", interface_uuid) - if location is not None: - pulumi.set(__self__, "location", location) + return pulumi.get(self, "equinix_asn") @property @pulumi.getter - def type(self) -> str: + def href(self) -> str: """ - Virtual Device Type + Fabric Cloud Router URI information """ - return pulumi.get(self, "type") + return pulumi.get(self, "href") @property @pulumi.getter - def uuid(self) -> str: + def locations(self) -> Sequence['outputs.GetCloudRoutersDataLocationResult']: """ - Virtual Device Uuid + Fabric Cloud Router location """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "locations") @property - @pulumi.getter(name="interfaceUuid") - def interface_uuid(self) -> Optional[str]: + @pulumi.getter(name="marketplaceSubscriptions") + def marketplace_subscriptions(self) -> Sequence['outputs.GetCloudRoutersDataMarketplaceSubscriptionResult']: """ - Device Interface Uuid + Equinix Fabric Entity for Marketplace Subscription """ - return pulumi.get(self, "interface_uuid") + return pulumi.get(self, "marketplace_subscriptions") @property @pulumi.getter - def location(self) -> Optional['outputs.ServiceProfileVirtualDeviceLocation']: + def name(self) -> str: """ - Device Location + Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores """ - return pulumi.get(self, "location") - - -@pulumi.output_type -class ServiceProfileVirtualDeviceLocation(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "metroCode": - suggest = "metro_code" - elif key == "metroName": - suggest = "metro_name" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ServiceProfileVirtualDeviceLocation. Access the value via the '{suggest}' property getter instead.") + return pulumi.get(self, "name") - def __getitem__(self, key: str) -> Any: - ServiceProfileVirtualDeviceLocation.__key_warning(key) - return super().__getitem__(key) + @property + @pulumi.getter + def notifications(self) -> Sequence['outputs.GetCloudRoutersDataNotificationResult']: + """ + Preferences for notifications on Fabric Cloud Router configuration or status changes + """ + return pulumi.get(self, "notifications") - def get(self, key: str, default = None) -> Any: - ServiceProfileVirtualDeviceLocation.__key_warning(key) - return super().get(key, default) + @property + @pulumi.getter + def orders(self) -> Sequence['outputs.GetCloudRoutersDataOrderResult']: + """ + Order information related to this Fabric Cloud Router + """ + return pulumi.get(self, "orders") - def __init__(__self__, *, - ibx: Optional[str] = None, - metro_code: Optional[str] = None, - metro_name: Optional[str] = None, - region: Optional[str] = None): + @property + @pulumi.getter + def packages(self) -> Sequence['outputs.GetCloudRoutersDataPackageResult']: """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + Fabric Cloud Router Package Type """ - if ibx is not None: - pulumi.set(__self__, "ibx", ibx) - if metro_code is not None: - pulumi.set(__self__, "metro_code", metro_code) - if metro_name is not None: - pulumi.set(__self__, "metro_name", metro_name) - if region is not None: - pulumi.set(__self__, "region", region) + return pulumi.get(self, "packages") @property @pulumi.getter - def ibx(self) -> Optional[str]: + def projects(self) -> Sequence['outputs.GetCloudRoutersDataProjectResult']: """ - IBX Code + Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects """ - return pulumi.get(self, "ibx") + return pulumi.get(self, "projects") @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> Optional[str]: + @pulumi.getter + def state(self) -> str: """ - Access point metro code + Fabric Cloud Router overall state """ - return pulumi.get(self, "metro_code") + return pulumi.get(self, "state") @property - @pulumi.getter(name="metroName") - def metro_name(self) -> Optional[str]: + @pulumi.getter + def type(self) -> str: """ - Access point metro name + Defines the FCR type like; XF_ROUTER """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "type") @property @pulumi.getter - def region(self) -> Optional[str]: + def uuid(self) -> str: """ - Access point region + Equinix-assigned Fabric Cloud Router identifier """ - return pulumi.get(self, "region") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRouterAccountResult(dict): +class GetCloudRoutersDataAccountResult(dict): def __init__(__self__, *, account_number: int): """ @@ -6325,7 +7464,7 @@ def account_number(self) -> int: @pulumi.output_type -class GetCloudRouterChangeLogResult(dict): +class GetCloudRoutersDataChangeLogResult(dict): def __init__(__self__, *, created_by: str, created_by_email: str, @@ -6464,7 +7603,7 @@ def updated_date_time(self) -> str: @pulumi.output_type -class GetCloudRouterLocationResult(dict): +class GetCloudRoutersDataLocationResult(dict): def __init__(__self__, *, ibx: str, metro_code: str, @@ -6515,7 +7654,7 @@ def region(self) -> str: @pulumi.output_type -class GetCloudRouterMarketplaceSubscriptionResult(dict): +class GetCloudRoutersDataMarketplaceSubscriptionResult(dict): def __init__(__self__, *, type: str, uuid: str): @@ -6544,7 +7683,7 @@ def uuid(self) -> str: @pulumi.output_type -class GetCloudRouterNotificationResult(dict): +class GetCloudRoutersDataNotificationResult(dict): def __init__(__self__, *, emails: Sequence[str], type: str, @@ -6585,7 +7724,7 @@ def send_interval(self) -> Optional[str]: @pulumi.output_type -class GetCloudRouterOrderResult(dict): +class GetCloudRoutersDataOrderResult(dict): def __init__(__self__, *, billing_tier: str, order_id: str, @@ -6636,438 +7775,615 @@ def purchase_order_number(self) -> str: @pulumi.output_type -class GetCloudRouterPackageResult(dict): +class GetCloudRoutersDataPackageResult(dict): def __init__(__self__, *, code: str): """ - :param str code: Fabric Cloud Router package code + :param str code: Fabric Cloud Router package code + """ + pulumi.set(__self__, "code", code) + + @property + @pulumi.getter + def code(self) -> str: + """ + Fabric Cloud Router package code + """ + return pulumi.get(self, "code") + + +@pulumi.output_type +class GetCloudRoutersDataProjectResult(dict): + def __init__(__self__, *, + href: str, + project_id: str): + """ + :param str href: Unique Resource URL + :param str project_id: Project Id + """ + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) + + @property + @pulumi.getter + def href(self) -> str: + """ + Unique Resource URL + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + """ + Project Id + """ + return pulumi.get(self, "project_id") + + +@pulumi.output_type +class GetCloudRoutersFilterResult(dict): + def __init__(__self__, *, + operator: str, + property: str, + values: Sequence[str], + or_: Optional[bool] = None): + """ + :param str operator: Possible operators to use on the filter property. Can be one of the following: [= - equal, != - not equal, > - greater than, >= - greater than or equal to, < - less than, <= - less than or equal to, [NOT] BETWEEN - (not) between, [NOT] LIKE - (not) like, [NOT] IN - (not) in + :param str property: The API response property which you want to filter your request on. Can be one of the following: "/project/projectId", "/name", "/uuid", "/state", "/location/metroCode", "/location/metroName", "/package/code", "/*" + :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search + :param bool or_: Boolean flag indicating whether this filter is included in the OR group. There can only be one OR group and it can have a maximum of 3 filters. The OR group only counts as 1 of the 8 possible filters + """ + pulumi.set(__self__, "operator", operator) + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "values", values) + if or_ is not None: + pulumi.set(__self__, "or_", or_) + + @property + @pulumi.getter + def operator(self) -> str: + """ + Possible operators to use on the filter property. Can be one of the following: [= - equal, != - not equal, > - greater than, >= - greater than or equal to, < - less than, <= - less than or equal to, [NOT] BETWEEN - (not) between, [NOT] LIKE - (not) like, [NOT] IN - (not) in + """ + return pulumi.get(self, "operator") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + """ + The values that you want to apply the property+operator combination to in order to filter your data search + """ + return pulumi.get(self, "values") + + @property + @pulumi.getter(name="or") + def or_(self) -> Optional[bool]: + """ + Boolean flag indicating whether this filter is included in the OR group. There can only be one OR group and it can have a maximum of 3 filters. The OR group only counts as 1 of the 8 possible filters + """ + return pulumi.get(self, "or_") + + @property + @pulumi.getter + def property(self) -> str: + """ + The API response property which you want to filter your request on. Can be one of the following: "/project/projectId", "/name", "/uuid", "/state", "/location/metroCode", "/location/metroName", "/package/code", "/*" + """ + return pulumi.get(self, "property") + + +@pulumi.output_type +class GetCloudRoutersPaginationResult(dict): + def __init__(__self__, *, + limit: Optional[int] = None, + offset: Optional[int] = None): + """ + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + """ + if limit is not None: + pulumi.set(__self__, "limit", limit) + if offset is not None: + pulumi.set(__self__, "offset", offset) + + @property + @pulumi.getter + def limit(self) -> Optional[int]: + """ + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 """ - pulumi.set(__self__, "code", code) + return pulumi.get(self, "limit") @property @pulumi.getter - def code(self) -> str: + def offset(self) -> Optional[int]: """ - Fabric Cloud Router package code + The page offset for the pagination request. Index of the first element. Default is 0. """ - return pulumi.get(self, "code") + return pulumi.get(self, "offset") @pulumi.output_type -class GetCloudRouterProjectResult(dict): +class GetCloudRoutersSortResult(dict): def __init__(__self__, *, - href: str, - project_id: str): + direction: Optional[str] = None, + property: Optional[str] = None): """ - :param str href: Unique Resource URL - :param str project_id: Project Id + :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + :param str property: The property name to use in sorting. Can be one of the following: [/name, /uuid, /state, /location/metroCode, /location/metroName, /package/code, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "project_id", project_id) + if direction is not None: + pulumi.set(__self__, "direction", direction) + if property is not None: + pulumi.set(__self__, "property", property) @property @pulumi.getter - def href(self) -> str: + def direction(self) -> Optional[str]: """ - Unique Resource URL + The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC """ - return pulumi.get(self, "href") + return pulumi.get(self, "direction") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def property(self) -> Optional[str]: """ - Project Id + The property name to use in sorting. Can be one of the following: [/name, /uuid, /state, /location/metroCode, /location/metroName, /package/code, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "property") @pulumi.output_type -class GetCloudRoutersDataResult(dict): +class GetConnectionASideResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetCloudRoutersDataAccountResult'], - bgp_ipv4_routes_count: int, - bgp_ipv6_routes_count: int, - change_logs: Sequence['outputs.GetCloudRoutersDataChangeLogResult'], - connections_count: int, - description: str, - distinct_ipv4_prefixes_count: int, - distinct_ipv6_prefixes_count: int, - equinix_asn: int, - href: str, - locations: Sequence['outputs.GetCloudRoutersDataLocationResult'], - marketplace_subscriptions: Sequence['outputs.GetCloudRoutersDataMarketplaceSubscriptionResult'], - name: str, - notifications: Sequence['outputs.GetCloudRoutersDataNotificationResult'], - orders: Sequence['outputs.GetCloudRoutersDataOrderResult'], - packages: Sequence['outputs.GetCloudRoutersDataPackageResult'], - projects: Sequence['outputs.GetCloudRoutersDataProjectResult'], - state: str, - type: str, - uuid: str): + access_point: Optional['outputs.GetConnectionASideAccessPointResult'] = None, + additional_infos: Optional[Sequence['outputs.GetConnectionASideAdditionalInfoResult']] = None, + service_token: Optional['outputs.GetConnectionASideServiceTokenResult'] = None): """ - :param Sequence['GetCloudRoutersDataAccountArgs'] accounts: Customer account information that is associated with this Fabric Cloud Router - :param int bgp_ipv4_routes_count: Number of IPv4 BGP routes in use (including non-distinct prefixes) - :param int bgp_ipv6_routes_count: Number of IPv6 BGP routes in use (including non-distinct prefixes) - :param Sequence['GetCloudRoutersDataChangeLogArgs'] change_logs: Captures Fabric Cloud Router lifecycle change information - :param int connections_count: Number of connections associated with this Fabric Cloud Router instance - :param str description: Customer-provided Fabric Cloud Router description - :param int distinct_ipv4_prefixes_count: Number of distinct IPv4 routes - :param int distinct_ipv6_prefixes_count: Number of distinct IPv6 routes - :param int equinix_asn: Equinix ASN - :param str href: Fabric Cloud Router URI information - :param Sequence['GetCloudRoutersDataLocationArgs'] locations: Fabric Cloud Router location - :param Sequence['GetCloudRoutersDataMarketplaceSubscriptionArgs'] marketplace_subscriptions: Equinix Fabric Entity for Marketplace Subscription - :param str name: Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores - :param Sequence['GetCloudRoutersDataNotificationArgs'] notifications: Preferences for notifications on Fabric Cloud Router configuration or status changes - :param Sequence['GetCloudRoutersDataOrderArgs'] orders: Order information related to this Fabric Cloud Router - :param Sequence['GetCloudRoutersDataPackageArgs'] packages: Fabric Cloud Router Package Type - :param Sequence['GetCloudRoutersDataProjectArgs'] projects: Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects - :param str state: Fabric Cloud Router overall state - :param str type: Defines the FCR type like; XF_ROUTER - :param str uuid: Equinix-assigned Fabric Cloud Router identifier + :param 'GetConnectionASideAccessPointArgs' access_point: Point of access details + :param Sequence['GetConnectionASideAdditionalInfoArgs'] additional_infos: Connection side additional information + :param 'GetConnectionASideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "bgp_ipv4_routes_count", bgp_ipv4_routes_count) - pulumi.set(__self__, "bgp_ipv6_routes_count", bgp_ipv6_routes_count) - pulumi.set(__self__, "change_logs", change_logs) - pulumi.set(__self__, "connections_count", connections_count) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "distinct_ipv4_prefixes_count", distinct_ipv4_prefixes_count) - pulumi.set(__self__, "distinct_ipv6_prefixes_count", distinct_ipv6_prefixes_count) - pulumi.set(__self__, "equinix_asn", equinix_asn) - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "locations", locations) - pulumi.set(__self__, "marketplace_subscriptions", marketplace_subscriptions) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "notifications", notifications) - pulumi.set(__self__, "orders", orders) - pulumi.set(__self__, "packages", packages) - pulumi.set(__self__, "projects", projects) - pulumi.set(__self__, "state", state) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + if access_point is not None: + pulumi.set(__self__, "access_point", access_point) + if additional_infos is not None: + pulumi.set(__self__, "additional_infos", additional_infos) + if service_token is not None: + pulumi.set(__self__, "service_token", service_token) @property - @pulumi.getter - def accounts(self) -> Sequence['outputs.GetCloudRoutersDataAccountResult']: + @pulumi.getter(name="accessPoint") + def access_point(self) -> Optional['outputs.GetConnectionASideAccessPointResult']: """ - Customer account information that is associated with this Fabric Cloud Router + Point of access details """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "access_point") @property - @pulumi.getter(name="bgpIpv4RoutesCount") - def bgp_ipv4_routes_count(self) -> int: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionASideAdditionalInfoResult']]: """ - Number of IPv4 BGP routes in use (including non-distinct prefixes) + Connection side additional information """ - return pulumi.get(self, "bgp_ipv4_routes_count") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter(name="bgpIpv6RoutesCount") - def bgp_ipv6_routes_count(self) -> int: + @pulumi.getter(name="serviceToken") + def service_token(self) -> Optional['outputs.GetConnectionASideServiceTokenResult']: """ - Number of IPv6 BGP routes in use (including non-distinct prefixes) + For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "bgp_ipv6_routes_count") + return pulumi.get(self, "service_token") - @property - @pulumi.getter(name="changeLogs") - def change_logs(self) -> Sequence['outputs.GetCloudRoutersDataChangeLogResult']: - """ - Captures Fabric Cloud Router lifecycle change information - """ - return pulumi.get(self, "change_logs") - @property - @pulumi.getter(name="connectionsCount") - def connections_count(self) -> int: +@pulumi.output_type +class GetConnectionASideAccessPointResult(dict): + def __init__(__self__, *, + accounts: Sequence['outputs.GetConnectionASideAccessPointAccountResult'], + location: 'outputs.GetConnectionASideAccessPointLocationResult', + provider_connection_id: str, + authentication_key: Optional[str] = None, + gateway: Optional['outputs.GetConnectionASideAccessPointGatewayResult'] = None, + interface: Optional['outputs.GetConnectionASideAccessPointInterfaceResult'] = None, + link_protocol: Optional['outputs.GetConnectionASideAccessPointLinkProtocolResult'] = None, + network: Optional['outputs.GetConnectionASideAccessPointNetworkResult'] = None, + peering_type: Optional[str] = None, + port: Optional['outputs.GetConnectionASideAccessPointPortResult'] = None, + profile: Optional['outputs.GetConnectionASideAccessPointProfileResult'] = None, + router: Optional['outputs.GetConnectionASideAccessPointRouterResult'] = None, + seller_region: Optional[str] = None, + type: Optional[str] = None, + virtual_device: Optional['outputs.GetConnectionASideAccessPointVirtualDeviceResult'] = None): """ - Number of connections associated with this Fabric Cloud Router instance + :param Sequence['GetConnectionASideAccessPointAccountArgs'] accounts: Account + :param 'GetConnectionASideAccessPointLocationArgs' location: Access point location + :param str provider_connection_id: Provider assigned Connection Id + :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections + :param 'GetConnectionASideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead + :param 'GetConnectionASideAccessPointInterfaceArgs' interface: Virtual device interface + :param 'GetConnectionASideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol + :param 'GetConnectionASideAccessPointNetworkArgs' network: network access point information + :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + :param 'GetConnectionASideAccessPointPortArgs' port: Port access point information + :param 'GetConnectionASideAccessPointProfileArgs' profile: Service Profile + :param 'GetConnectionASideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` + :param str seller_region: Access point seller region + :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + :param 'GetConnectionASideAccessPointVirtualDeviceArgs' virtual_device: Virtual device """ - return pulumi.get(self, "connections_count") + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "provider_connection_id", provider_connection_id) + if authentication_key is not None: + pulumi.set(__self__, "authentication_key", authentication_key) + if gateway is not None: + pulumi.set(__self__, "gateway", gateway) + if interface is not None: + pulumi.set(__self__, "interface", interface) + if link_protocol is not None: + pulumi.set(__self__, "link_protocol", link_protocol) + if network is not None: + pulumi.set(__self__, "network", network) + if peering_type is not None: + pulumi.set(__self__, "peering_type", peering_type) + if port is not None: + pulumi.set(__self__, "port", port) + if profile is not None: + pulumi.set(__self__, "profile", profile) + if router is not None: + pulumi.set(__self__, "router", router) + if seller_region is not None: + pulumi.set(__self__, "seller_region", seller_region) + if type is not None: + pulumi.set(__self__, "type", type) + if virtual_device is not None: + pulumi.set(__self__, "virtual_device", virtual_device) @property @pulumi.getter - def description(self) -> str: + def accounts(self) -> Sequence['outputs.GetConnectionASideAccessPointAccountResult']: """ - Customer-provided Fabric Cloud Router description + Account """ - return pulumi.get(self, "description") + return pulumi.get(self, "accounts") @property - @pulumi.getter(name="distinctIpv4PrefixesCount") - def distinct_ipv4_prefixes_count(self) -> int: + @pulumi.getter + def location(self) -> 'outputs.GetConnectionASideAccessPointLocationResult': """ - Number of distinct IPv4 routes + Access point location """ - return pulumi.get(self, "distinct_ipv4_prefixes_count") + return pulumi.get(self, "location") @property - @pulumi.getter(name="distinctIpv6PrefixesCount") - def distinct_ipv6_prefixes_count(self) -> int: + @pulumi.getter(name="providerConnectionId") + def provider_connection_id(self) -> str: """ - Number of distinct IPv6 routes + Provider assigned Connection Id """ - return pulumi.get(self, "distinct_ipv6_prefixes_count") + return pulumi.get(self, "provider_connection_id") @property - @pulumi.getter(name="equinixAsn") - def equinix_asn(self) -> int: + @pulumi.getter(name="authenticationKey") + def authentication_key(self) -> Optional[str]: """ - Equinix ASN + Authentication key for provider based connections or Metal-Fabric Integration connections """ - return pulumi.get(self, "equinix_asn") + return pulumi.get(self, "authentication_key") @property @pulumi.getter - def href(self) -> str: + @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") + def gateway(self) -> Optional['outputs.GetConnectionASideAccessPointGatewayResult']: """ - Fabric Cloud Router URI information + **Deprecated** `gateway` Use `router` attribute instead """ - return pulumi.get(self, "href") + return pulumi.get(self, "gateway") @property @pulumi.getter - def locations(self) -> Sequence['outputs.GetCloudRoutersDataLocationResult']: + def interface(self) -> Optional['outputs.GetConnectionASideAccessPointInterfaceResult']: """ - Fabric Cloud Router location + Virtual device interface """ - return pulumi.get(self, "locations") + return pulumi.get(self, "interface") - @property - @pulumi.getter(name="marketplaceSubscriptions") - def marketplace_subscriptions(self) -> Sequence['outputs.GetCloudRoutersDataMarketplaceSubscriptionResult']: + @property + @pulumi.getter(name="linkProtocol") + def link_protocol(self) -> Optional['outputs.GetConnectionASideAccessPointLinkProtocolResult']: """ - Equinix Fabric Entity for Marketplace Subscription + Connection link protocol """ - return pulumi.get(self, "marketplace_subscriptions") + return pulumi.get(self, "link_protocol") @property @pulumi.getter - def name(self) -> str: + def network(self) -> Optional['outputs.GetConnectionASideAccessPointNetworkResult']: """ - Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores + network access point information """ - return pulumi.get(self, "name") + return pulumi.get(self, "network") @property - @pulumi.getter - def notifications(self) -> Sequence['outputs.GetCloudRoutersDataNotificationResult']: + @pulumi.getter(name="peeringType") + def peering_type(self) -> Optional[str]: """ - Preferences for notifications on Fabric Cloud Router configuration or status changes + Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL """ - return pulumi.get(self, "notifications") + return pulumi.get(self, "peering_type") @property @pulumi.getter - def orders(self) -> Sequence['outputs.GetCloudRoutersDataOrderResult']: + def port(self) -> Optional['outputs.GetConnectionASideAccessPointPortResult']: """ - Order information related to this Fabric Cloud Router + Port access point information """ - return pulumi.get(self, "orders") + return pulumi.get(self, "port") @property @pulumi.getter - def packages(self) -> Sequence['outputs.GetCloudRoutersDataPackageResult']: + def profile(self) -> Optional['outputs.GetConnectionASideAccessPointProfileResult']: """ - Fabric Cloud Router Package Type + Service Profile """ - return pulumi.get(self, "packages") + return pulumi.get(self, "profile") @property @pulumi.getter - def projects(self) -> Sequence['outputs.GetCloudRoutersDataProjectResult']: + def router(self) -> Optional['outputs.GetConnectionASideAccessPointRouterResult']: """ - Customer resource hierarchy project information. Applicable to customers onboarded to Equinix Identity and Access Management. For more information see Identity and Access Management: Projects + Cloud Router access point information that replaces `gateway` """ - return pulumi.get(self, "projects") + return pulumi.get(self, "router") @property - @pulumi.getter - def state(self) -> str: + @pulumi.getter(name="sellerRegion") + def seller_region(self) -> Optional[str]: """ - Fabric Cloud Router overall state + Access point seller region """ - return pulumi.get(self, "state") + return pulumi.get(self, "seller_region") @property @pulumi.getter - def type(self) -> str: + def type(self) -> Optional[str]: """ - Defines the FCR type like; XF_ROUTER + Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK """ return pulumi.get(self, "type") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="virtualDevice") + def virtual_device(self) -> Optional['outputs.GetConnectionASideAccessPointVirtualDeviceResult']: """ - Equinix-assigned Fabric Cloud Router identifier + Virtual device """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "virtual_device") @pulumi.output_type -class GetCloudRoutersDataAccountResult(dict): +class GetConnectionASideAccessPointAccountResult(dict): def __init__(__self__, *, - account_number: int): + account_name: str, + account_number: int, + global_cust_id: str, + global_org_id: str, + global_organization_name: str, + org_id: int, + organization_name: str, + ucm_id: str): """ - :param int account_number: Account Number + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id """ + pulumi.set(__self__, "account_name", account_name) pulumi.set(__self__, "account_number", account_number) + pulumi.set(__self__, "global_cust_id", global_cust_id) + pulumi.set(__self__, "global_org_id", global_org_id) + pulumi.set(__self__, "global_organization_name", global_organization_name) + pulumi.set(__self__, "org_id", org_id) + pulumi.set(__self__, "organization_name", organization_name) + pulumi.set(__self__, "ucm_id", ucm_id) + + @property + @pulumi.getter(name="accountName") + def account_name(self) -> str: + """ + Legal name of the accountholder. + """ + return pulumi.get(self, "account_name") @property @pulumi.getter(name="accountNumber") def account_number(self) -> int: """ - Account Number + Equinix-assigned account number. """ return pulumi.get(self, "account_number") + @property + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_cust_id") -@pulumi.output_type -class GetCloudRoutersDataChangeLogResult(dict): - def __init__(__self__, *, - created_by: str, - created_by_email: str, - created_by_full_name: str, - created_date_time: str, - deleted_by: str, - deleted_by_email: str, - deleted_by_full_name: str, - deleted_date_time: str, - updated_by: str, - updated_by_email: str, - updated_by_full_name: str, - updated_date_time: str): + @property + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: """ - :param str created_by: Created by User Key - :param str created_by_email: Created by User Email Address - :param str created_by_full_name: Created by User Full Name - :param str created_date_time: Created by Date and Time - :param str deleted_by: Deleted by User Key - :param str deleted_by_email: Deleted by User Email Address - :param str deleted_by_full_name: Deleted by User Full Name - :param str deleted_date_time: Deleted by Date and Time - :param str updated_by: Updated by User Key - :param str updated_by_email: Updated by User Email Address - :param str updated_by_full_name: Updated by User Full Name - :param str updated_date_time: Updated by Date and Time + Equinix-assigned ID of the subscriber's parent organization. """ - pulumi.set(__self__, "created_by", created_by) - pulumi.set(__self__, "created_by_email", created_by_email) - pulumi.set(__self__, "created_by_full_name", created_by_full_name) - pulumi.set(__self__, "created_date_time", created_date_time) - pulumi.set(__self__, "deleted_by", deleted_by) - pulumi.set(__self__, "deleted_by_email", deleted_by_email) - pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) - pulumi.set(__self__, "deleted_date_time", deleted_date_time) - pulumi.set(__self__, "updated_by", updated_by) - pulumi.set(__self__, "updated_by_email", updated_by_email) - pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) - pulumi.set(__self__, "updated_date_time", updated_date_time) + return pulumi.get(self, "global_org_id") @property - @pulumi.getter(name="createdBy") - def created_by(self) -> str: + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: """ - Created by User Key + Equinix-assigned name of the subscriber's parent organization. """ - return pulumi.get(self, "created_by") + return pulumi.get(self, "global_organization_name") @property - @pulumi.getter(name="createdByEmail") - def created_by_email(self) -> str: + @pulumi.getter(name="orgId") + def org_id(self) -> int: """ - Created by User Email Address + Equinix-assigned ID of the subscriber's organization. """ - return pulumi.get(self, "created_by_email") + return pulumi.get(self, "org_id") @property - @pulumi.getter(name="createdByFullName") - def created_by_full_name(self) -> str: + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: """ - Created by User Full Name + Equinix-assigned name of the subscriber's organization. """ - return pulumi.get(self, "created_by_full_name") + return pulumi.get(self, "organization_name") @property - @pulumi.getter(name="createdDateTime") - def created_date_time(self) -> str: + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: """ - Created by Date and Time + Enterprise datastore id """ - return pulumi.get(self, "created_date_time") + return pulumi.get(self, "ucm_id") + + +@pulumi.output_type +class GetConnectionASideAccessPointGatewayResult(dict): + def __init__(__self__, *, + href: str, + uuid: Optional[str] = None): + """ + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier + """ + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="deletedBy") - def deleted_by(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Deleted by User Key + Unique Resource Identifier """ - return pulumi.get(self, "deleted_by") + return pulumi.get(self, "href") @property - @pulumi.getter(name="deletedByEmail") - def deleted_by_email(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Deleted by User Email Address + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "deleted_by_email") + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class GetConnectionASideAccessPointInterfaceResult(dict): + def __init__(__self__, *, + id: int, + type: Optional[str] = None, + uuid: Optional[str] = None): + """ + :param int id: id + :param str type: Interface type + :param str uuid: Equinix-assigned interface identifier + """ + pulumi.set(__self__, "id", id) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="deletedByFullName") - def deleted_by_full_name(self) -> str: + @pulumi.getter + def id(self) -> int: """ - Deleted by User Full Name + id """ - return pulumi.get(self, "deleted_by_full_name") + return pulumi.get(self, "id") @property - @pulumi.getter(name="deletedDateTime") - def deleted_date_time(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: + """ + Interface type + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Equinix-assigned interface identifier + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class GetConnectionASideAccessPointLinkProtocolResult(dict): + def __init__(__self__, *, + vlan_c_tag: int, + vlan_s_tag: int, + vlan_tag: int, + type: Optional[str] = None): """ - Deleted by Date and Time + :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections + :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections + :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections + :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "deleted_date_time") + pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) + pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) + pulumi.set(__self__, "vlan_tag", vlan_tag) + if type is not None: + pulumi.set(__self__, "type", type) @property - @pulumi.getter(name="updatedBy") - def updated_by(self) -> str: + @pulumi.getter(name="vlanCTag") + def vlan_c_tag(self) -> int: """ - Updated by User Key + Vlan Customer Tag information, vlanCTag value specified for QINQ connections """ - return pulumi.get(self, "updated_by") + return pulumi.get(self, "vlan_c_tag") @property - @pulumi.getter(name="updatedByEmail") - def updated_by_email(self) -> str: + @pulumi.getter(name="vlanSTag") + def vlan_s_tag(self) -> int: """ - Updated by User Email Address + Vlan Provider Tag information, vlanSTag value specified for QINQ connections """ - return pulumi.get(self, "updated_by_email") + return pulumi.get(self, "vlan_s_tag") @property - @pulumi.getter(name="updatedByFullName") - def updated_by_full_name(self) -> str: + @pulumi.getter(name="vlanTag") + def vlan_tag(self) -> int: """ - Updated by User Full Name + Vlan Tag information, vlanTag value specified for DOT1Q connections """ - return pulumi.get(self, "updated_by_full_name") + return pulumi.get(self, "vlan_tag") @property - @pulumi.getter(name="updatedDateTime") - def updated_date_time(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Updated by Date and Time + Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "updated_date_time") + return pulumi.get(self, "type") @pulumi.output_type -class GetCloudRoutersDataLocationResult(dict): +class GetConnectionASideAccessPointLocationResult(dict): def __init__(__self__, *, ibx: str, metro_code: str, @@ -7118,1178 +8434,1276 @@ def region(self) -> str: @pulumi.output_type -class GetCloudRoutersDataMarketplaceSubscriptionResult(dict): +class GetConnectionASideAccessPointNetworkResult(dict): def __init__(__self__, *, - type: str, + href: str, + uuid: Optional[str] = None): + """ + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned Network identifier + """ + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def href(self) -> str: + """ + Unique Resource Identifier + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Equinix-assigned Network identifier + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class GetConnectionASideAccessPointPortResult(dict): + def __init__(__self__, *, + href: str, + name: str, + redundancies: Sequence['outputs.GetConnectionASideAccessPointPortRedundancyResult'], uuid: str): """ - :param str type: Marketplace Subscription type like; AWS_MARKETPLACE_SUBSCRIPTION - :param str uuid: Equinix-assigned Marketplace Subscription identifier + :param str href: Unique Resource Identifier + :param str name: Port name + :param Sequence['GetConnectionASideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information + :param str uuid: Equinix-assigned Port identifier """ - pulumi.set(__self__, "type", type) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def type(self) -> str: + def href(self) -> str: """ - Marketplace Subscription type like; AWS_MARKETPLACE_SUBSCRIPTION + Unique Resource Identifier """ - return pulumi.get(self, "type") + return pulumi.get(self, "href") + + @property + @pulumi.getter + def name(self) -> str: + """ + Port name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def redundancies(self) -> Sequence['outputs.GetConnectionASideAccessPointPortRedundancyResult']: + """ + Redundancy Information + """ + return pulumi.get(self, "redundancies") @property @pulumi.getter def uuid(self) -> str: """ - Equinix-assigned Marketplace Subscription identifier + Equinix-assigned Port identifier """ return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRoutersDataNotificationResult(dict): +class GetConnectionASideAccessPointPortRedundancyResult(dict): def __init__(__self__, *, - emails: Sequence[str], - type: str, - send_interval: Optional[str] = None): + enabled: bool, + group: str, + priority: str): """ - :param Sequence[str] emails: Array of contact emails - :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS - :param str send_interval: Send interval + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary """ - pulumi.set(__self__, "emails", emails) - pulumi.set(__self__, "type", type) - if send_interval is not None: - pulumi.set(__self__, "send_interval", send_interval) + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property @pulumi.getter - def emails(self) -> Sequence[str]: + def enabled(self) -> bool: """ - Array of contact emails + Access point redundancy """ - return pulumi.get(self, "emails") + return pulumi.get(self, "enabled") @property @pulumi.getter - def type(self) -> str: + def group(self) -> str: """ - Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + Port redundancy group """ - return pulumi.get(self, "type") + return pulumi.get(self, "group") @property - @pulumi.getter(name="sendInterval") - def send_interval(self) -> Optional[str]: + @pulumi.getter + def priority(self) -> str: """ - Send interval + Priority type-Primary or Secondary """ - return pulumi.get(self, "send_interval") + return pulumi.get(self, "priority") @pulumi.output_type -class GetCloudRoutersDataOrderResult(dict): +class GetConnectionASideAccessPointProfileResult(dict): def __init__(__self__, *, - billing_tier: str, - order_id: str, - order_number: str, - purchase_order_number: str): + access_point_type_configs: Sequence['outputs.GetConnectionASideAccessPointProfileAccessPointTypeConfigResult'], + description: str, + href: str, + name: str, + type: str, + uuid: str): """ - :param str billing_tier: Billing tier for connection bandwidth - :param str order_id: Order Identification - :param str order_number: Order Reference Number - :param str purchase_order_number: Purchase order number + :param Sequence['GetConnectionASideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information + :param str description: User-provided service description + :param str href: Service Profile URI response attribute + :param str name: Customer-assigned service profile name + :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + :param str uuid: Equinix assigned service profile identifier """ - pulumi.set(__self__, "billing_tier", billing_tier) - pulumi.set(__self__, "order_id", order_id) - pulumi.set(__self__, "order_number", order_number) - pulumi.set(__self__, "purchase_order_number", purchase_order_number) + pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="billingTier") - def billing_tier(self) -> str: + @pulumi.getter(name="accessPointTypeConfigs") + def access_point_type_configs(self) -> Sequence['outputs.GetConnectionASideAccessPointProfileAccessPointTypeConfigResult']: """ - Billing tier for connection bandwidth + Access point config information """ - return pulumi.get(self, "billing_tier") + return pulumi.get(self, "access_point_type_configs") @property - @pulumi.getter(name="orderId") - def order_id(self) -> str: + @pulumi.getter + def description(self) -> str: """ - Order Identification + User-provided service description """ - return pulumi.get(self, "order_id") + return pulumi.get(self, "description") @property - @pulumi.getter(name="orderNumber") - def order_number(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Order Reference Number + Service Profile URI response attribute """ - return pulumi.get(self, "order_number") + return pulumi.get(self, "href") @property - @pulumi.getter(name="purchaseOrderNumber") - def purchase_order_number(self) -> str: + @pulumi.getter + def name(self) -> str: """ - Purchase order number + Customer-assigned service profile name """ - return pulumi.get(self, "purchase_order_number") + return pulumi.get(self, "name") + + @property + @pulumi.getter + def type(self) -> str: + """ + Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Equinix assigned service profile identifier + """ + return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRoutersDataPackageResult(dict): +class GetConnectionASideAccessPointProfileAccessPointTypeConfigResult(dict): def __init__(__self__, *, - code: str): + type: str, + uuid: str): """ - :param str code: Fabric Cloud Router package code + :param str type: Type of access point type config - VD, COLO + :param str uuid: Equinix-assigned access point type config identifier + """ + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def type(self) -> str: + """ + Type of access point type config - VD, COLO """ - pulumi.set(__self__, "code", code) + return pulumi.get(self, "type") @property @pulumi.getter - def code(self) -> str: + def uuid(self) -> str: """ - Fabric Cloud Router package code + Equinix-assigned access point type config identifier """ - return pulumi.get(self, "code") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRoutersDataProjectResult(dict): +class GetConnectionASideAccessPointRouterResult(dict): def __init__(__self__, *, href: str, - project_id: str): + uuid: Optional[str] = None): """ - :param str href: Unique Resource URL - :param str project_id: Project Id + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier """ pulumi.set(__self__, "href", href) - pulumi.set(__self__, "project_id", project_id) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter def href(self) -> str: """ - Unique Resource URL + Unique Resource Identifier """ return pulumi.get(self, "href") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Project Id + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRoutersFilterResult(dict): +class GetConnectionASideAccessPointVirtualDeviceResult(dict): def __init__(__self__, *, - operator: str, - property: str, - values: Sequence[str], - or_: Optional[bool] = None): + href: str, + name: Optional[str] = None, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - :param str operator: Possible operators to use on the filter property. Can be one of the following: [= - equal, != - not equal, > - greater than, >= - greater than or equal to, < - less than, <= - less than or equal to, [NOT] BETWEEN - (not) between, [NOT] LIKE - (not) like, [NOT] IN - (not) in - :param str property: The API response property which you want to filter your request on. Can be one of the following: "/project/projectId", "/name", "/uuid", "/state", "/location/metroCode", "/location/metroName", "/package/code", "/*" - :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search - :param bool or_: Boolean flag indicating whether this filter is included in the OR group. There can only be one OR group and it can have a maximum of 3 filters. The OR group only counts as 1 of the 8 possible filters + :param str href: Unique Resource Identifier + :param str name: Customer-assigned Virtual Device Name + :param str type: Virtual Device type + :param str uuid: Equinix-assigned Virtual Device identifier """ - pulumi.set(__self__, "operator", operator) - pulumi.set(__self__, "property", property) - pulumi.set(__self__, "values", values) - if or_ is not None: - pulumi.set(__self__, "or_", or_) + pulumi.set(__self__, "href", href) + if name is not None: + pulumi.set(__self__, "name", name) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def operator(self) -> str: + def href(self) -> str: """ - Possible operators to use on the filter property. Can be one of the following: [= - equal, != - not equal, > - greater than, >= - greater than or equal to, < - less than, <= - less than or equal to, [NOT] BETWEEN - (not) between, [NOT] LIKE - (not) like, [NOT] IN - (not) in + Unique Resource Identifier """ - return pulumi.get(self, "operator") + return pulumi.get(self, "href") @property @pulumi.getter - def values(self) -> Sequence[str]: + def name(self) -> Optional[str]: """ - The values that you want to apply the property+operator combination to in order to filter your data search + Customer-assigned Virtual Device Name """ - return pulumi.get(self, "values") + return pulumi.get(self, "name") @property - @pulumi.getter(name="or") - def or_(self) -> Optional[bool]: + @pulumi.getter + def type(self) -> Optional[str]: """ - Boolean flag indicating whether this filter is included in the OR group. There can only be one OR group and it can have a maximum of 3 filters. The OR group only counts as 1 of the 8 possible filters + Virtual Device type """ - return pulumi.get(self, "or_") + return pulumi.get(self, "type") @property @pulumi.getter - def property(self) -> str: + def uuid(self) -> Optional[str]: """ - The API response property which you want to filter your request on. Can be one of the following: "/project/projectId", "/name", "/uuid", "/state", "/location/metroCode", "/location/metroName", "/package/code", "/*" + Equinix-assigned Virtual Device identifier """ - return pulumi.get(self, "property") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetCloudRoutersPaginationResult(dict): +class GetConnectionASideAdditionalInfoResult(dict): def __init__(__self__, *, - limit: Optional[int] = None, - offset: Optional[int] = None): + key: Optional[str] = None, + value: Optional[str] = None): """ - :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 - :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + :param str key: Additional information key + :param str value: Additional information value """ - if limit is not None: - pulumi.set(__self__, "limit", limit) - if offset is not None: - pulumi.set(__self__, "offset", offset) + if key is not None: + pulumi.set(__self__, "key", key) + if value is not None: + pulumi.set(__self__, "value", value) @property @pulumi.getter - def limit(self) -> Optional[int]: + def key(self) -> Optional[str]: """ - Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Additional information key """ - return pulumi.get(self, "limit") + return pulumi.get(self, "key") @property @pulumi.getter - def offset(self) -> Optional[int]: + def value(self) -> Optional[str]: """ - The page offset for the pagination request. Index of the first element. Default is 0. + Additional information value """ - return pulumi.get(self, "offset") + return pulumi.get(self, "value") @pulumi.output_type -class GetCloudRoutersSortResult(dict): +class GetConnectionASideServiceTokenResult(dict): def __init__(__self__, *, - direction: Optional[str] = None, - property: Optional[str] = None): + description: str, + href: str, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC - :param str property: The property name to use in sorting. Can be one of the following: [/name, /uuid, /state, /location/metroCode, /location/metroName, /package/code, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime + :param str description: Service token description + :param str href: An absolute URL that is the subject of the link's context + :param str type: Token type - VC_TOKEN + :param str uuid: Equinix-assigned service token identifier """ - if direction is not None: - pulumi.set(__self__, "direction", direction) - if property is not None: - pulumi.set(__self__, "property", property) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def direction(self) -> Optional[str]: + def description(self) -> str: """ - The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + Service token description """ - return pulumi.get(self, "direction") + return pulumi.get(self, "description") @property @pulumi.getter - def property(self) -> Optional[str]: - """ - The property name to use in sorting. Can be one of the following: [/name, /uuid, /state, /location/metroCode, /location/metroName, /package/code, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime - """ - return pulumi.get(self, "property") - - -@pulumi.output_type -class GetConnectionASideResult(dict): - def __init__(__self__, *, - access_point: Optional['outputs.GetConnectionASideAccessPointResult'] = None, - additional_infos: Optional[Sequence['outputs.GetConnectionASideAdditionalInfoResult']] = None, - service_token: Optional['outputs.GetConnectionASideServiceTokenResult'] = None): - """ - :param 'GetConnectionASideAccessPointArgs' access_point: Point of access details - :param Sequence['GetConnectionASideAdditionalInfoArgs'] additional_infos: Connection side additional information - :param 'GetConnectionASideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets - """ - if access_point is not None: - pulumi.set(__self__, "access_point", access_point) - if additional_infos is not None: - pulumi.set(__self__, "additional_infos", additional_infos) - if service_token is not None: - pulumi.set(__self__, "service_token", service_token) - - @property - @pulumi.getter(name="accessPoint") - def access_point(self) -> Optional['outputs.GetConnectionASideAccessPointResult']: + def href(self) -> str: """ - Point of access details + An absolute URL that is the subject of the link's context """ - return pulumi.get(self, "access_point") + return pulumi.get(self, "href") @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionASideAdditionalInfoResult']]: + @pulumi.getter + def type(self) -> Optional[str]: """ - Connection side additional information + Token type - VC_TOKEN """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "type") @property - @pulumi.getter(name="serviceToken") - def service_token(self) -> Optional['outputs.GetConnectionASideServiceTokenResult']: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets + Equinix-assigned service token identifier """ - return pulumi.get(self, "service_token") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionASideAccessPointResult(dict): +class GetConnectionAccountResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetConnectionASideAccessPointAccountResult'], - location: 'outputs.GetConnectionASideAccessPointLocationResult', - provider_connection_id: str, - authentication_key: Optional[str] = None, - gateway: Optional['outputs.GetConnectionASideAccessPointGatewayResult'] = None, - interface: Optional['outputs.GetConnectionASideAccessPointInterfaceResult'] = None, - link_protocol: Optional['outputs.GetConnectionASideAccessPointLinkProtocolResult'] = None, - network: Optional['outputs.GetConnectionASideAccessPointNetworkResult'] = None, - peering_type: Optional[str] = None, - port: Optional['outputs.GetConnectionASideAccessPointPortResult'] = None, - profile: Optional['outputs.GetConnectionASideAccessPointProfileResult'] = None, - router: Optional['outputs.GetConnectionASideAccessPointRouterResult'] = None, - seller_region: Optional[str] = None, - type: Optional[str] = None, - virtual_device: Optional['outputs.GetConnectionASideAccessPointVirtualDeviceResult'] = None): + account_name: str, + account_number: int, + global_cust_id: str, + global_org_id: str, + global_organization_name: str, + org_id: int, + organization_name: str, + ucm_id: str): """ - :param Sequence['GetConnectionASideAccessPointAccountArgs'] accounts: Account - :param 'GetConnectionASideAccessPointLocationArgs' location: Access point location - :param str provider_connection_id: Provider assigned Connection Id - :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections - :param 'GetConnectionASideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead - :param 'GetConnectionASideAccessPointInterfaceArgs' interface: Virtual device interface - :param 'GetConnectionASideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol - :param 'GetConnectionASideAccessPointNetworkArgs' network: network access point information - :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL - :param 'GetConnectionASideAccessPointPortArgs' port: Port access point information - :param 'GetConnectionASideAccessPointProfileArgs' profile: Service Profile - :param 'GetConnectionASideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` - :param str seller_region: Access point seller region - :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK - :param 'GetConnectionASideAccessPointVirtualDeviceArgs' virtual_device: Virtual device + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id + """ + pulumi.set(__self__, "account_name", account_name) + pulumi.set(__self__, "account_number", account_number) + pulumi.set(__self__, "global_cust_id", global_cust_id) + pulumi.set(__self__, "global_org_id", global_org_id) + pulumi.set(__self__, "global_organization_name", global_organization_name) + pulumi.set(__self__, "org_id", org_id) + pulumi.set(__self__, "organization_name", organization_name) + pulumi.set(__self__, "ucm_id", ucm_id) + + @property + @pulumi.getter(name="accountName") + def account_name(self) -> str: """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "location", location) - pulumi.set(__self__, "provider_connection_id", provider_connection_id) - if authentication_key is not None: - pulumi.set(__self__, "authentication_key", authentication_key) - if gateway is not None: - pulumi.set(__self__, "gateway", gateway) - if interface is not None: - pulumi.set(__self__, "interface", interface) - if link_protocol is not None: - pulumi.set(__self__, "link_protocol", link_protocol) - if network is not None: - pulumi.set(__self__, "network", network) - if peering_type is not None: - pulumi.set(__self__, "peering_type", peering_type) - if port is not None: - pulumi.set(__self__, "port", port) - if profile is not None: - pulumi.set(__self__, "profile", profile) - if router is not None: - pulumi.set(__self__, "router", router) - if seller_region is not None: - pulumi.set(__self__, "seller_region", seller_region) - if type is not None: - pulumi.set(__self__, "type", type) - if virtual_device is not None: - pulumi.set(__self__, "virtual_device", virtual_device) + Legal name of the accountholder. + """ + return pulumi.get(self, "account_name") @property - @pulumi.getter - def accounts(self) -> Sequence['outputs.GetConnectionASideAccessPointAccountResult']: + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: """ - Account + Equinix-assigned account number. """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "account_number") @property - @pulumi.getter - def location(self) -> 'outputs.GetConnectionASideAccessPointLocationResult': + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: """ - Access point location + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "location") + return pulumi.get(self, "global_cust_id") @property - @pulumi.getter(name="providerConnectionId") - def provider_connection_id(self) -> str: + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: """ - Provider assigned Connection Id + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "provider_connection_id") + return pulumi.get(self, "global_org_id") @property - @pulumi.getter(name="authenticationKey") - def authentication_key(self) -> Optional[str]: + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: """ - Authentication key for provider based connections or Metal-Fabric Integration connections + Equinix-assigned name of the subscriber's parent organization. """ - return pulumi.get(self, "authentication_key") + return pulumi.get(self, "global_organization_name") @property - @pulumi.getter - @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") - def gateway(self) -> Optional['outputs.GetConnectionASideAccessPointGatewayResult']: + @pulumi.getter(name="orgId") + def org_id(self) -> int: """ - **Deprecated** `gateway` Use `router` attribute instead + Equinix-assigned ID of the subscriber's organization. """ - return pulumi.get(self, "gateway") + return pulumi.get(self, "org_id") @property - @pulumi.getter - def interface(self) -> Optional['outputs.GetConnectionASideAccessPointInterfaceResult']: + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: """ - Virtual device interface + Equinix-assigned name of the subscriber's organization. """ - return pulumi.get(self, "interface") + return pulumi.get(self, "organization_name") @property - @pulumi.getter(name="linkProtocol") - def link_protocol(self) -> Optional['outputs.GetConnectionASideAccessPointLinkProtocolResult']: + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: """ - Connection link protocol + Enterprise datastore id """ - return pulumi.get(self, "link_protocol") + return pulumi.get(self, "ucm_id") + + +@pulumi.output_type +class GetConnectionChangeLogResult(dict): + def __init__(__self__, *, + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): + """ + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time + """ + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter - def network(self) -> Optional['outputs.GetConnectionASideAccessPointNetworkResult']: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: """ - network access point information + Created by User Key """ - return pulumi.get(self, "network") + return pulumi.get(self, "created_by") @property - @pulumi.getter(name="peeringType") - def peering_type(self) -> Optional[str]: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: """ - Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + Created by User Email Address """ - return pulumi.get(self, "peering_type") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter - def port(self) -> Optional['outputs.GetConnectionASideAccessPointPortResult']: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: """ - Port access point information + Created by User Full Name """ - return pulumi.get(self, "port") + return pulumi.get(self, "created_by_full_name") @property - @pulumi.getter - def profile(self) -> Optional['outputs.GetConnectionASideAccessPointProfileResult']: + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: """ - Service Profile + Created by Date and Time """ - return pulumi.get(self, "profile") + return pulumi.get(self, "created_date_time") @property - @pulumi.getter - def router(self) -> Optional['outputs.GetConnectionASideAccessPointRouterResult']: + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: """ - Cloud Router access point information that replaces `gateway` + Deleted by User Key """ - return pulumi.get(self, "router") + return pulumi.get(self, "deleted_by") @property - @pulumi.getter(name="sellerRegion") - def seller_region(self) -> Optional[str]: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - Access point seller region + Deleted by User Email Address """ - return pulumi.get(self, "seller_region") + return pulumi.get(self, "deleted_by_email") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: """ - Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + Deleted by User Full Name """ - return pulumi.get(self, "type") + return pulumi.get(self, "deleted_by_full_name") @property - @pulumi.getter(name="virtualDevice") - def virtual_device(self) -> Optional['outputs.GetConnectionASideAccessPointVirtualDeviceResult']: + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: """ - Virtual device + Deleted by Date and Time """ - return pulumi.get(self, "virtual_device") + return pulumi.get(self, "deleted_date_time") + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: + """ + Updated by User Key + """ + return pulumi.get(self, "updated_by") -@pulumi.output_type -class GetConnectionASideAccessPointAccountResult(dict): - def __init__(__self__, *, - account_name: str, - account_number: int, - global_cust_id: str, - global_org_id: str, - global_organization_name: str, - org_id: int, - organization_name: str, - ucm_id: str): + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id + Updated by User Email Address """ - pulumi.set(__self__, "account_name", account_name) - pulumi.set(__self__, "account_number", account_number) - pulumi.set(__self__, "global_cust_id", global_cust_id) - pulumi.set(__self__, "global_org_id", global_org_id) - pulumi.set(__self__, "global_organization_name", global_organization_name) - pulumi.set(__self__, "org_id", org_id) - pulumi.set(__self__, "organization_name", organization_name) - pulumi.set(__self__, "ucm_id", ucm_id) + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: + """ + Updated by User Full Name + """ + return pulumi.get(self, "updated_by_full_name") + + @property + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: + """ + Updated by Date and Time + """ + return pulumi.get(self, "updated_date_time") + + +@pulumi.output_type +class GetConnectionNotificationResult(dict): + def __init__(__self__, *, + emails: Sequence[str], + type: str, + send_interval: Optional[str] = None): """ - Legal name of the accountholder. + :param Sequence[str] emails: Array of contact emails + :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + :param str send_interval: Send interval """ - return pulumi.get(self, "account_name") + pulumi.set(__self__, "emails", emails) + pulumi.set(__self__, "type", type) + if send_interval is not None: + pulumi.set(__self__, "send_interval", send_interval) @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: + @pulumi.getter + def emails(self) -> Sequence[str]: """ - Equinix-assigned account number. + Array of contact emails """ - return pulumi.get(self, "account_number") + return pulumi.get(self, "emails") @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: + @pulumi.getter + def type(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "type") @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: + @pulumi.getter(name="sendInterval") + def send_interval(self) -> Optional[str]: """ - Equinix-assigned ID of the subscriber's parent organization. + Send interval """ - return pulumi.get(self, "global_org_id") + return pulumi.get(self, "send_interval") - @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + +@pulumi.output_type +class GetConnectionOperationResult(dict): + def __init__(__self__, *, + equinix_status: str, + errors: Sequence['outputs.GetConnectionOperationErrorResult'], + provider_status: str): """ - Equinix-assigned name of the subscriber's parent organization. + :param str equinix_status: Connection status + :param Sequence['GetConnectionOperationErrorArgs'] errors: Errors occurred + :param str provider_status: Connection provider readiness status """ - return pulumi.get(self, "global_organization_name") + pulumi.set(__self__, "equinix_status", equinix_status) + pulumi.set(__self__, "errors", errors) + pulumi.set(__self__, "provider_status", provider_status) @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter(name="equinixStatus") + def equinix_status(self) -> str: """ - Equinix-assigned ID of the subscriber's organization. + Connection status """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "equinix_status") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter + def errors(self) -> Sequence['outputs.GetConnectionOperationErrorResult']: """ - Equinix-assigned name of the subscriber's organization. + Errors occurred """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "errors") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter(name="providerStatus") + def provider_status(self) -> str: """ - Enterprise datastore id + Connection provider readiness status """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "provider_status") @pulumi.output_type -class GetConnectionASideAccessPointGatewayResult(dict): +class GetConnectionOperationErrorResult(dict): def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + additional_infos: Sequence['outputs.GetConnectionOperationErrorAdditionalInfoResult'], + correlation_id: str, + details: str, + error_code: str, + error_message: str, + help: str): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + :param Sequence['GetConnectionOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info + :param str correlation_id: CorrelationId + :param str details: Details + :param str error_code: Error code + :param str error_message: Error Message + :param str help: Help """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "additional_infos", additional_infos) + pulumi.set(__self__, "correlation_id", correlation_id) + pulumi.set(__self__, "details", details) + pulumi.set(__self__, "error_code", error_code) + pulumi.set(__self__, "error_message", error_message) + pulumi.set(__self__, "help", help) @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Sequence['outputs.GetConnectionOperationErrorAdditionalInfoResult']: """ - Unique Resource Identifier + Pricing error additional Info """ - return pulumi.get(self, "href") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="correlationId") + def correlation_id(self) -> str: """ - Equinix-assigned virtual gateway identifier + CorrelationId """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "correlation_id") -@pulumi.output_type -class GetConnectionASideAccessPointInterfaceResult(dict): - def __init__(__self__, *, - id: int, - type: Optional[str] = None, - uuid: Optional[str] = None): + @property + @pulumi.getter + def details(self) -> str: """ - :param int id: id - :param str type: Interface type - :param str uuid: Equinix-assigned interface identifier + Details """ - pulumi.set(__self__, "id", id) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "details") @property - @pulumi.getter - def id(self) -> int: + @pulumi.getter(name="errorCode") + def error_code(self) -> str: """ - id + Error code """ - return pulumi.get(self, "id") + return pulumi.get(self, "error_code") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="errorMessage") + def error_message(self) -> str: """ - Interface type + Error Message """ - return pulumi.get(self, "type") + return pulumi.get(self, "error_message") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def help(self) -> str: """ - Equinix-assigned interface identifier + Help """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "help") @pulumi.output_type -class GetConnectionASideAccessPointLinkProtocolResult(dict): +class GetConnectionOperationErrorAdditionalInfoResult(dict): def __init__(__self__, *, - vlan_c_tag: int, - vlan_s_tag: int, - vlan_tag: int, - type: Optional[str] = None): + property: str, + reason: str): """ - :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections - :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections - :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections - :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + :param str property: Property at which the error potentially occurred + :param str reason: Reason for the error """ - pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) - pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) - pulumi.set(__self__, "vlan_tag", vlan_tag) - if type is not None: - pulumi.set(__self__, "type", type) + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "reason", reason) @property - @pulumi.getter(name="vlanCTag") - def vlan_c_tag(self) -> int: + @pulumi.getter + def reason(self) -> str: """ - Vlan Customer Tag information, vlanCTag value specified for QINQ connections + Reason for the error """ - return pulumi.get(self, "vlan_c_tag") + return pulumi.get(self, "reason") @property - @pulumi.getter(name="vlanSTag") - def vlan_s_tag(self) -> int: + @pulumi.getter + def property(self) -> str: """ - Vlan Provider Tag information, vlanSTag value specified for QINQ connections + Property at which the error potentially occurred """ - return pulumi.get(self, "vlan_s_tag") + return pulumi.get(self, "property") - @property - @pulumi.getter(name="vlanTag") - def vlan_tag(self) -> int: + +@pulumi.output_type +class GetConnectionOrderResult(dict): + def __init__(__self__, *, + billing_tier: str, + order_id: str, + order_number: str, + purchase_order_number: str): """ - Vlan Tag information, vlanTag value specified for DOT1Q connections + :param str billing_tier: Billing tier for connection bandwidth + :param str order_id: Order Identification + :param str order_number: Order Reference Number + :param str purchase_order_number: Purchase order number """ - return pulumi.get(self, "vlan_tag") + pulumi.set(__self__, "billing_tier", billing_tier) + pulumi.set(__self__, "order_id", order_id) + pulumi.set(__self__, "order_number", order_number) + pulumi.set(__self__, "purchase_order_number", purchase_order_number) @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="billingTier") + def billing_tier(self) -> str: """ - Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + Billing tier for connection bandwidth """ - return pulumi.get(self, "type") + return pulumi.get(self, "billing_tier") + @property + @pulumi.getter(name="orderId") + def order_id(self) -> str: + """ + Order Identification + """ + return pulumi.get(self, "order_id") -@pulumi.output_type -class GetConnectionASideAccessPointLocationResult(dict): - def __init__(__self__, *, - ibx: str, - metro_code: str, - metro_name: str, - region: str): + @property + @pulumi.getter(name="orderNumber") + def order_number(self) -> str: """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + Order Reference Number """ - pulumi.set(__self__, "ibx", ibx) - pulumi.set(__self__, "metro_code", metro_code) - pulumi.set(__self__, "metro_name", metro_name) - pulumi.set(__self__, "region", region) + return pulumi.get(self, "order_number") @property - @pulumi.getter - def ibx(self) -> str: + @pulumi.getter(name="purchaseOrderNumber") + def purchase_order_number(self) -> str: """ - IBX Code + Purchase order number """ - return pulumi.get(self, "ibx") + return pulumi.get(self, "purchase_order_number") - @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> str: + +@pulumi.output_type +class GetConnectionProjectResult(dict): + def __init__(__self__, *, + href: str, + project_id: str): """ - Access point metro code + :param str href: Unique Resource URL + :param str project_id: Project Id """ - return pulumi.get(self, "metro_code") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) @property - @pulumi.getter(name="metroName") - def metro_name(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Access point metro name + Unique Resource URL """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "href") @property - @pulumi.getter - def region(self) -> str: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Access point region + Project Id """ - return pulumi.get(self, "region") + return pulumi.get(self, "project_id") @pulumi.output_type -class GetConnectionASideAccessPointNetworkResult(dict): +class GetConnectionRedundancyResult(dict): def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + group: str, + priority: str): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned Network identifier + :param str group: Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) + :param str priority: Connection priority in redundancy group - PRIMARY, SECONDARY """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property @pulumi.getter - def href(self) -> str: + def group(self) -> str: """ - Unique Resource Identifier + Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) """ - return pulumi.get(self, "href") + return pulumi.get(self, "group") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def priority(self) -> str: """ - Equinix-assigned Network identifier + Connection priority in redundancy group - PRIMARY, SECONDARY """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "priority") @pulumi.output_type -class GetConnectionASideAccessPointPortResult(dict): +class GetConnectionRouteFiltersDataResult(dict): def __init__(__self__, *, + attachment_status: str, + direction: str, href: str, - name: str, - redundancies: Sequence['outputs.GetConnectionASideAccessPointPortRedundancyResult'], + type: str, uuid: str): """ - :param str href: Unique Resource Identifier - :param str name: Port name - :param Sequence['GetConnectionASideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information - :param str uuid: Equinix-assigned Port identifier + :param str attachment_status: Status of the Route Filter Policy attachment lifecycle + :param str direction: Direction of the filtering of the attached Route Filter Policy + :param str href: URI to the attached Route Filter Policy on the Connection + :param str type: Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + :param str uuid: Equinix Assigned ID for Route Filter Policy """ + pulumi.set(__self__, "attachment_status", attachment_status) + pulumi.set(__self__, "direction", direction) pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "type", type) pulumi.set(__self__, "uuid", uuid) + @property + @pulumi.getter(name="attachmentStatus") + def attachment_status(self) -> str: + """ + Status of the Route Filter Policy attachment lifecycle + """ + return pulumi.get(self, "attachment_status") + @property @pulumi.getter - def href(self) -> str: + def direction(self) -> str: """ - Unique Resource Identifier + Direction of the filtering of the attached Route Filter Policy """ - return pulumi.get(self, "href") + return pulumi.get(self, "direction") @property @pulumi.getter - def name(self) -> str: + def href(self) -> str: """ - Port name + URI to the attached Route Filter Policy on the Connection """ - return pulumi.get(self, "name") + return pulumi.get(self, "href") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetConnectionASideAccessPointPortRedundancyResult']: + def type(self) -> str: """ - Redundancy Information + Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "type") @property @pulumi.getter def uuid(self) -> str: """ - Equinix-assigned Port identifier + Equinix Assigned ID for Route Filter Policy """ return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionASideAccessPointPortRedundancyResult(dict): +class GetConnectionRouteFiltersPaginationResult(dict): def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + limit: int, + next: str, + offset: int, + previous: str, + total: int): """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param str next: URL relative to the last item in the response. + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + :param str previous: URL relative to the first item in the response. + :param int total: Total number of elements returned. """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + pulumi.set(__self__, "limit", limit) + pulumi.set(__self__, "next", next) + pulumi.set(__self__, "offset", offset) + pulumi.set(__self__, "previous", previous) + pulumi.set(__self__, "total", total) @property @pulumi.getter - def enabled(self) -> bool: + def limit(self) -> int: """ - Access point redundancy + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "limit") @property @pulumi.getter - def group(self) -> str: + def next(self) -> str: """ - Port redundancy group + URL relative to the last item in the response. """ - return pulumi.get(self, "group") + return pulumi.get(self, "next") @property @pulumi.getter - def priority(self) -> str: - """ - Priority type-Primary or Secondary - """ - return pulumi.get(self, "priority") - - -@pulumi.output_type -class GetConnectionASideAccessPointProfileResult(dict): - def __init__(__self__, *, - access_point_type_configs: Sequence['outputs.GetConnectionASideAccessPointProfileAccessPointTypeConfigResult'], - description: str, - href: str, - name: str, - type: str, - uuid: str): + def offset(self) -> int: """ - :param Sequence['GetConnectionASideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information - :param str description: User-provided service description - :param str href: Service Profile URI response attribute - :param str name: Customer-assigned service profile name - :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE - :param str uuid: Equinix assigned service profile identifier + The page offset for the pagination request. Index of the first element. Default is 0. """ - pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "offset") @property - @pulumi.getter(name="accessPointTypeConfigs") - def access_point_type_configs(self) -> Sequence['outputs.GetConnectionASideAccessPointProfileAccessPointTypeConfigResult']: + @pulumi.getter + def previous(self) -> str: """ - Access point config information + URL relative to the first item in the response. """ - return pulumi.get(self, "access_point_type_configs") + return pulumi.get(self, "previous") @property @pulumi.getter - def description(self) -> str: + def total(self) -> int: """ - User-provided service description + Total number of elements returned. """ - return pulumi.get(self, "description") + return pulumi.get(self, "total") - @property - @pulumi.getter - def href(self) -> str: + +@pulumi.output_type +class GetConnectionZSideResult(dict): + def __init__(__self__, *, + access_point: Optional['outputs.GetConnectionZSideAccessPointResult'] = None, + additional_infos: Optional[Sequence['outputs.GetConnectionZSideAdditionalInfoResult']] = None, + service_token: Optional['outputs.GetConnectionZSideServiceTokenResult'] = None): """ - Service Profile URI response attribute + :param 'GetConnectionZSideAccessPointArgs' access_point: Point of access details + :param Sequence['GetConnectionZSideAdditionalInfoArgs'] additional_infos: Connection side additional information + :param 'GetConnectionZSideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "href") + if access_point is not None: + pulumi.set(__self__, "access_point", access_point) + if additional_infos is not None: + pulumi.set(__self__, "additional_infos", additional_infos) + if service_token is not None: + pulumi.set(__self__, "service_token", service_token) @property - @pulumi.getter - def name(self) -> str: + @pulumi.getter(name="accessPoint") + def access_point(self) -> Optional['outputs.GetConnectionZSideAccessPointResult']: """ - Customer-assigned service profile name + Point of access details """ - return pulumi.get(self, "name") + return pulumi.get(self, "access_point") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionZSideAdditionalInfoResult']]: """ - Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + Connection side additional information """ - return pulumi.get(self, "type") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="serviceToken") + def service_token(self) -> Optional['outputs.GetConnectionZSideServiceTokenResult']: """ - Equinix assigned service profile identifier + For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "service_token") @pulumi.output_type -class GetConnectionASideAccessPointProfileAccessPointTypeConfigResult(dict): +class GetConnectionZSideAccessPointResult(dict): def __init__(__self__, *, - type: str, - uuid: str): + accounts: Sequence['outputs.GetConnectionZSideAccessPointAccountResult'], + location: 'outputs.GetConnectionZSideAccessPointLocationResult', + provider_connection_id: str, + authentication_key: Optional[str] = None, + gateway: Optional['outputs.GetConnectionZSideAccessPointGatewayResult'] = None, + interface: Optional['outputs.GetConnectionZSideAccessPointInterfaceResult'] = None, + link_protocol: Optional['outputs.GetConnectionZSideAccessPointLinkProtocolResult'] = None, + network: Optional['outputs.GetConnectionZSideAccessPointNetworkResult'] = None, + peering_type: Optional[str] = None, + port: Optional['outputs.GetConnectionZSideAccessPointPortResult'] = None, + profile: Optional['outputs.GetConnectionZSideAccessPointProfileResult'] = None, + router: Optional['outputs.GetConnectionZSideAccessPointRouterResult'] = None, + seller_region: Optional[str] = None, + type: Optional[str] = None, + virtual_device: Optional['outputs.GetConnectionZSideAccessPointVirtualDeviceResult'] = None): """ - :param str type: Type of access point type config - VD, COLO - :param str uuid: Equinix-assigned access point type config identifier + :param Sequence['GetConnectionZSideAccessPointAccountArgs'] accounts: Account + :param 'GetConnectionZSideAccessPointLocationArgs' location: Access point location + :param str provider_connection_id: Provider assigned Connection Id + :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections + :param 'GetConnectionZSideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead + :param 'GetConnectionZSideAccessPointInterfaceArgs' interface: Virtual device interface + :param 'GetConnectionZSideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol + :param 'GetConnectionZSideAccessPointNetworkArgs' network: network access point information + :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + :param 'GetConnectionZSideAccessPointPortArgs' port: Port access point information + :param 'GetConnectionZSideAccessPointProfileArgs' profile: Service Profile + :param 'GetConnectionZSideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` + :param str seller_region: Access point seller region + :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + :param 'GetConnectionZSideAccessPointVirtualDeviceArgs' virtual_device: Virtual device """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "provider_connection_id", provider_connection_id) + if authentication_key is not None: + pulumi.set(__self__, "authentication_key", authentication_key) + if gateway is not None: + pulumi.set(__self__, "gateway", gateway) + if interface is not None: + pulumi.set(__self__, "interface", interface) + if link_protocol is not None: + pulumi.set(__self__, "link_protocol", link_protocol) + if network is not None: + pulumi.set(__self__, "network", network) + if peering_type is not None: + pulumi.set(__self__, "peering_type", peering_type) + if port is not None: + pulumi.set(__self__, "port", port) + if profile is not None: + pulumi.set(__self__, "profile", profile) + if router is not None: + pulumi.set(__self__, "router", router) + if seller_region is not None: + pulumi.set(__self__, "seller_region", seller_region) + if type is not None: + pulumi.set(__self__, "type", type) + if virtual_device is not None: + pulumi.set(__self__, "virtual_device", virtual_device) @property @pulumi.getter - def type(self) -> str: + def accounts(self) -> Sequence['outputs.GetConnectionZSideAccessPointAccountResult']: """ - Type of access point type config - VD, COLO + Account """ - return pulumi.get(self, "type") + return pulumi.get(self, "accounts") @property @pulumi.getter - def uuid(self) -> str: - """ - Equinix-assigned access point type config identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionASideAccessPointRouterResult(dict): - def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + def location(self) -> 'outputs.GetConnectionZSideAccessPointLocationResult': """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + Access point location """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "location") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="providerConnectionId") + def provider_connection_id(self) -> str: """ - Unique Resource Identifier + Provider assigned Connection Id """ - return pulumi.get(self, "href") + return pulumi.get(self, "provider_connection_id") @property - @pulumi.getter - def uuid(self) -> Optional[str]: - """ - Equinix-assigned virtual gateway identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionASideAccessPointVirtualDeviceResult(dict): - def __init__(__self__, *, - href: str, - name: Optional[str] = None, - type: Optional[str] = None, - uuid: Optional[str] = None): + @pulumi.getter(name="authenticationKey") + def authentication_key(self) -> Optional[str]: """ - :param str href: Unique Resource Identifier - :param str name: Customer-assigned Virtual Device Name - :param str type: Virtual Device type - :param str uuid: Equinix-assigned Virtual Device identifier + Authentication key for provider based connections or Metal-Fabric Integration connections """ - pulumi.set(__self__, "href", href) - if name is not None: - pulumi.set(__self__, "name", name) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "authentication_key") @property @pulumi.getter - def href(self) -> str: + @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") + def gateway(self) -> Optional['outputs.GetConnectionZSideAccessPointGatewayResult']: """ - Unique Resource Identifier + **Deprecated** `gateway` Use `router` attribute instead """ - return pulumi.get(self, "href") + return pulumi.get(self, "gateway") @property @pulumi.getter - def name(self) -> Optional[str]: + def interface(self) -> Optional['outputs.GetConnectionZSideAccessPointInterfaceResult']: """ - Customer-assigned Virtual Device Name + Virtual device interface """ - return pulumi.get(self, "name") + return pulumi.get(self, "interface") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="linkProtocol") + def link_protocol(self) -> Optional['outputs.GetConnectionZSideAccessPointLinkProtocolResult']: """ - Virtual Device type + Connection link protocol """ - return pulumi.get(self, "type") + return pulumi.get(self, "link_protocol") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def network(self) -> Optional['outputs.GetConnectionZSideAccessPointNetworkResult']: """ - Equinix-assigned Virtual Device identifier + network access point information """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "network") -@pulumi.output_type -class GetConnectionASideAdditionalInfoResult(dict): - def __init__(__self__, *, - key: Optional[str] = None, - value: Optional[str] = None): + @property + @pulumi.getter(name="peeringType") + def peering_type(self) -> Optional[str]: """ - :param str key: Additional information key - :param str value: Additional information value + Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL """ - if key is not None: - pulumi.set(__self__, "key", key) - if value is not None: - pulumi.set(__self__, "value", value) + return pulumi.get(self, "peering_type") @property @pulumi.getter - def key(self) -> Optional[str]: + def port(self) -> Optional['outputs.GetConnectionZSideAccessPointPortResult']: """ - Additional information key + Port access point information """ - return pulumi.get(self, "key") + return pulumi.get(self, "port") @property @pulumi.getter - def value(self) -> Optional[str]: - """ - Additional information value - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class GetConnectionASideServiceTokenResult(dict): - def __init__(__self__, *, - description: str, - href: str, - type: Optional[str] = None, - uuid: Optional[str] = None): + def profile(self) -> Optional['outputs.GetConnectionZSideAccessPointProfileResult']: """ - :param str description: Service token description - :param str href: An absolute URL that is the subject of the link's context - :param str type: Token type - VC_TOKEN - :param str uuid: Equinix-assigned service token identifier + Service Profile """ - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "profile") @property @pulumi.getter - def description(self) -> str: + def router(self) -> Optional['outputs.GetConnectionZSideAccessPointRouterResult']: """ - Service token description + Cloud Router access point information that replaces `gateway` """ - return pulumi.get(self, "description") + return pulumi.get(self, "router") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="sellerRegion") + def seller_region(self) -> Optional[str]: """ - An absolute URL that is the subject of the link's context + Access point seller region """ - return pulumi.get(self, "href") + return pulumi.get(self, "seller_region") @property @pulumi.getter def type(self) -> Optional[str]: """ - Token type - VC_TOKEN + Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK """ return pulumi.get(self, "type") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="virtualDevice") + def virtual_device(self) -> Optional['outputs.GetConnectionZSideAccessPointVirtualDeviceResult']: """ - Equinix-assigned service token identifier + Virtual device """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "virtual_device") @pulumi.output_type -class GetConnectionAccountResult(dict): +class GetConnectionZSideAccessPointAccountResult(dict): def __init__(__self__, *, account_name: str, account_number: int, @@ -8384,1159 +9798,1112 @@ def ucm_id(self) -> str: @pulumi.output_type -class GetConnectionChangeLogResult(dict): +class GetConnectionZSideAccessPointGatewayResult(dict): def __init__(__self__, *, - created_by: str, - created_by_email: str, - created_by_full_name: str, - created_date_time: str, - deleted_by: str, - deleted_by_email: str, - deleted_by_full_name: str, - deleted_date_time: str, - updated_by: str, - updated_by_email: str, - updated_by_full_name: str, - updated_date_time: str): + href: str, + uuid: Optional[str] = None): """ - :param str created_by: Created by User Key - :param str created_by_email: Created by User Email Address - :param str created_by_full_name: Created by User Full Name - :param str created_date_time: Created by Date and Time - :param str deleted_by: Deleted by User Key - :param str deleted_by_email: Deleted by User Email Address - :param str deleted_by_full_name: Deleted by User Full Name - :param str deleted_date_time: Deleted by Date and Time - :param str updated_by: Updated by User Key - :param str updated_by_email: Updated by User Email Address - :param str updated_by_full_name: Updated by User Full Name - :param str updated_date_time: Updated by Date and Time + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier """ - pulumi.set(__self__, "created_by", created_by) - pulumi.set(__self__, "created_by_email", created_by_email) - pulumi.set(__self__, "created_by_full_name", created_by_full_name) - pulumi.set(__self__, "created_date_time", created_date_time) - pulumi.set(__self__, "deleted_by", deleted_by) - pulumi.set(__self__, "deleted_by_email", deleted_by_email) - pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) - pulumi.set(__self__, "deleted_date_time", deleted_date_time) - pulumi.set(__self__, "updated_by", updated_by) - pulumi.set(__self__, "updated_by_email", updated_by_email) - pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) - pulumi.set(__self__, "updated_date_time", updated_date_time) + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="createdBy") - def created_by(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Created by User Key + Unique Resource Identifier """ - return pulumi.get(self, "created_by") + return pulumi.get(self, "href") @property - @pulumi.getter(name="createdByEmail") - def created_by_email(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Created by User Email Address + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "created_by_email") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="createdByFullName") - def created_by_full_name(self) -> str: - """ - Created by User Full Name - """ - return pulumi.get(self, "created_by_full_name") - @property - @pulumi.getter(name="createdDateTime") - def created_date_time(self) -> str: +@pulumi.output_type +class GetConnectionZSideAccessPointInterfaceResult(dict): + def __init__(__self__, *, + id: int, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - Created by Date and Time + :param int id: id + :param str type: Interface type + :param str uuid: Equinix-assigned interface identifier """ - return pulumi.get(self, "created_date_time") + pulumi.set(__self__, "id", id) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="deletedBy") - def deleted_by(self) -> str: + @pulumi.getter + def id(self) -> int: """ - Deleted by User Key + id """ - return pulumi.get(self, "deleted_by") + return pulumi.get(self, "id") @property - @pulumi.getter(name="deletedByEmail") - def deleted_by_email(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Deleted by User Email Address + Interface type """ - return pulumi.get(self, "deleted_by_email") + return pulumi.get(self, "type") @property - @pulumi.getter(name="deletedByFullName") - def deleted_by_full_name(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Deleted by User Full Name + Equinix-assigned interface identifier """ - return pulumi.get(self, "deleted_by_full_name") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="deletedDateTime") - def deleted_date_time(self) -> str: + +@pulumi.output_type +class GetConnectionZSideAccessPointLinkProtocolResult(dict): + def __init__(__self__, *, + vlan_c_tag: int, + vlan_s_tag: int, + vlan_tag: int, + type: Optional[str] = None): """ - Deleted by Date and Time + :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections + :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections + :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections + :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "deleted_date_time") + pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) + pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) + pulumi.set(__self__, "vlan_tag", vlan_tag) + if type is not None: + pulumi.set(__self__, "type", type) @property - @pulumi.getter(name="updatedBy") - def updated_by(self) -> str: + @pulumi.getter(name="vlanCTag") + def vlan_c_tag(self) -> int: """ - Updated by User Key + Vlan Customer Tag information, vlanCTag value specified for QINQ connections """ - return pulumi.get(self, "updated_by") + return pulumi.get(self, "vlan_c_tag") @property - @pulumi.getter(name="updatedByEmail") - def updated_by_email(self) -> str: + @pulumi.getter(name="vlanSTag") + def vlan_s_tag(self) -> int: """ - Updated by User Email Address + Vlan Provider Tag information, vlanSTag value specified for QINQ connections """ - return pulumi.get(self, "updated_by_email") + return pulumi.get(self, "vlan_s_tag") @property - @pulumi.getter(name="updatedByFullName") - def updated_by_full_name(self) -> str: + @pulumi.getter(name="vlanTag") + def vlan_tag(self) -> int: """ - Updated by User Full Name + Vlan Tag information, vlanTag value specified for DOT1Q connections """ - return pulumi.get(self, "updated_by_full_name") + return pulumi.get(self, "vlan_tag") @property - @pulumi.getter(name="updatedDateTime") - def updated_date_time(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Updated by Date and Time + Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "updated_date_time") + return pulumi.get(self, "type") @pulumi.output_type -class GetConnectionNotificationResult(dict): +class GetConnectionZSideAccessPointLocationResult(dict): def __init__(__self__, *, - emails: Sequence[str], - type: str, - send_interval: Optional[str] = None): + ibx: str, + metro_code: str, + metro_name: str, + region: str): """ - :param Sequence[str] emails: Array of contact emails - :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS - :param str send_interval: Send interval + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - pulumi.set(__self__, "emails", emails) - pulumi.set(__self__, "type", type) - if send_interval is not None: - pulumi.set(__self__, "send_interval", send_interval) + pulumi.set(__self__, "ibx", ibx) + pulumi.set(__self__, "metro_code", metro_code) + pulumi.set(__self__, "metro_name", metro_name) + pulumi.set(__self__, "region", region) @property @pulumi.getter - def emails(self) -> Sequence[str]: + def ibx(self) -> str: """ - Array of contact emails + IBX Code """ - return pulumi.get(self, "emails") + return pulumi.get(self, "ibx") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="metroCode") + def metro_code(self) -> str: """ - Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + Access point metro code """ - return pulumi.get(self, "type") + return pulumi.get(self, "metro_code") @property - @pulumi.getter(name="sendInterval") - def send_interval(self) -> Optional[str]: + @pulumi.getter(name="metroName") + def metro_name(self) -> str: """ - Send interval + Access point metro name """ - return pulumi.get(self, "send_interval") - + return pulumi.get(self, "metro_name") -@pulumi.output_type -class GetConnectionOperationResult(dict): - def __init__(__self__, *, - equinix_status: str, - errors: Sequence['outputs.GetConnectionOperationErrorResult'], - provider_status: str): + @property + @pulumi.getter + def region(self) -> str: """ - :param str equinix_status: Connection status - :param Sequence['GetConnectionOperationErrorArgs'] errors: Errors occurred - :param str provider_status: Connection provider readiness status + Access point region """ - pulumi.set(__self__, "equinix_status", equinix_status) - pulumi.set(__self__, "errors", errors) - pulumi.set(__self__, "provider_status", provider_status) + return pulumi.get(self, "region") - @property - @pulumi.getter(name="equinixStatus") - def equinix_status(self) -> str: + +@pulumi.output_type +class GetConnectionZSideAccessPointNetworkResult(dict): + def __init__(__self__, *, + href: str, + uuid: Optional[str] = None): """ - Connection status + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned Network identifier """ - return pulumi.get(self, "equinix_status") + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def errors(self) -> Sequence['outputs.GetConnectionOperationErrorResult']: + def href(self) -> str: """ - Errors occurred + Unique Resource Identifier """ - return pulumi.get(self, "errors") + return pulumi.get(self, "href") @property - @pulumi.getter(name="providerStatus") - def provider_status(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Connection provider readiness status + Equinix-assigned Network identifier """ - return pulumi.get(self, "provider_status") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionOperationErrorResult(dict): +class GetConnectionZSideAccessPointPortResult(dict): def __init__(__self__, *, - additional_infos: Sequence['outputs.GetConnectionOperationErrorAdditionalInfoResult'], - correlation_id: str, - details: str, - error_code: str, - error_message: str, - help: str): + href: str, + name: str, + redundancies: Sequence['outputs.GetConnectionZSideAccessPointPortRedundancyResult'], + uuid: str): """ - :param Sequence['GetConnectionOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info - :param str correlation_id: CorrelationId - :param str details: Details - :param str error_code: Error code - :param str error_message: Error Message - :param str help: Help + :param str href: Unique Resource Identifier + :param str name: Port name + :param Sequence['GetConnectionZSideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information + :param str uuid: Equinix-assigned Port identifier """ - pulumi.set(__self__, "additional_infos", additional_infos) - pulumi.set(__self__, "correlation_id", correlation_id) - pulumi.set(__self__, "details", details) - pulumi.set(__self__, "error_code", error_code) - pulumi.set(__self__, "error_message", error_message) - pulumi.set(__self__, "help", help) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Sequence['outputs.GetConnectionOperationErrorAdditionalInfoResult']: + @pulumi.getter + def href(self) -> str: """ - Pricing error additional Info + Unique Resource Identifier """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "href") @property - @pulumi.getter(name="correlationId") - def correlation_id(self) -> str: + @pulumi.getter + def name(self) -> str: """ - CorrelationId + Port name """ - return pulumi.get(self, "correlation_id") + return pulumi.get(self, "name") @property @pulumi.getter - def details(self) -> str: + def redundancies(self) -> Sequence['outputs.GetConnectionZSideAccessPointPortRedundancyResult']: """ - Details + Redundancy Information """ - return pulumi.get(self, "details") + return pulumi.get(self, "redundancies") @property - @pulumi.getter(name="errorCode") - def error_code(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Error code + Equinix-assigned Port identifier """ - return pulumi.get(self, "error_code") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="errorMessage") - def error_message(self) -> str: + +@pulumi.output_type +class GetConnectionZSideAccessPointPortRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): """ - Error Message + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary """ - return pulumi.get(self, "error_message") + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property @pulumi.getter - def help(self) -> str: - """ - Help - """ - return pulumi.get(self, "help") - - -@pulumi.output_type -class GetConnectionOperationErrorAdditionalInfoResult(dict): - def __init__(__self__, *, - property: str, - reason: str): + def enabled(self) -> bool: """ - :param str property: Property at which the error potentially occurred - :param str reason: Reason for the error + Access point redundancy """ - pulumi.set(__self__, "property", property) - pulumi.set(__self__, "reason", reason) + return pulumi.get(self, "enabled") @property @pulumi.getter - def reason(self) -> str: + def group(self) -> str: """ - Reason for the error + Port redundancy group """ - return pulumi.get(self, "reason") + return pulumi.get(self, "group") @property @pulumi.getter - def property(self) -> str: + def priority(self) -> str: """ - Property at which the error potentially occurred + Priority type-Primary or Secondary """ - return pulumi.get(self, "property") + return pulumi.get(self, "priority") @pulumi.output_type -class GetConnectionOrderResult(dict): +class GetConnectionZSideAccessPointProfileResult(dict): def __init__(__self__, *, - billing_tier: str, - order_id: str, - order_number: str, - purchase_order_number: str): + access_point_type_configs: Sequence['outputs.GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult'], + description: str, + href: str, + name: str, + type: str, + uuid: str): """ - :param str billing_tier: Billing tier for connection bandwidth - :param str order_id: Order Identification - :param str order_number: Order Reference Number - :param str purchase_order_number: Purchase order number + :param Sequence['GetConnectionZSideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information + :param str description: User-provided service description + :param str href: Service Profile URI response attribute + :param str name: Customer-assigned service profile name + :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + :param str uuid: Equinix assigned service profile identifier """ - pulumi.set(__self__, "billing_tier", billing_tier) - pulumi.set(__self__, "order_id", order_id) - pulumi.set(__self__, "order_number", order_number) - pulumi.set(__self__, "purchase_order_number", purchase_order_number) + pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="billingTier") - def billing_tier(self) -> str: + @pulumi.getter(name="accessPointTypeConfigs") + def access_point_type_configs(self) -> Sequence['outputs.GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult']: """ - Billing tier for connection bandwidth + Access point config information """ - return pulumi.get(self, "billing_tier") + return pulumi.get(self, "access_point_type_configs") @property - @pulumi.getter(name="orderId") - def order_id(self) -> str: + @pulumi.getter + def description(self) -> str: """ - Order Identification + User-provided service description """ - return pulumi.get(self, "order_id") + return pulumi.get(self, "description") @property - @pulumi.getter(name="orderNumber") - def order_number(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Order Reference Number + Service Profile URI response attribute """ - return pulumi.get(self, "order_number") + return pulumi.get(self, "href") @property - @pulumi.getter(name="purchaseOrderNumber") - def purchase_order_number(self) -> str: - """ - Purchase order number - """ - return pulumi.get(self, "purchase_order_number") - - -@pulumi.output_type -class GetConnectionProjectResult(dict): - def __init__(__self__, *, - href: str, - project_id: str): + @pulumi.getter + def name(self) -> str: """ - :param str href: Unique Resource URL - :param str project_id: Project Id + Customer-assigned service profile name """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "project_id", project_id) + return pulumi.get(self, "name") @property @pulumi.getter - def href(self) -> str: + def type(self) -> str: """ - Unique Resource URL + Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE """ - return pulumi.get(self, "href") + return pulumi.get(self, "type") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Project Id + Equinix assigned service profile identifier """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionRedundancyResult(dict): +class GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult(dict): def __init__(__self__, *, - group: str, - priority: str): + type: str, + uuid: str): """ - :param str group: Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) - :param str priority: Connection priority in redundancy group - PRIMARY, SECONDARY + :param str type: Type of access point type config - VD, COLO + :param str uuid: Equinix-assigned access point type config identifier """ - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def group(self) -> str: + def type(self) -> str: """ - Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) + Type of access point type config - VD, COLO """ - return pulumi.get(self, "group") + return pulumi.get(self, "type") @property @pulumi.getter - def priority(self) -> str: + def uuid(self) -> str: """ - Connection priority in redundancy group - PRIMARY, SECONDARY + Equinix-assigned access point type config identifier """ - return pulumi.get(self, "priority") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionZSideResult(dict): +class GetConnectionZSideAccessPointRouterResult(dict): def __init__(__self__, *, - access_point: Optional['outputs.GetConnectionZSideAccessPointResult'] = None, - additional_infos: Optional[Sequence['outputs.GetConnectionZSideAdditionalInfoResult']] = None, - service_token: Optional['outputs.GetConnectionZSideServiceTokenResult'] = None): - """ - :param 'GetConnectionZSideAccessPointArgs' access_point: Point of access details - :param Sequence['GetConnectionZSideAdditionalInfoArgs'] additional_infos: Connection side additional information - :param 'GetConnectionZSideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets - """ - if access_point is not None: - pulumi.set(__self__, "access_point", access_point) - if additional_infos is not None: - pulumi.set(__self__, "additional_infos", additional_infos) - if service_token is not None: - pulumi.set(__self__, "service_token", service_token) - - @property - @pulumi.getter(name="accessPoint") - def access_point(self) -> Optional['outputs.GetConnectionZSideAccessPointResult']: + href: str, + uuid: Optional[str] = None): """ - Point of access details + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "access_point") + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionZSideAdditionalInfoResult']]: + @pulumi.getter + def href(self) -> str: """ - Connection side additional information + Unique Resource Identifier """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "href") @property - @pulumi.getter(name="serviceToken") - def service_token(self) -> Optional['outputs.GetConnectionZSideServiceTokenResult']: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "service_token") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionZSideAccessPointResult(dict): +class GetConnectionZSideAccessPointVirtualDeviceResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetConnectionZSideAccessPointAccountResult'], - location: 'outputs.GetConnectionZSideAccessPointLocationResult', - provider_connection_id: str, - authentication_key: Optional[str] = None, - gateway: Optional['outputs.GetConnectionZSideAccessPointGatewayResult'] = None, - interface: Optional['outputs.GetConnectionZSideAccessPointInterfaceResult'] = None, - link_protocol: Optional['outputs.GetConnectionZSideAccessPointLinkProtocolResult'] = None, - network: Optional['outputs.GetConnectionZSideAccessPointNetworkResult'] = None, - peering_type: Optional[str] = None, - port: Optional['outputs.GetConnectionZSideAccessPointPortResult'] = None, - profile: Optional['outputs.GetConnectionZSideAccessPointProfileResult'] = None, - router: Optional['outputs.GetConnectionZSideAccessPointRouterResult'] = None, - seller_region: Optional[str] = None, + href: str, + name: Optional[str] = None, type: Optional[str] = None, - virtual_device: Optional['outputs.GetConnectionZSideAccessPointVirtualDeviceResult'] = None): - """ - :param Sequence['GetConnectionZSideAccessPointAccountArgs'] accounts: Account - :param 'GetConnectionZSideAccessPointLocationArgs' location: Access point location - :param str provider_connection_id: Provider assigned Connection Id - :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections - :param 'GetConnectionZSideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead - :param 'GetConnectionZSideAccessPointInterfaceArgs' interface: Virtual device interface - :param 'GetConnectionZSideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol - :param 'GetConnectionZSideAccessPointNetworkArgs' network: network access point information - :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL - :param 'GetConnectionZSideAccessPointPortArgs' port: Port access point information - :param 'GetConnectionZSideAccessPointProfileArgs' profile: Service Profile - :param 'GetConnectionZSideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` - :param str seller_region: Access point seller region - :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK - :param 'GetConnectionZSideAccessPointVirtualDeviceArgs' virtual_device: Virtual device + uuid: Optional[str] = None): """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "location", location) - pulumi.set(__self__, "provider_connection_id", provider_connection_id) - if authentication_key is not None: - pulumi.set(__self__, "authentication_key", authentication_key) - if gateway is not None: - pulumi.set(__self__, "gateway", gateway) - if interface is not None: - pulumi.set(__self__, "interface", interface) - if link_protocol is not None: - pulumi.set(__self__, "link_protocol", link_protocol) - if network is not None: - pulumi.set(__self__, "network", network) - if peering_type is not None: - pulumi.set(__self__, "peering_type", peering_type) - if port is not None: - pulumi.set(__self__, "port", port) - if profile is not None: - pulumi.set(__self__, "profile", profile) - if router is not None: - pulumi.set(__self__, "router", router) - if seller_region is not None: - pulumi.set(__self__, "seller_region", seller_region) + :param str href: Unique Resource Identifier + :param str name: Customer-assigned Virtual Device Name + :param str type: Virtual Device type + :param str uuid: Equinix-assigned Virtual Device identifier + """ + pulumi.set(__self__, "href", href) + if name is not None: + pulumi.set(__self__, "name", name) if type is not None: pulumi.set(__self__, "type", type) - if virtual_device is not None: - pulumi.set(__self__, "virtual_device", virtual_device) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def accounts(self) -> Sequence['outputs.GetConnectionZSideAccessPointAccountResult']: + def href(self) -> str: """ - Account + Unique Resource Identifier """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "href") @property @pulumi.getter - def location(self) -> 'outputs.GetConnectionZSideAccessPointLocationResult': + def name(self) -> Optional[str]: """ - Access point location + Customer-assigned Virtual Device Name """ - return pulumi.get(self, "location") + return pulumi.get(self, "name") @property - @pulumi.getter(name="providerConnectionId") - def provider_connection_id(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Provider assigned Connection Id + Virtual Device type """ - return pulumi.get(self, "provider_connection_id") + return pulumi.get(self, "type") @property - @pulumi.getter(name="authenticationKey") - def authentication_key(self) -> Optional[str]: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Authentication key for provider based connections or Metal-Fabric Integration connections + Equinix-assigned Virtual Device identifier """ - return pulumi.get(self, "authentication_key") + return pulumi.get(self, "uuid") - @property - @pulumi.getter - @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") - def gateway(self) -> Optional['outputs.GetConnectionZSideAccessPointGatewayResult']: + +@pulumi.output_type +class GetConnectionZSideAdditionalInfoResult(dict): + def __init__(__self__, *, + key: Optional[str] = None, + value: Optional[str] = None): """ - **Deprecated** `gateway` Use `router` attribute instead + :param str key: Additional information key + :param str value: Additional information value """ - return pulumi.get(self, "gateway") + if key is not None: + pulumi.set(__self__, "key", key) + if value is not None: + pulumi.set(__self__, "value", value) @property @pulumi.getter - def interface(self) -> Optional['outputs.GetConnectionZSideAccessPointInterfaceResult']: + def key(self) -> Optional[str]: """ - Virtual device interface + Additional information key """ - return pulumi.get(self, "interface") + return pulumi.get(self, "key") @property - @pulumi.getter(name="linkProtocol") - def link_protocol(self) -> Optional['outputs.GetConnectionZSideAccessPointLinkProtocolResult']: + @pulumi.getter + def value(self) -> Optional[str]: """ - Connection link protocol + Additional information value """ - return pulumi.get(self, "link_protocol") + return pulumi.get(self, "value") - @property - @pulumi.getter - def network(self) -> Optional['outputs.GetConnectionZSideAccessPointNetworkResult']: + +@pulumi.output_type +class GetConnectionZSideServiceTokenResult(dict): + def __init__(__self__, *, + description: str, + href: str, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - network access point information + :param str description: Service token description + :param str href: An absolute URL that is the subject of the link's context + :param str type: Token type - VC_TOKEN + :param str uuid: Equinix-assigned service token identifier """ - return pulumi.get(self, "network") + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="peeringType") - def peering_type(self) -> Optional[str]: + @pulumi.getter + def description(self) -> str: """ - Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + Service token description """ - return pulumi.get(self, "peering_type") + return pulumi.get(self, "description") @property @pulumi.getter - def port(self) -> Optional['outputs.GetConnectionZSideAccessPointPortResult']: + def href(self) -> str: """ - Port access point information + An absolute URL that is the subject of the link's context """ - return pulumi.get(self, "port") + return pulumi.get(self, "href") @property @pulumi.getter - def profile(self) -> Optional['outputs.GetConnectionZSideAccessPointProfileResult']: + def type(self) -> Optional[str]: """ - Service Profile + Token type - VC_TOKEN """ - return pulumi.get(self, "profile") + return pulumi.get(self, "type") @property @pulumi.getter - def router(self) -> Optional['outputs.GetConnectionZSideAccessPointRouterResult']: + def uuid(self) -> Optional[str]: """ - Cloud Router access point information that replaces `gateway` + Equinix-assigned service token identifier """ - return pulumi.get(self, "router") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="sellerRegion") - def seller_region(self) -> Optional[str]: + +@pulumi.output_type +class GetConnectionsDataResult(dict): + def __init__(__self__, *, + a_sides: Sequence['outputs.GetConnectionsDataASideResult'], + accounts: Sequence['outputs.GetConnectionsDataAccountResult'], + additional_infos: Sequence[Mapping[str, str]], + bandwidth: int, + change_logs: Sequence['outputs.GetConnectionsDataChangeLogResult'], + description: str, + direction: str, + href: str, + is_remote: bool, + name: str, + notifications: Sequence['outputs.GetConnectionsDataNotificationResult'], + operations: Sequence['outputs.GetConnectionsDataOperationResult'], + orders: Sequence['outputs.GetConnectionsDataOrderResult'], + projects: Sequence['outputs.GetConnectionsDataProjectResult'], + redundancies: Sequence['outputs.GetConnectionsDataRedundancyResult'], + state: str, + type: str, + uuid: str, + z_sides: Sequence['outputs.GetConnectionsDataZSideResult']): """ - Access point seller region + :param Sequence['GetConnectionsDataASideArgs'] a_sides: Requester or Customer side connection configuration object of the multi-segment connection + :param Sequence['GetConnectionsDataAccountArgs'] accounts: Customer account information that is associated with this connection + :param Sequence[Mapping[str, str]] additional_infos: Connection additional information + :param int bandwidth: Connection bandwidth in Mbps + :param Sequence['GetConnectionsDataChangeLogArgs'] change_logs: Captures connection lifecycle change information + :param str description: Customer-provided connection description + :param str direction: Connection directionality from the requester point of view + :param str href: Connection URI information + :param bool is_remote: Connection property derived from access point locations + :param str name: Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores + :param Sequence['GetConnectionsDataNotificationArgs'] notifications: Preferences for notifications on connection configuration or status changes + :param Sequence['GetConnectionsDataOperationArgs'] operations: Connection type-specific operational data + :param Sequence['GetConnectionsDataOrderArgs'] orders: Order details + :param Sequence['GetConnectionsDataProjectArgs'] projects: Project information + :param Sequence['GetConnectionsDataRedundancyArgs'] redundancies: Connection Redundancy Configuration + :param str state: Connection overall state + :param str type: Defines the connection type like EVPL_VC, EPL_VC, IPWAN_VC, IP_VC, ACCESS_EPL_VC, EVPLAN_VC, EPLAN_VC, EIA_VC, IA_VC, EC_VC + :param str uuid: Equinix-assigned connection identifier + :param Sequence['GetConnectionsDataZSideArgs'] z_sides: Destination or Provider side connection configuration object of the multi-segment connection """ - return pulumi.get(self, "seller_region") + pulumi.set(__self__, "a_sides", a_sides) + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "additional_infos", additional_infos) + pulumi.set(__self__, "bandwidth", bandwidth) + pulumi.set(__self__, "change_logs", change_logs) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "direction", direction) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "is_remote", is_remote) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "notifications", notifications) + pulumi.set(__self__, "operations", operations) + pulumi.set(__self__, "orders", orders) + pulumi.set(__self__, "projects", projects) + pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "state", state) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "z_sides", z_sides) @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="aSides") + def a_sides(self) -> Sequence['outputs.GetConnectionsDataASideResult']: """ - Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + Requester or Customer side connection configuration object of the multi-segment connection """ - return pulumi.get(self, "type") + return pulumi.get(self, "a_sides") @property - @pulumi.getter(name="virtualDevice") - def virtual_device(self) -> Optional['outputs.GetConnectionZSideAccessPointVirtualDeviceResult']: + @pulumi.getter + def accounts(self) -> Sequence['outputs.GetConnectionsDataAccountResult']: """ - Virtual device + Customer account information that is associated with this connection """ - return pulumi.get(self, "virtual_device") - + return pulumi.get(self, "accounts") -@pulumi.output_type -class GetConnectionZSideAccessPointAccountResult(dict): - def __init__(__self__, *, - account_name: str, - account_number: int, - global_cust_id: str, - global_org_id: str, - global_organization_name: str, - org_id: int, - organization_name: str, - ucm_id: str): + @property + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Sequence[Mapping[str, str]]: """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id + Connection additional information """ - pulumi.set(__self__, "account_name", account_name) - pulumi.set(__self__, "account_number", account_number) - pulumi.set(__self__, "global_cust_id", global_cust_id) - pulumi.set(__self__, "global_org_id", global_org_id) - pulumi.set(__self__, "global_organization_name", global_organization_name) - pulumi.set(__self__, "org_id", org_id) - pulumi.set(__self__, "organization_name", organization_name) - pulumi.set(__self__, "ucm_id", ucm_id) + return pulumi.get(self, "additional_infos") @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: + @pulumi.getter + def bandwidth(self) -> int: """ - Legal name of the accountholder. + Connection bandwidth in Mbps """ - return pulumi.get(self, "account_name") + return pulumi.get(self, "bandwidth") @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetConnectionsDataChangeLogResult']: """ - Equinix-assigned account number. + Captures connection lifecycle change information """ - return pulumi.get(self, "account_number") + return pulumi.get(self, "change_logs") @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: + @pulumi.getter + def description(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Customer-provided connection description """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "description") @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: + @pulumi.getter + def direction(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Connection directionality from the requester point of view """ - return pulumi.get(self, "global_org_id") + return pulumi.get(self, "direction") @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Equinix-assigned name of the subscriber's parent organization. + Connection URI information """ - return pulumi.get(self, "global_organization_name") + return pulumi.get(self, "href") @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter(name="isRemote") + def is_remote(self) -> bool: """ - Equinix-assigned ID of the subscriber's organization. + Connection property derived from access point locations """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "is_remote") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter + def name(self) -> str: """ - Equinix-assigned name of the subscriber's organization. + Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "name") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter + def notifications(self) -> Sequence['outputs.GetConnectionsDataNotificationResult']: """ - Enterprise datastore id + Preferences for notifications on connection configuration or status changes """ - return pulumi.get(self, "ucm_id") - + return pulumi.get(self, "notifications") -@pulumi.output_type -class GetConnectionZSideAccessPointGatewayResult(dict): - def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + @property + @pulumi.getter + def operations(self) -> Sequence['outputs.GetConnectionsDataOperationResult']: """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + Connection type-specific operational data """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "operations") @property @pulumi.getter - def href(self) -> str: + def orders(self) -> Sequence['outputs.GetConnectionsDataOrderResult']: """ - Unique Resource Identifier + Order details """ - return pulumi.get(self, "href") + return pulumi.get(self, "orders") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def projects(self) -> Sequence['outputs.GetConnectionsDataProjectResult']: """ - Equinix-assigned virtual gateway identifier + Project information """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "projects") -@pulumi.output_type -class GetConnectionZSideAccessPointInterfaceResult(dict): - def __init__(__self__, *, - id: int, - type: Optional[str] = None, - uuid: Optional[str] = None): + @property + @pulumi.getter + def redundancies(self) -> Sequence['outputs.GetConnectionsDataRedundancyResult']: """ - :param int id: id - :param str type: Interface type - :param str uuid: Equinix-assigned interface identifier + Connection Redundancy Configuration """ - pulumi.set(__self__, "id", id) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "redundancies") @property @pulumi.getter - def id(self) -> int: + def state(self) -> str: """ - id + Connection overall state """ - return pulumi.get(self, "id") + return pulumi.get(self, "state") @property @pulumi.getter - def type(self) -> Optional[str]: + def type(self) -> str: """ - Interface type + Defines the connection type like EVPL_VC, EPL_VC, IPWAN_VC, IP_VC, ACCESS_EPL_VC, EVPLAN_VC, EPLAN_VC, EIA_VC, IA_VC, EC_VC """ return pulumi.get(self, "type") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def uuid(self) -> str: """ - Equinix-assigned interface identifier + Equinix-assigned connection identifier """ return pulumi.get(self, "uuid") - -@pulumi.output_type -class GetConnectionZSideAccessPointLinkProtocolResult(dict): - def __init__(__self__, *, - vlan_c_tag: int, - vlan_s_tag: int, - vlan_tag: int, - type: Optional[str] = None): + @property + @pulumi.getter(name="zSides") + def z_sides(self) -> Sequence['outputs.GetConnectionsDataZSideResult']: """ - :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections - :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections - :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections - :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + Destination or Provider side connection configuration object of the multi-segment connection """ - pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) - pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) - pulumi.set(__self__, "vlan_tag", vlan_tag) - if type is not None: - pulumi.set(__self__, "type", type) + return pulumi.get(self, "z_sides") - @property - @pulumi.getter(name="vlanCTag") - def vlan_c_tag(self) -> int: + +@pulumi.output_type +class GetConnectionsDataASideResult(dict): + def __init__(__self__, *, + access_point: Optional['outputs.GetConnectionsDataASideAccessPointResult'] = None, + additional_infos: Optional[Sequence['outputs.GetConnectionsDataASideAdditionalInfoResult']] = None, + service_token: Optional['outputs.GetConnectionsDataASideServiceTokenResult'] = None): """ - Vlan Customer Tag information, vlanCTag value specified for QINQ connections + :param 'GetConnectionsDataASideAccessPointArgs' access_point: Point of access details + :param Sequence['GetConnectionsDataASideAdditionalInfoArgs'] additional_infos: Connection side additional information + :param 'GetConnectionsDataASideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "vlan_c_tag") + if access_point is not None: + pulumi.set(__self__, "access_point", access_point) + if additional_infos is not None: + pulumi.set(__self__, "additional_infos", additional_infos) + if service_token is not None: + pulumi.set(__self__, "service_token", service_token) @property - @pulumi.getter(name="vlanSTag") - def vlan_s_tag(self) -> int: + @pulumi.getter(name="accessPoint") + def access_point(self) -> Optional['outputs.GetConnectionsDataASideAccessPointResult']: """ - Vlan Provider Tag information, vlanSTag value specified for QINQ connections + Point of access details """ - return pulumi.get(self, "vlan_s_tag") + return pulumi.get(self, "access_point") @property - @pulumi.getter(name="vlanTag") - def vlan_tag(self) -> int: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionsDataASideAdditionalInfoResult']]: """ - Vlan Tag information, vlanTag value specified for DOT1Q connections + Connection side additional information """ - return pulumi.get(self, "vlan_tag") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="serviceToken") + def service_token(self) -> Optional['outputs.GetConnectionsDataASideServiceTokenResult']: """ - Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "type") + return pulumi.get(self, "service_token") @pulumi.output_type -class GetConnectionZSideAccessPointLocationResult(dict): +class GetConnectionsDataASideAccessPointResult(dict): def __init__(__self__, *, - ibx: str, - metro_code: str, - metro_name: str, - region: str): - """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region - """ - pulumi.set(__self__, "ibx", ibx) - pulumi.set(__self__, "metro_code", metro_code) - pulumi.set(__self__, "metro_name", metro_name) - pulumi.set(__self__, "region", region) - - @property - @pulumi.getter - def ibx(self) -> str: - """ - IBX Code - """ - return pulumi.get(self, "ibx") - - @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> str: + accounts: Sequence['outputs.GetConnectionsDataASideAccessPointAccountResult'], + location: 'outputs.GetConnectionsDataASideAccessPointLocationResult', + provider_connection_id: str, + authentication_key: Optional[str] = None, + gateway: Optional['outputs.GetConnectionsDataASideAccessPointGatewayResult'] = None, + interface: Optional['outputs.GetConnectionsDataASideAccessPointInterfaceResult'] = None, + link_protocol: Optional['outputs.GetConnectionsDataASideAccessPointLinkProtocolResult'] = None, + network: Optional['outputs.GetConnectionsDataASideAccessPointNetworkResult'] = None, + peering_type: Optional[str] = None, + port: Optional['outputs.GetConnectionsDataASideAccessPointPortResult'] = None, + profile: Optional['outputs.GetConnectionsDataASideAccessPointProfileResult'] = None, + router: Optional['outputs.GetConnectionsDataASideAccessPointRouterResult'] = None, + seller_region: Optional[str] = None, + type: Optional[str] = None, + virtual_device: Optional['outputs.GetConnectionsDataASideAccessPointVirtualDeviceResult'] = None): """ - Access point metro code + :param Sequence['GetConnectionsDataASideAccessPointAccountArgs'] accounts: Account + :param 'GetConnectionsDataASideAccessPointLocationArgs' location: Access point location + :param str provider_connection_id: Provider assigned Connection Id + :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections + :param 'GetConnectionsDataASideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead + :param 'GetConnectionsDataASideAccessPointInterfaceArgs' interface: Virtual device interface + :param 'GetConnectionsDataASideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol + :param 'GetConnectionsDataASideAccessPointNetworkArgs' network: network access point information + :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + :param 'GetConnectionsDataASideAccessPointPortArgs' port: Port access point information + :param 'GetConnectionsDataASideAccessPointProfileArgs' profile: Service Profile + :param 'GetConnectionsDataASideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` + :param str seller_region: Access point seller region + :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + :param 'GetConnectionsDataASideAccessPointVirtualDeviceArgs' virtual_device: Virtual device """ - return pulumi.get(self, "metro_code") + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "provider_connection_id", provider_connection_id) + if authentication_key is not None: + pulumi.set(__self__, "authentication_key", authentication_key) + if gateway is not None: + pulumi.set(__self__, "gateway", gateway) + if interface is not None: + pulumi.set(__self__, "interface", interface) + if link_protocol is not None: + pulumi.set(__self__, "link_protocol", link_protocol) + if network is not None: + pulumi.set(__self__, "network", network) + if peering_type is not None: + pulumi.set(__self__, "peering_type", peering_type) + if port is not None: + pulumi.set(__self__, "port", port) + if profile is not None: + pulumi.set(__self__, "profile", profile) + if router is not None: + pulumi.set(__self__, "router", router) + if seller_region is not None: + pulumi.set(__self__, "seller_region", seller_region) + if type is not None: + pulumi.set(__self__, "type", type) + if virtual_device is not None: + pulumi.set(__self__, "virtual_device", virtual_device) @property - @pulumi.getter(name="metroName") - def metro_name(self) -> str: + @pulumi.getter + def accounts(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointAccountResult']: """ - Access point metro name + Account """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "accounts") @property @pulumi.getter - def region(self) -> str: + def location(self) -> 'outputs.GetConnectionsDataASideAccessPointLocationResult': """ - Access point region + Access point location """ - return pulumi.get(self, "region") + return pulumi.get(self, "location") + @property + @pulumi.getter(name="providerConnectionId") + def provider_connection_id(self) -> str: + """ + Provider assigned Connection Id + """ + return pulumi.get(self, "provider_connection_id") -@pulumi.output_type -class GetConnectionZSideAccessPointNetworkResult(dict): - def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + @property + @pulumi.getter(name="authenticationKey") + def authentication_key(self) -> Optional[str]: """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned Network identifier + Authentication key for provider based connections or Metal-Fabric Integration connections """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "authentication_key") @property @pulumi.getter - def href(self) -> str: + @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") + def gateway(self) -> Optional['outputs.GetConnectionsDataASideAccessPointGatewayResult']: """ - Unique Resource Identifier + **Deprecated** `gateway` Use `router` attribute instead """ - return pulumi.get(self, "href") + return pulumi.get(self, "gateway") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def interface(self) -> Optional['outputs.GetConnectionsDataASideAccessPointInterfaceResult']: """ - Equinix-assigned Network identifier + Virtual device interface """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "interface") -@pulumi.output_type -class GetConnectionZSideAccessPointPortResult(dict): - def __init__(__self__, *, - href: str, - name: str, - redundancies: Sequence['outputs.GetConnectionZSideAccessPointPortRedundancyResult'], - uuid: str): + @property + @pulumi.getter(name="linkProtocol") + def link_protocol(self) -> Optional['outputs.GetConnectionsDataASideAccessPointLinkProtocolResult']: """ - :param str href: Unique Resource Identifier - :param str name: Port name - :param Sequence['GetConnectionZSideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information - :param str uuid: Equinix-assigned Port identifier + Connection link protocol """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "link_protocol") @property @pulumi.getter - def href(self) -> str: + def network(self) -> Optional['outputs.GetConnectionsDataASideAccessPointNetworkResult']: """ - Unique Resource Identifier + network access point information """ - return pulumi.get(self, "href") + return pulumi.get(self, "network") @property - @pulumi.getter - def name(self) -> str: + @pulumi.getter(name="peeringType") + def peering_type(self) -> Optional[str]: """ - Port name + Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL """ - return pulumi.get(self, "name") + return pulumi.get(self, "peering_type") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetConnectionZSideAccessPointPortRedundancyResult']: + def port(self) -> Optional['outputs.GetConnectionsDataASideAccessPointPortResult']: """ - Redundancy Information + Port access point information """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "port") @property @pulumi.getter - def uuid(self) -> str: + def profile(self) -> Optional['outputs.GetConnectionsDataASideAccessPointProfileResult']: """ - Equinix-assigned Port identifier + Service Profile """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "profile") -@pulumi.output_type -class GetConnectionZSideAccessPointPortRedundancyResult(dict): - def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + @property + @pulumi.getter + def router(self) -> Optional['outputs.GetConnectionsDataASideAccessPointRouterResult']: """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + Cloud Router access point information that replaces `gateway` """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + return pulumi.get(self, "router") @property - @pulumi.getter - def enabled(self) -> bool: + @pulumi.getter(name="sellerRegion") + def seller_region(self) -> Optional[str]: """ - Access point redundancy + Access point seller region """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "seller_region") @property @pulumi.getter - def group(self) -> str: + def type(self) -> Optional[str]: """ - Port redundancy group + Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK """ - return pulumi.get(self, "group") + return pulumi.get(self, "type") @property - @pulumi.getter - def priority(self) -> str: + @pulumi.getter(name="virtualDevice") + def virtual_device(self) -> Optional['outputs.GetConnectionsDataASideAccessPointVirtualDeviceResult']: """ - Priority type-Primary or Secondary + Virtual device """ - return pulumi.get(self, "priority") + return pulumi.get(self, "virtual_device") @pulumi.output_type -class GetConnectionZSideAccessPointProfileResult(dict): +class GetConnectionsDataASideAccessPointAccountResult(dict): def __init__(__self__, *, - access_point_type_configs: Sequence['outputs.GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult'], - description: str, - href: str, - name: str, - type: str, - uuid: str): + account_name: str, + account_number: int, + global_cust_id: str, + global_org_id: str, + global_organization_name: str, + org_id: int, + organization_name: str, + ucm_id: str): """ - :param Sequence['GetConnectionZSideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information - :param str description: User-provided service description - :param str href: Service Profile URI response attribute - :param str name: Customer-assigned service profile name - :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE - :param str uuid: Equinix assigned service profile identifier + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id """ - pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "account_name", account_name) + pulumi.set(__self__, "account_number", account_number) + pulumi.set(__self__, "global_cust_id", global_cust_id) + pulumi.set(__self__, "global_org_id", global_org_id) + pulumi.set(__self__, "global_organization_name", global_organization_name) + pulumi.set(__self__, "org_id", org_id) + pulumi.set(__self__, "organization_name", organization_name) + pulumi.set(__self__, "ucm_id", ucm_id) @property - @pulumi.getter(name="accessPointTypeConfigs") - def access_point_type_configs(self) -> Sequence['outputs.GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult']: + @pulumi.getter(name="accountName") + def account_name(self) -> str: """ - Access point config information + Legal name of the accountholder. """ - return pulumi.get(self, "access_point_type_configs") + return pulumi.get(self, "account_name") @property - @pulumi.getter - def description(self) -> str: + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: """ - User-provided service description + Equinix-assigned account number. """ - return pulumi.get(self, "description") + return pulumi.get(self, "account_number") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: """ - Service Profile URI response attribute + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "href") + return pulumi.get(self, "global_cust_id") @property - @pulumi.getter - def name(self) -> str: + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: """ - Customer-assigned service profile name + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "name") + return pulumi.get(self, "global_org_id") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: """ - Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + Equinix-assigned name of the subscriber's parent organization. """ - return pulumi.get(self, "type") + return pulumi.get(self, "global_organization_name") @property - @pulumi.getter - def uuid(self) -> str: - """ - Equinix assigned service profile identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionZSideAccessPointProfileAccessPointTypeConfigResult(dict): - def __init__(__self__, *, - type: str, - uuid: str): + @pulumi.getter(name="orgId") + def org_id(self) -> int: """ - :param str type: Type of access point type config - VD, COLO - :param str uuid: Equinix-assigned access point type config identifier + Equinix-assigned ID of the subscriber's organization. """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "org_id") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: """ - Type of access point type config - VD, COLO + Equinix-assigned name of the subscriber's organization. """ - return pulumi.get(self, "type") + return pulumi.get(self, "organization_name") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: """ - Equinix-assigned access point type config identifier + Enterprise datastore id """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "ucm_id") @pulumi.output_type -class GetConnectionZSideAccessPointRouterResult(dict): +class GetConnectionsDataASideAccessPointGatewayResult(dict): def __init__(__self__, *, href: str, uuid: Optional[str] = None): @@ -9566,21 +10933,17 @@ def uuid(self) -> Optional[str]: @pulumi.output_type -class GetConnectionZSideAccessPointVirtualDeviceResult(dict): +class GetConnectionsDataASideAccessPointInterfaceResult(dict): def __init__(__self__, *, - href: str, - name: Optional[str] = None, + id: int, type: Optional[str] = None, uuid: Optional[str] = None): """ - :param str href: Unique Resource Identifier - :param str name: Customer-assigned Virtual Device Name - :param str type: Virtual Device type - :param str uuid: Equinix-assigned Virtual Device identifier + :param int id: id + :param str type: Interface type + :param str uuid: Equinix-assigned interface identifier """ - pulumi.set(__self__, "href", href) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "id", id) if type is not None: pulumi.set(__self__, "type", type) if uuid is not None: @@ -9588,25 +10951,17 @@ def __init__(__self__, *, @property @pulumi.getter - def href(self) -> str: - """ - Unique Resource Identifier - """ - return pulumi.get(self, "href") - - @property - @pulumi.getter - def name(self) -> Optional[str]: + def id(self) -> int: """ - Customer-assigned Virtual Device Name + id """ - return pulumi.get(self, "name") + return pulumi.get(self, "id") @property @pulumi.getter def type(self) -> Optional[str]: """ - Virtual Device type + Interface type """ return pulumi.get(self, "type") @@ -9614,291 +10969,296 @@ def type(self) -> Optional[str]: @pulumi.getter def uuid(self) -> Optional[str]: """ - Equinix-assigned Virtual Device identifier + Equinix-assigned interface identifier """ return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionZSideAdditionalInfoResult(dict): +class GetConnectionsDataASideAccessPointLinkProtocolResult(dict): def __init__(__self__, *, - key: Optional[str] = None, - value: Optional[str] = None): + vlan_c_tag: int, + vlan_s_tag: int, + vlan_tag: int, + type: Optional[str] = None): """ - :param str key: Additional information key - :param str value: Additional information value + :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections + :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections + :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections + :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - if key is not None: - pulumi.set(__self__, "key", key) - if value is not None: - pulumi.set(__self__, "value", value) + pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) + pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) + pulumi.set(__self__, "vlan_tag", vlan_tag) + if type is not None: + pulumi.set(__self__, "type", type) @property - @pulumi.getter - def key(self) -> Optional[str]: + @pulumi.getter(name="vlanCTag") + def vlan_c_tag(self) -> int: """ - Additional information key + Vlan Customer Tag information, vlanCTag value specified for QINQ connections """ - return pulumi.get(self, "key") + return pulumi.get(self, "vlan_c_tag") + + @property + @pulumi.getter(name="vlanSTag") + def vlan_s_tag(self) -> int: + """ + Vlan Provider Tag information, vlanSTag value specified for QINQ connections + """ + return pulumi.get(self, "vlan_s_tag") + + @property + @pulumi.getter(name="vlanTag") + def vlan_tag(self) -> int: + """ + Vlan Tag information, vlanTag value specified for DOT1Q connections + """ + return pulumi.get(self, "vlan_tag") @property @pulumi.getter - def value(self) -> Optional[str]: + def type(self) -> Optional[str]: """ - Additional information value + Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "value") + return pulumi.get(self, "type") @pulumi.output_type -class GetConnectionZSideServiceTokenResult(dict): +class GetConnectionsDataASideAccessPointLocationResult(dict): def __init__(__self__, *, - description: str, - href: str, - type: Optional[str] = None, - uuid: Optional[str] = None): + ibx: str, + metro_code: str, + metro_name: str, + region: str): """ - :param str description: Service token description - :param str href: An absolute URL that is the subject of the link's context - :param str type: Token type - VC_TOKEN - :param str uuid: Equinix-assigned service token identifier + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "ibx", ibx) + pulumi.set(__self__, "metro_code", metro_code) + pulumi.set(__self__, "metro_name", metro_name) + pulumi.set(__self__, "region", region) @property @pulumi.getter - def description(self) -> str: + def ibx(self) -> str: """ - Service token description + IBX Code """ - return pulumi.get(self, "description") + return pulumi.get(self, "ibx") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="metroCode") + def metro_code(self) -> str: """ - An absolute URL that is the subject of the link's context + Access point metro code """ - return pulumi.get(self, "href") + return pulumi.get(self, "metro_code") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="metroName") + def metro_name(self) -> str: """ - Token type - VC_TOKEN + Access point metro name """ - return pulumi.get(self, "type") + return pulumi.get(self, "metro_name") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def region(self) -> str: """ - Equinix-assigned service token identifier + Access point region """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "region") @pulumi.output_type -class GetConnectionsDataResult(dict): +class GetConnectionsDataASideAccessPointNetworkResult(dict): def __init__(__self__, *, - a_sides: Sequence['outputs.GetConnectionsDataASideResult'], - accounts: Sequence['outputs.GetConnectionsDataAccountResult'], - additional_infos: Sequence[Mapping[str, str]], - bandwidth: int, - change_logs: Sequence['outputs.GetConnectionsDataChangeLogResult'], - description: str, - direction: str, href: str, - is_remote: bool, - name: str, - notifications: Sequence['outputs.GetConnectionsDataNotificationResult'], - operations: Sequence['outputs.GetConnectionsDataOperationResult'], - orders: Sequence['outputs.GetConnectionsDataOrderResult'], - projects: Sequence['outputs.GetConnectionsDataProjectResult'], - redundancies: Sequence['outputs.GetConnectionsDataRedundancyResult'], - state: str, - type: str, - uuid: str, - z_sides: Sequence['outputs.GetConnectionsDataZSideResult']): + uuid: Optional[str] = None): """ - :param Sequence['GetConnectionsDataASideArgs'] a_sides: Requester or Customer side connection configuration object of the multi-segment connection - :param Sequence['GetConnectionsDataAccountArgs'] accounts: Customer account information that is associated with this connection - :param Sequence[Mapping[str, str]] additional_infos: Connection additional information - :param int bandwidth: Connection bandwidth in Mbps - :param Sequence['GetConnectionsDataChangeLogArgs'] change_logs: Captures connection lifecycle change information - :param str description: Customer-provided connection description - :param str direction: Connection directionality from the requester point of view - :param str href: Connection URI information - :param bool is_remote: Connection property derived from access point locations - :param str name: Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores - :param Sequence['GetConnectionsDataNotificationArgs'] notifications: Preferences for notifications on connection configuration or status changes - :param Sequence['GetConnectionsDataOperationArgs'] operations: Connection type-specific operational data - :param Sequence['GetConnectionsDataOrderArgs'] orders: Order details - :param Sequence['GetConnectionsDataProjectArgs'] projects: Project information - :param Sequence['GetConnectionsDataRedundancyArgs'] redundancies: Connection Redundancy Configuration - :param str state: Connection overall state - :param str type: Defines the connection type like EVPL_VC, EPL_VC, IPWAN_VC, IP_VC, ACCESS_EPL_VC, EVPLAN_VC, EPLAN_VC, EIA_VC, IA_VC, EC_VC - :param str uuid: Equinix-assigned connection identifier - :param Sequence['GetConnectionsDataZSideArgs'] z_sides: Destination or Provider side connection configuration object of the multi-segment connection + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned Network identifier """ - pulumi.set(__self__, "a_sides", a_sides) - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "additional_infos", additional_infos) - pulumi.set(__self__, "bandwidth", bandwidth) - pulumi.set(__self__, "change_logs", change_logs) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "direction", direction) pulumi.set(__self__, "href", href) - pulumi.set(__self__, "is_remote", is_remote) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "notifications", notifications) - pulumi.set(__self__, "operations", operations) - pulumi.set(__self__, "orders", orders) - pulumi.set(__self__, "projects", projects) - pulumi.set(__self__, "redundancies", redundancies) - pulumi.set(__self__, "state", state) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) - pulumi.set(__self__, "z_sides", z_sides) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="aSides") - def a_sides(self) -> Sequence['outputs.GetConnectionsDataASideResult']: + @pulumi.getter + def href(self) -> str: """ - Requester or Customer side connection configuration object of the multi-segment connection + Unique Resource Identifier """ - return pulumi.get(self, "a_sides") + return pulumi.get(self, "href") @property @pulumi.getter - def accounts(self) -> Sequence['outputs.GetConnectionsDataAccountResult']: + def uuid(self) -> Optional[str]: """ - Customer account information that is associated with this connection + Equinix-assigned Network identifier """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Sequence[Mapping[str, str]]: - """ - Connection additional information - """ - return pulumi.get(self, "additional_infos") - @property - @pulumi.getter - def bandwidth(self) -> int: +@pulumi.output_type +class GetConnectionsDataASideAccessPointPortResult(dict): + def __init__(__self__, *, + href: str, + name: str, + redundancies: Sequence['outputs.GetConnectionsDataASideAccessPointPortRedundancyResult'], + uuid: str): """ - Connection bandwidth in Mbps + :param str href: Unique Resource Identifier + :param str name: Port name + :param Sequence['GetConnectionsDataASideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information + :param str uuid: Equinix-assigned Port identifier """ - return pulumi.get(self, "bandwidth") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="changeLogs") - def change_logs(self) -> Sequence['outputs.GetConnectionsDataChangeLogResult']: + @pulumi.getter + def href(self) -> str: """ - Captures connection lifecycle change information + Unique Resource Identifier """ - return pulumi.get(self, "change_logs") + return pulumi.get(self, "href") @property @pulumi.getter - def description(self) -> str: + def name(self) -> str: """ - Customer-provided connection description + Port name """ - return pulumi.get(self, "description") + return pulumi.get(self, "name") @property @pulumi.getter - def direction(self) -> str: + def redundancies(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointPortRedundancyResult']: """ - Connection directionality from the requester point of view + Redundancy Information """ - return pulumi.get(self, "direction") + return pulumi.get(self, "redundancies") @property @pulumi.getter - def href(self) -> str: + def uuid(self) -> str: """ - Connection URI information + Equinix-assigned Port identifier """ - return pulumi.get(self, "href") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="isRemote") - def is_remote(self) -> bool: + +@pulumi.output_type +class GetConnectionsDataASideAccessPointPortRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): """ - Connection property derived from access point locations + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary """ - return pulumi.get(self, "is_remote") + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property @pulumi.getter - def name(self) -> str: + def enabled(self) -> bool: """ - Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores + Access point redundancy """ - return pulumi.get(self, "name") + return pulumi.get(self, "enabled") @property @pulumi.getter - def notifications(self) -> Sequence['outputs.GetConnectionsDataNotificationResult']: + def group(self) -> str: """ - Preferences for notifications on connection configuration or status changes + Port redundancy group """ - return pulumi.get(self, "notifications") + return pulumi.get(self, "group") @property @pulumi.getter - def operations(self) -> Sequence['outputs.GetConnectionsDataOperationResult']: + def priority(self) -> str: """ - Connection type-specific operational data + Priority type-Primary or Secondary """ - return pulumi.get(self, "operations") + return pulumi.get(self, "priority") + + +@pulumi.output_type +class GetConnectionsDataASideAccessPointProfileResult(dict): + def __init__(__self__, *, + access_point_type_configs: Sequence['outputs.GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult'], + description: str, + href: str, + name: str, + type: str, + uuid: str): + """ + :param Sequence['GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information + :param str description: User-provided service description + :param str href: Service Profile URI response attribute + :param str name: Customer-assigned service profile name + :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + :param str uuid: Equinix assigned service profile identifier + """ + pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter - def orders(self) -> Sequence['outputs.GetConnectionsDataOrderResult']: + @pulumi.getter(name="accessPointTypeConfigs") + def access_point_type_configs(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult']: """ - Order details + Access point config information """ - return pulumi.get(self, "orders") + return pulumi.get(self, "access_point_type_configs") @property @pulumi.getter - def projects(self) -> Sequence['outputs.GetConnectionsDataProjectResult']: + def description(self) -> str: """ - Project information + User-provided service description """ - return pulumi.get(self, "projects") + return pulumi.get(self, "description") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetConnectionsDataRedundancyResult']: + def href(self) -> str: """ - Connection Redundancy Configuration + Service Profile URI response attribute """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "href") @property @pulumi.getter - def state(self) -> str: + def name(self) -> str: """ - Connection overall state + Customer-assigned service profile name """ - return pulumi.get(self, "state") + return pulumi.get(self, "name") @property @pulumi.getter def type(self) -> str: """ - Defines the connection type like EVPL_VC, EPL_VC, IPWAN_VC, IP_VC, ACCESS_EPL_VC, EVPLAN_VC, EPLAN_VC, EIA_VC, IA_VC, EC_VC + Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE """ return pulumi.get(self, "type") @@ -9906,249 +11266,210 @@ def type(self) -> str: @pulumi.getter def uuid(self) -> str: """ - Equinix-assigned connection identifier + Equinix assigned service profile identifier """ return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="zSides") - def z_sides(self) -> Sequence['outputs.GetConnectionsDataZSideResult']: - """ - Destination or Provider side connection configuration object of the multi-segment connection - """ - return pulumi.get(self, "z_sides") - @pulumi.output_type -class GetConnectionsDataASideResult(dict): +class GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult(dict): def __init__(__self__, *, - access_point: Optional['outputs.GetConnectionsDataASideAccessPointResult'] = None, - additional_infos: Optional[Sequence['outputs.GetConnectionsDataASideAdditionalInfoResult']] = None, - service_token: Optional['outputs.GetConnectionsDataASideServiceTokenResult'] = None): - """ - :param 'GetConnectionsDataASideAccessPointArgs' access_point: Point of access details - :param Sequence['GetConnectionsDataASideAdditionalInfoArgs'] additional_infos: Connection side additional information - :param 'GetConnectionsDataASideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets - """ - if access_point is not None: - pulumi.set(__self__, "access_point", access_point) - if additional_infos is not None: - pulumi.set(__self__, "additional_infos", additional_infos) - if service_token is not None: - pulumi.set(__self__, "service_token", service_token) - - @property - @pulumi.getter(name="accessPoint") - def access_point(self) -> Optional['outputs.GetConnectionsDataASideAccessPointResult']: + type: str, + uuid: str): """ - Point of access details + :param str type: Type of access point type config - VD, COLO + :param str uuid: Equinix-assigned access point type config identifier """ - return pulumi.get(self, "access_point") + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionsDataASideAdditionalInfoResult']]: + @pulumi.getter + def type(self) -> str: """ - Connection side additional information + Type of access point type config - VD, COLO """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "type") @property - @pulumi.getter(name="serviceToken") - def service_token(self) -> Optional['outputs.GetConnectionsDataASideServiceTokenResult']: + @pulumi.getter + def uuid(self) -> str: """ - For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets + Equinix-assigned access point type config identifier """ - return pulumi.get(self, "service_token") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataASideAccessPointResult(dict): +class GetConnectionsDataASideAccessPointRouterResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetConnectionsDataASideAccessPointAccountResult'], - location: 'outputs.GetConnectionsDataASideAccessPointLocationResult', - provider_connection_id: str, - authentication_key: Optional[str] = None, - gateway: Optional['outputs.GetConnectionsDataASideAccessPointGatewayResult'] = None, - interface: Optional['outputs.GetConnectionsDataASideAccessPointInterfaceResult'] = None, - link_protocol: Optional['outputs.GetConnectionsDataASideAccessPointLinkProtocolResult'] = None, - network: Optional['outputs.GetConnectionsDataASideAccessPointNetworkResult'] = None, - peering_type: Optional[str] = None, - port: Optional['outputs.GetConnectionsDataASideAccessPointPortResult'] = None, - profile: Optional['outputs.GetConnectionsDataASideAccessPointProfileResult'] = None, - router: Optional['outputs.GetConnectionsDataASideAccessPointRouterResult'] = None, - seller_region: Optional[str] = None, - type: Optional[str] = None, - virtual_device: Optional['outputs.GetConnectionsDataASideAccessPointVirtualDeviceResult'] = None): + href: str, + uuid: Optional[str] = None): """ - :param Sequence['GetConnectionsDataASideAccessPointAccountArgs'] accounts: Account - :param 'GetConnectionsDataASideAccessPointLocationArgs' location: Access point location - :param str provider_connection_id: Provider assigned Connection Id - :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections - :param 'GetConnectionsDataASideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead - :param 'GetConnectionsDataASideAccessPointInterfaceArgs' interface: Virtual device interface - :param 'GetConnectionsDataASideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol - :param 'GetConnectionsDataASideAccessPointNetworkArgs' network: network access point information - :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL - :param 'GetConnectionsDataASideAccessPointPortArgs' port: Port access point information - :param 'GetConnectionsDataASideAccessPointProfileArgs' profile: Service Profile - :param 'GetConnectionsDataASideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` - :param str seller_region: Access point seller region - :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK - :param 'GetConnectionsDataASideAccessPointVirtualDeviceArgs' virtual_device: Virtual device + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "location", location) - pulumi.set(__self__, "provider_connection_id", provider_connection_id) - if authentication_key is not None: - pulumi.set(__self__, "authentication_key", authentication_key) - if gateway is not None: - pulumi.set(__self__, "gateway", gateway) - if interface is not None: - pulumi.set(__self__, "interface", interface) - if link_protocol is not None: - pulumi.set(__self__, "link_protocol", link_protocol) - if network is not None: - pulumi.set(__self__, "network", network) - if peering_type is not None: - pulumi.set(__self__, "peering_type", peering_type) - if port is not None: - pulumi.set(__self__, "port", port) - if profile is not None: - pulumi.set(__self__, "profile", profile) - if router is not None: - pulumi.set(__self__, "router", router) - if seller_region is not None: - pulumi.set(__self__, "seller_region", seller_region) - if type is not None: - pulumi.set(__self__, "type", type) - if virtual_device is not None: - pulumi.set(__self__, "virtual_device", virtual_device) + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def accounts(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointAccountResult']: + def href(self) -> str: """ - Account + Unique Resource Identifier """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "href") @property @pulumi.getter - def location(self) -> 'outputs.GetConnectionsDataASideAccessPointLocationResult': + def uuid(self) -> Optional[str]: """ - Access point location + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "location") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="providerConnectionId") - def provider_connection_id(self) -> str: - """ - Provider assigned Connection Id - """ - return pulumi.get(self, "provider_connection_id") - @property - @pulumi.getter(name="authenticationKey") - def authentication_key(self) -> Optional[str]: +@pulumi.output_type +class GetConnectionsDataASideAccessPointVirtualDeviceResult(dict): + def __init__(__self__, *, + href: str, + name: Optional[str] = None, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - Authentication key for provider based connections or Metal-Fabric Integration connections + :param str href: Unique Resource Identifier + :param str name: Customer-assigned Virtual Device Name + :param str type: Virtual Device type + :param str uuid: Equinix-assigned Virtual Device identifier """ - return pulumi.get(self, "authentication_key") + pulumi.set(__self__, "href", href) + if name is not None: + pulumi.set(__self__, "name", name) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") - def gateway(self) -> Optional['outputs.GetConnectionsDataASideAccessPointGatewayResult']: + def href(self) -> str: """ - **Deprecated** `gateway` Use `router` attribute instead + Unique Resource Identifier """ - return pulumi.get(self, "gateway") + return pulumi.get(self, "href") @property @pulumi.getter - def interface(self) -> Optional['outputs.GetConnectionsDataASideAccessPointInterfaceResult']: + def name(self) -> Optional[str]: """ - Virtual device interface + Customer-assigned Virtual Device Name """ - return pulumi.get(self, "interface") + return pulumi.get(self, "name") @property - @pulumi.getter(name="linkProtocol") - def link_protocol(self) -> Optional['outputs.GetConnectionsDataASideAccessPointLinkProtocolResult']: + @pulumi.getter + def type(self) -> Optional[str]: """ - Connection link protocol + Virtual Device type """ - return pulumi.get(self, "link_protocol") + return pulumi.get(self, "type") @property @pulumi.getter - def network(self) -> Optional['outputs.GetConnectionsDataASideAccessPointNetworkResult']: + def uuid(self) -> Optional[str]: """ - network access point information + Equinix-assigned Virtual Device identifier """ - return pulumi.get(self, "network") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="peeringType") - def peering_type(self) -> Optional[str]: + +@pulumi.output_type +class GetConnectionsDataASideAdditionalInfoResult(dict): + def __init__(__self__, *, + key: Optional[str] = None, + value: Optional[str] = None): """ - Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + :param str key: Additional information key + :param str value: Additional information value """ - return pulumi.get(self, "peering_type") + if key is not None: + pulumi.set(__self__, "key", key) + if value is not None: + pulumi.set(__self__, "value", value) @property @pulumi.getter - def port(self) -> Optional['outputs.GetConnectionsDataASideAccessPointPortResult']: + def key(self) -> Optional[str]: """ - Port access point information + Additional information key """ - return pulumi.get(self, "port") + return pulumi.get(self, "key") @property @pulumi.getter - def profile(self) -> Optional['outputs.GetConnectionsDataASideAccessPointProfileResult']: + def value(self) -> Optional[str]: """ - Service Profile + Additional information value """ - return pulumi.get(self, "profile") + return pulumi.get(self, "value") + + +@pulumi.output_type +class GetConnectionsDataASideServiceTokenResult(dict): + def __init__(__self__, *, + description: str, + href: str, + type: Optional[str] = None, + uuid: Optional[str] = None): + """ + :param str description: Service token description + :param str href: An absolute URL that is the subject of the link's context + :param str type: Token type - VC_TOKEN + :param str uuid: Equinix-assigned service token identifier + """ + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def router(self) -> Optional['outputs.GetConnectionsDataASideAccessPointRouterResult']: + def description(self) -> str: """ - Cloud Router access point information that replaces `gateway` + Service token description """ - return pulumi.get(self, "router") + return pulumi.get(self, "description") @property - @pulumi.getter(name="sellerRegion") - def seller_region(self) -> Optional[str]: + @pulumi.getter + def href(self) -> str: """ - Access point seller region + An absolute URL that is the subject of the link's context """ - return pulumi.get(self, "seller_region") + return pulumi.get(self, "href") @property @pulumi.getter def type(self) -> Optional[str]: """ - Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + Token type - VC_TOKEN """ return pulumi.get(self, "type") @property - @pulumi.getter(name="virtualDevice") - def virtual_device(self) -> Optional['outputs.GetConnectionsDataASideAccessPointVirtualDeviceResult']: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Virtual device + Equinix-assigned service token identifier """ - return pulumi.get(self, "virtual_device") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataASideAccessPointAccountResult(dict): +class GetConnectionsDataAccountResult(dict): def __init__(__self__, *, account_name: str, account_number: int, @@ -10178,354 +11499,489 @@ def __init__(__self__, *, pulumi.set(__self__, "ucm_id", ucm_id) @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: + @pulumi.getter(name="accountName") + def account_name(self) -> str: + """ + Legal name of the accountholder. + """ + return pulumi.get(self, "account_name") + + @property + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: + """ + Equinix-assigned account number. + """ + return pulumi.get(self, "account_number") + + @property + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_cust_id") + + @property + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_org_id") + + @property + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: + """ + Equinix-assigned name of the subscriber's parent organization. + """ + return pulumi.get(self, "global_organization_name") + + @property + @pulumi.getter(name="orgId") + def org_id(self) -> int: + """ + Equinix-assigned ID of the subscriber's organization. + """ + return pulumi.get(self, "org_id") + + @property + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: + """ + Equinix-assigned name of the subscriber's organization. + """ + return pulumi.get(self, "organization_name") + + @property + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: + """ + Enterprise datastore id + """ + return pulumi.get(self, "ucm_id") + + +@pulumi.output_type +class GetConnectionsDataChangeLogResult(dict): + def __init__(__self__, *, + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): + """ + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time + """ + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) + + @property + @pulumi.getter(name="createdBy") + def created_by(self) -> str: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: """ - Legal name of the accountholder. + Deleted by User Key """ - return pulumi.get(self, "account_name") + return pulumi.get(self, "deleted_by") @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - Equinix-assigned account number. + Deleted by User Email Address """ - return pulumi.get(self, "account_number") + return pulumi.get(self, "deleted_by_email") @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Deleted by User Full Name """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "deleted_by_full_name") @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Deleted by Date and Time """ - return pulumi.get(self, "global_org_id") + return pulumi.get(self, "deleted_date_time") @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: """ - Equinix-assigned name of the subscriber's parent organization. + Updated by User Key """ - return pulumi.get(self, "global_organization_name") + return pulumi.get(self, "updated_by") @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - Equinix-assigned ID of the subscriber's organization. + Updated by User Email Address """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - Equinix-assigned name of the subscriber's organization. + Updated by User Full Name """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Enterprise datastore id + Updated by Date and Time """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class GetConnectionsDataASideAccessPointGatewayResult(dict): +class GetConnectionsDataNotificationResult(dict): def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + emails: Sequence[str], + type: str, + send_interval: Optional[str] = None): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + :param Sequence[str] emails: Array of contact emails + :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + :param str send_interval: Send interval """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "emails", emails) + pulumi.set(__self__, "type", type) + if send_interval is not None: + pulumi.set(__self__, "send_interval", send_interval) @property @pulumi.getter - def href(self) -> str: + def emails(self) -> Sequence[str]: """ - Unique Resource Identifier + Array of contact emails """ - return pulumi.get(self, "href") + return pulumi.get(self, "emails") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def type(self) -> str: """ - Equinix-assigned virtual gateway identifier + Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="sendInterval") + def send_interval(self) -> Optional[str]: + """ + Send interval + """ + return pulumi.get(self, "send_interval") @pulumi.output_type -class GetConnectionsDataASideAccessPointInterfaceResult(dict): +class GetConnectionsDataOperationResult(dict): def __init__(__self__, *, - id: int, - type: Optional[str] = None, - uuid: Optional[str] = None): + equinix_status: str, + errors: Sequence['outputs.GetConnectionsDataOperationErrorResult'], + provider_status: str): """ - :param int id: id - :param str type: Interface type - :param str uuid: Equinix-assigned interface identifier + :param str equinix_status: Connection status + :param Sequence['GetConnectionsDataOperationErrorArgs'] errors: Errors occurred + :param str provider_status: Connection provider readiness status """ - pulumi.set(__self__, "id", id) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "equinix_status", equinix_status) + pulumi.set(__self__, "errors", errors) + pulumi.set(__self__, "provider_status", provider_status) @property - @pulumi.getter - def id(self) -> int: + @pulumi.getter(name="equinixStatus") + def equinix_status(self) -> str: """ - id + Connection status """ - return pulumi.get(self, "id") + return pulumi.get(self, "equinix_status") @property @pulumi.getter - def type(self) -> Optional[str]: + def errors(self) -> Sequence['outputs.GetConnectionsDataOperationErrorResult']: """ - Interface type + Errors occurred """ - return pulumi.get(self, "type") + return pulumi.get(self, "errors") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="providerStatus") + def provider_status(self) -> str: """ - Equinix-assigned interface identifier + Connection provider readiness status """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "provider_status") @pulumi.output_type -class GetConnectionsDataASideAccessPointLinkProtocolResult(dict): +class GetConnectionsDataOperationErrorResult(dict): def __init__(__self__, *, - vlan_c_tag: int, - vlan_s_tag: int, - vlan_tag: int, - type: Optional[str] = None): + additional_infos: Sequence['outputs.GetConnectionsDataOperationErrorAdditionalInfoResult'], + correlation_id: str, + details: str, + error_code: str, + error_message: str, + help: str): """ - :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections - :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections - :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections - :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + :param Sequence['GetConnectionsDataOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info + :param str correlation_id: CorrelationId + :param str details: Details + :param str error_code: Error code + :param str error_message: Error Message + :param str help: Help """ - pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) - pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) - pulumi.set(__self__, "vlan_tag", vlan_tag) - if type is not None: - pulumi.set(__self__, "type", type) + pulumi.set(__self__, "additional_infos", additional_infos) + pulumi.set(__self__, "correlation_id", correlation_id) + pulumi.set(__self__, "details", details) + pulumi.set(__self__, "error_code", error_code) + pulumi.set(__self__, "error_message", error_message) + pulumi.set(__self__, "help", help) @property - @pulumi.getter(name="vlanCTag") - def vlan_c_tag(self) -> int: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Sequence['outputs.GetConnectionsDataOperationErrorAdditionalInfoResult']: """ - Vlan Customer Tag information, vlanCTag value specified for QINQ connections + Pricing error additional Info """ - return pulumi.get(self, "vlan_c_tag") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter(name="vlanSTag") - def vlan_s_tag(self) -> int: + @pulumi.getter(name="correlationId") + def correlation_id(self) -> str: """ - Vlan Provider Tag information, vlanSTag value specified for QINQ connections + CorrelationId """ - return pulumi.get(self, "vlan_s_tag") + return pulumi.get(self, "correlation_id") @property - @pulumi.getter(name="vlanTag") - def vlan_tag(self) -> int: + @pulumi.getter + def details(self) -> str: """ - Vlan Tag information, vlanTag value specified for DOT1Q connections + Details """ - return pulumi.get(self, "vlan_tag") + return pulumi.get(self, "details") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="errorCode") + def error_code(self) -> str: """ - Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + Error code """ - return pulumi.get(self, "type") - + return pulumi.get(self, "error_code") -@pulumi.output_type -class GetConnectionsDataASideAccessPointLocationResult(dict): - def __init__(__self__, *, - ibx: str, - metro_code: str, - metro_name: str, - region: str): + @property + @pulumi.getter(name="errorMessage") + def error_message(self) -> str: """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + Error Message """ - pulumi.set(__self__, "ibx", ibx) - pulumi.set(__self__, "metro_code", metro_code) - pulumi.set(__self__, "metro_name", metro_name) - pulumi.set(__self__, "region", region) + return pulumi.get(self, "error_message") @property @pulumi.getter - def ibx(self) -> str: + def help(self) -> str: """ - IBX Code + Help """ - return pulumi.get(self, "ibx") + return pulumi.get(self, "help") - @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> str: + +@pulumi.output_type +class GetConnectionsDataOperationErrorAdditionalInfoResult(dict): + def __init__(__self__, *, + property: str, + reason: str): """ - Access point metro code + :param str property: Property at which the error potentially occurred + :param str reason: Reason for the error """ - return pulumi.get(self, "metro_code") + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "reason", reason) @property - @pulumi.getter(name="metroName") - def metro_name(self) -> str: + @pulumi.getter + def reason(self) -> str: """ - Access point metro name + Reason for the error """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "reason") @property @pulumi.getter - def region(self) -> str: + def property(self) -> str: """ - Access point region + Property at which the error potentially occurred """ - return pulumi.get(self, "region") + return pulumi.get(self, "property") @pulumi.output_type -class GetConnectionsDataASideAccessPointNetworkResult(dict): +class GetConnectionsDataOrderResult(dict): def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + billing_tier: str, + order_id: str, + order_number: str, + purchase_order_number: str): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned Network identifier + :param str billing_tier: Billing tier for connection bandwidth + :param str order_id: Order Identification + :param str order_number: Order Reference Number + :param str purchase_order_number: Purchase order number """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "billing_tier", billing_tier) + pulumi.set(__self__, "order_id", order_id) + pulumi.set(__self__, "order_number", order_number) + pulumi.set(__self__, "purchase_order_number", purchase_order_number) @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="billingTier") + def billing_tier(self) -> str: """ - Unique Resource Identifier + Billing tier for connection bandwidth """ - return pulumi.get(self, "href") + return pulumi.get(self, "billing_tier") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="orderId") + def order_id(self) -> str: """ - Equinix-assigned Network identifier + Order Identification """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "order_id") -@pulumi.output_type -class GetConnectionsDataASideAccessPointPortResult(dict): - def __init__(__self__, *, - href: str, - name: str, - redundancies: Sequence['outputs.GetConnectionsDataASideAccessPointPortRedundancyResult'], - uuid: str): + @property + @pulumi.getter(name="orderNumber") + def order_number(self) -> str: """ - :param str href: Unique Resource Identifier - :param str name: Port name - :param Sequence['GetConnectionsDataASideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information - :param str uuid: Equinix-assigned Port identifier + Order Reference Number """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "order_number") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="purchaseOrderNumber") + def purchase_order_number(self) -> str: """ - Unique Resource Identifier + Purchase order number """ - return pulumi.get(self, "href") + return pulumi.get(self, "purchase_order_number") - @property - @pulumi.getter - def name(self) -> str: + +@pulumi.output_type +class GetConnectionsDataProjectResult(dict): + def __init__(__self__, *, + href: str, + project_id: str): """ - Port name + :param str href: Unique Resource URL + :param str project_id: Project Id """ - return pulumi.get(self, "name") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointPortRedundancyResult']: + def href(self) -> str: """ - Redundancy Information + Unique Resource URL """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "href") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Equinix-assigned Port identifier + Project Id """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "project_id") @pulumi.output_type -class GetConnectionsDataASideAccessPointPortRedundancyResult(dict): +class GetConnectionsDataRedundancyResult(dict): def __init__(__self__, *, - enabled: bool, group: str, priority: str): """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + :param str group: Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) + :param str priority: Connection priority in redundancy group - PRIMARY, SECONDARY """ - pulumi.set(__self__, "enabled", enabled) pulumi.set(__self__, "group", group) pulumi.set(__self__, "priority", priority) - @property - @pulumi.getter - def enabled(self) -> bool: - """ - Access point redundancy - """ - return pulumi.get(self, "enabled") - @property @pulumi.getter def group(self) -> str: """ - Port redundancy group + Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) """ return pulumi.get(self, "group") @@ -10533,283 +11989,241 @@ def group(self) -> str: @pulumi.getter def priority(self) -> str: """ - Priority type-Primary or Secondary + Connection priority in redundancy group - PRIMARY, SECONDARY """ return pulumi.get(self, "priority") @pulumi.output_type -class GetConnectionsDataASideAccessPointProfileResult(dict): +class GetConnectionsDataZSideResult(dict): def __init__(__self__, *, - access_point_type_configs: Sequence['outputs.GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult'], - description: str, - href: str, - name: str, - type: str, - uuid: str): + access_point: Optional['outputs.GetConnectionsDataZSideAccessPointResult'] = None, + additional_infos: Optional[Sequence['outputs.GetConnectionsDataZSideAdditionalInfoResult']] = None, + service_token: Optional['outputs.GetConnectionsDataZSideServiceTokenResult'] = None): """ - :param Sequence['GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information - :param str description: User-provided service description - :param str href: Service Profile URI response attribute - :param str name: Customer-assigned service profile name - :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE - :param str uuid: Equinix assigned service profile identifier + :param 'GetConnectionsDataZSideAccessPointArgs' access_point: Point of access details + :param Sequence['GetConnectionsDataZSideAdditionalInfoArgs'] additional_infos: Connection side additional information + :param 'GetConnectionsDataZSideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + if access_point is not None: + pulumi.set(__self__, "access_point", access_point) + if additional_infos is not None: + pulumi.set(__self__, "additional_infos", additional_infos) + if service_token is not None: + pulumi.set(__self__, "service_token", service_token) @property - @pulumi.getter(name="accessPointTypeConfigs") - def access_point_type_configs(self) -> Sequence['outputs.GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult']: + @pulumi.getter(name="accessPoint") + def access_point(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointResult']: """ - Access point config information + Point of access details """ - return pulumi.get(self, "access_point_type_configs") + return pulumi.get(self, "access_point") @property - @pulumi.getter - def description(self) -> str: + @pulumi.getter(name="additionalInfos") + def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionsDataZSideAdditionalInfoResult']]: """ - User-provided service description + Connection side additional information """ - return pulumi.get(self, "description") + return pulumi.get(self, "additional_infos") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="serviceToken") + def service_token(self) -> Optional['outputs.GetConnectionsDataZSideServiceTokenResult']: """ - Service Profile URI response attribute + For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets """ - return pulumi.get(self, "href") + return pulumi.get(self, "service_token") - @property - @pulumi.getter - def name(self) -> str: - """ - Customer-assigned service profile name - """ - return pulumi.get(self, "name") - @property - @pulumi.getter - def type(self) -> str: +@pulumi.output_type +class GetConnectionsDataZSideAccessPointResult(dict): + def __init__(__self__, *, + accounts: Sequence['outputs.GetConnectionsDataZSideAccessPointAccountResult'], + location: 'outputs.GetConnectionsDataZSideAccessPointLocationResult', + provider_connection_id: str, + authentication_key: Optional[str] = None, + gateway: Optional['outputs.GetConnectionsDataZSideAccessPointGatewayResult'] = None, + interface: Optional['outputs.GetConnectionsDataZSideAccessPointInterfaceResult'] = None, + link_protocol: Optional['outputs.GetConnectionsDataZSideAccessPointLinkProtocolResult'] = None, + network: Optional['outputs.GetConnectionsDataZSideAccessPointNetworkResult'] = None, + peering_type: Optional[str] = None, + port: Optional['outputs.GetConnectionsDataZSideAccessPointPortResult'] = None, + profile: Optional['outputs.GetConnectionsDataZSideAccessPointProfileResult'] = None, + router: Optional['outputs.GetConnectionsDataZSideAccessPointRouterResult'] = None, + seller_region: Optional[str] = None, + type: Optional[str] = None, + virtual_device: Optional['outputs.GetConnectionsDataZSideAccessPointVirtualDeviceResult'] = None): """ - Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + :param Sequence['GetConnectionsDataZSideAccessPointAccountArgs'] accounts: Account + :param 'GetConnectionsDataZSideAccessPointLocationArgs' location: Access point location + :param str provider_connection_id: Provider assigned Connection Id + :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections + :param 'GetConnectionsDataZSideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead + :param 'GetConnectionsDataZSideAccessPointInterfaceArgs' interface: Virtual device interface + :param 'GetConnectionsDataZSideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol + :param 'GetConnectionsDataZSideAccessPointNetworkArgs' network: network access point information + :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + :param 'GetConnectionsDataZSideAccessPointPortArgs' port: Port access point information + :param 'GetConnectionsDataZSideAccessPointProfileArgs' profile: Service Profile + :param 'GetConnectionsDataZSideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` + :param str seller_region: Access point seller region + :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + :param 'GetConnectionsDataZSideAccessPointVirtualDeviceArgs' virtual_device: Virtual device """ - return pulumi.get(self, "type") + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "provider_connection_id", provider_connection_id) + if authentication_key is not None: + pulumi.set(__self__, "authentication_key", authentication_key) + if gateway is not None: + pulumi.set(__self__, "gateway", gateway) + if interface is not None: + pulumi.set(__self__, "interface", interface) + if link_protocol is not None: + pulumi.set(__self__, "link_protocol", link_protocol) + if network is not None: + pulumi.set(__self__, "network", network) + if peering_type is not None: + pulumi.set(__self__, "peering_type", peering_type) + if port is not None: + pulumi.set(__self__, "port", port) + if profile is not None: + pulumi.set(__self__, "profile", profile) + if router is not None: + pulumi.set(__self__, "router", router) + if seller_region is not None: + pulumi.set(__self__, "seller_region", seller_region) + if type is not None: + pulumi.set(__self__, "type", type) + if virtual_device is not None: + pulumi.set(__self__, "virtual_device", virtual_device) @property @pulumi.getter - def uuid(self) -> str: - """ - Equinix assigned service profile identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionsDataASideAccessPointProfileAccessPointTypeConfigResult(dict): - def __init__(__self__, *, - type: str, - uuid: str): + def accounts(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointAccountResult']: """ - :param str type: Type of access point type config - VD, COLO - :param str uuid: Equinix-assigned access point type config identifier + Account """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "accounts") @property @pulumi.getter - def type(self) -> str: + def location(self) -> 'outputs.GetConnectionsDataZSideAccessPointLocationResult': """ - Type of access point type config - VD, COLO + Access point location """ - return pulumi.get(self, "type") + return pulumi.get(self, "location") @property - @pulumi.getter - def uuid(self) -> str: - """ - Equinix-assigned access point type config identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionsDataASideAccessPointRouterResult(dict): - def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + @pulumi.getter(name="providerConnectionId") + def provider_connection_id(self) -> str: """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + Provider assigned Connection Id """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "provider_connection_id") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="authenticationKey") + def authentication_key(self) -> Optional[str]: """ - Unique Resource Identifier + Authentication key for provider based connections or Metal-Fabric Integration connections """ - return pulumi.get(self, "href") + return pulumi.get(self, "authentication_key") @property @pulumi.getter - def uuid(self) -> Optional[str]: - """ - Equinix-assigned virtual gateway identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionsDataASideAccessPointVirtualDeviceResult(dict): - def __init__(__self__, *, - href: str, - name: Optional[str] = None, - type: Optional[str] = None, - uuid: Optional[str] = None): + @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") + def gateway(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointGatewayResult']: """ - :param str href: Unique Resource Identifier - :param str name: Customer-assigned Virtual Device Name - :param str type: Virtual Device type - :param str uuid: Equinix-assigned Virtual Device identifier + **Deprecated** `gateway` Use `router` attribute instead """ - pulumi.set(__self__, "href", href) - if name is not None: - pulumi.set(__self__, "name", name) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "gateway") @property @pulumi.getter - def href(self) -> str: + def interface(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointInterfaceResult']: """ - Unique Resource Identifier + Virtual device interface """ - return pulumi.get(self, "href") + return pulumi.get(self, "interface") @property - @pulumi.getter - def name(self) -> Optional[str]: + @pulumi.getter(name="linkProtocol") + def link_protocol(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointLinkProtocolResult']: """ - Customer-assigned Virtual Device Name + Connection link protocol """ - return pulumi.get(self, "name") + return pulumi.get(self, "link_protocol") @property @pulumi.getter - def type(self) -> Optional[str]: + def network(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointNetworkResult']: """ - Virtual Device type + network access point information """ - return pulumi.get(self, "type") + return pulumi.get(self, "network") @property - @pulumi.getter - def uuid(self) -> Optional[str]: - """ - Equinix-assigned Virtual Device identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetConnectionsDataASideAdditionalInfoResult(dict): - def __init__(__self__, *, - key: Optional[str] = None, - value: Optional[str] = None): + @pulumi.getter(name="peeringType") + def peering_type(self) -> Optional[str]: """ - :param str key: Additional information key - :param str value: Additional information value + Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL """ - if key is not None: - pulumi.set(__self__, "key", key) - if value is not None: - pulumi.set(__self__, "value", value) + return pulumi.get(self, "peering_type") @property @pulumi.getter - def key(self) -> Optional[str]: + def port(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointPortResult']: """ - Additional information key + Port access point information """ - return pulumi.get(self, "key") + return pulumi.get(self, "port") @property @pulumi.getter - def value(self) -> Optional[str]: - """ - Additional information value - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class GetConnectionsDataASideServiceTokenResult(dict): - def __init__(__self__, *, - description: str, - href: str, - type: Optional[str] = None, - uuid: Optional[str] = None): + def profile(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointProfileResult']: """ - :param str description: Service token description - :param str href: An absolute URL that is the subject of the link's context - :param str type: Token type - VC_TOKEN - :param str uuid: Equinix-assigned service token identifier + Service Profile """ - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "profile") @property @pulumi.getter - def description(self) -> str: + def router(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointRouterResult']: """ - Service token description + Cloud Router access point information that replaces `gateway` """ - return pulumi.get(self, "description") + return pulumi.get(self, "router") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="sellerRegion") + def seller_region(self) -> Optional[str]: """ - An absolute URL that is the subject of the link's context + Access point seller region """ - return pulumi.get(self, "href") + return pulumi.get(self, "seller_region") @property @pulumi.getter def type(self) -> Optional[str]: """ - Token type - VC_TOKEN + Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK """ return pulumi.get(self, "type") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="virtualDevice") + def virtual_device(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointVirtualDeviceResult']: """ - Equinix-assigned service token identifier + Virtual device """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "virtual_device") @pulumi.output_type -class GetConnectionsDataAccountResult(dict): +class GetConnectionsDataZSideAccessPointAccountResult(dict): def __init__(__self__, *, account_name: str, account_number: int, @@ -10876,913 +12290,1023 @@ def global_organization_name(self) -> str: """ Equinix-assigned name of the subscriber's parent organization. """ - return pulumi.get(self, "global_organization_name") + return pulumi.get(self, "global_organization_name") + + @property + @pulumi.getter(name="orgId") + def org_id(self) -> int: + """ + Equinix-assigned ID of the subscriber's organization. + """ + return pulumi.get(self, "org_id") + + @property + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: + """ + Equinix-assigned name of the subscriber's organization. + """ + return pulumi.get(self, "organization_name") + + @property + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: + """ + Enterprise datastore id + """ + return pulumi.get(self, "ucm_id") + + +@pulumi.output_type +class GetConnectionsDataZSideAccessPointGatewayResult(dict): + def __init__(__self__, *, + href: str, + uuid: Optional[str] = None): + """ + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier + """ + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def href(self) -> str: + """ + Unique Resource Identifier + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Equinix-assigned virtual gateway identifier + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class GetConnectionsDataZSideAccessPointInterfaceResult(dict): + def __init__(__self__, *, + id: int, + type: Optional[str] = None, + uuid: Optional[str] = None): + """ + :param int id: id + :param str type: Interface type + :param str uuid: Equinix-assigned interface identifier + """ + pulumi.set(__self__, "id", id) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter + def id(self) -> int: """ - Equinix-assigned ID of the subscriber's organization. + id """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "id") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Equinix-assigned name of the subscriber's organization. + Interface type """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "type") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Enterprise datastore id + Equinix-assigned interface identifier """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataChangeLogResult(dict): +class GetConnectionsDataZSideAccessPointLinkProtocolResult(dict): def __init__(__self__, *, - created_by: str, - created_by_email: str, - created_by_full_name: str, - created_date_time: str, - deleted_by: str, - deleted_by_email: str, - deleted_by_full_name: str, - deleted_date_time: str, - updated_by: str, - updated_by_email: str, - updated_by_full_name: str, - updated_date_time: str): + vlan_c_tag: int, + vlan_s_tag: int, + vlan_tag: int, + type: Optional[str] = None): """ - :param str created_by: Created by User Key - :param str created_by_email: Created by User Email Address - :param str created_by_full_name: Created by User Full Name - :param str created_date_time: Created by Date and Time - :param str deleted_by: Deleted by User Key - :param str deleted_by_email: Deleted by User Email Address - :param str deleted_by_full_name: Deleted by User Full Name - :param str deleted_date_time: Deleted by Date and Time - :param str updated_by: Updated by User Key - :param str updated_by_email: Updated by User Email Address - :param str updated_by_full_name: Updated by User Full Name - :param str updated_date_time: Updated by Date and Time + :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections + :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections + :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections + :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - pulumi.set(__self__, "created_by", created_by) - pulumi.set(__self__, "created_by_email", created_by_email) - pulumi.set(__self__, "created_by_full_name", created_by_full_name) - pulumi.set(__self__, "created_date_time", created_date_time) - pulumi.set(__self__, "deleted_by", deleted_by) - pulumi.set(__self__, "deleted_by_email", deleted_by_email) - pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) - pulumi.set(__self__, "deleted_date_time", deleted_date_time) - pulumi.set(__self__, "updated_by", updated_by) - pulumi.set(__self__, "updated_by_email", updated_by_email) - pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) - pulumi.set(__self__, "updated_date_time", updated_date_time) + pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) + pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) + pulumi.set(__self__, "vlan_tag", vlan_tag) + if type is not None: + pulumi.set(__self__, "type", type) @property - @pulumi.getter(name="createdBy") - def created_by(self) -> str: + @pulumi.getter(name="vlanCTag") + def vlan_c_tag(self) -> int: """ - Created by User Key + Vlan Customer Tag information, vlanCTag value specified for QINQ connections """ - return pulumi.get(self, "created_by") + return pulumi.get(self, "vlan_c_tag") @property - @pulumi.getter(name="createdByEmail") - def created_by_email(self) -> str: + @pulumi.getter(name="vlanSTag") + def vlan_s_tag(self) -> int: """ - Created by User Email Address + Vlan Provider Tag information, vlanSTag value specified for QINQ connections """ - return pulumi.get(self, "created_by_email") + return pulumi.get(self, "vlan_s_tag") @property - @pulumi.getter(name="createdByFullName") - def created_by_full_name(self) -> str: + @pulumi.getter(name="vlanTag") + def vlan_tag(self) -> int: """ - Created by User Full Name + Vlan Tag information, vlanTag value specified for DOT1Q connections """ - return pulumi.get(self, "created_by_full_name") + return pulumi.get(self, "vlan_tag") @property - @pulumi.getter(name="createdDateTime") - def created_date_time(self) -> str: + @pulumi.getter + def type(self) -> Optional[str]: """ - Created by Date and Time + Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN """ - return pulumi.get(self, "created_date_time") + return pulumi.get(self, "type") - @property - @pulumi.getter(name="deletedBy") - def deleted_by(self) -> str: + +@pulumi.output_type +class GetConnectionsDataZSideAccessPointLocationResult(dict): + def __init__(__self__, *, + ibx: str, + metro_code: str, + metro_name: str, + region: str): """ - Deleted by User Key + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region """ - return pulumi.get(self, "deleted_by") + pulumi.set(__self__, "ibx", ibx) + pulumi.set(__self__, "metro_code", metro_code) + pulumi.set(__self__, "metro_name", metro_name) + pulumi.set(__self__, "region", region) @property - @pulumi.getter(name="deletedByEmail") - def deleted_by_email(self) -> str: + @pulumi.getter + def ibx(self) -> str: """ - Deleted by User Email Address + IBX Code """ - return pulumi.get(self, "deleted_by_email") + return pulumi.get(self, "ibx") @property - @pulumi.getter(name="deletedByFullName") - def deleted_by_full_name(self) -> str: + @pulumi.getter(name="metroCode") + def metro_code(self) -> str: """ - Deleted by User Full Name + Access point metro code """ - return pulumi.get(self, "deleted_by_full_name") + return pulumi.get(self, "metro_code") @property - @pulumi.getter(name="deletedDateTime") - def deleted_date_time(self) -> str: + @pulumi.getter(name="metroName") + def metro_name(self) -> str: """ - Deleted by Date and Time + Access point metro name """ - return pulumi.get(self, "deleted_date_time") + return pulumi.get(self, "metro_name") @property - @pulumi.getter(name="updatedBy") - def updated_by(self) -> str: + @pulumi.getter + def region(self) -> str: """ - Updated by User Key + Access point region """ - return pulumi.get(self, "updated_by") + return pulumi.get(self, "region") - @property - @pulumi.getter(name="updatedByEmail") - def updated_by_email(self) -> str: + +@pulumi.output_type +class GetConnectionsDataZSideAccessPointNetworkResult(dict): + def __init__(__self__, *, + href: str, + uuid: Optional[str] = None): """ - Updated by User Email Address + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned Network identifier """ - return pulumi.get(self, "updated_by_email") + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="updatedByFullName") - def updated_by_full_name(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Updated by User Full Name + Unique Resource Identifier """ - return pulumi.get(self, "updated_by_full_name") + return pulumi.get(self, "href") @property - @pulumi.getter(name="updatedDateTime") - def updated_date_time(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Updated by Date and Time + Equinix-assigned Network identifier """ - return pulumi.get(self, "updated_date_time") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataNotificationResult(dict): +class GetConnectionsDataZSideAccessPointPortResult(dict): def __init__(__self__, *, - emails: Sequence[str], - type: str, - send_interval: Optional[str] = None): + href: str, + name: str, + redundancies: Sequence['outputs.GetConnectionsDataZSideAccessPointPortRedundancyResult'], + uuid: str): """ - :param Sequence[str] emails: Array of contact emails - :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS - :param str send_interval: Send interval + :param str href: Unique Resource Identifier + :param str name: Port name + :param Sequence['GetConnectionsDataZSideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information + :param str uuid: Equinix-assigned Port identifier """ - pulumi.set(__self__, "emails", emails) - pulumi.set(__self__, "type", type) - if send_interval is not None: - pulumi.set(__self__, "send_interval", send_interval) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def emails(self) -> Sequence[str]: + def href(self) -> str: """ - Array of contact emails + Unique Resource Identifier """ - return pulumi.get(self, "emails") + return pulumi.get(self, "href") @property @pulumi.getter - def type(self) -> str: + def name(self) -> str: """ - Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + Port name """ - return pulumi.get(self, "type") + return pulumi.get(self, "name") @property - @pulumi.getter(name="sendInterval") - def send_interval(self) -> Optional[str]: + @pulumi.getter + def redundancies(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointPortRedundancyResult']: """ - Send interval + Redundancy Information """ - return pulumi.get(self, "send_interval") + return pulumi.get(self, "redundancies") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Equinix-assigned Port identifier + """ + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataOperationResult(dict): - def __init__(__self__, *, - equinix_status: str, - errors: Sequence['outputs.GetConnectionsDataOperationErrorResult'], - provider_status: str): +class GetConnectionsDataZSideAccessPointPortRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): """ - :param str equinix_status: Connection status - :param Sequence['GetConnectionsDataOperationErrorArgs'] errors: Errors occurred - :param str provider_status: Connection provider readiness status + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary """ - pulumi.set(__self__, "equinix_status", equinix_status) - pulumi.set(__self__, "errors", errors) - pulumi.set(__self__, "provider_status", provider_status) + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property - @pulumi.getter(name="equinixStatus") - def equinix_status(self) -> str: + @pulumi.getter + def enabled(self) -> bool: """ - Connection status + Access point redundancy """ - return pulumi.get(self, "equinix_status") + return pulumi.get(self, "enabled") @property @pulumi.getter - def errors(self) -> Sequence['outputs.GetConnectionsDataOperationErrorResult']: + def group(self) -> str: """ - Errors occurred + Port redundancy group """ - return pulumi.get(self, "errors") + return pulumi.get(self, "group") @property - @pulumi.getter(name="providerStatus") - def provider_status(self) -> str: + @pulumi.getter + def priority(self) -> str: """ - Connection provider readiness status + Priority type-Primary or Secondary """ - return pulumi.get(self, "provider_status") + return pulumi.get(self, "priority") @pulumi.output_type -class GetConnectionsDataOperationErrorResult(dict): +class GetConnectionsDataZSideAccessPointProfileResult(dict): def __init__(__self__, *, - additional_infos: Sequence['outputs.GetConnectionsDataOperationErrorAdditionalInfoResult'], - correlation_id: str, - details: str, - error_code: str, - error_message: str, - help: str): + access_point_type_configs: Sequence['outputs.GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult'], + description: str, + href: str, + name: str, + type: str, + uuid: str): """ - :param Sequence['GetConnectionsDataOperationErrorAdditionalInfoArgs'] additional_infos: Pricing error additional Info - :param str correlation_id: CorrelationId - :param str details: Details - :param str error_code: Error code - :param str error_message: Error Message - :param str help: Help + :param Sequence['GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information + :param str description: User-provided service description + :param str href: Service Profile URI response attribute + :param str name: Customer-assigned service profile name + :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + :param str uuid: Equinix assigned service profile identifier """ - pulumi.set(__self__, "additional_infos", additional_infos) - pulumi.set(__self__, "correlation_id", correlation_id) - pulumi.set(__self__, "details", details) - pulumi.set(__self__, "error_code", error_code) - pulumi.set(__self__, "error_message", error_message) - pulumi.set(__self__, "help", help) + pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Sequence['outputs.GetConnectionsDataOperationErrorAdditionalInfoResult']: + @pulumi.getter(name="accessPointTypeConfigs") + def access_point_type_configs(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult']: """ - Pricing error additional Info + Access point config information """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "access_point_type_configs") @property - @pulumi.getter(name="correlationId") - def correlation_id(self) -> str: + @pulumi.getter + def description(self) -> str: """ - CorrelationId + User-provided service description """ - return pulumi.get(self, "correlation_id") + return pulumi.get(self, "description") @property @pulumi.getter - def details(self) -> str: + def href(self) -> str: """ - Details + Service Profile URI response attribute """ - return pulumi.get(self, "details") + return pulumi.get(self, "href") @property - @pulumi.getter(name="errorCode") - def error_code(self) -> str: + @pulumi.getter + def name(self) -> str: """ - Error code + Customer-assigned service profile name """ - return pulumi.get(self, "error_code") + return pulumi.get(self, "name") @property - @pulumi.getter(name="errorMessage") - def error_message(self) -> str: + @pulumi.getter + def type(self) -> str: """ - Error Message + Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE """ - return pulumi.get(self, "error_message") + return pulumi.get(self, "type") @property @pulumi.getter - def help(self) -> str: + def uuid(self) -> str: """ - Help + Equinix assigned service profile identifier """ - return pulumi.get(self, "help") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataOperationErrorAdditionalInfoResult(dict): +class GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult(dict): def __init__(__self__, *, - property: str, - reason: str): + type: str, + uuid: str): """ - :param str property: Property at which the error potentially occurred - :param str reason: Reason for the error + :param str type: Type of access point type config - VD, COLO + :param str uuid: Equinix-assigned access point type config identifier """ - pulumi.set(__self__, "property", property) - pulumi.set(__self__, "reason", reason) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def reason(self) -> str: + def type(self) -> str: """ - Reason for the error + Type of access point type config - VD, COLO """ - return pulumi.get(self, "reason") + return pulumi.get(self, "type") @property @pulumi.getter - def property(self) -> str: + def uuid(self) -> str: """ - Property at which the error potentially occurred + Equinix-assigned access point type config identifier """ - return pulumi.get(self, "property") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataOrderResult(dict): +class GetConnectionsDataZSideAccessPointRouterResult(dict): def __init__(__self__, *, - billing_tier: str, - order_id: str, - order_number: str, - purchase_order_number: str): - """ - :param str billing_tier: Billing tier for connection bandwidth - :param str order_id: Order Identification - :param str order_number: Order Reference Number - :param str purchase_order_number: Purchase order number - """ - pulumi.set(__self__, "billing_tier", billing_tier) - pulumi.set(__self__, "order_id", order_id) - pulumi.set(__self__, "order_number", order_number) - pulumi.set(__self__, "purchase_order_number", purchase_order_number) - - @property - @pulumi.getter(name="billingTier") - def billing_tier(self) -> str: - """ - Billing tier for connection bandwidth - """ - return pulumi.get(self, "billing_tier") - - @property - @pulumi.getter(name="orderId") - def order_id(self) -> str: + href: str, + uuid: Optional[str] = None): """ - Order Identification + :param str href: Unique Resource Identifier + :param str uuid: Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "order_id") + pulumi.set(__self__, "href", href) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="orderNumber") - def order_number(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Order Reference Number + Unique Resource Identifier """ - return pulumi.get(self, "order_number") + return pulumi.get(self, "href") @property - @pulumi.getter(name="purchaseOrderNumber") - def purchase_order_number(self) -> str: + @pulumi.getter + def uuid(self) -> Optional[str]: """ - Purchase order number + Equinix-assigned virtual gateway identifier """ - return pulumi.get(self, "purchase_order_number") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataProjectResult(dict): +class GetConnectionsDataZSideAccessPointVirtualDeviceResult(dict): def __init__(__self__, *, href: str, - project_id: str): + name: Optional[str] = None, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - :param str href: Unique Resource URL - :param str project_id: Project Id + :param str href: Unique Resource Identifier + :param str name: Customer-assigned Virtual Device Name + :param str type: Virtual Device type + :param str uuid: Equinix-assigned Virtual Device identifier """ pulumi.set(__self__, "href", href) - pulumi.set(__self__, "project_id", project_id) + if name is not None: + pulumi.set(__self__, "name", name) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter def href(self) -> str: """ - Unique Resource URL + Unique Resource Identifier """ return pulumi.get(self, "href") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def name(self) -> Optional[str]: """ - Project Id + Customer-assigned Virtual Device Name """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "name") + + @property + @pulumi.getter + def type(self) -> Optional[str]: + """ + Virtual Device type + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Equinix-assigned Virtual Device identifier + """ + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataRedundancyResult(dict): +class GetConnectionsDataZSideAdditionalInfoResult(dict): def __init__(__self__, *, - group: str, - priority: str): + key: Optional[str] = None, + value: Optional[str] = None): """ - :param str group: Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) - :param str priority: Connection priority in redundancy group - PRIMARY, SECONDARY + :param str key: Additional information key + :param str value: Additional information value """ - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + if key is not None: + pulumi.set(__self__, "key", key) + if value is not None: + pulumi.set(__self__, "value", value) @property @pulumi.getter - def group(self) -> str: + def key(self) -> Optional[str]: """ - Redundancy group identifier (Use the redundancy.0.group UUID of primary connection; e.g. one(equinix_fabric_connection.primary_port_connection.redundancy).group or equinix_fabric_connection.primary_port_connection.redundancy.0.group) + Additional information key """ - return pulumi.get(self, "group") + return pulumi.get(self, "key") @property @pulumi.getter - def priority(self) -> str: + def value(self) -> Optional[str]: """ - Connection priority in redundancy group - PRIMARY, SECONDARY + Additional information value """ - return pulumi.get(self, "priority") + return pulumi.get(self, "value") @pulumi.output_type -class GetConnectionsDataZSideResult(dict): +class GetConnectionsDataZSideServiceTokenResult(dict): def __init__(__self__, *, - access_point: Optional['outputs.GetConnectionsDataZSideAccessPointResult'] = None, - additional_infos: Optional[Sequence['outputs.GetConnectionsDataZSideAdditionalInfoResult']] = None, - service_token: Optional['outputs.GetConnectionsDataZSideServiceTokenResult'] = None): + description: str, + href: str, + type: Optional[str] = None, + uuid: Optional[str] = None): """ - :param 'GetConnectionsDataZSideAccessPointArgs' access_point: Point of access details - :param Sequence['GetConnectionsDataZSideAdditionalInfoArgs'] additional_infos: Connection side additional information - :param 'GetConnectionsDataZSideServiceTokenArgs' service_token: For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets + :param str description: Service token description + :param str href: An absolute URL that is the subject of the link's context + :param str type: Token type - VC_TOKEN + :param str uuid: Equinix-assigned service token identifier """ - if access_point is not None: - pulumi.set(__self__, "access_point", access_point) - if additional_infos is not None: - pulumi.set(__self__, "additional_infos", additional_infos) - if service_token is not None: - pulumi.set(__self__, "service_token", service_token) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="accessPoint") - def access_point(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointResult']: + @pulumi.getter + def description(self) -> str: """ - Point of access details + Service token description """ - return pulumi.get(self, "access_point") + return pulumi.get(self, "description") @property - @pulumi.getter(name="additionalInfos") - def additional_infos(self) -> Optional[Sequence['outputs.GetConnectionsDataZSideAdditionalInfoResult']]: + @pulumi.getter + def href(self) -> str: """ - Connection side additional information + An absolute URL that is the subject of the link's context """ - return pulumi.get(self, "additional_infos") + return pulumi.get(self, "href") @property - @pulumi.getter(name="serviceToken") - def service_token(self) -> Optional['outputs.GetConnectionsDataZSideServiceTokenResult']: + @pulumi.getter + def type(self) -> Optional[str]: """ - For service token based connections, Service tokens authorize users to access protected resources and services. Resource owners can distribute the tokens to trusted partners and vendors, allowing selected third parties to work directly with Equinix network assets + Token type - VC_TOKEN """ - return pulumi.get(self, "service_token") + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> Optional[str]: + """ + Equinix-assigned service token identifier + """ + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataZSideAccessPointResult(dict): +class GetConnectionsFilterResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetConnectionsDataZSideAccessPointAccountResult'], - location: 'outputs.GetConnectionsDataZSideAccessPointLocationResult', - provider_connection_id: str, - authentication_key: Optional[str] = None, - gateway: Optional['outputs.GetConnectionsDataZSideAccessPointGatewayResult'] = None, - interface: Optional['outputs.GetConnectionsDataZSideAccessPointInterfaceResult'] = None, - link_protocol: Optional['outputs.GetConnectionsDataZSideAccessPointLinkProtocolResult'] = None, - network: Optional['outputs.GetConnectionsDataZSideAccessPointNetworkResult'] = None, - peering_type: Optional[str] = None, - port: Optional['outputs.GetConnectionsDataZSideAccessPointPortResult'] = None, - profile: Optional['outputs.GetConnectionsDataZSideAccessPointProfileResult'] = None, - router: Optional['outputs.GetConnectionsDataZSideAccessPointRouterResult'] = None, - seller_region: Optional[str] = None, - type: Optional[str] = None, - virtual_device: Optional['outputs.GetConnectionsDataZSideAccessPointVirtualDeviceResult'] = None): + operator: str, + property: str, + values: Sequence[str], + group: Optional[str] = None): """ - :param Sequence['GetConnectionsDataZSideAccessPointAccountArgs'] accounts: Account - :param 'GetConnectionsDataZSideAccessPointLocationArgs' location: Access point location - :param str provider_connection_id: Provider assigned Connection Id - :param str authentication_key: Authentication key for provider based connections or Metal-Fabric Integration connections - :param 'GetConnectionsDataZSideAccessPointGatewayArgs' gateway: **Deprecated** `gateway` Use `router` attribute instead - :param 'GetConnectionsDataZSideAccessPointInterfaceArgs' interface: Virtual device interface - :param 'GetConnectionsDataZSideAccessPointLinkProtocolArgs' link_protocol: Connection link protocol - :param 'GetConnectionsDataZSideAccessPointNetworkArgs' network: network access point information - :param str peering_type: Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL - :param 'GetConnectionsDataZSideAccessPointPortArgs' port: Port access point information - :param 'GetConnectionsDataZSideAccessPointProfileArgs' profile: Service Profile - :param 'GetConnectionsDataZSideAccessPointRouterArgs' router: Cloud Router access point information that replaces `gateway` - :param str seller_region: Access point seller region - :param str type: Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK - :param 'GetConnectionsDataZSideAccessPointVirtualDeviceArgs' virtual_device: Virtual device + :param str operator: Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, IN, NOT IN, IS NOT NULL, IS NULL] + :param str property: Possible field names to use on filters. One of [/isRemote /name /uuid /type /geoScope /account/orgId /aSide/accessPoint/account/accountName /aSide/accessPoint/account/accountNumber /aSide/accessPoint/router/uuid /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /aSide/accessPoint/linkProtocol/vlanTagMin /aSide/accessPoint/linkProtocol/vlanTagMax /aSide/accessPoint/location/metroCode /aSide/accessPoint/location/metroName /aSide/accessPoint/name /aSide/accessPoint/port/uuid /aSide/accessPoint/port/name /aSide/accessPoint/type /aSide/accessPoint/virtualDevice/name /aSide/accessPoint/virtualDevice/uuid /aSide/serviceToken/uuid /change/status /operation/equinixStatus /operation/providerStatus /project/projectId /redundancy/group /redundancy/priority /zSide/accessPoint/account/accountName /zSide/accessPoint/authenticationKey /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/linkProtocol/vlanTagMin /zSide/accessPoint/linkProtocol/vlanTagMax /zSide/accessPoint/location/metroCode /zSide/accessPoint/location/metroName /zSide/accessPoint/name /zSide/accessPoint/port/uuid /zSide/accessPoint/network/uuid /zSide/accessPoint/port/name /zSide/accessPoint/profile/uuid /zSide/accessPoint/type /zSide/accessPoint/virtualDevice/name /zSide/accessPoint/virtualDevice/uuid /zSide/serviceToken/uuid /zSide/internetAccess/uuid *] + :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search + :param str group: Optional custom id parameter to assign this filter to an inner AND or OR group. Group id must be prefixed with AND_ or OR_. Ensure intended grouped elements have the same given id. Ungrouped filters will be placed in the filter list group by themselves. """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "location", location) - pulumi.set(__self__, "provider_connection_id", provider_connection_id) - if authentication_key is not None: - pulumi.set(__self__, "authentication_key", authentication_key) - if gateway is not None: - pulumi.set(__self__, "gateway", gateway) - if interface is not None: - pulumi.set(__self__, "interface", interface) - if link_protocol is not None: - pulumi.set(__self__, "link_protocol", link_protocol) - if network is not None: - pulumi.set(__self__, "network", network) - if peering_type is not None: - pulumi.set(__self__, "peering_type", peering_type) - if port is not None: - pulumi.set(__self__, "port", port) - if profile is not None: - pulumi.set(__self__, "profile", profile) - if router is not None: - pulumi.set(__self__, "router", router) - if seller_region is not None: - pulumi.set(__self__, "seller_region", seller_region) - if type is not None: - pulumi.set(__self__, "type", type) - if virtual_device is not None: - pulumi.set(__self__, "virtual_device", virtual_device) + pulumi.set(__self__, "operator", operator) + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "values", values) + if group is not None: + pulumi.set(__self__, "group", group) @property @pulumi.getter - def accounts(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointAccountResult']: + def operator(self) -> str: """ - Account + Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, IN, NOT IN, IS NOT NULL, IS NULL] """ - return pulumi.get(self, "accounts") + return pulumi.get(self, "operator") @property @pulumi.getter - def location(self) -> 'outputs.GetConnectionsDataZSideAccessPointLocationResult': + def values(self) -> Sequence[str]: """ - Access point location + The values that you want to apply the property+operator combination to in order to filter your data search """ - return pulumi.get(self, "location") + return pulumi.get(self, "values") @property - @pulumi.getter(name="providerConnectionId") - def provider_connection_id(self) -> str: + @pulumi.getter + def group(self) -> Optional[str]: """ - Provider assigned Connection Id + Optional custom id parameter to assign this filter to an inner AND or OR group. Group id must be prefixed with AND_ or OR_. Ensure intended grouped elements have the same given id. Ungrouped filters will be placed in the filter list group by themselves. """ - return pulumi.get(self, "provider_connection_id") + return pulumi.get(self, "group") @property - @pulumi.getter(name="authenticationKey") - def authentication_key(self) -> Optional[str]: + @pulumi.getter + def property(self) -> str: """ - Authentication key for provider based connections or Metal-Fabric Integration connections + Possible field names to use on filters. One of [/isRemote /name /uuid /type /geoScope /account/orgId /aSide/accessPoint/account/accountName /aSide/accessPoint/account/accountNumber /aSide/accessPoint/router/uuid /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /aSide/accessPoint/linkProtocol/vlanTagMin /aSide/accessPoint/linkProtocol/vlanTagMax /aSide/accessPoint/location/metroCode /aSide/accessPoint/location/metroName /aSide/accessPoint/name /aSide/accessPoint/port/uuid /aSide/accessPoint/port/name /aSide/accessPoint/type /aSide/accessPoint/virtualDevice/name /aSide/accessPoint/virtualDevice/uuid /aSide/serviceToken/uuid /change/status /operation/equinixStatus /operation/providerStatus /project/projectId /redundancy/group /redundancy/priority /zSide/accessPoint/account/accountName /zSide/accessPoint/authenticationKey /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/linkProtocol/vlanTagMin /zSide/accessPoint/linkProtocol/vlanTagMax /zSide/accessPoint/location/metroCode /zSide/accessPoint/location/metroName /zSide/accessPoint/name /zSide/accessPoint/port/uuid /zSide/accessPoint/network/uuid /zSide/accessPoint/port/name /zSide/accessPoint/profile/uuid /zSide/accessPoint/type /zSide/accessPoint/virtualDevice/name /zSide/accessPoint/virtualDevice/uuid /zSide/serviceToken/uuid /zSide/internetAccess/uuid *] """ - return pulumi.get(self, "authentication_key") + return pulumi.get(self, "property") + + +@pulumi.output_type +class GetConnectionsPaginationResult(dict): + def __init__(__self__, *, + limit: Optional[int] = None, + offset: Optional[int] = None): + """ + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + """ + if limit is not None: + pulumi.set(__self__, "limit", limit) + if offset is not None: + pulumi.set(__self__, "offset", offset) @property @pulumi.getter - @_utilities.deprecated("""use router attribute instead; gateway is no longer a part of the supported backend""") - def gateway(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointGatewayResult']: + def limit(self) -> Optional[int]: """ - **Deprecated** `gateway` Use `router` attribute instead + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 """ - return pulumi.get(self, "gateway") + return pulumi.get(self, "limit") @property @pulumi.getter - def interface(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointInterfaceResult']: + def offset(self) -> Optional[int]: """ - Virtual device interface + The page offset for the pagination request. Index of the first element. Default is 0. """ - return pulumi.get(self, "interface") + return pulumi.get(self, "offset") - @property - @pulumi.getter(name="linkProtocol") - def link_protocol(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointLinkProtocolResult']: + +@pulumi.output_type +class GetConnectionsSortResult(dict): + def __init__(__self__, *, + direction: Optional[str] = None, + property: Optional[str] = None): """ - Connection link protocol + :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + :param str property: The property name to use in sorting. One of [/name /direction /aSide/accessPoint/name /aSide/accessPoint/type /aSide/accessPoint/account/accountName /aSide/accessPoint/location/metroName /aSide/accessPoint/location/metroCode /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/name /zSide/accessPoint/type /zSide/accessPoint/account/accountName /zSide/accessPoint/location/metroName /zSide/accessPoint/location/metroCode /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/authenticationKey /bandwidth /geoScope /uuid /changeLog/createdDateTime /changeLog/updatedDateTime /operation/equinixStatus /operation/providerStatus /redundancy/priority]. Defaults to /changeLog/updatedDateTime """ - return pulumi.get(self, "link_protocol") + if direction is not None: + pulumi.set(__self__, "direction", direction) + if property is not None: + pulumi.set(__self__, "property", property) @property @pulumi.getter - def network(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointNetworkResult']: + def direction(self) -> Optional[str]: """ - network access point information + The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC """ - return pulumi.get(self, "network") + return pulumi.get(self, "direction") @property - @pulumi.getter(name="peeringType") - def peering_type(self) -> Optional[str]: + @pulumi.getter + def property(self) -> Optional[str]: """ - Peering Type- PRIVATE,MICROSOFT,PUBLIC, MANUAL + The property name to use in sorting. One of [/name /direction /aSide/accessPoint/name /aSide/accessPoint/type /aSide/accessPoint/account/accountName /aSide/accessPoint/location/metroName /aSide/accessPoint/location/metroCode /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/name /zSide/accessPoint/type /zSide/accessPoint/account/accountName /zSide/accessPoint/location/metroName /zSide/accessPoint/location/metroCode /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/authenticationKey /bandwidth /geoScope /uuid /changeLog/createdDateTime /changeLog/updatedDateTime /operation/equinixStatus /operation/providerStatus /redundancy/priority]. Defaults to /changeLog/updatedDateTime """ - return pulumi.get(self, "peering_type") + return pulumi.get(self, "property") - @property - @pulumi.getter - def port(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointPortResult']: + +@pulumi.output_type +class GetMarketplaceSubscriptionEntitlementResult(dict): + def __init__(__self__, *, + assets: Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetResult'], + quantity_available: int, + quantity_consumed: int, + quantity_entitled: int, + uuid: str): """ - Port access point information + :param Sequence['GetMarketplaceSubscriptionEntitlementAssetArgs'] assets: Asset information + :param int quantity_available: Available Quantity + :param int quantity_consumed: Consumed Quantity + :param int quantity_entitled: Entitled Quantity + :param str uuid: Subscription Entitlement Id """ - return pulumi.get(self, "port") + pulumi.set(__self__, "assets", assets) + pulumi.set(__self__, "quantity_available", quantity_available) + pulumi.set(__self__, "quantity_consumed", quantity_consumed) + pulumi.set(__self__, "quantity_entitled", quantity_entitled) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def profile(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointProfileResult']: + def assets(self) -> Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetResult']: """ - Service Profile + Asset information """ - return pulumi.get(self, "profile") + return pulumi.get(self, "assets") @property - @pulumi.getter - def router(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointRouterResult']: + @pulumi.getter(name="quantityAvailable") + def quantity_available(self) -> int: """ - Cloud Router access point information that replaces `gateway` + Available Quantity """ - return pulumi.get(self, "router") + return pulumi.get(self, "quantity_available") @property - @pulumi.getter(name="sellerRegion") - def seller_region(self) -> Optional[str]: + @pulumi.getter(name="quantityConsumed") + def quantity_consumed(self) -> int: """ - Access point seller region + Consumed Quantity """ - return pulumi.get(self, "seller_region") + return pulumi.get(self, "quantity_consumed") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="quantityEntitled") + def quantity_entitled(self) -> int: """ - Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK + Entitled Quantity """ - return pulumi.get(self, "type") + return pulumi.get(self, "quantity_entitled") @property - @pulumi.getter(name="virtualDevice") - def virtual_device(self) -> Optional['outputs.GetConnectionsDataZSideAccessPointVirtualDeviceResult']: + @pulumi.getter + def uuid(self) -> str: """ - Virtual device + Subscription Entitlement Id """ - return pulumi.get(self, "virtual_device") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataZSideAccessPointAccountResult(dict): +class GetMarketplaceSubscriptionEntitlementAssetResult(dict): def __init__(__self__, *, - account_name: str, - account_number: int, - global_cust_id: str, - global_org_id: str, - global_organization_name: str, - org_id: int, - organization_name: str, - ucm_id: str): + packages: Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetPackageResult'], + type: str): """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id + :param Sequence['GetMarketplaceSubscriptionEntitlementAssetPackageArgs'] packages: Fabric Cloud Router Package Type + :param str type: Defines the FCR type like; XF_ROUTER """ - pulumi.set(__self__, "account_name", account_name) - pulumi.set(__self__, "account_number", account_number) - pulumi.set(__self__, "global_cust_id", global_cust_id) - pulumi.set(__self__, "global_org_id", global_org_id) - pulumi.set(__self__, "global_organization_name", global_organization_name) - pulumi.set(__self__, "org_id", org_id) - pulumi.set(__self__, "organization_name", organization_name) - pulumi.set(__self__, "ucm_id", ucm_id) + pulumi.set(__self__, "packages", packages) + pulumi.set(__self__, "type", type) @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: + @pulumi.getter + def packages(self) -> Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetPackageResult']: """ - Legal name of the accountholder. + Fabric Cloud Router Package Type """ - return pulumi.get(self, "account_name") + return pulumi.get(self, "packages") @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: + @pulumi.getter + def type(self) -> str: """ - Equinix-assigned account number. + Defines the FCR type like; XF_ROUTER """ - return pulumi.get(self, "account_number") + return pulumi.get(self, "type") - @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: - """ - Equinix-assigned ID of the subscriber's parent organization. - """ - return pulumi.get(self, "global_cust_id") - @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: +@pulumi.output_type +class GetMarketplaceSubscriptionEntitlementAssetPackageResult(dict): + def __init__(__self__, *, + code: str): """ - Equinix-assigned ID of the subscriber's parent organization. + :param str code: Cloud Router package code """ - return pulumi.get(self, "global_org_id") + pulumi.set(__self__, "code", code) @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + @pulumi.getter + def code(self) -> str: """ - Equinix-assigned name of the subscriber's parent organization. + Cloud Router package code """ - return pulumi.get(self, "global_organization_name") + return pulumi.get(self, "code") - @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: - """ - Equinix-assigned ID of the subscriber's organization. - """ - return pulumi.get(self, "org_id") - @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: +@pulumi.output_type +class GetMarketplaceSubscriptionTrialResult(dict): + def __init__(__self__, *, + enabled: bool): """ - Equinix-assigned name of the subscriber's organization. + :param bool enabled: Marketplace Subscription Trial Enabled """ - return pulumi.get(self, "organization_name") + pulumi.set(__self__, "enabled", enabled) @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter + def enabled(self) -> bool: """ - Enterprise datastore id + Marketplace Subscription Trial Enabled """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "enabled") @pulumi.output_type -class GetConnectionsDataZSideAccessPointGatewayResult(dict): +class GetNetworkChangeResult(dict): def __init__(__self__, *, href: str, - uuid: Optional[str] = None): + type: str, + uuid: str): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + :param str href: Absolute URL that returns the details of the given change. + Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 + :param str type: Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION + :param str uuid: Asset change request identifier. """ pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter def href(self) -> str: """ - Unique Resource Identifier + Absolute URL that returns the details of the given change. + Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 """ return pulumi.get(self, "href") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def type(self) -> str: """ - Equinix-assigned virtual gateway identifier + Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> str: + """ + Asset change request identifier. """ return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataZSideAccessPointInterfaceResult(dict): +class GetNetworkChangeLogResult(dict): def __init__(__self__, *, - id: int, - type: Optional[str] = None, - uuid: Optional[str] = None): + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): """ - :param int id: id - :param str type: Interface type - :param str uuid: Equinix-assigned interface identifier + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - pulumi.set(__self__, "id", id) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter - def id(self) -> int: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: + """ + Created by User Key + """ + return pulumi.get(self, "created_by") + + @property + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: + """ + Created by User Email Address + """ + return pulumi.get(self, "created_by_email") + + @property + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: + """ + Created by User Full Name + """ + return pulumi.get(self, "created_by_full_name") + + @property + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: + """ + Created by Date and Time + """ + return pulumi.get(self, "created_date_time") + + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: """ - id + Deleted by User Key """ - return pulumi.get(self, "id") + return pulumi.get(self, "deleted_by") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - Interface type + Deleted by User Email Address """ - return pulumi.get(self, "type") + return pulumi.get(self, "deleted_by_email") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: """ - Equinix-assigned interface identifier + Deleted by User Full Name """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "deleted_by_full_name") -@pulumi.output_type -class GetConnectionsDataZSideAccessPointLinkProtocolResult(dict): - def __init__(__self__, *, - vlan_c_tag: int, - vlan_s_tag: int, - vlan_tag: int, - type: Optional[str] = None): + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: """ - :param int vlan_c_tag: Vlan Customer Tag information, vlanCTag value specified for QINQ connections - :param int vlan_s_tag: Vlan Provider Tag information, vlanSTag value specified for QINQ connections - :param int vlan_tag: Vlan Tag information, vlanTag value specified for DOT1Q connections - :param str type: Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + Deleted by Date and Time """ - pulumi.set(__self__, "vlan_c_tag", vlan_c_tag) - pulumi.set(__self__, "vlan_s_tag", vlan_s_tag) - pulumi.set(__self__, "vlan_tag", vlan_tag) - if type is not None: - pulumi.set(__self__, "type", type) + return pulumi.get(self, "deleted_date_time") @property - @pulumi.getter(name="vlanCTag") - def vlan_c_tag(self) -> int: + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: """ - Vlan Customer Tag information, vlanCTag value specified for QINQ connections + Updated by User Key """ - return pulumi.get(self, "vlan_c_tag") + return pulumi.get(self, "updated_by") @property - @pulumi.getter(name="vlanSTag") - def vlan_s_tag(self) -> int: + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - Vlan Provider Tag information, vlanSTag value specified for QINQ connections + Updated by User Email Address """ - return pulumi.get(self, "vlan_s_tag") + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter(name="vlanTag") - def vlan_tag(self) -> int: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - Vlan Tag information, vlanTag value specified for DOT1Q connections + Updated by User Full Name """ - return pulumi.get(self, "vlan_tag") + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Type of the link protocol - UNTAGGED, DOT1Q, QINQ, EVPN_VXLAN + Updated by Date and Time """ - return pulumi.get(self, "type") + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class GetConnectionsDataZSideAccessPointLocationResult(dict): +class GetNetworkLocationResult(dict): def __init__(__self__, *, ibx: str, metro_code: str, @@ -11833,406 +13357,551 @@ def region(self) -> str: @pulumi.output_type -class GetConnectionsDataZSideAccessPointNetworkResult(dict): +class GetNetworkNotificationResult(dict): def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + emails: Sequence[str], + type: str, + send_interval: Optional[str] = None): """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned Network identifier + :param Sequence[str] emails: Array of contact emails + :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + :param str send_interval: Send interval """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "emails", emails) + pulumi.set(__self__, "type", type) + if send_interval is not None: + pulumi.set(__self__, "send_interval", send_interval) @property @pulumi.getter - def href(self) -> str: + def emails(self) -> Sequence[str]: """ - Unique Resource Identifier + Array of contact emails """ - return pulumi.get(self, "href") + return pulumi.get(self, "emails") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def type(self) -> str: """ - Equinix-assigned Network identifier + Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="sendInterval") + def send_interval(self) -> Optional[str]: + """ + Send interval + """ + return pulumi.get(self, "send_interval") @pulumi.output_type -class GetConnectionsDataZSideAccessPointPortResult(dict): +class GetNetworkOperationResult(dict): + def __init__(__self__, *, + equinix_status: str): + """ + :param str equinix_status: Progress towards provisioning a given asset. + """ + pulumi.set(__self__, "equinix_status", equinix_status) + + @property + @pulumi.getter(name="equinixStatus") + def equinix_status(self) -> str: + """ + Progress towards provisioning a given asset. + """ + return pulumi.get(self, "equinix_status") + + +@pulumi.output_type +class GetNetworkProjectResult(dict): + def __init__(__self__, *, + project_id: str): + """ + :param str project_id: Customer project identifier + """ + pulumi.set(__self__, "project_id", project_id) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + """ + Customer project identifier + """ + return pulumi.get(self, "project_id") + + +@pulumi.output_type +class GetNetworksDataResult(dict): def __init__(__self__, *, + change_logs: Sequence['outputs.GetNetworksDataChangeLogResult'], + changes: Sequence['outputs.GetNetworksDataChangeResult'], + connections_count: int, href: str, + locations: Sequence['outputs.GetNetworksDataLocationResult'], name: str, - redundancies: Sequence['outputs.GetConnectionsDataZSideAccessPointPortRedundancyResult'], + notifications: Sequence['outputs.GetNetworksDataNotificationResult'], + operations: Sequence['outputs.GetNetworksDataOperationResult'], + projects: Sequence['outputs.GetNetworksDataProjectResult'], + scope: str, + state: str, + type: str, uuid: str): """ - :param str href: Unique Resource Identifier - :param str name: Port name - :param Sequence['GetConnectionsDataZSideAccessPointPortRedundancyArgs'] redundancies: Redundancy Information - :param str uuid: Equinix-assigned Port identifier + :param Sequence['GetNetworksDataChangeLogArgs'] change_logs: A permanent record of asset creation, modification, or deletion + :param Sequence['GetNetworksDataChangeArgs'] changes: Information on asset change operation + :param int connections_count: Number of connections associated with this network + :param str href: Fabric Network URI information + :param Sequence['GetNetworksDataLocationArgs'] locations: Fabric Network location + :param str name: Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores + :param Sequence['GetNetworksDataNotificationArgs'] notifications: Preferences for notifications on Fabric Network configuration or status changes + :param Sequence['GetNetworksDataOperationArgs'] operations: Network operation information that is associated with this Fabric Network + :param Sequence['GetNetworksDataProjectArgs'] projects: Fabric Network project + :param str scope: Fabric Network scope + :param str state: Fabric Network overall state + :param str type: Supported Network types - EVPLAN, EPLAN, IPWAN + :param str uuid: Equinix-assigned network identifier + """ + pulumi.set(__self__, "change_logs", change_logs) + pulumi.set(__self__, "changes", changes) + pulumi.set(__self__, "connections_count", connections_count) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "locations", locations) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "notifications", notifications) + pulumi.set(__self__, "operations", operations) + pulumi.set(__self__, "projects", projects) + pulumi.set(__self__, "scope", scope) + pulumi.set(__self__, "state", state) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetNetworksDataChangeLogResult']: + """ + A permanent record of asset creation, modification, or deletion + """ + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> Sequence['outputs.GetNetworksDataChangeResult']: + """ + Information on asset change operation + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> int: + """ + Number of connections associated with this network + """ + return pulumi.get(self, "connections_count") + + @property + @pulumi.getter + def href(self) -> str: + """ + Fabric Network URI information + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def locations(self) -> Sequence['outputs.GetNetworksDataLocationResult']: + """ + Fabric Network location + """ + return pulumi.get(self, "locations") + + @property + @pulumi.getter + def name(self) -> str: + """ + Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def notifications(self) -> Sequence['outputs.GetNetworksDataNotificationResult']: + """ + Preferences for notifications on Fabric Network configuration or status changes + """ + return pulumi.get(self, "notifications") + + @property + @pulumi.getter + def operations(self) -> Sequence['outputs.GetNetworksDataOperationResult']: + """ + Network operation information that is associated with this Fabric Network + """ + return pulumi.get(self, "operations") + + @property + @pulumi.getter + def projects(self) -> Sequence['outputs.GetNetworksDataProjectResult']: + """ + Fabric Network project """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "projects") @property @pulumi.getter - def href(self) -> str: + def scope(self) -> str: """ - Unique Resource Identifier + Fabric Network scope """ - return pulumi.get(self, "href") + return pulumi.get(self, "scope") @property @pulumi.getter - def name(self) -> str: + def state(self) -> str: """ - Port name + Fabric Network overall state """ - return pulumi.get(self, "name") + return pulumi.get(self, "state") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointPortRedundancyResult']: + def type(self) -> str: """ - Redundancy Information + Supported Network types - EVPLAN, EPLAN, IPWAN """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "type") @property @pulumi.getter def uuid(self) -> str: """ - Equinix-assigned Port identifier + Equinix-assigned network identifier """ return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataZSideAccessPointPortRedundancyResult(dict): +class GetNetworksDataChangeResult(dict): def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + href: str, + type: str, + uuid: str): """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + :param str href: Absolute URL that returns the details of the given change. + Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 + :param str type: Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION + :param str uuid: Asset change request identifier. """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property @pulumi.getter - def enabled(self) -> bool: + def href(self) -> str: """ - Access point redundancy + Absolute URL that returns the details of the given change. + Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "href") @property @pulumi.getter - def group(self) -> str: + def type(self) -> str: """ - Port redundancy group + Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION """ - return pulumi.get(self, "group") + return pulumi.get(self, "type") @property @pulumi.getter - def priority(self) -> str: + def uuid(self) -> str: """ - Priority type-Primary or Secondary + Asset change request identifier. """ - return pulumi.get(self, "priority") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetConnectionsDataZSideAccessPointProfileResult(dict): +class GetNetworksDataChangeLogResult(dict): def __init__(__self__, *, - access_point_type_configs: Sequence['outputs.GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult'], - description: str, - href: str, - name: str, - type: str, - uuid: str): + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): """ - :param Sequence['GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigArgs'] access_point_type_configs: Access point config information - :param str description: User-provided service description - :param str href: Service Profile URI response attribute - :param str name: Customer-assigned service profile name - :param str type: Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE - :param str uuid: Equinix assigned service profile identifier + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - pulumi.set(__self__, "access_point_type_configs", access_point_type_configs) - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter(name="accessPointTypeConfigs") - def access_point_type_configs(self) -> Sequence['outputs.GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult']: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: """ - Access point config information + Created by User Key """ - return pulumi.get(self, "access_point_type_configs") + return pulumi.get(self, "created_by") @property - @pulumi.getter - def description(self) -> str: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: """ - User-provided service description + Created by User Email Address """ - return pulumi.get(self, "description") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: """ - Service Profile URI response attribute + Created by User Full Name """ - return pulumi.get(self, "href") + return pulumi.get(self, "created_by_full_name") @property - @pulumi.getter - def name(self) -> str: + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: """ - Customer-assigned service profile name + Created by Date and Time """ - return pulumi.get(self, "name") + return pulumi.get(self, "created_date_time") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: """ - Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE + Deleted by User Key """ - return pulumi.get(self, "type") + return pulumi.get(self, "deleted_by") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - Equinix assigned service profile identifier + Deleted by User Email Address """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "deleted_by_email") -@pulumi.output_type -class GetConnectionsDataZSideAccessPointProfileAccessPointTypeConfigResult(dict): - def __init__(__self__, *, - type: str, - uuid: str): + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: """ - :param str type: Type of access point type config - VD, COLO - :param str uuid: Equinix-assigned access point type config identifier + Deleted by User Full Name """ - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "deleted_by_full_name") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: """ - Type of access point type config - VD, COLO + Deleted by Date and Time """ - return pulumi.get(self, "type") + return pulumi.get(self, "deleted_date_time") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: """ - Equinix-assigned access point type config identifier + Updated by User Key """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "updated_by") -@pulumi.output_type -class GetConnectionsDataZSideAccessPointRouterResult(dict): - def __init__(__self__, *, - href: str, - uuid: Optional[str] = None): + @property + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - :param str href: Unique Resource Identifier - :param str uuid: Equinix-assigned virtual gateway identifier + Updated by User Email Address """ - pulumi.set(__self__, "href", href) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - Unique Resource Identifier + Updated by User Full Name """ - return pulumi.get(self, "href") + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Equinix-assigned virtual gateway identifier + Updated by Date and Time """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class GetConnectionsDataZSideAccessPointVirtualDeviceResult(dict): +class GetNetworksDataLocationResult(dict): def __init__(__self__, *, - href: str, - name: Optional[str] = None, - type: Optional[str] = None, - uuid: Optional[str] = None): - """ - :param str href: Unique Resource Identifier - :param str name: Customer-assigned Virtual Device Name - :param str type: Virtual Device type - :param str uuid: Equinix-assigned Virtual Device identifier + ibx: str, + metro_code: str, + metro_name: str, + region: str): """ - pulumi.set(__self__, "href", href) - if name is not None: - pulumi.set(__self__, "name", name) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + :param str ibx: IBX Code + :param str metro_code: Access point metro code + :param str metro_name: Access point metro name + :param str region: Access point region + """ + pulumi.set(__self__, "ibx", ibx) + pulumi.set(__self__, "metro_code", metro_code) + pulumi.set(__self__, "metro_name", metro_name) + pulumi.set(__self__, "region", region) @property @pulumi.getter - def href(self) -> str: + def ibx(self) -> str: """ - Unique Resource Identifier + IBX Code """ - return pulumi.get(self, "href") + return pulumi.get(self, "ibx") @property - @pulumi.getter - def name(self) -> Optional[str]: + @pulumi.getter(name="metroCode") + def metro_code(self) -> str: """ - Customer-assigned Virtual Device Name + Access point metro code """ - return pulumi.get(self, "name") + return pulumi.get(self, "metro_code") @property - @pulumi.getter - def type(self) -> Optional[str]: + @pulumi.getter(name="metroName") + def metro_name(self) -> str: """ - Virtual Device type + Access point metro name """ - return pulumi.get(self, "type") + return pulumi.get(self, "metro_name") @property @pulumi.getter - def uuid(self) -> Optional[str]: + def region(self) -> str: """ - Equinix-assigned Virtual Device identifier + Access point region """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "region") @pulumi.output_type -class GetConnectionsDataZSideAdditionalInfoResult(dict): +class GetNetworksDataNotificationResult(dict): def __init__(__self__, *, - key: Optional[str] = None, - value: Optional[str] = None): + emails: Sequence[str], + type: str, + send_interval: Optional[str] = None): """ - :param str key: Additional information key - :param str value: Additional information value + :param Sequence[str] emails: Array of contact emails + :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + :param str send_interval: Send interval """ - if key is not None: - pulumi.set(__self__, "key", key) - if value is not None: - pulumi.set(__self__, "value", value) + pulumi.set(__self__, "emails", emails) + pulumi.set(__self__, "type", type) + if send_interval is not None: + pulumi.set(__self__, "send_interval", send_interval) @property @pulumi.getter - def key(self) -> Optional[str]: + def emails(self) -> Sequence[str]: """ - Additional information key + Array of contact emails """ - return pulumi.get(self, "key") + return pulumi.get(self, "emails") @property @pulumi.getter - def value(self) -> Optional[str]: + def type(self) -> str: """ - Additional information value + Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS """ - return pulumi.get(self, "value") + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="sendInterval") + def send_interval(self) -> Optional[str]: + """ + Send interval + """ + return pulumi.get(self, "send_interval") @pulumi.output_type -class GetConnectionsDataZSideServiceTokenResult(dict): +class GetNetworksDataOperationResult(dict): def __init__(__self__, *, - description: str, - href: str, - type: Optional[str] = None, - uuid: Optional[str] = None): + equinix_status: str): """ - :param str description: Service token description - :param str href: An absolute URL that is the subject of the link's context - :param str type: Token type - VC_TOKEN - :param str uuid: Equinix-assigned service token identifier + :param str equinix_status: Progress towards provisioning a given asset. """ - pulumi.set(__self__, "description", description) - pulumi.set(__self__, "href", href) - if type is not None: - pulumi.set(__self__, "type", type) - if uuid is not None: - pulumi.set(__self__, "uuid", uuid) + pulumi.set(__self__, "equinix_status", equinix_status) @property - @pulumi.getter - def description(self) -> str: + @pulumi.getter(name="equinixStatus") + def equinix_status(self) -> str: """ - Service token description + Progress towards provisioning a given asset. """ - return pulumi.get(self, "description") + return pulumi.get(self, "equinix_status") - @property - @pulumi.getter - def href(self) -> str: - """ - An absolute URL that is the subject of the link's context - """ - return pulumi.get(self, "href") - @property - @pulumi.getter - def type(self) -> Optional[str]: +@pulumi.output_type +class GetNetworksDataProjectResult(dict): + def __init__(__self__, *, + project_id: str): """ - Token type - VC_TOKEN + :param str project_id: Customer project identifier """ - return pulumi.get(self, "type") + pulumi.set(__self__, "project_id", project_id) @property - @pulumi.getter - def uuid(self) -> Optional[str]: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Equinix-assigned service token identifier + Customer project identifier """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "project_id") @pulumi.output_type -class GetConnectionsFilterResult(dict): +class GetNetworksFilterResult(dict): def __init__(__self__, *, operator: str, property: str, values: Sequence[str], group: Optional[str] = None): """ - :param str operator: Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, IN, NOT IN, IS NOT NULL, IS NULL] - :param str property: Possible field names to use on filters. One of [/isRemote /name /uuid /type /geoScope /account/orgId /aSide/accessPoint/account/accountName /aSide/accessPoint/account/accountNumber /aSide/accessPoint/router/uuid /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /aSide/accessPoint/linkProtocol/vlanTagMin /aSide/accessPoint/linkProtocol/vlanTagMax /aSide/accessPoint/location/metroCode /aSide/accessPoint/location/metroName /aSide/accessPoint/name /aSide/accessPoint/port/uuid /aSide/accessPoint/port/name /aSide/accessPoint/type /aSide/accessPoint/virtualDevice/name /aSide/accessPoint/virtualDevice/uuid /aSide/serviceToken/uuid /change/status /operation/equinixStatus /operation/providerStatus /project/projectId /redundancy/group /redundancy/priority /zSide/accessPoint/account/accountName /zSide/accessPoint/authenticationKey /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/linkProtocol/vlanTagMin /zSide/accessPoint/linkProtocol/vlanTagMax /zSide/accessPoint/location/metroCode /zSide/accessPoint/location/metroName /zSide/accessPoint/name /zSide/accessPoint/port/uuid /zSide/accessPoint/network/uuid /zSide/accessPoint/port/name /zSide/accessPoint/profile/uuid /zSide/accessPoint/type /zSide/accessPoint/virtualDevice/name /zSide/accessPoint/virtualDevice/uuid /zSide/serviceToken/uuid /zSide/internetAccess/uuid *] + :param str operator: Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, ILIKE, NOT ILIKE, IN, NOT IN] + :param str property: Possible field names to use on filters. One of [/name /uuid /scope /type /operation/equinixStatus /location/region /project/projectId /account/globalCustId /account/orgId /deletedDate /_*] :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search :param str group: Optional custom id parameter to assign this filter to an inner AND or OR group. Group id must be prefixed with AND_ or OR_. Ensure intended grouped elements have the same given id. Ungrouped filters will be placed in the filter list group by themselves. """ @@ -12246,7 +13915,7 @@ def __init__(__self__, *, @pulumi.getter def operator(self) -> str: """ - Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, IN, NOT IN, IS NOT NULL, IS NULL] + Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, ILIKE, NOT ILIKE, IN, NOT IN] """ return pulumi.get(self, "operator") @@ -12270,13 +13939,13 @@ def group(self) -> Optional[str]: @pulumi.getter def property(self) -> str: """ - Possible field names to use on filters. One of [/isRemote /name /uuid /type /geoScope /account/orgId /aSide/accessPoint/account/accountName /aSide/accessPoint/account/accountNumber /aSide/accessPoint/router/uuid /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /aSide/accessPoint/linkProtocol/vlanTagMin /aSide/accessPoint/linkProtocol/vlanTagMax /aSide/accessPoint/location/metroCode /aSide/accessPoint/location/metroName /aSide/accessPoint/name /aSide/accessPoint/port/uuid /aSide/accessPoint/port/name /aSide/accessPoint/type /aSide/accessPoint/virtualDevice/name /aSide/accessPoint/virtualDevice/uuid /aSide/serviceToken/uuid /change/status /operation/equinixStatus /operation/providerStatus /project/projectId /redundancy/group /redundancy/priority /zSide/accessPoint/account/accountName /zSide/accessPoint/authenticationKey /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/linkProtocol/vlanTagMin /zSide/accessPoint/linkProtocol/vlanTagMax /zSide/accessPoint/location/metroCode /zSide/accessPoint/location/metroName /zSide/accessPoint/name /zSide/accessPoint/port/uuid /zSide/accessPoint/network/uuid /zSide/accessPoint/port/name /zSide/accessPoint/profile/uuid /zSide/accessPoint/type /zSide/accessPoint/virtualDevice/name /zSide/accessPoint/virtualDevice/uuid /zSide/serviceToken/uuid /zSide/internetAccess/uuid *] + Possible field names to use on filters. One of [/name /uuid /scope /type /operation/equinixStatus /location/region /project/projectId /account/globalCustId /account/orgId /deletedDate /_*] """ return pulumi.get(self, "property") @pulumi.output_type -class GetConnectionsPaginationResult(dict): +class GetNetworksPaginationResult(dict): def __init__(__self__, *, limit: Optional[int] = None, offset: Optional[int] = None): @@ -12307,13 +13976,13 @@ def offset(self) -> Optional[int]: @pulumi.output_type -class GetConnectionsSortResult(dict): +class GetNetworksSortResult(dict): def __init__(__self__, *, direction: Optional[str] = None, property: Optional[str] = None): """ :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC - :param str property: The property name to use in sorting. One of [/name /direction /aSide/accessPoint/name /aSide/accessPoint/type /aSide/accessPoint/account/accountName /aSide/accessPoint/location/metroName /aSide/accessPoint/location/metroCode /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/name /zSide/accessPoint/type /zSide/accessPoint/account/accountName /zSide/accessPoint/location/metroName /zSide/accessPoint/location/metroCode /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/authenticationKey /bandwidth /geoScope /uuid /changeLog/createdDateTime /changeLog/updatedDateTime /operation/equinixStatus /operation/providerStatus /redundancy/priority]. Defaults to /changeLog/updatedDateTime + :param str property: The property name to use in sorting. One of [/name /uuid /scope /operation/equinixStatus /location/region /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime """ if direction is not None: pulumi.set(__self__, "direction", direction) @@ -12332,182 +14001,108 @@ def direction(self) -> Optional[str]: @pulumi.getter def property(self) -> Optional[str]: """ - The property name to use in sorting. One of [/name /direction /aSide/accessPoint/name /aSide/accessPoint/type /aSide/accessPoint/account/accountName /aSide/accessPoint/location/metroName /aSide/accessPoint/location/metroCode /aSide/accessPoint/linkProtocol/vlanCTag /aSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/name /zSide/accessPoint/type /zSide/accessPoint/account/accountName /zSide/accessPoint/location/metroName /zSide/accessPoint/location/metroCode /zSide/accessPoint/linkProtocol/vlanCTag /zSide/accessPoint/linkProtocol/vlanSTag /zSide/accessPoint/authenticationKey /bandwidth /geoScope /uuid /changeLog/createdDateTime /changeLog/updatedDateTime /operation/equinixStatus /operation/providerStatus /redundancy/priority]. Defaults to /changeLog/updatedDateTime + The property name to use in sorting. One of [/name /uuid /scope /operation/equinixStatus /location/region /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime """ return pulumi.get(self, "property") @pulumi.output_type -class GetMarketplaceSubscriptionEntitlementResult(dict): - def __init__(__self__, *, - assets: Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetResult'], - quantity_available: int, - quantity_consumed: int, - quantity_entitled: int, - uuid: str): - """ - :param Sequence['GetMarketplaceSubscriptionEntitlementAssetArgs'] assets: Asset information - :param int quantity_available: Available Quantity - :param int quantity_consumed: Consumed Quantity - :param int quantity_entitled: Entitled Quantity - :param str uuid: Subscription Entitlement Id - """ - pulumi.set(__self__, "assets", assets) - pulumi.set(__self__, "quantity_available", quantity_available) - pulumi.set(__self__, "quantity_consumed", quantity_consumed) - pulumi.set(__self__, "quantity_entitled", quantity_entitled) - pulumi.set(__self__, "uuid", uuid) - - @property - @pulumi.getter - def assets(self) -> Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetResult']: - """ - Asset information - """ - return pulumi.get(self, "assets") - - @property - @pulumi.getter(name="quantityAvailable") - def quantity_available(self) -> int: - """ - Available Quantity - """ - return pulumi.get(self, "quantity_available") - - @property - @pulumi.getter(name="quantityConsumed") - def quantity_consumed(self) -> int: - """ - Consumed Quantity - """ - return pulumi.get(self, "quantity_consumed") - - @property - @pulumi.getter(name="quantityEntitled") - def quantity_entitled(self) -> int: - """ - Entitled Quantity - """ - return pulumi.get(self, "quantity_entitled") - - @property - @pulumi.getter - def uuid(self) -> str: - """ - Subscription Entitlement Id - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetMarketplaceSubscriptionEntitlementAssetResult(dict): +class GetPortAccountResult(dict): def __init__(__self__, *, - packages: Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetPackageResult'], - type: str): - """ - :param Sequence['GetMarketplaceSubscriptionEntitlementAssetPackageArgs'] packages: Fabric Cloud Router Package Type - :param str type: Defines the FCR type like; XF_ROUTER - """ - pulumi.set(__self__, "packages", packages) - pulumi.set(__self__, "type", type) - - @property - @pulumi.getter - def packages(self) -> Sequence['outputs.GetMarketplaceSubscriptionEntitlementAssetPackageResult']: + account_name: str, + account_number: int, + global_cust_id: str, + global_org_id: str, + global_organization_name: str, + org_id: int, + organization_name: str, + ucm_id: str): """ - Fabric Cloud Router Package Type + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id """ - return pulumi.get(self, "packages") + pulumi.set(__self__, "account_name", account_name) + pulumi.set(__self__, "account_number", account_number) + pulumi.set(__self__, "global_cust_id", global_cust_id) + pulumi.set(__self__, "global_org_id", global_org_id) + pulumi.set(__self__, "global_organization_name", global_organization_name) + pulumi.set(__self__, "org_id", org_id) + pulumi.set(__self__, "organization_name", organization_name) + pulumi.set(__self__, "ucm_id", ucm_id) @property - @pulumi.getter - def type(self) -> str: - """ - Defines the FCR type like; XF_ROUTER - """ - return pulumi.get(self, "type") - - -@pulumi.output_type -class GetMarketplaceSubscriptionEntitlementAssetPackageResult(dict): - def __init__(__self__, *, - code: str): + @pulumi.getter(name="accountName") + def account_name(self) -> str: """ - :param str code: Cloud Router package code + Legal name of the accountholder. """ - pulumi.set(__self__, "code", code) + return pulumi.get(self, "account_name") @property - @pulumi.getter - def code(self) -> str: + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: """ - Cloud Router package code + Equinix-assigned account number. """ - return pulumi.get(self, "code") - + return pulumi.get(self, "account_number") -@pulumi.output_type -class GetMarketplaceSubscriptionTrialResult(dict): - def __init__(__self__, *, - enabled: bool): + @property + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: """ - :param bool enabled: Marketplace Subscription Trial Enabled + Equinix-assigned ID of the subscriber's parent organization. """ - pulumi.set(__self__, "enabled", enabled) + return pulumi.get(self, "global_cust_id") @property - @pulumi.getter - def enabled(self) -> bool: + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: """ - Marketplace Subscription Trial Enabled + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "enabled") - + return pulumi.get(self, "global_org_id") -@pulumi.output_type -class GetNetworkChangeResult(dict): - def __init__(__self__, *, - href: str, - type: str, - uuid: str): + @property + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: """ - :param str href: Absolute URL that returns the details of the given change. - Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 - :param str type: Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION - :param str uuid: Asset change request identifier. + Equinix-assigned name of the subscriber's parent organization. """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "global_organization_name") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="orgId") + def org_id(self) -> int: """ - Absolute URL that returns the details of the given change. - Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 + Equinix-assigned ID of the subscriber's organization. """ - return pulumi.get(self, "href") + return pulumi.get(self, "org_id") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: """ - Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION + Equinix-assigned name of the subscriber's organization. """ - return pulumi.get(self, "type") + return pulumi.get(self, "organization_name") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: """ - Asset change request identifier. + Enterprise datastore id """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "ucm_id") @pulumi.output_type -class GetNetworkChangeLogResult(dict): +class GetPortChangeLogResult(dict): def __init__(__self__, *, created_by: str, created_by_email: str, @@ -12646,7 +14241,105 @@ def updated_date_time(self) -> str: @pulumi.output_type -class GetNetworkLocationResult(dict): +class GetPortDeviceResult(dict): + def __init__(__self__, *, + name: str, + redundancies: Sequence['outputs.GetPortDeviceRedundancyResult']): + """ + :param str name: Port name + :param Sequence['GetPortDeviceRedundancyArgs'] redundancies: Port device redundancy + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) + + @property + @pulumi.getter + def name(self) -> str: + """ + Port name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def redundancies(self) -> Sequence['outputs.GetPortDeviceRedundancyResult']: + """ + Port device redundancy + """ + return pulumi.get(self, "redundancies") + + +@pulumi.output_type +class GetPortDeviceRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): + """ + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary + """ + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + Access point redundancy + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter + def group(self) -> str: + """ + Port redundancy group + """ + return pulumi.get(self, "group") + + @property + @pulumi.getter + def priority(self) -> str: + """ + Priority type-Primary or Secondary + """ + return pulumi.get(self, "priority") + + +@pulumi.output_type +class GetPortEncapsulationResult(dict): + def __init__(__self__, *, + tag_protocol_id: str, + type: str): + """ + :param str tag_protocol_id: Port encapsulation Tag Protocol Identifier + :param str type: Port encapsulation protocol type + """ + pulumi.set(__self__, "tag_protocol_id", tag_protocol_id) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="tagProtocolId") + def tag_protocol_id(self) -> str: + """ + Port encapsulation Tag Protocol Identifier + """ + return pulumi.get(self, "tag_protocol_id") + + @property + @pulumi.getter + def type(self) -> str: + """ + Port encapsulation protocol type + """ + return pulumi.get(self, "type") + + +@pulumi.output_type +class GetPortLocationResult(dict): def __init__(__self__, *, ibx: str, metro_code: str, @@ -12697,212 +14390,262 @@ def region(self) -> str: @pulumi.output_type -class GetNetworkNotificationResult(dict): +class GetPortOperationResult(dict): def __init__(__self__, *, - emails: Sequence[str], - type: str, - send_interval: Optional[str] = None): + connection_count: int, + op_status_changed_at: str, + operational_status: str): """ - :param Sequence[str] emails: Array of contact emails - :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS - :param str send_interval: Send interval + :param int connection_count: Total number of current connections + :param str op_status_changed_at: Date and time at which port availability changed + :param str operational_status: Port operation status """ - pulumi.set(__self__, "emails", emails) - pulumi.set(__self__, "type", type) - if send_interval is not None: - pulumi.set(__self__, "send_interval", send_interval) + pulumi.set(__self__, "connection_count", connection_count) + pulumi.set(__self__, "op_status_changed_at", op_status_changed_at) + pulumi.set(__self__, "operational_status", operational_status) @property - @pulumi.getter - def emails(self) -> Sequence[str]: + @pulumi.getter(name="connectionCount") + def connection_count(self) -> int: """ - Array of contact emails + Total number of current connections """ - return pulumi.get(self, "emails") + return pulumi.get(self, "connection_count") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="opStatusChangedAt") + def op_status_changed_at(self) -> str: """ - Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + Date and time at which port availability changed """ - return pulumi.get(self, "type") + return pulumi.get(self, "op_status_changed_at") @property - @pulumi.getter(name="sendInterval") - def send_interval(self) -> Optional[str]: + @pulumi.getter(name="operationalStatus") + def operational_status(self) -> str: """ - Send interval + Port operation status """ - return pulumi.get(self, "send_interval") + return pulumi.get(self, "operational_status") @pulumi.output_type -class GetNetworkOperationResult(dict): +class GetPortRedundancyResult(dict): def __init__(__self__, *, - equinix_status: str): + enabled: bool, + group: str, + priority: str): """ - :param str equinix_status: Progress towards provisioning a given asset. + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary """ - pulumi.set(__self__, "equinix_status", equinix_status) + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property - @pulumi.getter(name="equinixStatus") - def equinix_status(self) -> str: + @pulumi.getter + def enabled(self) -> bool: """ - Progress towards provisioning a given asset. + Access point redundancy """ - return pulumi.get(self, "equinix_status") - + return pulumi.get(self, "enabled") -@pulumi.output_type -class GetNetworkProjectResult(dict): - def __init__(__self__, *, - project_id: str): + @property + @pulumi.getter + def group(self) -> str: """ - :param str project_id: Customer project identifier + Port redundancy group """ - pulumi.set(__self__, "project_id", project_id) + return pulumi.get(self, "group") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def priority(self) -> str: """ - Customer project identifier + Priority type-Primary or Secondary """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "priority") @pulumi.output_type -class GetNetworksDataResult(dict): +class GetPortsDatumResult(dict): def __init__(__self__, *, - change_logs: Sequence['outputs.GetNetworksDataChangeLogResult'], - changes: Sequence['outputs.GetNetworksDataChangeResult'], - connections_count: int, + accounts: Sequence['outputs.GetPortsDatumAccountResult'], + available_bandwidth: int, + bandwidth: int, + change_logs: Sequence['outputs.GetPortsDatumChangeLogResult'], + description: str, + devices: Sequence['outputs.GetPortsDatumDeviceResult'], + encapsulations: Sequence['outputs.GetPortsDatumEncapsulationResult'], href: str, - locations: Sequence['outputs.GetNetworksDataLocationResult'], + lag_enabled: bool, + locations: Sequence['outputs.GetPortsDatumLocationResult'], name: str, - notifications: Sequence['outputs.GetNetworksDataNotificationResult'], - operations: Sequence['outputs.GetNetworksDataOperationResult'], - projects: Sequence['outputs.GetNetworksDataProjectResult'], - scope: str, + operations: Sequence['outputs.GetPortsDatumOperationResult'], + redundancies: Sequence['outputs.GetPortsDatumRedundancyResult'], + service_type: str, state: str, type: str, + used_bandwidth: int, uuid: str): """ - :param Sequence['GetNetworksDataChangeLogArgs'] change_logs: A permanent record of asset creation, modification, or deletion - :param Sequence['GetNetworksDataChangeArgs'] changes: Information on asset change operation - :param int connections_count: Number of connections associated with this network - :param str href: Fabric Network URI information - :param Sequence['GetNetworksDataLocationArgs'] locations: Fabric Network location - :param str name: Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores - :param Sequence['GetNetworksDataNotificationArgs'] notifications: Preferences for notifications on Fabric Network configuration or status changes - :param Sequence['GetNetworksDataOperationArgs'] operations: Network operation information that is associated with this Fabric Network - :param Sequence['GetNetworksDataProjectArgs'] projects: Fabric Network project - :param str scope: Fabric Network scope - :param str state: Fabric Network overall state - :param str type: Supported Network types - EVPLAN, EPLAN, IPWAN - :param str uuid: Equinix-assigned network identifier + :param Sequence['GetPortsDatumAccountArgs'] accounts: Customer account information that is associated with this port + :param int available_bandwidth: Port available bandwidth in Mbps + :param int bandwidth: Port bandwidth in Mbps + :param Sequence['GetPortsDatumChangeLogArgs'] change_logs: Captures port lifecycle change information + :param str description: Port description + :param Sequence['GetPortsDatumDeviceArgs'] devices: Port device + :param Sequence['GetPortsDatumEncapsulationArgs'] encapsulations: Port encapsulation protocol + :param str href: Port URI information + :param bool lag_enabled: Port Lag + :param Sequence['GetPortsDatumLocationArgs'] locations: Port location information + :param str name: Port name + :param Sequence['GetPortsDatumOperationArgs'] operations: Port specific operational data + :param Sequence['GetPortsDatumRedundancyArgs'] redundancies: Port redundancy information + :param str service_type: Port service type + :param str state: Port state + :param str type: Port type + :param int used_bandwidth: Port used bandwidth in Mbps + :param str uuid: Equinix-assigned port identifier """ + pulumi.set(__self__, "accounts", accounts) + pulumi.set(__self__, "available_bandwidth", available_bandwidth) + pulumi.set(__self__, "bandwidth", bandwidth) pulumi.set(__self__, "change_logs", change_logs) - pulumi.set(__self__, "changes", changes) - pulumi.set(__self__, "connections_count", connections_count) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "devices", devices) + pulumi.set(__self__, "encapsulations", encapsulations) pulumi.set(__self__, "href", href) + pulumi.set(__self__, "lag_enabled", lag_enabled) pulumi.set(__self__, "locations", locations) pulumi.set(__self__, "name", name) - pulumi.set(__self__, "notifications", notifications) pulumi.set(__self__, "operations", operations) - pulumi.set(__self__, "projects", projects) - pulumi.set(__self__, "scope", scope) + pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "service_type", service_type) pulumi.set(__self__, "state", state) pulumi.set(__self__, "type", type) + pulumi.set(__self__, "used_bandwidth", used_bandwidth) pulumi.set(__self__, "uuid", uuid) + @property + @pulumi.getter + def accounts(self) -> Sequence['outputs.GetPortsDatumAccountResult']: + """ + Customer account information that is associated with this port + """ + return pulumi.get(self, "accounts") + + @property + @pulumi.getter(name="availableBandwidth") + def available_bandwidth(self) -> int: + """ + Port available bandwidth in Mbps + """ + return pulumi.get(self, "available_bandwidth") + + @property + @pulumi.getter + def bandwidth(self) -> int: + """ + Port bandwidth in Mbps + """ + return pulumi.get(self, "bandwidth") + @property @pulumi.getter(name="changeLogs") - def change_logs(self) -> Sequence['outputs.GetNetworksDataChangeLogResult']: + def change_logs(self) -> Sequence['outputs.GetPortsDatumChangeLogResult']: """ - A permanent record of asset creation, modification, or deletion + Captures port lifecycle change information """ return pulumi.get(self, "change_logs") @property @pulumi.getter - def changes(self) -> Sequence['outputs.GetNetworksDataChangeResult']: + def description(self) -> str: """ - Information on asset change operation + Port description """ - return pulumi.get(self, "changes") + return pulumi.get(self, "description") @property - @pulumi.getter(name="connectionsCount") - def connections_count(self) -> int: + @pulumi.getter + def devices(self) -> Sequence['outputs.GetPortsDatumDeviceResult']: """ - Number of connections associated with this network + Port device """ - return pulumi.get(self, "connections_count") + return pulumi.get(self, "devices") + + @property + @pulumi.getter + def encapsulations(self) -> Sequence['outputs.GetPortsDatumEncapsulationResult']: + """ + Port encapsulation protocol + """ + return pulumi.get(self, "encapsulations") @property @pulumi.getter def href(self) -> str: """ - Fabric Network URI information + Port URI information """ return pulumi.get(self, "href") @property - @pulumi.getter - def locations(self) -> Sequence['outputs.GetNetworksDataLocationResult']: + @pulumi.getter(name="lagEnabled") + def lag_enabled(self) -> bool: """ - Fabric Network location + Port Lag """ - return pulumi.get(self, "locations") + return pulumi.get(self, "lag_enabled") @property @pulumi.getter - def name(self) -> str: + def locations(self) -> Sequence['outputs.GetPortsDatumLocationResult']: """ - Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores + Port location information """ - return pulumi.get(self, "name") + return pulumi.get(self, "locations") @property @pulumi.getter - def notifications(self) -> Sequence['outputs.GetNetworksDataNotificationResult']: + def name(self) -> str: """ - Preferences for notifications on Fabric Network configuration or status changes + Port name """ - return pulumi.get(self, "notifications") + return pulumi.get(self, "name") @property @pulumi.getter - def operations(self) -> Sequence['outputs.GetNetworksDataOperationResult']: + def operations(self) -> Sequence['outputs.GetPortsDatumOperationResult']: """ - Network operation information that is associated with this Fabric Network + Port specific operational data """ return pulumi.get(self, "operations") @property @pulumi.getter - def projects(self) -> Sequence['outputs.GetNetworksDataProjectResult']: + def redundancies(self) -> Sequence['outputs.GetPortsDatumRedundancyResult']: """ - Fabric Network project + Port redundancy information """ - return pulumi.get(self, "projects") + return pulumi.get(self, "redundancies") @property - @pulumi.getter - def scope(self) -> str: + @pulumi.getter(name="serviceType") + def service_type(self) -> str: """ - Fabric Network scope + Port service type """ - return pulumi.get(self, "scope") + return pulumi.get(self, "service_type") @property @pulumi.getter def state(self) -> str: """ - Fabric Network overall state + Port state """ return pulumi.get(self, "state") @@ -12910,63 +14653,124 @@ def state(self) -> str: @pulumi.getter def type(self) -> str: """ - Supported Network types - EVPLAN, EPLAN, IPWAN + Port type """ return pulumi.get(self, "type") + @property + @pulumi.getter(name="usedBandwidth") + def used_bandwidth(self) -> int: + """ + Port used bandwidth in Mbps + """ + return pulumi.get(self, "used_bandwidth") + @property @pulumi.getter def uuid(self) -> str: """ - Equinix-assigned network identifier + Equinix-assigned port identifier + """ + return pulumi.get(self, "uuid") + + +@pulumi.output_type +class GetPortsDatumAccountResult(dict): + def __init__(__self__, *, + account_name: str, + account_number: int, + global_cust_id: str, + global_org_id: str, + global_organization_name: str, + org_id: int, + organization_name: str, + ucm_id: str): + """ + :param str account_name: Legal name of the accountholder. + :param int account_number: Equinix-assigned account number. + :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. + :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. + :param int org_id: Equinix-assigned ID of the subscriber's organization. + :param str organization_name: Equinix-assigned name of the subscriber's organization. + :param str ucm_id: Enterprise datastore id + """ + pulumi.set(__self__, "account_name", account_name) + pulumi.set(__self__, "account_number", account_number) + pulumi.set(__self__, "global_cust_id", global_cust_id) + pulumi.set(__self__, "global_org_id", global_org_id) + pulumi.set(__self__, "global_organization_name", global_organization_name) + pulumi.set(__self__, "org_id", org_id) + pulumi.set(__self__, "organization_name", organization_name) + pulumi.set(__self__, "ucm_id", ucm_id) + + @property + @pulumi.getter(name="accountName") + def account_name(self) -> str: + """ + Legal name of the accountholder. + """ + return pulumi.get(self, "account_name") + + @property + @pulumi.getter(name="accountNumber") + def account_number(self) -> int: + """ + Equinix-assigned account number. + """ + return pulumi.get(self, "account_number") + + @property + @pulumi.getter(name="globalCustId") + def global_cust_id(self) -> str: + """ + Equinix-assigned ID of the subscriber's parent organization. + """ + return pulumi.get(self, "global_cust_id") + + @property + @pulumi.getter(name="globalOrgId") + def global_org_id(self) -> str: + """ + Equinix-assigned ID of the subscriber's parent organization. """ - return pulumi.get(self, "uuid") - + return pulumi.get(self, "global_org_id") -@pulumi.output_type -class GetNetworksDataChangeResult(dict): - def __init__(__self__, *, - href: str, - type: str, - uuid: str): + @property + @pulumi.getter(name="globalOrganizationName") + def global_organization_name(self) -> str: """ - :param str href: Absolute URL that returns the details of the given change. - Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 - :param str type: Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION - :param str uuid: Asset change request identifier. + Equinix-assigned name of the subscriber's parent organization. """ - pulumi.set(__self__, "href", href) - pulumi.set(__self__, "type", type) - pulumi.set(__self__, "uuid", uuid) + return pulumi.get(self, "global_organization_name") @property - @pulumi.getter - def href(self) -> str: + @pulumi.getter(name="orgId") + def org_id(self) -> int: """ - Absolute URL that returns the details of the given change. - Example: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 + Equinix-assigned ID of the subscriber's organization. """ - return pulumi.get(self, "href") + return pulumi.get(self, "org_id") @property - @pulumi.getter - def type(self) -> str: + @pulumi.getter(name="organizationName") + def organization_name(self) -> str: """ - Asset instance change request type.: NETWORK_CREATION, NETWORK_UPDATE, NETWORK_DELETION + Equinix-assigned name of the subscriber's organization. """ - return pulumi.get(self, "type") + return pulumi.get(self, "organization_name") @property - @pulumi.getter - def uuid(self) -> str: + @pulumi.getter(name="ucmId") + def ucm_id(self) -> str: """ - Asset change request identifier. + Enterprise datastore id """ - return pulumi.get(self, "uuid") + return pulumi.get(self, "ucm_id") @pulumi.output_type -class GetNetworksDataChangeLogResult(dict): +class GetPortsDatumChangeLogResult(dict): def __init__(__self__, *, created_by: str, created_by_email: str, @@ -13105,7 +14909,105 @@ def updated_date_time(self) -> str: @pulumi.output_type -class GetNetworksDataLocationResult(dict): +class GetPortsDatumDeviceResult(dict): + def __init__(__self__, *, + name: str, + redundancies: Sequence['outputs.GetPortsDatumDeviceRedundancyResult']): + """ + :param str name: Port name + :param Sequence['GetPortsDatumDeviceRedundancyArgs'] redundancies: Port device redundancy + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "redundancies", redundancies) + + @property + @pulumi.getter + def name(self) -> str: + """ + Port name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def redundancies(self) -> Sequence['outputs.GetPortsDatumDeviceRedundancyResult']: + """ + Port device redundancy + """ + return pulumi.get(self, "redundancies") + + +@pulumi.output_type +class GetPortsDatumDeviceRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): + """ + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary + """ + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) + + @property + @pulumi.getter + def enabled(self) -> bool: + """ + Access point redundancy + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter + def group(self) -> str: + """ + Port redundancy group + """ + return pulumi.get(self, "group") + + @property + @pulumi.getter + def priority(self) -> str: + """ + Priority type-Primary or Secondary + """ + return pulumi.get(self, "priority") + + +@pulumi.output_type +class GetPortsDatumEncapsulationResult(dict): + def __init__(__self__, *, + tag_protocol_id: str, + type: str): + """ + :param str tag_protocol_id: Port encapsulation Tag Protocol Identifier + :param str type: Port encapsulation protocol type + """ + pulumi.set(__self__, "tag_protocol_id", tag_protocol_id) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="tagProtocolId") + def tag_protocol_id(self) -> str: + """ + Port encapsulation Tag Protocol Identifier + """ + return pulumi.get(self, "tag_protocol_id") + + @property + @pulumi.getter + def type(self) -> str: + """ + Port encapsulation protocol type + """ + return pulumi.get(self, "type") + + +@pulumi.output_type +class GetPortsDatumLocationResult(dict): def __init__(__self__, *, ibx: str, metro_code: str, @@ -13156,293 +15058,353 @@ def region(self) -> str: @pulumi.output_type -class GetNetworksDataNotificationResult(dict): +class GetPortsDatumOperationResult(dict): def __init__(__self__, *, - emails: Sequence[str], - type: str, - send_interval: Optional[str] = None): + connection_count: int, + op_status_changed_at: str, + operational_status: str): """ - :param Sequence[str] emails: Array of contact emails - :param str type: Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS - :param str send_interval: Send interval + :param int connection_count: Total number of current connections + :param str op_status_changed_at: Date and time at which port availability changed + :param str operational_status: Port operation status """ - pulumi.set(__self__, "emails", emails) - pulumi.set(__self__, "type", type) - if send_interval is not None: - pulumi.set(__self__, "send_interval", send_interval) + pulumi.set(__self__, "connection_count", connection_count) + pulumi.set(__self__, "op_status_changed_at", op_status_changed_at) + pulumi.set(__self__, "operational_status", operational_status) + + @property + @pulumi.getter(name="connectionCount") + def connection_count(self) -> int: + """ + Total number of current connections + """ + return pulumi.get(self, "connection_count") + + @property + @pulumi.getter(name="opStatusChangedAt") + def op_status_changed_at(self) -> str: + """ + Date and time at which port availability changed + """ + return pulumi.get(self, "op_status_changed_at") + + @property + @pulumi.getter(name="operationalStatus") + def operational_status(self) -> str: + """ + Port operation status + """ + return pulumi.get(self, "operational_status") + + +@pulumi.output_type +class GetPortsDatumRedundancyResult(dict): + def __init__(__self__, *, + enabled: bool, + group: str, + priority: str): + """ + :param bool enabled: Access point redundancy + :param str group: Port redundancy group + :param str priority: Priority type-Primary or Secondary + """ + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "group", group) + pulumi.set(__self__, "priority", priority) @property @pulumi.getter - def emails(self) -> Sequence[str]: + def enabled(self) -> bool: """ - Array of contact emails + Access point redundancy """ - return pulumi.get(self, "emails") + return pulumi.get(self, "enabled") @property @pulumi.getter - def type(self) -> str: + def group(self) -> str: """ - Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS + Port redundancy group """ - return pulumi.get(self, "type") + return pulumi.get(self, "group") @property - @pulumi.getter(name="sendInterval") - def send_interval(self) -> Optional[str]: + @pulumi.getter + def priority(self) -> str: """ - Send interval + Priority type-Primary or Secondary """ - return pulumi.get(self, "send_interval") + return pulumi.get(self, "priority") @pulumi.output_type -class GetNetworksDataOperationResult(dict): +class GetPortsFilterResult(dict): def __init__(__self__, *, - equinix_status: str): + name: str): + """ + :param str name: Query Parameter to Get Ports By Name + """ + pulumi.set(__self__, "name", name) + + @property + @pulumi.getter + def name(self) -> str: + """ + Query Parameter to Get Ports By Name + """ + return pulumi.get(self, "name") + + +@pulumi.output_type +class GetRouteFilterChangeResult(dict): + def __init__(__self__, *, + href: str, + type: str, + uuid: str): """ - :param str equinix_status: Progress towards provisioning a given asset. + :param str href: The URI of the previous Route Filter Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + :param str uuid: Unique identifier for the previous change """ - pulumi.set(__self__, "equinix_status", equinix_status) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="equinixStatus") - def equinix_status(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Progress towards provisioning a given asset. + The URI of the previous Route Filter Change """ - return pulumi.get(self, "equinix_status") - + return pulumi.get(self, "href") -@pulumi.output_type -class GetNetworksDataProjectResult(dict): - def __init__(__self__, *, - project_id: str): + @property + @pulumi.getter + def type(self) -> str: """ - :param str project_id: Customer project identifier + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] """ - pulumi.set(__self__, "project_id", project_id) + return pulumi.get(self, "type") @property - @pulumi.getter(name="projectId") - def project_id(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Customer project identifier + Unique identifier for the previous change """ - return pulumi.get(self, "project_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetNetworksFilterResult(dict): +class GetRouteFilterChangeLogResult(dict): def __init__(__self__, *, - operator: str, - property: str, - values: Sequence[str], - group: Optional[str] = None): + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): """ - :param str operator: Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, ILIKE, NOT ILIKE, IN, NOT IN] - :param str property: Possible field names to use on filters. One of [/name /uuid /scope /type /operation/equinixStatus /location/region /project/projectId /account/globalCustId /account/orgId /deletedDate /_*] - :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search - :param str group: Optional custom id parameter to assign this filter to an inner AND or OR group. Group id must be prefixed with AND_ or OR_. Ensure intended grouped elements have the same given id. Ungrouped filters will be placed in the filter list group by themselves. + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - pulumi.set(__self__, "operator", operator) - pulumi.set(__self__, "property", property) - pulumi.set(__self__, "values", values) - if group is not None: - pulumi.set(__self__, "group", group) + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter - def operator(self) -> str: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: """ - Operators to use on your filtered field with the values given. One of [ =, !=, >, >=, <, <=, BETWEEN, NOT BETWEEN, LIKE, NOT LIKE, ILIKE, NOT ILIKE, IN, NOT IN] + Created by User Key """ - return pulumi.get(self, "operator") + return pulumi.get(self, "created_by") @property - @pulumi.getter - def values(self) -> Sequence[str]: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: """ - The values that you want to apply the property+operator combination to in order to filter your data search + Created by User Email Address """ - return pulumi.get(self, "values") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter - def group(self) -> Optional[str]: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: """ - Optional custom id parameter to assign this filter to an inner AND or OR group. Group id must be prefixed with AND_ or OR_. Ensure intended grouped elements have the same given id. Ungrouped filters will be placed in the filter list group by themselves. + Created by User Full Name """ - return pulumi.get(self, "group") + return pulumi.get(self, "created_by_full_name") @property - @pulumi.getter - def property(self) -> str: + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: """ - Possible field names to use on filters. One of [/name /uuid /scope /type /operation/equinixStatus /location/region /project/projectId /account/globalCustId /account/orgId /deletedDate /_*] + Created by Date and Time """ - return pulumi.get(self, "property") - + return pulumi.get(self, "created_date_time") -@pulumi.output_type -class GetNetworksPaginationResult(dict): - def __init__(__self__, *, - limit: Optional[int] = None, - offset: Optional[int] = None): + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: """ - :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 - :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + Deleted by User Key """ - if limit is not None: - pulumi.set(__self__, "limit", limit) - if offset is not None: - pulumi.set(__self__, "offset", offset) + return pulumi.get(self, "deleted_by") @property - @pulumi.getter - def limit(self) -> Optional[int]: + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + Deleted by User Email Address """ - return pulumi.get(self, "limit") + return pulumi.get(self, "deleted_by_email") @property - @pulumi.getter - def offset(self) -> Optional[int]: + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: """ - The page offset for the pagination request. Index of the first element. Default is 0. + Deleted by User Full Name """ - return pulumi.get(self, "offset") - + return pulumi.get(self, "deleted_by_full_name") -@pulumi.output_type -class GetNetworksSortResult(dict): - def __init__(__self__, *, - direction: Optional[str] = None, - property: Optional[str] = None): + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: """ - :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC - :param str property: The property name to use in sorting. One of [/name /uuid /scope /operation/equinixStatus /location/region /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime + Deleted by Date and Time """ - if direction is not None: - pulumi.set(__self__, "direction", direction) - if property is not None: - pulumi.set(__self__, "property", property) + return pulumi.get(self, "deleted_date_time") @property - @pulumi.getter - def direction(self) -> Optional[str]: + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: """ - The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + Updated by User Key """ - return pulumi.get(self, "direction") + return pulumi.get(self, "updated_by") @property - @pulumi.getter - def property(self) -> Optional[str]: + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - The property name to use in sorting. One of [/name /uuid /scope /operation/equinixStatus /location/region /changeLog/createdDateTime /changeLog/updatedDateTime]. Defaults to /changeLog/updatedDateTime + Updated by User Email Address """ - return pulumi.get(self, "property") - + return pulumi.get(self, "updated_by_email") -@pulumi.output_type -class GetPortAccountResult(dict): - def __init__(__self__, *, - account_name: str, - account_number: int, - global_cust_id: str, - global_org_id: str, - global_organization_name: str, - org_id: int, - organization_name: str, - ucm_id: str): + @property + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id + Updated by User Full Name """ - pulumi.set(__self__, "account_name", account_name) - pulumi.set(__self__, "account_number", account_number) - pulumi.set(__self__, "global_cust_id", global_cust_id) - pulumi.set(__self__, "global_org_id", global_org_id) - pulumi.set(__self__, "global_organization_name", global_organization_name) - pulumi.set(__self__, "org_id", org_id) - pulumi.set(__self__, "organization_name", organization_name) - pulumi.set(__self__, "ucm_id", ucm_id) + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Legal name of the accountholder. + Updated by Date and Time """ - return pulumi.get(self, "account_name") + return pulumi.get(self, "updated_date_time") - @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: + +@pulumi.output_type +class GetRouteFilterProjectResult(dict): + def __init__(__self__, *, + href: str, + project_id: str): """ - Equinix-assigned account number. + :param str href: URI of the Fabric Project + :param str project_id: Project id associated with Fabric Project """ - return pulumi.get(self, "account_number") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + URI of the Fabric Project """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "href") @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Project id associated with Fabric Project """ - return pulumi.get(self, "global_org_id") + return pulumi.get(self, "project_id") - @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + +@pulumi.output_type +class GetRouteFilterRuleChangeResult(dict): + def __init__(__self__, *, + href: str, + type: str, + uuid: str): """ - Equinix-assigned name of the subscriber's parent organization. + :param str href: The URI of the previous Route Filter Rule Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + :param str uuid: Unique identifier for the previous change """ - return pulumi.get(self, "global_organization_name") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter + def href(self) -> str: """ - Equinix-assigned ID of the subscriber's organization. + The URI of the previous Route Filter Rule Change """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "href") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter + def type(self) -> str: """ - Equinix-assigned name of the subscriber's organization. + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "type") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Enterprise datastore id + Unique identifier for the previous change """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetPortChangeLogResult(dict): +class GetRouteFilterRuleChangeLogResult(dict): def __init__(__self__, *, created_by: str, created_by_email: str, @@ -13581,536 +15543,547 @@ def updated_date_time(self) -> str: @pulumi.output_type -class GetPortDeviceResult(dict): +class GetRouteFilterRulesDataResult(dict): def __init__(__self__, *, + action: str, + change_logs: Sequence['outputs.GetRouteFilterRulesDataChangeLogResult'], + changes: Sequence['outputs.GetRouteFilterRulesDataChangeResult'], + description: str, + href: str, name: str, - redundancies: Sequence['outputs.GetPortDeviceRedundancyResult']): - """ - :param str name: Port name - :param Sequence['GetPortDeviceRedundancyArgs'] redundancies: Port device redundancy + prefix: str, + prefix_match: str, + state: str, + type: str, + uuid: str): """ + :param str action: Action that will be taken on IP Addresses matching the rule + :param Sequence['GetRouteFilterRulesDataChangeArgs'] changes: An object with the details of the previous change applied on the Route Filter + :param str description: Optional description to add to the Route Filter you will be creating + :param str href: Route filter rules URI + :param str name: Name of the Route Filter + :param str prefix: IP Address Prefix to Filter on + :param str prefix_match: Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + :param str state: State of the Route Filter Rule in its lifecycle + :param str type: Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] + :param str uuid: Equinix Assigned ID for Route Filter Rule to retrieve data for + """ + pulumi.set(__self__, "action", action) + pulumi.set(__self__, "change_logs", change_logs) + pulumi.set(__self__, "changes", changes) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "href", href) pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "prefix", prefix) + pulumi.set(__self__, "prefix_match", prefix_match) + pulumi.set(__self__, "state", state) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def action(self) -> str: + """ + Action that will be taken on IP Addresses matching the rule + """ + return pulumi.get(self, "action") + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Sequence['outputs.GetRouteFilterRulesDataChangeLogResult']: + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> Sequence['outputs.GetRouteFilterRulesDataChangeResult']: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter + def description(self) -> str: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def href(self) -> str: + """ + Route filter rules URI + """ + return pulumi.get(self, "href") @property @pulumi.getter def name(self) -> str: """ - Port name + Name of the Route Filter """ return pulumi.get(self, "name") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetPortDeviceRedundancyResult']: + def prefix(self) -> str: """ - Port device redundancy + IP Address Prefix to Filter on """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "prefix") - -@pulumi.output_type -class GetPortDeviceRedundancyResult(dict): - def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + @property + @pulumi.getter(name="prefixMatch") + def prefix_match(self) -> str: """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + return pulumi.get(self, "prefix_match") @property @pulumi.getter - def enabled(self) -> bool: + def state(self) -> str: """ - Access point redundancy + State of the Route Filter Rule in its lifecycle """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "state") @property @pulumi.getter - def group(self) -> str: + def type(self) -> str: """ - Port redundancy group + Route Filter Type. One of [ BGP_IPv4_PREFIX_FILTER_RULE, BGP_IPv6_PREFIX_FILTER_RULE ] """ - return pulumi.get(self, "group") + return pulumi.get(self, "type") @property @pulumi.getter - def priority(self) -> str: + def uuid(self) -> str: """ - Priority type-Primary or Secondary + Equinix Assigned ID for Route Filter Rule to retrieve data for """ - return pulumi.get(self, "priority") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetPortEncapsulationResult(dict): +class GetRouteFilterRulesDataChangeResult(dict): def __init__(__self__, *, - tag_protocol_id: str, - type: str): + href: str, + type: str, + uuid: str): """ - :param str tag_protocol_id: Port encapsulation Tag Protocol Identifier - :param str type: Port encapsulation protocol type + :param str href: The URI of the previous Route Filter Rule Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] + :param str uuid: Unique identifier for the previous change """ - pulumi.set(__self__, "tag_protocol_id", tag_protocol_id) + pulumi.set(__self__, "href", href) pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="tagProtocolId") - def tag_protocol_id(self) -> str: + @pulumi.getter + def href(self) -> str: """ - Port encapsulation Tag Protocol Identifier + The URI of the previous Route Filter Rule Change """ - return pulumi.get(self, "tag_protocol_id") + return pulumi.get(self, "href") @property @pulumi.getter def type(self) -> str: """ - Port encapsulation protocol type + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_RULE_UPDATE","BGP_IPv4_PREFIX_FILTER_RULE_CREATION","BGP_IPv4_PREFIX_FILTER_RULE_DELETION","BGP_IPv6_PREFIX_FILTER_RULE_UPDATE","BGP_IPv6_PREFIX_FILTER_RULE_CREATION","BGP_IPv6_PREFIX_FILTER_RULE_DELETION" ] """ return pulumi.get(self, "type") + @property + @pulumi.getter + def uuid(self) -> str: + """ + Unique identifier for the previous change + """ + return pulumi.get(self, "uuid") + @pulumi.output_type -class GetPortLocationResult(dict): +class GetRouteFilterRulesDataChangeLogResult(dict): def __init__(__self__, *, - ibx: str, - metro_code: str, - metro_name: str, - region: str): + created_by: str, + created_by_email: str, + created_by_full_name: str, + created_date_time: str, + deleted_by: str, + deleted_by_email: str, + deleted_by_full_name: str, + deleted_date_time: str, + updated_by: str, + updated_by_email: str, + updated_by_full_name: str, + updated_date_time: str): """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + :param str created_by: Created by User Key + :param str created_by_email: Created by User Email Address + :param str created_by_full_name: Created by User Full Name + :param str created_date_time: Created by Date and Time + :param str deleted_by: Deleted by User Key + :param str deleted_by_email: Deleted by User Email Address + :param str deleted_by_full_name: Deleted by User Full Name + :param str deleted_date_time: Deleted by Date and Time + :param str updated_by: Updated by User Key + :param str updated_by_email: Updated by User Email Address + :param str updated_by_full_name: Updated by User Full Name + :param str updated_date_time: Updated by Date and Time """ - pulumi.set(__self__, "ibx", ibx) - pulumi.set(__self__, "metro_code", metro_code) - pulumi.set(__self__, "metro_name", metro_name) - pulumi.set(__self__, "region", region) + pulumi.set(__self__, "created_by", created_by) + pulumi.set(__self__, "created_by_email", created_by_email) + pulumi.set(__self__, "created_by_full_name", created_by_full_name) + pulumi.set(__self__, "created_date_time", created_date_time) + pulumi.set(__self__, "deleted_by", deleted_by) + pulumi.set(__self__, "deleted_by_email", deleted_by_email) + pulumi.set(__self__, "deleted_by_full_name", deleted_by_full_name) + pulumi.set(__self__, "deleted_date_time", deleted_date_time) + pulumi.set(__self__, "updated_by", updated_by) + pulumi.set(__self__, "updated_by_email", updated_by_email) + pulumi.set(__self__, "updated_by_full_name", updated_by_full_name) + pulumi.set(__self__, "updated_date_time", updated_date_time) @property - @pulumi.getter - def ibx(self) -> str: + @pulumi.getter(name="createdBy") + def created_by(self) -> str: """ - IBX Code + Created by User Key """ - return pulumi.get(self, "ibx") + return pulumi.get(self, "created_by") @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> str: + @pulumi.getter(name="createdByEmail") + def created_by_email(self) -> str: """ - Access point metro code + Created by User Email Address """ - return pulumi.get(self, "metro_code") + return pulumi.get(self, "created_by_email") @property - @pulumi.getter(name="metroName") - def metro_name(self) -> str: + @pulumi.getter(name="createdByFullName") + def created_by_full_name(self) -> str: """ - Access point metro name + Created by User Full Name """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "created_by_full_name") @property - @pulumi.getter - def region(self) -> str: + @pulumi.getter(name="createdDateTime") + def created_date_time(self) -> str: """ - Access point region + Created by Date and Time """ - return pulumi.get(self, "region") + return pulumi.get(self, "created_date_time") + @property + @pulumi.getter(name="deletedBy") + def deleted_by(self) -> str: + """ + Deleted by User Key + """ + return pulumi.get(self, "deleted_by") -@pulumi.output_type -class GetPortOperationResult(dict): - def __init__(__self__, *, - connection_count: int, - op_status_changed_at: str, - operational_status: str): + @property + @pulumi.getter(name="deletedByEmail") + def deleted_by_email(self) -> str: """ - :param int connection_count: Total number of current connections - :param str op_status_changed_at: Date and time at which port availability changed - :param str operational_status: Port operation status + Deleted by User Email Address + """ + return pulumi.get(self, "deleted_by_email") + + @property + @pulumi.getter(name="deletedByFullName") + def deleted_by_full_name(self) -> str: + """ + Deleted by User Full Name + """ + return pulumi.get(self, "deleted_by_full_name") + + @property + @pulumi.getter(name="deletedDateTime") + def deleted_date_time(self) -> str: + """ + Deleted by Date and Time + """ + return pulumi.get(self, "deleted_date_time") + + @property + @pulumi.getter(name="updatedBy") + def updated_by(self) -> str: + """ + Updated by User Key """ - pulumi.set(__self__, "connection_count", connection_count) - pulumi.set(__self__, "op_status_changed_at", op_status_changed_at) - pulumi.set(__self__, "operational_status", operational_status) + return pulumi.get(self, "updated_by") @property - @pulumi.getter(name="connectionCount") - def connection_count(self) -> int: + @pulumi.getter(name="updatedByEmail") + def updated_by_email(self) -> str: """ - Total number of current connections + Updated by User Email Address """ - return pulumi.get(self, "connection_count") + return pulumi.get(self, "updated_by_email") @property - @pulumi.getter(name="opStatusChangedAt") - def op_status_changed_at(self) -> str: + @pulumi.getter(name="updatedByFullName") + def updated_by_full_name(self) -> str: """ - Date and time at which port availability changed + Updated by User Full Name """ - return pulumi.get(self, "op_status_changed_at") + return pulumi.get(self, "updated_by_full_name") @property - @pulumi.getter(name="operationalStatus") - def operational_status(self) -> str: + @pulumi.getter(name="updatedDateTime") + def updated_date_time(self) -> str: """ - Port operation status + Updated by Date and Time """ - return pulumi.get(self, "operational_status") + return pulumi.get(self, "updated_date_time") @pulumi.output_type -class GetPortRedundancyResult(dict): +class GetRouteFilterRulesPaginationResult(dict): def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + limit: int, + next: str, + offset: int, + previous: str, + total: int): """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param str next: URL relative to the last item in the response. + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + :param str previous: URL relative to the first item in the response. + :param int total: Total number of elements returned. """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + pulumi.set(__self__, "limit", limit) + pulumi.set(__self__, "next", next) + pulumi.set(__self__, "offset", offset) + pulumi.set(__self__, "previous", previous) + pulumi.set(__self__, "total", total) @property @pulumi.getter - def enabled(self) -> bool: + def limit(self) -> int: """ - Access point redundancy + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "limit") @property @pulumi.getter - def group(self) -> str: + def next(self) -> str: """ - Port redundancy group + URL relative to the last item in the response. """ - return pulumi.get(self, "group") + return pulumi.get(self, "next") @property @pulumi.getter - def priority(self) -> str: + def offset(self) -> int: """ - Priority type-Primary or Secondary + The page offset for the pagination request. Index of the first element. Default is 0. """ - return pulumi.get(self, "priority") + return pulumi.get(self, "offset") + + @property + @pulumi.getter + def previous(self) -> str: + """ + URL relative to the first item in the response. + """ + return pulumi.get(self, "previous") + + @property + @pulumi.getter + def total(self) -> int: + """ + Total number of elements returned. + """ + return pulumi.get(self, "total") @pulumi.output_type -class GetPortsDatumResult(dict): +class GetRouteFiltersDataResult(dict): def __init__(__self__, *, - accounts: Sequence['outputs.GetPortsDatumAccountResult'], - available_bandwidth: int, - bandwidth: int, - change_logs: Sequence['outputs.GetPortsDatumChangeLogResult'], + change_logs: Sequence['outputs.GetRouteFiltersDataChangeLogResult'], + changes: Sequence['outputs.GetRouteFiltersDataChangeResult'], + connections_count: int, description: str, - devices: Sequence['outputs.GetPortsDatumDeviceResult'], - encapsulations: Sequence['outputs.GetPortsDatumEncapsulationResult'], href: str, - lag_enabled: bool, - locations: Sequence['outputs.GetPortsDatumLocationResult'], name: str, - operations: Sequence['outputs.GetPortsDatumOperationResult'], - redundancies: Sequence['outputs.GetPortsDatumRedundancyResult'], - service_type: str, + not_matched_rule_action: str, + projects: Sequence['outputs.GetRouteFiltersDataProjectResult'], + rules_count: int, state: str, type: str, - used_bandwidth: int, uuid: str): """ - :param Sequence['GetPortsDatumAccountArgs'] accounts: Customer account information that is associated with this port - :param int available_bandwidth: Port available bandwidth in Mbps - :param int bandwidth: Port bandwidth in Mbps - :param Sequence['GetPortsDatumChangeLogArgs'] change_logs: Captures port lifecycle change information - :param str description: Port description - :param Sequence['GetPortsDatumDeviceArgs'] devices: Port device - :param Sequence['GetPortsDatumEncapsulationArgs'] encapsulations: Port encapsulation protocol - :param str href: Port URI information - :param bool lag_enabled: Port Lag - :param Sequence['GetPortsDatumLocationArgs'] locations: Port location information - :param str name: Port name - :param Sequence['GetPortsDatumOperationArgs'] operations: Port specific operational data - :param Sequence['GetPortsDatumRedundancyArgs'] redundancies: Port redundancy information - :param str service_type: Port service type - :param str state: Port state - :param str type: Port type - :param int used_bandwidth: Port used bandwidth in Mbps - :param str uuid: Equinix-assigned port identifier + :param Sequence['GetRouteFiltersDataChangeArgs'] changes: An object with the details of the previous change applied on the Route Filter + :param int connections_count: The number of Fabric Connections that this Route Filter is attached to + :param str description: Optional description to add to the Route Filter you will be creating + :param str href: Route filter URI + :param str name: Name of the Route Filter + :param str not_matched_rule_action: The action that will be taken on ip ranges that don't match the rules present within the Route Filter + :param Sequence['GetRouteFiltersDataProjectArgs'] projects: The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + :param int rules_count: The number of Route Filter Rules attached to this Route Filter + :param str state: State of the Route Filter in its lifecycle + :param str type: Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] + :param str uuid: Equinix Assigned ID for Route Filter """ - pulumi.set(__self__, "accounts", accounts) - pulumi.set(__self__, "available_bandwidth", available_bandwidth) - pulumi.set(__self__, "bandwidth", bandwidth) pulumi.set(__self__, "change_logs", change_logs) + pulumi.set(__self__, "changes", changes) + pulumi.set(__self__, "connections_count", connections_count) pulumi.set(__self__, "description", description) - pulumi.set(__self__, "devices", devices) - pulumi.set(__self__, "encapsulations", encapsulations) pulumi.set(__self__, "href", href) - pulumi.set(__self__, "lag_enabled", lag_enabled) - pulumi.set(__self__, "locations", locations) pulumi.set(__self__, "name", name) - pulumi.set(__self__, "operations", operations) - pulumi.set(__self__, "redundancies", redundancies) - pulumi.set(__self__, "service_type", service_type) + pulumi.set(__self__, "not_matched_rule_action", not_matched_rule_action) + pulumi.set(__self__, "projects", projects) + pulumi.set(__self__, "rules_count", rules_count) pulumi.set(__self__, "state", state) pulumi.set(__self__, "type", type) - pulumi.set(__self__, "used_bandwidth", used_bandwidth) pulumi.set(__self__, "uuid", uuid) - @property - @pulumi.getter - def accounts(self) -> Sequence['outputs.GetPortsDatumAccountResult']: - """ - Customer account information that is associated with this port - """ - return pulumi.get(self, "accounts") - - @property - @pulumi.getter(name="availableBandwidth") - def available_bandwidth(self) -> int: - """ - Port available bandwidth in Mbps - """ - return pulumi.get(self, "available_bandwidth") - - @property - @pulumi.getter - def bandwidth(self) -> int: - """ - Port bandwidth in Mbps - """ - return pulumi.get(self, "bandwidth") - @property @pulumi.getter(name="changeLogs") - def change_logs(self) -> Sequence['outputs.GetPortsDatumChangeLogResult']: - """ - Captures port lifecycle change information - """ + def change_logs(self) -> Sequence['outputs.GetRouteFiltersDataChangeLogResult']: return pulumi.get(self, "change_logs") @property @pulumi.getter - def description(self) -> str: + def changes(self) -> Sequence['outputs.GetRouteFiltersDataChangeResult']: """ - Port description + An object with the details of the previous change applied on the Route Filter """ - return pulumi.get(self, "description") + return pulumi.get(self, "changes") @property - @pulumi.getter - def devices(self) -> Sequence['outputs.GetPortsDatumDeviceResult']: + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> int: """ - Port device + The number of Fabric Connections that this Route Filter is attached to """ - return pulumi.get(self, "devices") + return pulumi.get(self, "connections_count") @property @pulumi.getter - def encapsulations(self) -> Sequence['outputs.GetPortsDatumEncapsulationResult']: + def description(self) -> str: """ - Port encapsulation protocol + Optional description to add to the Route Filter you will be creating """ - return pulumi.get(self, "encapsulations") + return pulumi.get(self, "description") @property @pulumi.getter def href(self) -> str: """ - Port URI information + Route filter URI """ return pulumi.get(self, "href") - @property - @pulumi.getter(name="lagEnabled") - def lag_enabled(self) -> bool: - """ - Port Lag - """ - return pulumi.get(self, "lag_enabled") - - @property - @pulumi.getter - def locations(self) -> Sequence['outputs.GetPortsDatumLocationResult']: - """ - Port location information - """ - return pulumi.get(self, "locations") - @property @pulumi.getter def name(self) -> str: """ - Port name + Name of the Route Filter """ return pulumi.get(self, "name") @property - @pulumi.getter - def operations(self) -> Sequence['outputs.GetPortsDatumOperationResult']: + @pulumi.getter(name="notMatchedRuleAction") + def not_matched_rule_action(self) -> str: """ - Port specific operational data + The action that will be taken on ip ranges that don't match the rules present within the Route Filter """ - return pulumi.get(self, "operations") + return pulumi.get(self, "not_matched_rule_action") @property @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetPortsDatumRedundancyResult']: + def projects(self) -> Sequence['outputs.GetRouteFiltersDataProjectResult']: """ - Port redundancy information + The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "projects") @property - @pulumi.getter(name="serviceType") - def service_type(self) -> str: + @pulumi.getter(name="rulesCount") + def rules_count(self) -> int: """ - Port service type + The number of Route Filter Rules attached to this Route Filter """ - return pulumi.get(self, "service_type") + return pulumi.get(self, "rules_count") @property @pulumi.getter def state(self) -> str: """ - Port state + State of the Route Filter in its lifecycle """ return pulumi.get(self, "state") @property @pulumi.getter - def type(self) -> str: - """ - Port type - """ - return pulumi.get(self, "type") - - @property - @pulumi.getter(name="usedBandwidth") - def used_bandwidth(self) -> int: - """ - Port used bandwidth in Mbps - """ - return pulumi.get(self, "used_bandwidth") - - @property - @pulumi.getter - def uuid(self) -> str: - """ - Equinix-assigned port identifier - """ - return pulumi.get(self, "uuid") - - -@pulumi.output_type -class GetPortsDatumAccountResult(dict): - def __init__(__self__, *, - account_name: str, - account_number: int, - global_cust_id: str, - global_org_id: str, - global_organization_name: str, - org_id: int, - organization_name: str, - ucm_id: str): - """ - :param str account_name: Legal name of the accountholder. - :param int account_number: Equinix-assigned account number. - :param str global_cust_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_org_id: Equinix-assigned ID of the subscriber's parent organization. - :param str global_organization_name: Equinix-assigned name of the subscriber's parent organization. - :param int org_id: Equinix-assigned ID of the subscriber's organization. - :param str organization_name: Equinix-assigned name of the subscriber's organization. - :param str ucm_id: Enterprise datastore id - """ - pulumi.set(__self__, "account_name", account_name) - pulumi.set(__self__, "account_number", account_number) - pulumi.set(__self__, "global_cust_id", global_cust_id) - pulumi.set(__self__, "global_org_id", global_org_id) - pulumi.set(__self__, "global_organization_name", global_organization_name) - pulumi.set(__self__, "org_id", org_id) - pulumi.set(__self__, "organization_name", organization_name) - pulumi.set(__self__, "ucm_id", ucm_id) - - @property - @pulumi.getter(name="accountName") - def account_name(self) -> str: - """ - Legal name of the accountholder. - """ - return pulumi.get(self, "account_name") - - @property - @pulumi.getter(name="accountNumber") - def account_number(self) -> int: - """ - Equinix-assigned account number. - """ - return pulumi.get(self, "account_number") - - @property - @pulumi.getter(name="globalCustId") - def global_cust_id(self) -> str: + def type(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Route Filter Type. One of [ "BGP_IPv4_PREFIX_FILTER", "BGP_IPv6_PREFIX_FILTER" ] """ - return pulumi.get(self, "global_cust_id") + return pulumi.get(self, "type") @property - @pulumi.getter(name="globalOrgId") - def global_org_id(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Equinix-assigned ID of the subscriber's parent organization. + Equinix Assigned ID for Route Filter """ - return pulumi.get(self, "global_org_id") + return pulumi.get(self, "uuid") - @property - @pulumi.getter(name="globalOrganizationName") - def global_organization_name(self) -> str: + +@pulumi.output_type +class GetRouteFiltersDataChangeResult(dict): + def __init__(__self__, *, + href: str, + type: str, + uuid: str): """ - Equinix-assigned name of the subscriber's parent organization. + :param str href: The URI of the previous Route Filter Change + :param str type: Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] + :param str uuid: Unique identifier for the previous change """ - return pulumi.get(self, "global_organization_name") + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "uuid", uuid) @property - @pulumi.getter(name="orgId") - def org_id(self) -> int: + @pulumi.getter + def href(self) -> str: """ - Equinix-assigned ID of the subscriber's organization. + The URI of the previous Route Filter Change """ - return pulumi.get(self, "org_id") + return pulumi.get(self, "href") @property - @pulumi.getter(name="organizationName") - def organization_name(self) -> str: + @pulumi.getter + def type(self) -> str: """ - Equinix-assigned name of the subscriber's organization. + Type of change. One of [ "BGP_IPv4_PREFIX_FILTER_UPDATE","BGP_IPv4_PREFIX_FILTER_CREATION","BGP_IPv4_PREFIX_FILTER_DELETION","BGP_IPv6_PREFIX_FILTER_UPDATE","BGP_IPv6_PREFIX_FILTER_CREATION","BGP_IPv6_PREFIX_FILTER_DELETION" ] """ - return pulumi.get(self, "organization_name") + return pulumi.get(self, "type") @property - @pulumi.getter(name="ucmId") - def ucm_id(self) -> str: + @pulumi.getter + def uuid(self) -> str: """ - Enterprise datastore id + Unique identifier for the previous change """ - return pulumi.get(self, "ucm_id") + return pulumi.get(self, "uuid") @pulumi.output_type -class GetPortsDatumChangeLogResult(dict): +class GetRouteFiltersDataChangeLogResult(dict): def __init__(__self__, *, created_by: str, created_by_email: str, @@ -14249,250 +16222,165 @@ def updated_date_time(self) -> str: @pulumi.output_type -class GetPortsDatumDeviceResult(dict): +class GetRouteFiltersDataProjectResult(dict): def __init__(__self__, *, - name: str, - redundancies: Sequence['outputs.GetPortsDatumDeviceRedundancyResult']): + href: str, + project_id: str): """ - :param str name: Port name - :param Sequence['GetPortsDatumDeviceRedundancyArgs'] redundancies: Port device redundancy + :param str href: URI of the Fabric Project + :param str project_id: Project id associated with Fabric Project """ - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "redundancies", redundancies) + pulumi.set(__self__, "href", href) + pulumi.set(__self__, "project_id", project_id) @property @pulumi.getter - def name(self) -> str: + def href(self) -> str: """ - Port name + URI of the Fabric Project """ - return pulumi.get(self, "name") + return pulumi.get(self, "href") @property - @pulumi.getter - def redundancies(self) -> Sequence['outputs.GetPortsDatumDeviceRedundancyResult']: + @pulumi.getter(name="projectId") + def project_id(self) -> str: """ - Port device redundancy + Project id associated with Fabric Project """ - return pulumi.get(self, "redundancies") + return pulumi.get(self, "project_id") @pulumi.output_type -class GetPortsDatumDeviceRedundancyResult(dict): +class GetRouteFiltersFilterResult(dict): def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): + operator: str, + property: str, + values: Sequence[str]): """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary + :param str operator: Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] + :param str property: The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" + :param Sequence[str] values: The values that you want to apply the property+operator combination to in order to filter your data search """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) + pulumi.set(__self__, "operator", operator) + pulumi.set(__self__, "property", property) + pulumi.set(__self__, "values", values) @property @pulumi.getter - def enabled(self) -> bool: + def operator(self) -> str: """ - Access point redundancy + Possible operators to use on the filter property. Can be one of the following: [ "=", "!=", "[NOT] LIKE", "[NOT] IN", "ILIKE" ] """ - return pulumi.get(self, "enabled") + return pulumi.get(self, "operator") @property @pulumi.getter - def group(self) -> str: + def values(self) -> Sequence[str]: """ - Port redundancy group + The values that you want to apply the property+operator combination to in order to filter your data search """ - return pulumi.get(self, "group") + return pulumi.get(self, "values") @property @pulumi.getter - def priority(self) -> str: + def property(self) -> str: """ - Priority type-Primary or Secondary + The API response property which you want to filter your request on. Can be one of the following: "/type", "/name", "/project/projectId", "/uuid", "/state" """ - return pulumi.get(self, "priority") + return pulumi.get(self, "property") @pulumi.output_type -class GetPortsDatumEncapsulationResult(dict): +class GetRouteFiltersPaginationResult(dict): def __init__(__self__, *, - tag_protocol_id: str, - type: str): - """ - :param str tag_protocol_id: Port encapsulation Tag Protocol Identifier - :param str type: Port encapsulation protocol type - """ - pulumi.set(__self__, "tag_protocol_id", tag_protocol_id) - pulumi.set(__self__, "type", type) - - @property - @pulumi.getter(name="tagProtocolId") - def tag_protocol_id(self) -> str: + limit: int, + next: str, + offset: int, + previous: str, + total: int): """ - Port encapsulation Tag Protocol Identifier + :param int limit: Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 + :param str next: URL relative to the last item in the response. + :param int offset: The page offset for the pagination request. Index of the first element. Default is 0. + :param str previous: URL relative to the first item in the response. + :param int total: Total number of elements returned. """ - return pulumi.get(self, "tag_protocol_id") + pulumi.set(__self__, "limit", limit) + pulumi.set(__self__, "next", next) + pulumi.set(__self__, "offset", offset) + pulumi.set(__self__, "previous", previous) + pulumi.set(__self__, "total", total) @property @pulumi.getter - def type(self) -> str: - """ - Port encapsulation protocol type - """ - return pulumi.get(self, "type") - - -@pulumi.output_type -class GetPortsDatumLocationResult(dict): - def __init__(__self__, *, - ibx: str, - metro_code: str, - metro_name: str, - region: str): + def limit(self) -> int: """ - :param str ibx: IBX Code - :param str metro_code: Access point metro code - :param str metro_name: Access point metro name - :param str region: Access point region + Number of elements to be requested per page. Number must be between 1 and 100. Default is 20 """ - pulumi.set(__self__, "ibx", ibx) - pulumi.set(__self__, "metro_code", metro_code) - pulumi.set(__self__, "metro_name", metro_name) - pulumi.set(__self__, "region", region) + return pulumi.get(self, "limit") @property @pulumi.getter - def ibx(self) -> str: - """ - IBX Code - """ - return pulumi.get(self, "ibx") - - @property - @pulumi.getter(name="metroCode") - def metro_code(self) -> str: - """ - Access point metro code - """ - return pulumi.get(self, "metro_code") - - @property - @pulumi.getter(name="metroName") - def metro_name(self) -> str: + def next(self) -> str: """ - Access point metro name + URL relative to the last item in the response. """ - return pulumi.get(self, "metro_name") + return pulumi.get(self, "next") @property @pulumi.getter - def region(self) -> str: - """ - Access point region - """ - return pulumi.get(self, "region") - - -@pulumi.output_type -class GetPortsDatumOperationResult(dict): - def __init__(__self__, *, - connection_count: int, - op_status_changed_at: str, - operational_status: str): + def offset(self) -> int: """ - :param int connection_count: Total number of current connections - :param str op_status_changed_at: Date and time at which port availability changed - :param str operational_status: Port operation status - """ - pulumi.set(__self__, "connection_count", connection_count) - pulumi.set(__self__, "op_status_changed_at", op_status_changed_at) - pulumi.set(__self__, "operational_status", operational_status) - - @property - @pulumi.getter(name="connectionCount") - def connection_count(self) -> int: - """ - Total number of current connections + The page offset for the pagination request. Index of the first element. Default is 0. """ - return pulumi.get(self, "connection_count") + return pulumi.get(self, "offset") @property - @pulumi.getter(name="opStatusChangedAt") - def op_status_changed_at(self) -> str: + @pulumi.getter + def previous(self) -> str: """ - Date and time at which port availability changed + URL relative to the first item in the response. """ - return pulumi.get(self, "op_status_changed_at") + return pulumi.get(self, "previous") @property - @pulumi.getter(name="operationalStatus") - def operational_status(self) -> str: + @pulumi.getter + def total(self) -> int: """ - Port operation status + Total number of elements returned. """ - return pulumi.get(self, "operational_status") + return pulumi.get(self, "total") @pulumi.output_type -class GetPortsDatumRedundancyResult(dict): +class GetRouteFiltersSortResult(dict): def __init__(__self__, *, - enabled: bool, - group: str, - priority: str): - """ - :param bool enabled: Access point redundancy - :param str group: Port redundancy group - :param str priority: Priority type-Primary or Secondary - """ - pulumi.set(__self__, "enabled", enabled) - pulumi.set(__self__, "group", group) - pulumi.set(__self__, "priority", priority) - - @property - @pulumi.getter - def enabled(self) -> bool: - """ - Access point redundancy - """ - return pulumi.get(self, "enabled") - - @property - @pulumi.getter - def group(self) -> str: + direction: Optional[str] = None, + property: Optional[str] = None): """ - Port redundancy group + :param str direction: The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC + :param str property: The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime """ - return pulumi.get(self, "group") + if direction is not None: + pulumi.set(__self__, "direction", direction) + if property is not None: + pulumi.set(__self__, "property", property) @property @pulumi.getter - def priority(self) -> str: - """ - Priority type-Primary or Secondary - """ - return pulumi.get(self, "priority") - - -@pulumi.output_type -class GetPortsFilterResult(dict): - def __init__(__self__, *, - name: str): + def direction(self) -> Optional[str]: """ - :param str name: Query Parameter to Get Ports By Name + The sorting direction. Can be one of: [DESC, ASC], Defaults to DESC """ - pulumi.set(__self__, "name", name) + return pulumi.get(self, "direction") @property @pulumi.getter - def name(self) -> str: + def property(self) -> Optional[str]: """ - Query Parameter to Get Ports By Name + The property name to use in sorting. Can be one of the following: [/type, /uuid, /name, /project/projectId, /state, /notMatchedRuleAction, /connectionsCount, /changeLog/createdDateTime, /changeLog/updatedDateTime], Defaults to /changeLog/updatedDateTime """ - return pulumi.get(self, "name") + return pulumi.get(self, "property") @pulumi.output_type diff --git a/sdk/python/pulumi_equinix/fabric/route_filter.py b/sdk/python/pulumi_equinix/fabric/route_filter.py new file mode 100644 index 000000000..7108775de --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/route_filter.py @@ -0,0 +1,514 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['RouteFilterArgs', 'RouteFilter'] + +@pulumi.input_type +class RouteFilterArgs: + def __init__(__self__, *, + project: pulumi.Input['RouteFilterProjectArgs'], + type: pulumi.Input[str], + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a RouteFilter resource. + :param pulumi.Input['RouteFilterProjectArgs'] project: The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] name: Name of the Route Filter + """ + pulumi.set(__self__, "project", project) + pulumi.set(__self__, "type", type) + if description is not None: + pulumi.set(__self__, "description", description) + if name is not None: + pulumi.set(__self__, "name", name) + + @property + @pulumi.getter + def project(self) -> pulumi.Input['RouteFilterProjectArgs']: + """ + The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: pulumi.Input['RouteFilterProjectArgs']): + pulumi.set(self, "project", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input[str]: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input[str]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + +@pulumi.input_type +class _RouteFilterState: + def __init__(__self__, *, + change_logs: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeLogArgs']]]] = None, + changes: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeArgs']]]] = None, + connections_count: Optional[pulumi.Input[int]] = None, + description: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + not_matched_rule_action: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input['RouteFilterProjectArgs']] = None, + rules_count: Optional[pulumi.Input[int]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering RouteFilter resources. + :param pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeArgs']]] changes: An object with the details of the previous change applied on the Route Filter + :param pulumi.Input[int] connections_count: The number of Fabric Connections that this Route Filter is attached to + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] href: Route filter URI + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] not_matched_rule_action: The action that will be taken on ip ranges that don't match the rules present within the Route Filter + :param pulumi.Input['RouteFilterProjectArgs'] project: The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + :param pulumi.Input[int] rules_count: The number of Route Filter Rules attached to this Route Filter + :param pulumi.Input[str] state: State of the Route Filter in its lifecycle + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter + """ + if change_logs is not None: + pulumi.set(__self__, "change_logs", change_logs) + if changes is not None: + pulumi.set(__self__, "changes", changes) + if connections_count is not None: + pulumi.set(__self__, "connections_count", connections_count) + if description is not None: + pulumi.set(__self__, "description", description) + if href is not None: + pulumi.set(__self__, "href", href) + if name is not None: + pulumi.set(__self__, "name", name) + if not_matched_rule_action is not None: + pulumi.set(__self__, "not_matched_rule_action", not_matched_rule_action) + if project is not None: + pulumi.set(__self__, "project", project) + if rules_count is not None: + pulumi.set(__self__, "rules_count", rules_count) + if state is not None: + pulumi.set(__self__, "state", state) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeLogArgs']]]]: + return pulumi.get(self, "change_logs") + + @change_logs.setter + def change_logs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeLogArgs']]]]): + pulumi.set(self, "change_logs", value) + + @property + @pulumi.getter + def changes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeArgs']]]]: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @changes.setter + def changes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterChangeArgs']]]]): + pulumi.set(self, "changes", value) + + @property + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> Optional[pulumi.Input[int]]: + """ + The number of Fabric Connections that this Route Filter is attached to + """ + return pulumi.get(self, "connections_count") + + @connections_count.setter + def connections_count(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "connections_count", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + Route filter URI + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="notMatchedRuleAction") + def not_matched_rule_action(self) -> Optional[pulumi.Input[str]]: + """ + The action that will be taken on ip ranges that don't match the rules present within the Route Filter + """ + return pulumi.get(self, "not_matched_rule_action") + + @not_matched_rule_action.setter + def not_matched_rule_action(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "not_matched_rule_action", value) + + @property + @pulumi.getter + def project(self) -> Optional[pulumi.Input['RouteFilterProjectArgs']]: + """ + The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: Optional[pulumi.Input['RouteFilterProjectArgs']]): + pulumi.set(self, "project", value) + + @property + @pulumi.getter(name="rulesCount") + def rules_count(self) -> Optional[pulumi.Input[int]]: + """ + The number of Route Filter Rules attached to this Route Filter + """ + return pulumi.get(self, "rules_count") + + @rules_count.setter + def rules_count(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "rules_count", value) + + @property + @pulumi.getter + def state(self) -> Optional[pulumi.Input[str]]: + """ + State of the Route Filter in its lifecycle + """ + return pulumi.get(self, "state") + + @state.setter + def state(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "state", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def uuid(self) -> Optional[pulumi.Input[str]]: + """ + Equinix Assigned ID for Route Filter + """ + return pulumi.get(self, "uuid") + + @uuid.setter + def uuid(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uuid", value) + + +class RouteFilter(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[Union['RouteFilterProjectArgs', 'RouteFilterProjectArgsDict']]] = None, + type: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[Union['RouteFilterProjectArgs', 'RouteFilterProjectArgsDict']] project: The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: RouteFilterArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Policy + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filters + + :param str resource_name: The name of the resource. + :param RouteFilterArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(RouteFilterArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[Union['RouteFilterProjectArgs', 'RouteFilterProjectArgsDict']]] = None, + type: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = RouteFilterArgs.__new__(RouteFilterArgs) + + __props__.__dict__["description"] = description + __props__.__dict__["name"] = name + if project is None and not opts.urn: + raise TypeError("Missing required property 'project'") + __props__.__dict__["project"] = project + if type is None and not opts.urn: + raise TypeError("Missing required property 'type'") + __props__.__dict__["type"] = type + __props__.__dict__["change_logs"] = None + __props__.__dict__["changes"] = None + __props__.__dict__["connections_count"] = None + __props__.__dict__["href"] = None + __props__.__dict__["not_matched_rule_action"] = None + __props__.__dict__["rules_count"] = None + __props__.__dict__["state"] = None + __props__.__dict__["uuid"] = None + super(RouteFilter, __self__).__init__( + 'equinix:fabric/routeFilter:RouteFilter', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + change_logs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterChangeLogArgs', 'RouteFilterChangeLogArgsDict']]]]] = None, + changes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterChangeArgs', 'RouteFilterChangeArgsDict']]]]] = None, + connections_count: Optional[pulumi.Input[int]] = None, + description: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + not_matched_rule_action: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[Union['RouteFilterProjectArgs', 'RouteFilterProjectArgsDict']]] = None, + rules_count: Optional[pulumi.Input[int]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None) -> 'RouteFilter': + """ + Get an existing RouteFilter resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterChangeArgs', 'RouteFilterChangeArgsDict']]]] changes: An object with the details of the previous change applied on the Route Filter + :param pulumi.Input[int] connections_count: The number of Fabric Connections that this Route Filter is attached to + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] href: Route filter URI + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] not_matched_rule_action: The action that will be taken on ip ranges that don't match the rules present within the Route Filter + :param pulumi.Input[Union['RouteFilterProjectArgs', 'RouteFilterProjectArgsDict']] project: The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + :param pulumi.Input[int] rules_count: The number of Route Filter Rules attached to this Route Filter + :param pulumi.Input[str] state: State of the Route Filter in its lifecycle + :param pulumi.Input[str] type: Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _RouteFilterState.__new__(_RouteFilterState) + + __props__.__dict__["change_logs"] = change_logs + __props__.__dict__["changes"] = changes + __props__.__dict__["connections_count"] = connections_count + __props__.__dict__["description"] = description + __props__.__dict__["href"] = href + __props__.__dict__["name"] = name + __props__.__dict__["not_matched_rule_action"] = not_matched_rule_action + __props__.__dict__["project"] = project + __props__.__dict__["rules_count"] = rules_count + __props__.__dict__["state"] = state + __props__.__dict__["type"] = type + __props__.__dict__["uuid"] = uuid + return RouteFilter(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> pulumi.Output[Sequence['outputs.RouteFilterChangeLog']]: + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> pulumi.Output[Sequence['outputs.RouteFilterChange']]: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter(name="connectionsCount") + def connections_count(self) -> pulumi.Output[int]: + """ + The number of Fabric Connections that this Route Filter is attached to + """ + return pulumi.get(self, "connections_count") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[str]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def href(self) -> pulumi.Output[str]: + """ + Route filter URI + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="notMatchedRuleAction") + def not_matched_rule_action(self) -> pulumi.Output[str]: + """ + The action that will be taken on ip ranges that don't match the rules present within the Route Filter + """ + return pulumi.get(self, "not_matched_rule_action") + + @property + @pulumi.getter + def project(self) -> pulumi.Output['outputs.RouteFilterProject']: + """ + The Project object that contains project_id and href that is related to the Fabric Project containing connections the Route Filter can be attached to + """ + return pulumi.get(self, "project") + + @property + @pulumi.getter(name="rulesCount") + def rules_count(self) -> pulumi.Output[int]: + """ + The number of Route Filter Rules attached to this Route Filter + """ + return pulumi.get(self, "rules_count") + + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + State of the Route Filter in its lifecycle + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + """ + Route Filter Type. One of [ "BGP*IPv4*PREFIX*FILTER", "BGP*IPv6*PREFIX*FILTER" ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> pulumi.Output[str]: + """ + Equinix Assigned ID for Route Filter + """ + return pulumi.get(self, "uuid") + diff --git a/sdk/python/pulumi_equinix/fabric/route_filter_rule.py b/sdk/python/pulumi_equinix/fabric/route_filter_rule.py new file mode 100644 index 000000000..db7804930 --- /dev/null +++ b/sdk/python/pulumi_equinix/fabric/route_filter_rule.py @@ -0,0 +1,567 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['RouteFilterRuleArgs', 'RouteFilterRule'] + +@pulumi.input_type +class RouteFilterRuleArgs: + def __init__(__self__, *, + prefix: pulumi.Input[str], + route_filter_id: pulumi.Input[str], + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + prefix_match: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a RouteFilterRule resource. + :param pulumi.Input[str] prefix: IP Address Prefix to Filter on + :param pulumi.Input[str] route_filter_id: UUID of the Route Filter Policy to apply this Rule to + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] prefix_match: Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + """ + pulumi.set(__self__, "prefix", prefix) + pulumi.set(__self__, "route_filter_id", route_filter_id) + if description is not None: + pulumi.set(__self__, "description", description) + if name is not None: + pulumi.set(__self__, "name", name) + if prefix_match is not None: + pulumi.set(__self__, "prefix_match", prefix_match) + + @property + @pulumi.getter + def prefix(self) -> pulumi.Input[str]: + """ + IP Address Prefix to Filter on + """ + return pulumi.get(self, "prefix") + + @prefix.setter + def prefix(self, value: pulumi.Input[str]): + pulumi.set(self, "prefix", value) + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> pulumi.Input[str]: + """ + UUID of the Route Filter Policy to apply this Rule to + """ + return pulumi.get(self, "route_filter_id") + + @route_filter_id.setter + def route_filter_id(self, value: pulumi.Input[str]): + pulumi.set(self, "route_filter_id", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="prefixMatch") + def prefix_match(self) -> Optional[pulumi.Input[str]]: + """ + Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + """ + return pulumi.get(self, "prefix_match") + + @prefix_match.setter + def prefix_match(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "prefix_match", value) + + +@pulumi.input_type +class _RouteFilterRuleState: + def __init__(__self__, *, + action: Optional[pulumi.Input[str]] = None, + change_logs: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeLogArgs']]]] = None, + changes: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeArgs']]]] = None, + description: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + prefix: Optional[pulumi.Input[str]] = None, + prefix_match: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering RouteFilterRule resources. + :param pulumi.Input[str] action: Action that will be taken on IP Addresses matching the rule + :param pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeArgs']]] changes: An object with the details of the previous change applied on the Route Filter + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] href: Route filter rules URI + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] prefix: IP Address Prefix to Filter on + :param pulumi.Input[str] prefix_match: Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + :param pulumi.Input[str] route_filter_id: UUID of the Route Filter Policy to apply this Rule to + :param pulumi.Input[str] state: State of the Route Filter Rule in its lifecycle + :param pulumi.Input[str] type: Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter Rule + """ + if action is not None: + pulumi.set(__self__, "action", action) + if change_logs is not None: + pulumi.set(__self__, "change_logs", change_logs) + if changes is not None: + pulumi.set(__self__, "changes", changes) + if description is not None: + pulumi.set(__self__, "description", description) + if href is not None: + pulumi.set(__self__, "href", href) + if name is not None: + pulumi.set(__self__, "name", name) + if prefix is not None: + pulumi.set(__self__, "prefix", prefix) + if prefix_match is not None: + pulumi.set(__self__, "prefix_match", prefix_match) + if route_filter_id is not None: + pulumi.set(__self__, "route_filter_id", route_filter_id) + if state is not None: + pulumi.set(__self__, "state", state) + if type is not None: + pulumi.set(__self__, "type", type) + if uuid is not None: + pulumi.set(__self__, "uuid", uuid) + + @property + @pulumi.getter + def action(self) -> Optional[pulumi.Input[str]]: + """ + Action that will be taken on IP Addresses matching the rule + """ + return pulumi.get(self, "action") + + @action.setter + def action(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "action", value) + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeLogArgs']]]]: + return pulumi.get(self, "change_logs") + + @change_logs.setter + def change_logs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeLogArgs']]]]): + pulumi.set(self, "change_logs", value) + + @property + @pulumi.getter + def changes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeArgs']]]]: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @changes.setter + def changes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RouteFilterRuleChangeArgs']]]]): + pulumi.set(self, "changes", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def href(self) -> Optional[pulumi.Input[str]]: + """ + Route filter rules URI + """ + return pulumi.get(self, "href") + + @href.setter + def href(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "href", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def prefix(self) -> Optional[pulumi.Input[str]]: + """ + IP Address Prefix to Filter on + """ + return pulumi.get(self, "prefix") + + @prefix.setter + def prefix(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "prefix", value) + + @property + @pulumi.getter(name="prefixMatch") + def prefix_match(self) -> Optional[pulumi.Input[str]]: + """ + Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + """ + return pulumi.get(self, "prefix_match") + + @prefix_match.setter + def prefix_match(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "prefix_match", value) + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> Optional[pulumi.Input[str]]: + """ + UUID of the Route Filter Policy to apply this Rule to + """ + return pulumi.get(self, "route_filter_id") + + @route_filter_id.setter + def route_filter_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "route_filter_id", value) + + @property + @pulumi.getter + def state(self) -> Optional[pulumi.Input[str]]: + """ + State of the Route Filter Rule in its lifecycle + """ + return pulumi.get(self, "state") + + @state.setter + def state(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "state", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def uuid(self) -> Optional[pulumi.Input[str]]: + """ + Equinix Assigned ID for Route Filter Rule + """ + return pulumi.get(self, "uuid") + + @uuid.setter + def uuid(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uuid", value) + + +class RouteFilterRule(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + prefix: Optional[pulumi.Input[str]] = None, + prefix_match: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rule = equinix.fabric.RouteFilterRule("rfRule", + route_filter_id="", + prefix="192.168.0.0/24", + prefix_match="exact", + description="Route Filter Rule for X Purpose") + pulumi.export("routeFilterRuleId", rf_rule.id) + pulumi.export("routeFilterId", rf_rule.route_filter_id) + pulumi.export("routeFilterRulePrefix", rf_rule.prefix) + pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] prefix: IP Address Prefix to Filter on + :param pulumi.Input[str] prefix_match: Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + :param pulumi.Input[str] route_filter_id: UUID of the Route Filter Policy to apply this Rule to + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: RouteFilterRuleArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule + + Additional Documentation: + * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm + * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules + + ## Example Usage + + ```python + import pulumi + import pulumi_equinix as equinix + + rf_rule = equinix.fabric.RouteFilterRule("rfRule", + route_filter_id="", + prefix="192.168.0.0/24", + prefix_match="exact", + description="Route Filter Rule for X Purpose") + pulumi.export("routeFilterRuleId", rf_rule.id) + pulumi.export("routeFilterId", rf_rule.route_filter_id) + pulumi.export("routeFilterRulePrefix", rf_rule.prefix) + pulumi.export("routeFilterRulePrefixMatch", rf_rule.prefix_match) + ``` + + :param str resource_name: The name of the resource. + :param RouteFilterRuleArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(RouteFilterRuleArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + prefix: Optional[pulumi.Input[str]] = None, + prefix_match: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = RouteFilterRuleArgs.__new__(RouteFilterRuleArgs) + + __props__.__dict__["description"] = description + __props__.__dict__["name"] = name + if prefix is None and not opts.urn: + raise TypeError("Missing required property 'prefix'") + __props__.__dict__["prefix"] = prefix + __props__.__dict__["prefix_match"] = prefix_match + if route_filter_id is None and not opts.urn: + raise TypeError("Missing required property 'route_filter_id'") + __props__.__dict__["route_filter_id"] = route_filter_id + __props__.__dict__["action"] = None + __props__.__dict__["change_logs"] = None + __props__.__dict__["changes"] = None + __props__.__dict__["href"] = None + __props__.__dict__["state"] = None + __props__.__dict__["type"] = None + __props__.__dict__["uuid"] = None + super(RouteFilterRule, __self__).__init__( + 'equinix:fabric/routeFilterRule:RouteFilterRule', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + action: Optional[pulumi.Input[str]] = None, + change_logs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterRuleChangeLogArgs', 'RouteFilterRuleChangeLogArgsDict']]]]] = None, + changes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterRuleChangeArgs', 'RouteFilterRuleChangeArgsDict']]]]] = None, + description: Optional[pulumi.Input[str]] = None, + href: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + prefix: Optional[pulumi.Input[str]] = None, + prefix_match: Optional[pulumi.Input[str]] = None, + route_filter_id: Optional[pulumi.Input[str]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None, + uuid: Optional[pulumi.Input[str]] = None) -> 'RouteFilterRule': + """ + Get an existing RouteFilterRule resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] action: Action that will be taken on IP Addresses matching the rule + :param pulumi.Input[Sequence[pulumi.Input[Union['RouteFilterRuleChangeArgs', 'RouteFilterRuleChangeArgsDict']]]] changes: An object with the details of the previous change applied on the Route Filter + :param pulumi.Input[str] description: Optional description to add to the Route Filter you will be creating + :param pulumi.Input[str] href: Route filter rules URI + :param pulumi.Input[str] name: Name of the Route Filter + :param pulumi.Input[str] prefix: IP Address Prefix to Filter on + :param pulumi.Input[str] prefix_match: Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + :param pulumi.Input[str] route_filter_id: UUID of the Route Filter Policy to apply this Rule to + :param pulumi.Input[str] state: State of the Route Filter Rule in its lifecycle + :param pulumi.Input[str] type: Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + :param pulumi.Input[str] uuid: Equinix Assigned ID for Route Filter Rule + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _RouteFilterRuleState.__new__(_RouteFilterRuleState) + + __props__.__dict__["action"] = action + __props__.__dict__["change_logs"] = change_logs + __props__.__dict__["changes"] = changes + __props__.__dict__["description"] = description + __props__.__dict__["href"] = href + __props__.__dict__["name"] = name + __props__.__dict__["prefix"] = prefix + __props__.__dict__["prefix_match"] = prefix_match + __props__.__dict__["route_filter_id"] = route_filter_id + __props__.__dict__["state"] = state + __props__.__dict__["type"] = type + __props__.__dict__["uuid"] = uuid + return RouteFilterRule(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def action(self) -> pulumi.Output[str]: + """ + Action that will be taken on IP Addresses matching the rule + """ + return pulumi.get(self, "action") + + @property + @pulumi.getter(name="changeLogs") + def change_logs(self) -> pulumi.Output[Sequence['outputs.RouteFilterRuleChangeLog']]: + return pulumi.get(self, "change_logs") + + @property + @pulumi.getter + def changes(self) -> pulumi.Output[Sequence['outputs.RouteFilterRuleChange']]: + """ + An object with the details of the previous change applied on the Route Filter + """ + return pulumi.get(self, "changes") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[str]: + """ + Optional description to add to the Route Filter you will be creating + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def href(self) -> pulumi.Output[str]: + """ + Route filter rules URI + """ + return pulumi.get(self, "href") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Name of the Route Filter + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def prefix(self) -> pulumi.Output[str]: + """ + IP Address Prefix to Filter on + """ + return pulumi.get(self, "prefix") + + @property + @pulumi.getter(name="prefixMatch") + def prefix_match(self) -> pulumi.Output[str]: + """ + Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger" + """ + return pulumi.get(self, "prefix_match") + + @property + @pulumi.getter(name="routeFilterId") + def route_filter_id(self) -> pulumi.Output[str]: + """ + UUID of the Route Filter Policy to apply this Rule to + """ + return pulumi.get(self, "route_filter_id") + + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + State of the Route Filter Rule in its lifecycle + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + """ + Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ] + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uuid(self) -> pulumi.Output[str]: + """ + Equinix Assigned ID for Route Filter Rule + """ + return pulumi.get(self, "uuid") + From 6e9142d569993cacaab7fade120bdf1d6804a323 Mon Sep 17 00:00:00 2001 From: Tim Hogarty Date: Wed, 23 Oct 2024 14:38:40 -0700 Subject: [PATCH 3/3] Add correct version numbers after change to build command made in PR #227 --- .../csharp/equinix-fabric-cloud_router-example_1.csproj | 2 +- examples/fabric/cloud_router/example_1/java/pom.xml | 2 +- examples/fabric/cloud_router/example_1/python/requirements.txt | 2 +- examples/fabric/cloud_router/example_1/typescript/package.json | 2 +- .../csharp/equinix-fabric-cloud_router-example_2.csproj | 2 +- examples/fabric/cloud_router/example_2/java/pom.xml | 2 +- examples/fabric/cloud_router/example_2/python/requirements.txt | 2 +- examples/fabric/cloud_router/example_2/typescript/package.json | 2 +- .../equinix-fabric-connection-example_fcr_to_azure.csproj | 2 +- examples/fabric/connection/example_fcr_to_azure/java/pom.xml | 2 +- .../connection/example_fcr_to_azure/python/requirements.txt | 2 +- .../connection/example_fcr_to_azure/typescript/package.json | 2 +- .../equinix-fabric-connection-example_fcr_to_metal.csproj | 2 +- examples/fabric/connection/example_fcr_to_metal/java/pom.xml | 2 +- .../connection/example_fcr_to_metal/python/requirements.txt | 2 +- .../connection/example_fcr_to_metal/typescript/package.json | 2 +- .../equinix-fabric-connection-example_fcr_to_network.csproj | 2 +- examples/fabric/connection/example_fcr_to_network/java/pom.xml | 2 +- .../connection/example_fcr_to_network/python/requirements.txt | 2 +- .../connection/example_fcr_to_network/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection-example_fcr_to_port.csproj | 2 +- examples/fabric/connection/example_fcr_to_port/java/pom.xml | 2 +- .../connection/example_fcr_to_port/python/requirements.txt | 2 +- .../connection/example_fcr_to_port/typescript/package.json | 2 +- .../equinix-fabric-connection-example_metal_to_aws.csproj | 2 +- examples/fabric/connection/example_metal_to_aws/java/pom.xml | 2 +- .../connection/example_metal_to_aws/python/requirements.txt | 2 +- .../connection/example_metal_to_aws/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection-example_port_to_aws.csproj | 2 +- examples/fabric/connection/example_port_to_aws/java/pom.xml | 2 +- .../connection/example_port_to_aws/python/requirements.txt | 2 +- .../connection/example_port_to_aws/typescript/package.json | 2 +- ...uinix-fabric-connection-example_port_to_network_eplan.csproj | 2 +- .../connection/example_port_to_network_eplan/java/pom.xml | 2 +- .../example_port_to_network_eplan/python/requirements.txt | 2 +- .../example_port_to_network_eplan/typescript/package.json | 2 +- ...inix-fabric-connection-example_port_to_network_evplan.csproj | 2 +- .../connection/example_port_to_network_evplan/java/pom.xml | 2 +- .../example_port_to_network_evplan/python/requirements.txt | 2 +- .../example_port_to_network_evplan/typescript/package.json | 2 +- .../equinix-fabric-connection-example_port_to_port.csproj | 2 +- examples/fabric/connection/example_port_to_port/java/pom.xml | 2 +- .../connection/example_port_to_port/python/requirements.txt | 2 +- .../connection/example_port_to_port/typescript/package.json | 2 +- ...nix-fabric-connection-example_port_to_port_access_epl.csproj | 2 +- .../connection/example_port_to_port_access_epl/java/pom.xml | 2 +- .../example_port_to_port_access_epl/python/requirements.txt | 2 +- .../example_port_to_port_access_epl/typescript/package.json | 2 +- .../equinix-fabric-connection-example_port_to_port_epl.csproj | 2 +- .../fabric/connection/example_port_to_port_epl/java/pom.xml | 2 +- .../connection/example_port_to_port_epl/python/requirements.txt | 2 +- .../connection/example_port_to_port_epl/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection-example_port_to_vd.csproj | 2 +- examples/fabric/connection/example_port_to_vd/java/pom.xml | 2 +- .../connection/example_port_to_vd/python/requirements.txt | 2 +- .../connection/example_port_to_vd/typescript/package.json | 2 +- .../equinix-fabric-connection-example_token_to_aws.csproj | 2 +- examples/fabric/connection/example_token_to_aws/java/pom.xml | 2 +- .../connection/example_token_to_aws/python/requirements.txt | 2 +- .../connection/example_token_to_aws/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection-example_vd_to_azure.csproj | 2 +- examples/fabric/connection/example_vd_to_azure/java/pom.xml | 2 +- .../connection/example_vd_to_azure/python/requirements.txt | 2 +- .../connection/example_vd_to_azure/typescript/package.json | 2 +- ...uinix-fabric-connection-example_vd_to_azure_redundant.csproj | 2 +- .../connection/example_vd_to_azure_redundant/java/pom.xml | 2 +- .../example_vd_to_azure_redundant/python/requirements.txt | 2 +- .../example_vd_to_azure_redundant/typescript/package.json | 2 +- .../equinix-fabric-connection-example_vd_to_network.csproj | 2 +- examples/fabric/connection/example_vd_to_network/java/pom.xml | 2 +- .../connection/example_vd_to_network/python/requirements.txt | 2 +- .../connection/example_vd_to_network/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection-example_vd_to_token.csproj | 2 +- examples/fabric/connection/example_vd_to_token/java/pom.xml | 2 +- .../connection/example_vd_to_token/python/requirements.txt | 2 +- .../connection/example_vd_to_token/typescript/package.json | 2 +- .../csharp/equinix-fabric-connection_route_filter.csproj | 2 +- examples/fabric/connection_route_filter/java/pom.xml | 2 +- examples/fabric/connection_route_filter/python/requirements.txt | 2 +- examples/fabric/connection_route_filter/typescript/package.json | 2 +- examples/fabric/network/csharp/equinix-fabric-network.csproj | 2 +- examples/fabric/network/java/pom.xml | 2 +- examples/fabric/network/python/requirements.txt | 2 +- examples/fabric/network/typescript/package.json | 2 +- .../csharp/equinix-fabric-route_filter_rule.csproj | 2 +- examples/fabric/route_filter_rule/java/pom.xml | 2 +- examples/fabric/route_filter_rule/python/requirements.txt | 2 +- examples/fabric/route_filter_rule/typescript/package.json | 2 +- .../csharp/equinix-fabric-routing_protocol-example_1.csproj | 2 +- examples/fabric/routing_protocol/example_1/java/pom.xml | 2 +- .../fabric/routing_protocol/example_1/python/requirements.txt | 2 +- .../fabric/routing_protocol/example_1/typescript/package.json | 2 +- .../csharp/equinix-fabric-routing_protocol-example_2.csproj | 2 +- examples/fabric/routing_protocol/example_2/java/pom.xml | 2 +- .../fabric/routing_protocol/example_2/python/requirements.txt | 2 +- .../fabric/routing_protocol/example_2/typescript/package.json | 2 +- .../csharp/equinix-fabric-routing_protocol-example_3.csproj | 2 +- examples/fabric/routing_protocol/example_3/java/pom.xml | 2 +- .../fabric/routing_protocol/example_3/python/requirements.txt | 2 +- .../fabric/routing_protocol/example_3/typescript/package.json | 2 +- .../csharp/equinix-fabric-service_profile.csproj | 2 +- examples/fabric/service_profile/java/pom.xml | 2 +- examples/fabric/service_profile/python/requirements.txt | 2 +- examples/fabric/service_profile/typescript/package.json | 2 +- .../metal/bgp_session/csharp/equinix-metal-bgp_session.csproj | 2 +- examples/metal/bgp_session/java/pom.xml | 2 +- examples/metal/bgp_session/python/requirements.txt | 2 +- examples/metal/bgp_session/typescript/package.json | 2 +- ...nnection-example_fabric_billed_metal_from_fabric_port.csproj | 2 +- .../example_fabric_billed_metal_from_fabric_port/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...metal-connection-example_fabric_billed_metal_from_fcr.csproj | 2 +- .../example_fabric_billed_metal_from_fcr/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...nection-example_fabric_billed_metal_from_network_edge.csproj | 2 +- .../example_fabric_billed_metal_from_network_edge/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- ...-connection-example_metal_billed_metal_to_fabric_port.csproj | 2 +- .../example_metal_billed_metal_to_fabric_port/java/pom.xml | 2 +- .../python/requirements.txt | 2 +- .../typescript/package.json | 2 +- .../example_1/csharp/equinix-metal-device-example_1.csproj | 2 +- examples/metal/device/example_1/java/pom.xml | 2 +- examples/metal/device/example_1/python/requirements.txt | 2 +- examples/metal/device/example_1/typescript/package.json | 2 +- .../example_2/csharp/equinix-metal-device-example_2.csproj | 2 +- examples/metal/device/example_2/java/pom.xml | 2 +- examples/metal/device/example_2/python/requirements.txt | 2 +- examples/metal/device/example_2/typescript/package.json | 2 +- .../example_3/csharp/equinix-metal-device-example_3.csproj | 2 +- examples/metal/device/example_3/java/pom.xml | 2 +- examples/metal/device/example_3/python/requirements.txt | 2 +- examples/metal/device/example_3/typescript/package.json | 2 +- .../example_4/csharp/equinix-metal-device-example_4.csproj | 2 +- examples/metal/device/example_4/java/pom.xml | 2 +- examples/metal/device/example_4/python/requirements.txt | 2 +- examples/metal/device/example_4/typescript/package.json | 2 +- .../example_5/csharp/equinix-metal-device-example_5.csproj | 2 +- examples/metal/device/example_5/java/pom.xml | 2 +- examples/metal/device/example_5/python/requirements.txt | 2 +- examples/metal/device/example_5/typescript/package.json | 2 +- .../csharp/equinix-metal-device-network-type.csproj | 2 +- examples/metal/device_network_type/java/pom.xml | 2 +- examples/metal/device_network_type/python/requirements.txt | 2 +- examples/metal/device_network_type/typescript/package.json | 2 +- .../example_1/csharp/equinix-metal-gateway-example_1.csproj | 2 +- examples/metal/gateway/example_1/java/pom.xml | 2 +- examples/metal/gateway/example_1/python/requirements.txt | 2 +- examples/metal/gateway/example_1/typescript/package.json | 2 +- .../example_2/csharp/equinix-metal-gateway-example_2.csproj | 2 +- examples/metal/gateway/example_2/java/pom.xml | 2 +- examples/metal/gateway/example_2/python/requirements.txt | 2 +- examples/metal/gateway/example_2/typescript/package.json | 2 +- .../ip_attachment/csharp/equinix-metal-ip_attachment.csproj | 2 +- examples/metal/ip_attachment/java/pom.xml | 2 +- examples/metal/ip_attachment/python/requirements.txt | 2 +- examples/metal/ip_attachment/typescript/package.json | 2 +- .../metal/organization/csharp/equinix-metal-organization.csproj | 2 +- examples/metal/organization/java/pom.xml | 2 +- examples/metal/organization/python/requirements.txt | 2 +- examples/metal/organization/typescript/package.json | 2 +- .../csharp/equinix-metal-organization_member-example_1.csproj | 2 +- examples/metal/organization_member/example_1/java/pom.xml | 2 +- .../metal/organization_member/example_1/python/requirements.txt | 2 +- .../metal/organization_member/example_1/typescript/package.json | 2 +- .../csharp/equinix-metal-organization_member-example_2.csproj | 2 +- examples/metal/organization_member/example_2/java/pom.xml | 2 +- .../metal/organization_member/example_2/python/requirements.txt | 2 +- .../metal/organization_member/example_2/typescript/package.json | 2 +- .../csharp/equinix-metal-port_vlan_attachment-example_1.csproj | 2 +- examples/metal/port_vlan_attachment/example_1/java/pom.xml | 2 +- .../port_vlan_attachment/example_1/python/requirements.txt | 2 +- .../port_vlan_attachment/example_1/typescript/package.json | 2 +- .../csharp/equinix-metal-port_vlan_attachment-example_2.csproj | 2 +- examples/metal/port_vlan_attachment/example_2/java/pom.xml | 2 +- .../port_vlan_attachment/example_2/python/requirements.txt | 2 +- .../port_vlan_attachment/example_2/typescript/package.json | 2 +- .../example_1/csharp/equinix-metal-project-example_1.csproj | 2 +- examples/metal/project/example_1/java/pom.xml | 2 +- examples/metal/project/example_1/python/requirements.txt | 2 +- examples/metal/project/example_1/typescript/package.json | 2 +- .../example_2/csharp/equinix-metal-project-example_2.csproj | 2 +- examples/metal/project/example_2/java/pom.xml | 2 +- examples/metal/project/example_2/python/requirements.txt | 2 +- examples/metal/project/example_2/typescript/package.json | 2 +- .../example_3/csharp/equinix-metal-project-example_3.csproj | 2 +- examples/metal/project/example_3/java/pom.xml | 2 +- examples/metal/project/example_3/python/requirements.txt | 2 +- examples/metal/project/example_3/typescript/package.json | 2 +- .../project_api_key/csharp/equinix-metal-project_api_key.csproj | 2 +- examples/metal/project_api_key/java/pom.xml | 2 +- examples/metal/project_api_key/python/requirements.txt | 2 +- examples/metal/project_api_key/typescript/package.json | 2 +- .../project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj | 2 +- examples/metal/project_ssh_key/java/pom.xml | 2 +- examples/metal/project_ssh_key/python/requirements.txt | 2 +- examples/metal/project_ssh_key/typescript/package.json | 2 +- .../csharp/equinix-metal-reserved_ip_block-example_1.csproj | 2 +- examples/metal/reserved_ip_block/example_1/java/pom.xml | 2 +- .../metal/reserved_ip_block/example_1/python/requirements.txt | 2 +- .../metal/reserved_ip_block/example_1/typescript/package.json | 2 +- .../csharp/equinix-metal-reserved_ip_block-example_2.csproj | 2 +- examples/metal/reserved_ip_block/example_2/java/pom.xml | 2 +- .../metal/reserved_ip_block/example_2/python/requirements.txt | 2 +- .../metal/reserved_ip_block/example_2/typescript/package.json | 2 +- .../csharp/equinix-metal-spot_market_request.csproj | 2 +- examples/metal/spot_market_request/java/pom.xml | 2 +- examples/metal/spot_market_request/python/requirements.txt | 2 +- examples/metal/spot_market_request/typescript/package.json | 2 +- examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj | 2 +- examples/metal/ssh_key/java/pom.xml | 2 +- examples/metal/ssh_key/python/requirements.txt | 2 +- examples/metal/ssh_key/typescript/package.json | 2 +- .../metal/user_api_key/csharp/equinix-metal-user_api_key.csproj | 2 +- examples/metal/user_api_key/java/pom.xml | 2 +- examples/metal/user_api_key/python/requirements.txt | 2 +- examples/metal/user_api_key/typescript/package.json | 2 +- .../virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj | 2 +- examples/metal/virtual_circuit/java/pom.xml | 2 +- examples/metal/virtual_circuit/python/requirements.txt | 2 +- examples/metal/virtual_circuit/typescript/package.json | 2 +- examples/metal/vlan/csharp/equinix-metal-vlan.csproj | 2 +- examples/metal/vlan/java/pom.xml | 2 +- examples/metal/vlan/python/requirements.txt | 2 +- examples/metal/vlan/typescript/package.json | 2 +- .../vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj | 2 +- examples/metal/vrf/example_1/java/pom.xml | 2 +- examples/metal/vrf/example_1/python/requirements.txt | 2 +- examples/metal/vrf/example_1/typescript/package.json | 2 +- .../vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj | 2 +- examples/metal/vrf/example_2/java/pom.xml | 2 +- examples/metal/vrf/example_2/python/requirements.txt | 2 +- examples/metal/vrf/example_2/typescript/package.json | 2 +- .../vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj | 2 +- examples/metal/vrf/example_3/java/pom.xml | 2 +- examples/metal/vrf/example_3/python/requirements.txt | 2 +- examples/metal/vrf/example_3/typescript/package.json | 2 +- .../acl_template/csharp/equinix-network-acl_template.csproj | 2 +- examples/network/acl_template/java/pom.xml | 2 +- examples/network/acl_template/python/requirements.txt | 2 +- examples/network/acl_template/typescript/package.json | 2 +- examples/network/bgp/csharp/equinix-network-bgp.csproj | 2 +- examples/network/bgp/java/pom.xml | 2 +- examples/network/bgp/python/requirements.txt | 2 +- examples/network/bgp/typescript/package.json | 2 +- .../example_1/csharp/equinix-network-device-example_1.csproj | 2 +- examples/network/device/example_1/java/pom.xml | 2 +- examples/network/device/example_1/python/requirements.txt | 2 +- examples/network/device/example_1/typescript/package.json | 2 +- .../example_2/csharp/equinix-network-device-example_2.csproj | 2 +- examples/network/device/example_2/java/pom.xml | 2 +- examples/network/device/example_2/python/requirements.txt | 2 +- examples/network/device/example_2/typescript/package.json | 2 +- .../example_3/csharp/equinix-network-device-example_3.csproj | 2 +- examples/network/device/example_3/java/pom.xml | 2 +- examples/network/device/example_3/python/requirements.txt | 2 +- examples/network/device/example_3/typescript/package.json | 2 +- .../example_4/csharp/equinix-network-device-example_4.csproj | 2 +- examples/network/device/example_4/java/pom.xml | 2 +- examples/network/device/example_4/python/requirements.txt | 2 +- examples/network/device/example_4/typescript/package.json | 2 +- .../example_5/csharp/equinix-network-device-example_5.csproj | 2 +- examples/network/device/example_5/java/pom.xml | 2 +- examples/network/device/example_5/python/requirements.txt | 2 +- examples/network/device/example_5/typescript/package.json | 2 +- .../example_6/csharp/equinix-network-device-example_6.csproj | 2 +- examples/network/device/example_6/java/pom.xml | 2 +- examples/network/device/example_6/python/requirements.txt | 2 +- examples/network/device/example_6/typescript/package.json | 2 +- .../example_7/csharp/equinix-network-device-example_7.csproj | 2 +- examples/network/device/example_7/java/pom.xml | 2 +- examples/network/device/example_7/python/requirements.txt | 2 +- examples/network/device/example_7/typescript/package.json | 2 +- .../example_8/csharp/equinix-network-device-example_8.csproj | 2 +- examples/network/device/example_8/java/pom.xml | 2 +- examples/network/device/example_8/python/requirements.txt | 2 +- examples/network/device/example_8/typescript/package.json | 2 +- .../example_9/csharp/equinix-network-device-example_9.csproj | 2 +- examples/network/device/example_9/java/pom.xml | 2 +- examples/network/device/example_9/python/requirements.txt | 2 +- examples/network/device/example_9/typescript/package.json | 2 +- .../equinix-network-device-example_Aviatrix_Transit_Edge.csproj | 2 +- .../network/device/example_Aviatrix_Transit_Edge/java/pom.xml | 2 +- .../example_Aviatrix_Transit_Edge/python/requirements.txt | 2 +- .../example_Aviatrix_Transit_Edge/typescript/package.json | 2 +- .../device_link/csharp/equinix-network-device_link.csproj | 2 +- examples/network/device_link/java/pom.xml | 2 +- examples/network/device_link/python/requirements.txt | 2 +- examples/network/device_link/typescript/package.json | 2 +- examples/network/file/csharp/equinix-network-file.csproj | 2 +- examples/network/file/java/pom.xml | 2 +- examples/network/file/python/requirements.txt | 2 +- examples/network/file/typescript/package.json | 2 +- examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj | 2 +- examples/network/ssh_key/java/pom.xml | 2 +- examples/network/ssh_key/python/requirements.txt | 2 +- examples/network/ssh_key/typescript/package.json | 2 +- .../network/ssh_user/csharp/equinix-network-ssh_user.csproj | 2 +- examples/network/ssh_user/java/pom.xml | 2 +- examples/network/ssh_user/python/requirements.txt | 2 +- examples/network/ssh_user/typescript/package.json | 2 +- 304 files changed, 304 insertions(+), 304 deletions(-) diff --git a/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj b/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj +++ b/examples/fabric/cloud_router/example_1/csharp/equinix-fabric-cloud_router-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_1/java/pom.xml b/examples/fabric/cloud_router/example_1/java/pom.xml index f9d8d49c3..98b7bb627 100644 --- a/examples/fabric/cloud_router/example_1/java/pom.xml +++ b/examples/fabric/cloud_router/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/cloud_router/example_1/python/requirements.txt b/examples/fabric/cloud_router/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/cloud_router/example_1/python/requirements.txt +++ b/examples/fabric/cloud_router/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/cloud_router/example_1/typescript/package.json b/examples/fabric/cloud_router/example_1/typescript/package.json index 233308eb1..017a20430 100644 --- a/examples/fabric/cloud_router/example_1/typescript/package.json +++ b/examples/fabric/cloud_router/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj b/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj +++ b/examples/fabric/cloud_router/example_2/csharp/equinix-fabric-cloud_router-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/cloud_router/example_2/java/pom.xml b/examples/fabric/cloud_router/example_2/java/pom.xml index ed292e268..e5e9ca574 100644 --- a/examples/fabric/cloud_router/example_2/java/pom.xml +++ b/examples/fabric/cloud_router/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/cloud_router/example_2/python/requirements.txt b/examples/fabric/cloud_router/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/cloud_router/example_2/python/requirements.txt +++ b/examples/fabric/cloud_router/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/cloud_router/example_2/typescript/package.json b/examples/fabric/cloud_router/example_2/typescript/package.json index 2ecfe9bc3..920cf97be 100644 --- a/examples/fabric/cloud_router/example_2/typescript/package.json +++ b/examples/fabric/cloud_router/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj b/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj +++ b/examples/fabric/connection/example_fcr_to_azure/csharp/equinix-fabric-connection-example_fcr_to_azure.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_azure/java/pom.xml b/examples/fabric/connection/example_fcr_to_azure/java/pom.xml index 407d608ff..1633cc335 100644 --- a/examples/fabric/connection/example_fcr_to_azure/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_azure/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt b/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_azure/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_fcr_to_azure/typescript/package.json b/examples/fabric/connection/example_fcr_to_azure/typescript/package.json index 26895db62..cd71d5043 100644 --- a/examples/fabric/connection/example_fcr_to_azure/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_azure/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj b/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj +++ b/examples/fabric/connection/example_fcr_to_metal/csharp/equinix-fabric-connection-example_fcr_to_metal.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_metal/java/pom.xml b/examples/fabric/connection/example_fcr_to_metal/java/pom.xml index 2fb2dd652..b1e08bcd3 100644 --- a/examples/fabric/connection/example_fcr_to_metal/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_metal/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt b/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_metal/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_fcr_to_metal/typescript/package.json b/examples/fabric/connection/example_fcr_to_metal/typescript/package.json index b6de052ca..dee62b30b 100644 --- a/examples/fabric/connection/example_fcr_to_metal/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_metal/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj b/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj +++ b/examples/fabric/connection/example_fcr_to_network/csharp/equinix-fabric-connection-example_fcr_to_network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_network/java/pom.xml b/examples/fabric/connection/example_fcr_to_network/java/pom.xml index 31180716a..a1ce2da2f 100644 --- a/examples/fabric/connection/example_fcr_to_network/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_fcr_to_network/python/requirements.txt b/examples/fabric/connection/example_fcr_to_network/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_fcr_to_network/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_fcr_to_network/typescript/package.json b/examples/fabric/connection/example_fcr_to_network/typescript/package.json index 8609141b7..c4b95bf85 100644 --- a/examples/fabric/connection/example_fcr_to_network/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj b/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj +++ b/examples/fabric/connection/example_fcr_to_port/csharp/equinix-fabric-connection-example_fcr_to_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_fcr_to_port/java/pom.xml b/examples/fabric/connection/example_fcr_to_port/java/pom.xml index abd8ce689..7549a049a 100644 --- a/examples/fabric/connection/example_fcr_to_port/java/pom.xml +++ b/examples/fabric/connection/example_fcr_to_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_fcr_to_port/python/requirements.txt b/examples/fabric/connection/example_fcr_to_port/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_fcr_to_port/python/requirements.txt +++ b/examples/fabric/connection/example_fcr_to_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_fcr_to_port/typescript/package.json b/examples/fabric/connection/example_fcr_to_port/typescript/package.json index f6392cbab..dc47989f0 100644 --- a/examples/fabric/connection/example_fcr_to_port/typescript/package.json +++ b/examples/fabric/connection/example_fcr_to_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj b/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj +++ b/examples/fabric/connection/example_metal_to_aws/csharp/equinix-fabric-connection-example_metal_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_metal_to_aws/java/pom.xml b/examples/fabric/connection/example_metal_to_aws/java/pom.xml index ff2ea7234..c59ab98af 100644 --- a/examples/fabric/connection/example_metal_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_metal_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_metal_to_aws/python/requirements.txt b/examples/fabric/connection/example_metal_to_aws/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_metal_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_metal_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_metal_to_aws/typescript/package.json b/examples/fabric/connection/example_metal_to_aws/typescript/package.json index e2e0183a6..4a0142ec1 100644 --- a/examples/fabric/connection/example_metal_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_metal_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj b/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj +++ b/examples/fabric/connection/example_port_to_aws/csharp/equinix-fabric-connection-example_port_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_aws/java/pom.xml b/examples/fabric/connection/example_port_to_aws/java/pom.xml index 1d4c6bea4..2cf8118c7 100644 --- a/examples/fabric/connection/example_port_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_port_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_aws/python/requirements.txt b/examples/fabric/connection/example_port_to_aws/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_aws/typescript/package.json b/examples/fabric/connection/example_port_to_aws/typescript/package.json index 1b83f8039..8d25e126f 100644 --- a/examples/fabric/connection/example_port_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_port_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj b/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj +++ b/examples/fabric/connection/example_port_to_network_eplan/csharp/equinix-fabric-connection-example_port_to_network_eplan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml b/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml index 0fc71dd15..d32f925df 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml +++ b/examples/fabric/connection/example_port_to_network_eplan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt b/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_network_eplan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json b/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json index bef557fd4..0309784b4 100644 --- a/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json +++ b/examples/fabric/connection/example_port_to_network_eplan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj b/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj +++ b/examples/fabric/connection/example_port_to_network_evplan/csharp/equinix-fabric-connection-example_port_to_network_evplan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml b/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml index 892ba6bcf..f5f9bd853 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml +++ b/examples/fabric/connection/example_port_to_network_evplan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt b/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_network_evplan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json b/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json index ac96f88bf..69e4ba9ec 100644 --- a/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json +++ b/examples/fabric/connection/example_port_to_network_evplan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj b/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj +++ b/examples/fabric/connection/example_port_to_port/csharp/equinix-fabric-connection-example_port_to_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port/java/pom.xml b/examples/fabric/connection/example_port_to_port/java/pom.xml index 3d8ba36df..d48ea5c51 100644 --- a/examples/fabric/connection/example_port_to_port/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_port/python/requirements.txt b/examples/fabric/connection/example_port_to_port/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_port/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_port/typescript/package.json b/examples/fabric/connection/example_port_to_port/typescript/package.json index 4a01253b9..9f6b9582b 100644 --- a/examples/fabric/connection/example_port_to_port/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj b/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj +++ b/examples/fabric/connection/example_port_to_port_access_epl/csharp/equinix-fabric-connection-example_port_to_port_access_epl.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml b/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml index 82dbdbf4e..0f7007ead 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port_access_epl/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt b/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port_access_epl/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json b/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json index 24c07fb2d..c592d0be1 100644 --- a/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port_access_epl/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj b/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj +++ b/examples/fabric/connection/example_port_to_port_epl/csharp/equinix-fabric-connection-example_port_to_port_epl.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_port_epl/java/pom.xml b/examples/fabric/connection/example_port_to_port_epl/java/pom.xml index b81a5a06a..deb0ed8bf 100644 --- a/examples/fabric/connection/example_port_to_port_epl/java/pom.xml +++ b/examples/fabric/connection/example_port_to_port_epl/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt b/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_port_epl/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_port_epl/typescript/package.json b/examples/fabric/connection/example_port_to_port_epl/typescript/package.json index 029ab572c..6ab8a08fe 100644 --- a/examples/fabric/connection/example_port_to_port_epl/typescript/package.json +++ b/examples/fabric/connection/example_port_to_port_epl/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj b/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj +++ b/examples/fabric/connection/example_port_to_vd/csharp/equinix-fabric-connection-example_port_to_vd.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_port_to_vd/java/pom.xml b/examples/fabric/connection/example_port_to_vd/java/pom.xml index 03c841eb1..5ce1b79a0 100644 --- a/examples/fabric/connection/example_port_to_vd/java/pom.xml +++ b/examples/fabric/connection/example_port_to_vd/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_port_to_vd/python/requirements.txt b/examples/fabric/connection/example_port_to_vd/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_port_to_vd/python/requirements.txt +++ b/examples/fabric/connection/example_port_to_vd/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_port_to_vd/typescript/package.json b/examples/fabric/connection/example_port_to_vd/typescript/package.json index aee84e21d..7eca5c91e 100644 --- a/examples/fabric/connection/example_port_to_vd/typescript/package.json +++ b/examples/fabric/connection/example_port_to_vd/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj b/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj +++ b/examples/fabric/connection/example_token_to_aws/csharp/equinix-fabric-connection-example_token_to_aws.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_token_to_aws/java/pom.xml b/examples/fabric/connection/example_token_to_aws/java/pom.xml index 0b5ba13e9..f6bbee686 100644 --- a/examples/fabric/connection/example_token_to_aws/java/pom.xml +++ b/examples/fabric/connection/example_token_to_aws/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_token_to_aws/python/requirements.txt b/examples/fabric/connection/example_token_to_aws/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_token_to_aws/python/requirements.txt +++ b/examples/fabric/connection/example_token_to_aws/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_token_to_aws/typescript/package.json b/examples/fabric/connection/example_token_to_aws/typescript/package.json index 3b30e65b4..6fa51840e 100644 --- a/examples/fabric/connection/example_token_to_aws/typescript/package.json +++ b/examples/fabric/connection/example_token_to_aws/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj b/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj +++ b/examples/fabric/connection/example_vd_to_azure/csharp/equinix-fabric-connection-example_vd_to_azure.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure/java/pom.xml b/examples/fabric/connection/example_vd_to_azure/java/pom.xml index fd4fa5338..6337f3861 100644 --- a/examples/fabric/connection/example_vd_to_azure/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_azure/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_vd_to_azure/python/requirements.txt b/examples/fabric/connection/example_vd_to_azure/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_vd_to_azure/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_azure/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_vd_to_azure/typescript/package.json b/examples/fabric/connection/example_vd_to_azure/typescript/package.json index ccffd9e34..4a82b43f3 100644 --- a/examples/fabric/connection/example_vd_to_azure/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_azure/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj b/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj +++ b/examples/fabric/connection/example_vd_to_azure_redundant/csharp/equinix-fabric-connection-example_vd_to_azure_redundant.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml b/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml index 7c979e6f9..f4771cc5b 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_azure_redundant/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt b/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_azure_redundant/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json b/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json index 17355b152..a3c21c14a 100644 --- a/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_azure_redundant/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj b/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj +++ b/examples/fabric/connection/example_vd_to_network/csharp/equinix-fabric-connection-example_vd_to_network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_network/java/pom.xml b/examples/fabric/connection/example_vd_to_network/java/pom.xml index 5b63381a8..663742cbb 100644 --- a/examples/fabric/connection/example_vd_to_network/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_vd_to_network/python/requirements.txt b/examples/fabric/connection/example_vd_to_network/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_vd_to_network/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_vd_to_network/typescript/package.json b/examples/fabric/connection/example_vd_to_network/typescript/package.json index a0b9a31a3..84e1f3678 100644 --- a/examples/fabric/connection/example_vd_to_network/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj b/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj +++ b/examples/fabric/connection/example_vd_to_token/csharp/equinix-fabric-connection-example_vd_to_token.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection/example_vd_to_token/java/pom.xml b/examples/fabric/connection/example_vd_to_token/java/pom.xml index 0b2380b22..5b9bdbff2 100644 --- a/examples/fabric/connection/example_vd_to_token/java/pom.xml +++ b/examples/fabric/connection/example_vd_to_token/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection/example_vd_to_token/python/requirements.txt b/examples/fabric/connection/example_vd_to_token/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection/example_vd_to_token/python/requirements.txt +++ b/examples/fabric/connection/example_vd_to_token/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection/example_vd_to_token/typescript/package.json b/examples/fabric/connection/example_vd_to_token/typescript/package.json index 13f108bb8..50d13d9df 100644 --- a/examples/fabric/connection/example_vd_to_token/typescript/package.json +++ b/examples/fabric/connection/example_vd_to_token/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj b/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj +++ b/examples/fabric/connection_route_filter/csharp/equinix-fabric-connection_route_filter.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/connection_route_filter/java/pom.xml b/examples/fabric/connection_route_filter/java/pom.xml index 83fa65e70..9571de127 100644 --- a/examples/fabric/connection_route_filter/java/pom.xml +++ b/examples/fabric/connection_route_filter/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/connection_route_filter/python/requirements.txt b/examples/fabric/connection_route_filter/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/connection_route_filter/python/requirements.txt +++ b/examples/fabric/connection_route_filter/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/connection_route_filter/typescript/package.json b/examples/fabric/connection_route_filter/typescript/package.json index 670cd193e..06eaed94e 100644 --- a/examples/fabric/connection_route_filter/typescript/package.json +++ b/examples/fabric/connection_route_filter/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/network/csharp/equinix-fabric-network.csproj b/examples/fabric/network/csharp/equinix-fabric-network.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/network/csharp/equinix-fabric-network.csproj +++ b/examples/fabric/network/csharp/equinix-fabric-network.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/network/java/pom.xml b/examples/fabric/network/java/pom.xml index 774b77ff6..0e7030f06 100644 --- a/examples/fabric/network/java/pom.xml +++ b/examples/fabric/network/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/network/python/requirements.txt b/examples/fabric/network/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/network/python/requirements.txt +++ b/examples/fabric/network/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/network/typescript/package.json b/examples/fabric/network/typescript/package.json index c87b588f4..84ea6ec86 100644 --- a/examples/fabric/network/typescript/package.json +++ b/examples/fabric/network/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj b/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj +++ b/examples/fabric/route_filter_rule/csharp/equinix-fabric-route_filter_rule.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/route_filter_rule/java/pom.xml b/examples/fabric/route_filter_rule/java/pom.xml index f9c0ff23f..a6ca332b0 100644 --- a/examples/fabric/route_filter_rule/java/pom.xml +++ b/examples/fabric/route_filter_rule/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/route_filter_rule/python/requirements.txt b/examples/fabric/route_filter_rule/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/route_filter_rule/python/requirements.txt +++ b/examples/fabric/route_filter_rule/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/route_filter_rule/typescript/package.json b/examples/fabric/route_filter_rule/typescript/package.json index b16ffb20d..de0163cdb 100644 --- a/examples/fabric/route_filter_rule/typescript/package.json +++ b/examples/fabric/route_filter_rule/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj b/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj +++ b/examples/fabric/routing_protocol/example_1/csharp/equinix-fabric-routing_protocol-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_1/java/pom.xml b/examples/fabric/routing_protocol/example_1/java/pom.xml index c4489d6ce..bfe093ac7 100644 --- a/examples/fabric/routing_protocol/example_1/java/pom.xml +++ b/examples/fabric/routing_protocol/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/routing_protocol/example_1/python/requirements.txt b/examples/fabric/routing_protocol/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/routing_protocol/example_1/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/routing_protocol/example_1/typescript/package.json b/examples/fabric/routing_protocol/example_1/typescript/package.json index 9fbcdf6de..81171ffe7 100644 --- a/examples/fabric/routing_protocol/example_1/typescript/package.json +++ b/examples/fabric/routing_protocol/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj b/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj +++ b/examples/fabric/routing_protocol/example_2/csharp/equinix-fabric-routing_protocol-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_2/java/pom.xml b/examples/fabric/routing_protocol/example_2/java/pom.xml index e16335b8d..f52c761a1 100644 --- a/examples/fabric/routing_protocol/example_2/java/pom.xml +++ b/examples/fabric/routing_protocol/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/routing_protocol/example_2/python/requirements.txt b/examples/fabric/routing_protocol/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/routing_protocol/example_2/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/routing_protocol/example_2/typescript/package.json b/examples/fabric/routing_protocol/example_2/typescript/package.json index af9f63486..64ebc8ed0 100644 --- a/examples/fabric/routing_protocol/example_2/typescript/package.json +++ b/examples/fabric/routing_protocol/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj b/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj +++ b/examples/fabric/routing_protocol/example_3/csharp/equinix-fabric-routing_protocol-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/routing_protocol/example_3/java/pom.xml b/examples/fabric/routing_protocol/example_3/java/pom.xml index 0b79c0e9e..d6e6344e7 100644 --- a/examples/fabric/routing_protocol/example_3/java/pom.xml +++ b/examples/fabric/routing_protocol/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/routing_protocol/example_3/python/requirements.txt b/examples/fabric/routing_protocol/example_3/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/routing_protocol/example_3/python/requirements.txt +++ b/examples/fabric/routing_protocol/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/routing_protocol/example_3/typescript/package.json b/examples/fabric/routing_protocol/example_3/typescript/package.json index b79b94742..b9f31ad9e 100644 --- a/examples/fabric/routing_protocol/example_3/typescript/package.json +++ b/examples/fabric/routing_protocol/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj b/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj index aa0909a64..361821045 100644 --- a/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj +++ b/examples/fabric/service_profile/csharp/equinix-fabric-service_profile.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/fabric/service_profile/java/pom.xml b/examples/fabric/service_profile/java/pom.xml index aba7445b2..d4aeb3f1f 100644 --- a/examples/fabric/service_profile/java/pom.xml +++ b/examples/fabric/service_profile/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/fabric/service_profile/python/requirements.txt b/examples/fabric/service_profile/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/fabric/service_profile/python/requirements.txt +++ b/examples/fabric/service_profile/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/fabric/service_profile/typescript/package.json b/examples/fabric/service_profile/typescript/package.json index bad9e40fc..17c1f4416 100644 --- a/examples/fabric/service_profile/typescript/package.json +++ b/examples/fabric/service_profile/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj b/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj index cd97dd023..c23bc1439 100644 --- a/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj +++ b/examples/metal/bgp_session/csharp/equinix-metal-bgp_session.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/metal/bgp_session/java/pom.xml b/examples/metal/bgp_session/java/pom.xml index 51365dcaf..969f37705 100644 --- a/examples/metal/bgp_session/java/pom.xml +++ b/examples/metal/bgp_session/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi null diff --git a/examples/metal/bgp_session/python/requirements.txt b/examples/metal/bgp_session/python/requirements.txt index 3c0e06217..89c83f72f 100644 --- a/examples/metal/bgp_session/python/requirements.txt +++ b/examples/metal/bgp_session/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-null==0.0.8 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/bgp_session/typescript/package.json b/examples/metal/bgp_session/typescript/package.json index 5ad34442e..981ac6af4 100644 --- a/examples/metal/bgp_session/typescript/package.json +++ b/examples/metal/bgp_session/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/null": "0.0.8" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj index aa0909a64..361821045 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fabric_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml index 0bc7c93e8..a6f4d6c58 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json index 4c7891cb2..22fc41283 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_fabric_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj b/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj index aa0909a64..361821045 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/csharp/equinix-metal-connection-example_fabric_billed_metal_from_fcr.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml index 634e92269..484f039c4 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json index 63ead3387..4c4c13ca3 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_fcr/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj index aa0909a64..361821045 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/csharp/equinix-metal-connection-example_fabric_billed_metal_from_network_edge.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml index bf3dbe617..9afc1269e 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json index 74ae18a80..37615728a 100644 --- a/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json +++ b/examples/metal/connection/example_fabric_billed_metal_from_network_edge/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj index aa0909a64..361821045 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/csharp/equinix-metal-connection-example_metal_billed_metal_to_fabric_port.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml index 8cfe4e5df..9bdeae3c1 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json index 659898578..e266fd1b2 100644 --- a/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json +++ b/examples/metal/connection/example_metal_billed_metal_to_fabric_port/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj b/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj +++ b/examples/metal/device/example_1/csharp/equinix-metal-device-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_1/java/pom.xml b/examples/metal/device/example_1/java/pom.xml index c8ab91bac..6728e2292 100644 --- a/examples/metal/device/example_1/java/pom.xml +++ b/examples/metal/device/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device/example_1/python/requirements.txt b/examples/metal/device/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device/example_1/python/requirements.txt +++ b/examples/metal/device/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device/example_1/typescript/package.json b/examples/metal/device/example_1/typescript/package.json index c8d66caa4..770383f8c 100644 --- a/examples/metal/device/example_1/typescript/package.json +++ b/examples/metal/device/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj b/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj +++ b/examples/metal/device/example_2/csharp/equinix-metal-device-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_2/java/pom.xml b/examples/metal/device/example_2/java/pom.xml index 9b9aac353..fec0bbe09 100644 --- a/examples/metal/device/example_2/java/pom.xml +++ b/examples/metal/device/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device/example_2/python/requirements.txt b/examples/metal/device/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device/example_2/python/requirements.txt +++ b/examples/metal/device/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device/example_2/typescript/package.json b/examples/metal/device/example_2/typescript/package.json index 1c04b5783..4eab5d4e3 100644 --- a/examples/metal/device/example_2/typescript/package.json +++ b/examples/metal/device/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj b/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj +++ b/examples/metal/device/example_3/csharp/equinix-metal-device-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_3/java/pom.xml b/examples/metal/device/example_3/java/pom.xml index 0f52d6210..9f0061965 100644 --- a/examples/metal/device/example_3/java/pom.xml +++ b/examples/metal/device/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device/example_3/python/requirements.txt b/examples/metal/device/example_3/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device/example_3/python/requirements.txt +++ b/examples/metal/device/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device/example_3/typescript/package.json b/examples/metal/device/example_3/typescript/package.json index ea55e2e0f..09d924378 100644 --- a/examples/metal/device/example_3/typescript/package.json +++ b/examples/metal/device/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj b/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj +++ b/examples/metal/device/example_4/csharp/equinix-metal-device-example_4.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_4/java/pom.xml b/examples/metal/device/example_4/java/pom.xml index abb1583e0..46a1d3499 100644 --- a/examples/metal/device/example_4/java/pom.xml +++ b/examples/metal/device/example_4/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device/example_4/python/requirements.txt b/examples/metal/device/example_4/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device/example_4/python/requirements.txt +++ b/examples/metal/device/example_4/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device/example_4/typescript/package.json b/examples/metal/device/example_4/typescript/package.json index fa33f7401..e9883982e 100644 --- a/examples/metal/device/example_4/typescript/package.json +++ b/examples/metal/device/example_4/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj b/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj +++ b/examples/metal/device/example_5/csharp/equinix-metal-device-example_5.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device/example_5/java/pom.xml b/examples/metal/device/example_5/java/pom.xml index 66bfc8417..fa508ba8c 100644 --- a/examples/metal/device/example_5/java/pom.xml +++ b/examples/metal/device/example_5/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device/example_5/python/requirements.txt b/examples/metal/device/example_5/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device/example_5/python/requirements.txt +++ b/examples/metal/device/example_5/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device/example_5/typescript/package.json b/examples/metal/device/example_5/typescript/package.json index b454377c2..783ce0d02 100644 --- a/examples/metal/device/example_5/typescript/package.json +++ b/examples/metal/device/example_5/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj b/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj index aa0909a64..361821045 100644 --- a/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj +++ b/examples/metal/device_network_type/csharp/equinix-metal-device-network-type.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/device_network_type/java/pom.xml b/examples/metal/device_network_type/java/pom.xml index 55276d057..7b25a5adb 100644 --- a/examples/metal/device_network_type/java/pom.xml +++ b/examples/metal/device_network_type/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/device_network_type/python/requirements.txt b/examples/metal/device_network_type/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/device_network_type/python/requirements.txt +++ b/examples/metal/device_network_type/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/device_network_type/typescript/package.json b/examples/metal/device_network_type/typescript/package.json index 7bb209aa1..26f12c66a 100644 --- a/examples/metal/device_network_type/typescript/package.json +++ b/examples/metal/device_network_type/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj b/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj +++ b/examples/metal/gateway/example_1/csharp/equinix-metal-gateway-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/gateway/example_1/java/pom.xml b/examples/metal/gateway/example_1/java/pom.xml index ec0b7b0d0..0285d0df4 100644 --- a/examples/metal/gateway/example_1/java/pom.xml +++ b/examples/metal/gateway/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/gateway/example_1/python/requirements.txt b/examples/metal/gateway/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/gateway/example_1/python/requirements.txt +++ b/examples/metal/gateway/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/gateway/example_1/typescript/package.json b/examples/metal/gateway/example_1/typescript/package.json index b404e61eb..e2e2cf00a 100644 --- a/examples/metal/gateway/example_1/typescript/package.json +++ b/examples/metal/gateway/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj b/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj +++ b/examples/metal/gateway/example_2/csharp/equinix-metal-gateway-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/gateway/example_2/java/pom.xml b/examples/metal/gateway/example_2/java/pom.xml index 00551de3e..7361da23e 100644 --- a/examples/metal/gateway/example_2/java/pom.xml +++ b/examples/metal/gateway/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/gateway/example_2/python/requirements.txt b/examples/metal/gateway/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/gateway/example_2/python/requirements.txt +++ b/examples/metal/gateway/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/gateway/example_2/typescript/package.json b/examples/metal/gateway/example_2/typescript/package.json index 5e07cb00e..c528e8943 100644 --- a/examples/metal/gateway/example_2/typescript/package.json +++ b/examples/metal/gateway/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj b/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj index 3e1af7971..9bd721565 100644 --- a/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj +++ b/examples/metal/ip_attachment/csharp/equinix-metal-ip_attachment.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/metal/ip_attachment/java/pom.xml b/examples/metal/ip_attachment/java/pom.xml index 6d51df231..e2fca90c0 100644 --- a/examples/metal/ip_attachment/java/pom.xml +++ b/examples/metal/ip_attachment/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/metal/ip_attachment/python/requirements.txt b/examples/metal/ip_attachment/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/metal/ip_attachment/python/requirements.txt +++ b/examples/metal/ip_attachment/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/ip_attachment/typescript/package.json b/examples/metal/ip_attachment/typescript/package.json index 405930c7b..1cfd12840 100644 --- a/examples/metal/ip_attachment/typescript/package.json +++ b/examples/metal/ip_attachment/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/metal/organization/csharp/equinix-metal-organization.csproj b/examples/metal/organization/csharp/equinix-metal-organization.csproj index aa0909a64..361821045 100644 --- a/examples/metal/organization/csharp/equinix-metal-organization.csproj +++ b/examples/metal/organization/csharp/equinix-metal-organization.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization/java/pom.xml b/examples/metal/organization/java/pom.xml index 8ac334f8b..767a5bc5a 100644 --- a/examples/metal/organization/java/pom.xml +++ b/examples/metal/organization/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/organization/python/requirements.txt b/examples/metal/organization/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/organization/python/requirements.txt +++ b/examples/metal/organization/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/organization/typescript/package.json b/examples/metal/organization/typescript/package.json index bbd7a526e..f759bcb70 100644 --- a/examples/metal/organization/typescript/package.json +++ b/examples/metal/organization/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj b/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj +++ b/examples/metal/organization_member/example_1/csharp/equinix-metal-organization_member-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization_member/example_1/java/pom.xml b/examples/metal/organization_member/example_1/java/pom.xml index 5b81f185d..359996d71 100644 --- a/examples/metal/organization_member/example_1/java/pom.xml +++ b/examples/metal/organization_member/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/organization_member/example_1/python/requirements.txt b/examples/metal/organization_member/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/organization_member/example_1/python/requirements.txt +++ b/examples/metal/organization_member/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/organization_member/example_1/typescript/package.json b/examples/metal/organization_member/example_1/typescript/package.json index d8428bf01..6b465ddc9 100644 --- a/examples/metal/organization_member/example_1/typescript/package.json +++ b/examples/metal/organization_member/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj b/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj +++ b/examples/metal/organization_member/example_2/csharp/equinix-metal-organization_member-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/organization_member/example_2/java/pom.xml b/examples/metal/organization_member/example_2/java/pom.xml index b2eaae7f4..42e2f611a 100644 --- a/examples/metal/organization_member/example_2/java/pom.xml +++ b/examples/metal/organization_member/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/organization_member/example_2/python/requirements.txt b/examples/metal/organization_member/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/organization_member/example_2/python/requirements.txt +++ b/examples/metal/organization_member/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/organization_member/example_2/typescript/package.json b/examples/metal/organization_member/example_2/typescript/package.json index a086a577d..eea191827 100644 --- a/examples/metal/organization_member/example_2/typescript/package.json +++ b/examples/metal/organization_member/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj b/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj +++ b/examples/metal/port_vlan_attachment/example_1/csharp/equinix-metal-port_vlan_attachment-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_1/java/pom.xml b/examples/metal/port_vlan_attachment/example_1/java/pom.xml index 15c44ba8d..661e99a8f 100644 --- a/examples/metal/port_vlan_attachment/example_1/java/pom.xml +++ b/examples/metal/port_vlan_attachment/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/port_vlan_attachment/example_1/python/requirements.txt b/examples/metal/port_vlan_attachment/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/port_vlan_attachment/example_1/python/requirements.txt +++ b/examples/metal/port_vlan_attachment/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/port_vlan_attachment/example_1/typescript/package.json b/examples/metal/port_vlan_attachment/example_1/typescript/package.json index f187404b5..81a12b69d 100644 --- a/examples/metal/port_vlan_attachment/example_1/typescript/package.json +++ b/examples/metal/port_vlan_attachment/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj b/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj +++ b/examples/metal/port_vlan_attachment/example_2/csharp/equinix-metal-port_vlan_attachment-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/port_vlan_attachment/example_2/java/pom.xml b/examples/metal/port_vlan_attachment/example_2/java/pom.xml index 3fdb498f8..148a6bfae 100644 --- a/examples/metal/port_vlan_attachment/example_2/java/pom.xml +++ b/examples/metal/port_vlan_attachment/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/port_vlan_attachment/example_2/python/requirements.txt b/examples/metal/port_vlan_attachment/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/port_vlan_attachment/example_2/python/requirements.txt +++ b/examples/metal/port_vlan_attachment/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/port_vlan_attachment/example_2/typescript/package.json b/examples/metal/port_vlan_attachment/example_2/typescript/package.json index e4fa073e2..2529e0396 100644 --- a/examples/metal/port_vlan_attachment/example_2/typescript/package.json +++ b/examples/metal/port_vlan_attachment/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj b/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj +++ b/examples/metal/project/example_1/csharp/equinix-metal-project-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_1/java/pom.xml b/examples/metal/project/example_1/java/pom.xml index f3061ef73..f2a41c6a7 100644 --- a/examples/metal/project/example_1/java/pom.xml +++ b/examples/metal/project/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/project/example_1/python/requirements.txt b/examples/metal/project/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/project/example_1/python/requirements.txt +++ b/examples/metal/project/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/project/example_1/typescript/package.json b/examples/metal/project/example_1/typescript/package.json index 95477f2a8..8bb6e0343 100644 --- a/examples/metal/project/example_1/typescript/package.json +++ b/examples/metal/project/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj b/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj +++ b/examples/metal/project/example_2/csharp/equinix-metal-project-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_2/java/pom.xml b/examples/metal/project/example_2/java/pom.xml index 4c88d40c5..51df2f714 100644 --- a/examples/metal/project/example_2/java/pom.xml +++ b/examples/metal/project/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/project/example_2/python/requirements.txt b/examples/metal/project/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/project/example_2/python/requirements.txt +++ b/examples/metal/project/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/project/example_2/typescript/package.json b/examples/metal/project/example_2/typescript/package.json index 8a913a3ec..7757daf99 100644 --- a/examples/metal/project/example_2/typescript/package.json +++ b/examples/metal/project/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj b/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj index aa0909a64..361821045 100644 --- a/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj +++ b/examples/metal/project/example_3/csharp/equinix-metal-project-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project/example_3/java/pom.xml b/examples/metal/project/example_3/java/pom.xml index 6f36bd9bc..3a6253976 100644 --- a/examples/metal/project/example_3/java/pom.xml +++ b/examples/metal/project/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/project/example_3/python/requirements.txt b/examples/metal/project/example_3/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/project/example_3/python/requirements.txt +++ b/examples/metal/project/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/project/example_3/typescript/package.json b/examples/metal/project/example_3/typescript/package.json index f71af61ef..a047c945c 100644 --- a/examples/metal/project/example_3/typescript/package.json +++ b/examples/metal/project/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj b/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj index aa0909a64..361821045 100644 --- a/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj +++ b/examples/metal/project_api_key/csharp/equinix-metal-project_api_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project_api_key/java/pom.xml b/examples/metal/project_api_key/java/pom.xml index 3f1e3d4b7..0ddadd4f9 100644 --- a/examples/metal/project_api_key/java/pom.xml +++ b/examples/metal/project_api_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/project_api_key/python/requirements.txt b/examples/metal/project_api_key/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/project_api_key/python/requirements.txt +++ b/examples/metal/project_api_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/project_api_key/typescript/package.json b/examples/metal/project_api_key/typescript/package.json index 23faee63e..29fa61be4 100644 --- a/examples/metal/project_api_key/typescript/package.json +++ b/examples/metal/project_api_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj b/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj index aa0909a64..361821045 100644 --- a/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj +++ b/examples/metal/project_ssh_key/csharp/equinix-metal-project_ssh_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/project_ssh_key/java/pom.xml b/examples/metal/project_ssh_key/java/pom.xml index f2171ad0f..fa6b34300 100644 --- a/examples/metal/project_ssh_key/java/pom.xml +++ b/examples/metal/project_ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/project_ssh_key/python/requirements.txt b/examples/metal/project_ssh_key/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/project_ssh_key/python/requirements.txt +++ b/examples/metal/project_ssh_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/project_ssh_key/typescript/package.json b/examples/metal/project_ssh_key/typescript/package.json index 1789c686e..27a6dacde 100644 --- a/examples/metal/project_ssh_key/typescript/package.json +++ b/examples/metal/project_ssh_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj b/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj +++ b/examples/metal/reserved_ip_block/example_1/csharp/equinix-metal-reserved_ip_block-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_1/java/pom.xml b/examples/metal/reserved_ip_block/example_1/java/pom.xml index c319f2473..5959f4144 100644 --- a/examples/metal/reserved_ip_block/example_1/java/pom.xml +++ b/examples/metal/reserved_ip_block/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/reserved_ip_block/example_1/python/requirements.txt b/examples/metal/reserved_ip_block/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/reserved_ip_block/example_1/python/requirements.txt +++ b/examples/metal/reserved_ip_block/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/reserved_ip_block/example_1/typescript/package.json b/examples/metal/reserved_ip_block/example_1/typescript/package.json index 94875be1c..cee95de3a 100644 --- a/examples/metal/reserved_ip_block/example_1/typescript/package.json +++ b/examples/metal/reserved_ip_block/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj b/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj +++ b/examples/metal/reserved_ip_block/example_2/csharp/equinix-metal-reserved_ip_block-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/reserved_ip_block/example_2/java/pom.xml b/examples/metal/reserved_ip_block/example_2/java/pom.xml index be8f5fed2..e922b6af6 100644 --- a/examples/metal/reserved_ip_block/example_2/java/pom.xml +++ b/examples/metal/reserved_ip_block/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/reserved_ip_block/example_2/python/requirements.txt b/examples/metal/reserved_ip_block/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/reserved_ip_block/example_2/python/requirements.txt +++ b/examples/metal/reserved_ip_block/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/reserved_ip_block/example_2/typescript/package.json b/examples/metal/reserved_ip_block/example_2/typescript/package.json index 72636ed52..4ee9cf36e 100644 --- a/examples/metal/reserved_ip_block/example_2/typescript/package.json +++ b/examples/metal/reserved_ip_block/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj b/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj index aa0909a64..361821045 100644 --- a/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj +++ b/examples/metal/spot_market_request/csharp/equinix-metal-spot_market_request.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/spot_market_request/java/pom.xml b/examples/metal/spot_market_request/java/pom.xml index 33907e87d..d92f52e7e 100644 --- a/examples/metal/spot_market_request/java/pom.xml +++ b/examples/metal/spot_market_request/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/spot_market_request/python/requirements.txt b/examples/metal/spot_market_request/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/spot_market_request/python/requirements.txt +++ b/examples/metal/spot_market_request/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/spot_market_request/typescript/package.json b/examples/metal/spot_market_request/typescript/package.json index 68cf2cc13..67868a63c 100644 --- a/examples/metal/spot_market_request/typescript/package.json +++ b/examples/metal/spot_market_request/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj b/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj index 3e1af7971..9bd721565 100644 --- a/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj +++ b/examples/metal/ssh_key/csharp/equinix-metal-ssh_key.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/metal/ssh_key/java/pom.xml b/examples/metal/ssh_key/java/pom.xml index 083683f02..1863b561f 100644 --- a/examples/metal/ssh_key/java/pom.xml +++ b/examples/metal/ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/metal/ssh_key/python/requirements.txt b/examples/metal/ssh_key/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/metal/ssh_key/python/requirements.txt +++ b/examples/metal/ssh_key/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/ssh_key/typescript/package.json b/examples/metal/ssh_key/typescript/package.json index f47c8af1c..67266a4f4 100644 --- a/examples/metal/ssh_key/typescript/package.json +++ b/examples/metal/ssh_key/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj b/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj index aa0909a64..361821045 100644 --- a/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj +++ b/examples/metal/user_api_key/csharp/equinix-metal-user_api_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/user_api_key/java/pom.xml b/examples/metal/user_api_key/java/pom.xml index 0876684b7..612278caf 100644 --- a/examples/metal/user_api_key/java/pom.xml +++ b/examples/metal/user_api_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/user_api_key/python/requirements.txt b/examples/metal/user_api_key/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/user_api_key/python/requirements.txt +++ b/examples/metal/user_api_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/user_api_key/typescript/package.json b/examples/metal/user_api_key/typescript/package.json index a3e92027e..822973b69 100644 --- a/examples/metal/user_api_key/typescript/package.json +++ b/examples/metal/user_api_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj b/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj index aa0909a64..361821045 100644 --- a/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj +++ b/examples/metal/virtual_circuit/csharp/equinix-metal-virtual_circuit.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/virtual_circuit/java/pom.xml b/examples/metal/virtual_circuit/java/pom.xml index f8801820c..a3f41921d 100644 --- a/examples/metal/virtual_circuit/java/pom.xml +++ b/examples/metal/virtual_circuit/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/virtual_circuit/python/requirements.txt b/examples/metal/virtual_circuit/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/virtual_circuit/python/requirements.txt +++ b/examples/metal/virtual_circuit/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/virtual_circuit/typescript/package.json b/examples/metal/virtual_circuit/typescript/package.json index 9b6e9d822..aa7b79025 100644 --- a/examples/metal/virtual_circuit/typescript/package.json +++ b/examples/metal/virtual_circuit/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/vlan/csharp/equinix-metal-vlan.csproj b/examples/metal/vlan/csharp/equinix-metal-vlan.csproj index aa0909a64..361821045 100644 --- a/examples/metal/vlan/csharp/equinix-metal-vlan.csproj +++ b/examples/metal/vlan/csharp/equinix-metal-vlan.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vlan/java/pom.xml b/examples/metal/vlan/java/pom.xml index 64375429c..fbd452cff 100644 --- a/examples/metal/vlan/java/pom.xml +++ b/examples/metal/vlan/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/vlan/python/requirements.txt b/examples/metal/vlan/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/vlan/python/requirements.txt +++ b/examples/metal/vlan/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/vlan/typescript/package.json b/examples/metal/vlan/typescript/package.json index 27e3ad794..075363353 100644 --- a/examples/metal/vlan/typescript/package.json +++ b/examples/metal/vlan/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj b/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj +++ b/examples/metal/vrf/example_1/csharp/equinix-metal-vrf-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_1/java/pom.xml b/examples/metal/vrf/example_1/java/pom.xml index b3a61c29d..bb9fb1d42 100644 --- a/examples/metal/vrf/example_1/java/pom.xml +++ b/examples/metal/vrf/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/vrf/example_1/python/requirements.txt b/examples/metal/vrf/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/vrf/example_1/python/requirements.txt +++ b/examples/metal/vrf/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/vrf/example_1/typescript/package.json b/examples/metal/vrf/example_1/typescript/package.json index 065e6f8b1..8d4b4ab2e 100644 --- a/examples/metal/vrf/example_1/typescript/package.json +++ b/examples/metal/vrf/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj b/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj +++ b/examples/metal/vrf/example_2/csharp/equinix-metal-vrf-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_2/java/pom.xml b/examples/metal/vrf/example_2/java/pom.xml index 8a2ffff4e..c5d6f501f 100644 --- a/examples/metal/vrf/example_2/java/pom.xml +++ b/examples/metal/vrf/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/vrf/example_2/python/requirements.txt b/examples/metal/vrf/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/vrf/example_2/python/requirements.txt +++ b/examples/metal/vrf/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/vrf/example_2/typescript/package.json b/examples/metal/vrf/example_2/typescript/package.json index 7cdd0656f..0296bbe80 100644 --- a/examples/metal/vrf/example_2/typescript/package.json +++ b/examples/metal/vrf/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj b/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj index aa0909a64..361821045 100644 --- a/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj +++ b/examples/metal/vrf/example_3/csharp/equinix-metal-vrf-example_3.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/metal/vrf/example_3/java/pom.xml b/examples/metal/vrf/example_3/java/pom.xml index 8edb16a1a..f2b3d2f38 100644 --- a/examples/metal/vrf/example_3/java/pom.xml +++ b/examples/metal/vrf/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/metal/vrf/example_3/python/requirements.txt b/examples/metal/vrf/example_3/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/metal/vrf/example_3/python/requirements.txt +++ b/examples/metal/vrf/example_3/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/metal/vrf/example_3/typescript/package.json b/examples/metal/vrf/example_3/typescript/package.json index 48dbdb765..62730721c 100644 --- a/examples/metal/vrf/example_3/typescript/package.json +++ b/examples/metal/vrf/example_3/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/acl_template/csharp/equinix-network-acl_template.csproj b/examples/network/acl_template/csharp/equinix-network-acl_template.csproj index aa0909a64..361821045 100644 --- a/examples/network/acl_template/csharp/equinix-network-acl_template.csproj +++ b/examples/network/acl_template/csharp/equinix-network-acl_template.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/acl_template/java/pom.xml b/examples/network/acl_template/java/pom.xml index 39392941f..b86cf0526 100644 --- a/examples/network/acl_template/java/pom.xml +++ b/examples/network/acl_template/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/acl_template/python/requirements.txt b/examples/network/acl_template/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/acl_template/python/requirements.txt +++ b/examples/network/acl_template/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/acl_template/typescript/package.json b/examples/network/acl_template/typescript/package.json index 097a5813a..e347e7ad4 100644 --- a/examples/network/acl_template/typescript/package.json +++ b/examples/network/acl_template/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/bgp/csharp/equinix-network-bgp.csproj b/examples/network/bgp/csharp/equinix-network-bgp.csproj index aa0909a64..361821045 100644 --- a/examples/network/bgp/csharp/equinix-network-bgp.csproj +++ b/examples/network/bgp/csharp/equinix-network-bgp.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/bgp/java/pom.xml b/examples/network/bgp/java/pom.xml index 7120d0a24..b8dcd674a 100644 --- a/examples/network/bgp/java/pom.xml +++ b/examples/network/bgp/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/bgp/python/requirements.txt b/examples/network/bgp/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/bgp/python/requirements.txt +++ b/examples/network/bgp/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/bgp/typescript/package.json b/examples/network/bgp/typescript/package.json index 8abb151f1..7bd118a32 100644 --- a/examples/network/bgp/typescript/package.json +++ b/examples/network/bgp/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj b/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj +++ b/examples/network/device/example_1/csharp/equinix-network-device-example_1.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_1/java/pom.xml b/examples/network/device/example_1/java/pom.xml index 5ab2125b9..74fcd2530 100644 --- a/examples/network/device/example_1/java/pom.xml +++ b/examples/network/device/example_1/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_1/python/requirements.txt b/examples/network/device/example_1/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_1/python/requirements.txt +++ b/examples/network/device/example_1/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_1/typescript/package.json b/examples/network/device/example_1/typescript/package.json index 2bf49a025..6fd4209b5 100644 --- a/examples/network/device/example_1/typescript/package.json +++ b/examples/network/device/example_1/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj b/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj +++ b/examples/network/device/example_2/csharp/equinix-network-device-example_2.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_2/java/pom.xml b/examples/network/device/example_2/java/pom.xml index e69595273..1026b9f96 100644 --- a/examples/network/device/example_2/java/pom.xml +++ b/examples/network/device/example_2/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_2/python/requirements.txt b/examples/network/device/example_2/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_2/python/requirements.txt +++ b/examples/network/device/example_2/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_2/typescript/package.json b/examples/network/device/example_2/typescript/package.json index 0799ad826..274d280bb 100644 --- a/examples/network/device/example_2/typescript/package.json +++ b/examples/network/device/example_2/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj b/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj index 3e1af7971..9bd721565 100644 --- a/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj +++ b/examples/network/device/example_3/csharp/equinix-network-device-example_3.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/device/example_3/java/pom.xml b/examples/network/device/example_3/java/pom.xml index bee7defb0..cc217c78e 100644 --- a/examples/network/device/example_3/java/pom.xml +++ b/examples/network/device/example_3/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/network/device/example_3/python/requirements.txt b/examples/network/device/example_3/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/network/device/example_3/python/requirements.txt +++ b/examples/network/device/example_3/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_3/typescript/package.json b/examples/network/device/example_3/typescript/package.json index b33ef4016..3a11d5364 100644 --- a/examples/network/device/example_3/typescript/package.json +++ b/examples/network/device/example_3/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj b/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj +++ b/examples/network/device/example_4/csharp/equinix-network-device-example_4.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_4/java/pom.xml b/examples/network/device/example_4/java/pom.xml index 482442fa8..7f35cfd65 100644 --- a/examples/network/device/example_4/java/pom.xml +++ b/examples/network/device/example_4/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_4/python/requirements.txt b/examples/network/device/example_4/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_4/python/requirements.txt +++ b/examples/network/device/example_4/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_4/typescript/package.json b/examples/network/device/example_4/typescript/package.json index ca10b3551..d4ea28b3b 100644 --- a/examples/network/device/example_4/typescript/package.json +++ b/examples/network/device/example_4/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj b/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj +++ b/examples/network/device/example_5/csharp/equinix-network-device-example_5.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_5/java/pom.xml b/examples/network/device/example_5/java/pom.xml index cacdbd0a5..cca765fc3 100644 --- a/examples/network/device/example_5/java/pom.xml +++ b/examples/network/device/example_5/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_5/python/requirements.txt b/examples/network/device/example_5/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_5/python/requirements.txt +++ b/examples/network/device/example_5/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_5/typescript/package.json b/examples/network/device/example_5/typescript/package.json index a7b8d0491..19be9def7 100644 --- a/examples/network/device/example_5/typescript/package.json +++ b/examples/network/device/example_5/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj b/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj +++ b/examples/network/device/example_6/csharp/equinix-network-device-example_6.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_6/java/pom.xml b/examples/network/device/example_6/java/pom.xml index 57e40e60e..2923cded8 100644 --- a/examples/network/device/example_6/java/pom.xml +++ b/examples/network/device/example_6/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_6/python/requirements.txt b/examples/network/device/example_6/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_6/python/requirements.txt +++ b/examples/network/device/example_6/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_6/typescript/package.json b/examples/network/device/example_6/typescript/package.json index 618fafd7f..1ffba8a07 100644 --- a/examples/network/device/example_6/typescript/package.json +++ b/examples/network/device/example_6/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj b/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj +++ b/examples/network/device/example_7/csharp/equinix-network-device-example_7.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_7/java/pom.xml b/examples/network/device/example_7/java/pom.xml index 4ffd0ccc2..62cdded13 100644 --- a/examples/network/device/example_7/java/pom.xml +++ b/examples/network/device/example_7/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_7/python/requirements.txt b/examples/network/device/example_7/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_7/python/requirements.txt +++ b/examples/network/device/example_7/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_7/typescript/package.json b/examples/network/device/example_7/typescript/package.json index d2ee1eaad..d41f0460c 100644 --- a/examples/network/device/example_7/typescript/package.json +++ b/examples/network/device/example_7/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj b/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj index 3e1af7971..9bd721565 100644 --- a/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj +++ b/examples/network/device/example_8/csharp/equinix-network-device-example_8.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/device/example_8/java/pom.xml b/examples/network/device/example_8/java/pom.xml index 89f3e8194..eac3dc88f 100644 --- a/examples/network/device/example_8/java/pom.xml +++ b/examples/network/device/example_8/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/network/device/example_8/python/requirements.txt b/examples/network/device/example_8/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/network/device/example_8/python/requirements.txt +++ b/examples/network/device/example_8/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_8/typescript/package.json b/examples/network/device/example_8/typescript/package.json index 4d65e7030..a1f118b78 100644 --- a/examples/network/device/example_8/typescript/package.json +++ b/examples/network/device/example_8/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj b/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj index aa0909a64..361821045 100644 --- a/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj +++ b/examples/network/device/example_9/csharp/equinix-network-device-example_9.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device/example_9/java/pom.xml b/examples/network/device/example_9/java/pom.xml index 0cfd72b94..c66341dfa 100644 --- a/examples/network/device/example_9/java/pom.xml +++ b/examples/network/device/example_9/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device/example_9/python/requirements.txt b/examples/network/device/example_9/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device/example_9/python/requirements.txt +++ b/examples/network/device/example_9/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_9/typescript/package.json b/examples/network/device/example_9/typescript/package.json index 567762165..012a90e60 100644 --- a/examples/network/device/example_9/typescript/package.json +++ b/examples/network/device/example_9/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj b/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj index 3e1af7971..9bd721565 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj +++ b/examples/network/device/example_Aviatrix_Transit_Edge/csharp/equinix-network-device-example_Aviatrix_Transit_Edge.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml b/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml index 53e0360cc..c50053a6b 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml +++ b/examples/network/device/example_Aviatrix_Transit_Edge/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt b/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt +++ b/examples/network/device/example_Aviatrix_Transit_Edge/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json b/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json index 8a999f07e..ce8a3234f 100644 --- a/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json +++ b/examples/network/device/example_Aviatrix_Transit_Edge/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/device_link/csharp/equinix-network-device_link.csproj b/examples/network/device_link/csharp/equinix-network-device_link.csproj index aa0909a64..361821045 100644 --- a/examples/network/device_link/csharp/equinix-network-device_link.csproj +++ b/examples/network/device_link/csharp/equinix-network-device_link.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/device_link/java/pom.xml b/examples/network/device_link/java/pom.xml index 7d2350d44..c1e3cf7ca 100644 --- a/examples/network/device_link/java/pom.xml +++ b/examples/network/device_link/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/device_link/python/requirements.txt b/examples/network/device_link/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/device_link/python/requirements.txt +++ b/examples/network/device_link/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/device_link/typescript/package.json b/examples/network/device_link/typescript/package.json index dbdb6e29a..791407a10 100644 --- a/examples/network/device_link/typescript/package.json +++ b/examples/network/device_link/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/file/csharp/equinix-network-file.csproj b/examples/network/file/csharp/equinix-network-file.csproj index 3e1af7971..9bd721565 100644 --- a/examples/network/file/csharp/equinix-network-file.csproj +++ b/examples/network/file/csharp/equinix-network-file.csproj @@ -7,7 +7,7 @@ - + diff --git a/examples/network/file/java/pom.xml b/examples/network/file/java/pom.xml index 9b1156a24..4d0a03db6 100644 --- a/examples/network/file/java/pom.xml +++ b/examples/network/file/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) com.pulumi std diff --git a/examples/network/file/python/requirements.txt b/examples/network/file/python/requirements.txt index 0ae719dad..fc62473fd 100644 --- a/examples/network/file/python/requirements.txt +++ b/examples/network/file/python/requirements.txt @@ -1,3 +1,3 @@ pulumi-std==1.7.3 pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/file/typescript/package.json b/examples/network/file/typescript/package.json index 3fe61d282..6a815cd05 100644 --- a/examples/network/file/typescript/package.json +++ b/examples/network/file/typescript/package.json @@ -6,7 +6,7 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499", + "@equinix-labs/pulumi-equinix": "<1.0.0", "@pulumi/std": "1.7.3" } } \ No newline at end of file diff --git a/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj b/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj index aa0909a64..361821045 100644 --- a/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj +++ b/examples/network/ssh_key/csharp/equinix-network-ssh_key.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/ssh_key/java/pom.xml b/examples/network/ssh_key/java/pom.xml index 625051248..8d9329ea7 100644 --- a/examples/network/ssh_key/java/pom.xml +++ b/examples/network/ssh_key/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/ssh_key/python/requirements.txt b/examples/network/ssh_key/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/ssh_key/python/requirements.txt +++ b/examples/network/ssh_key/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/ssh_key/typescript/package.json b/examples/network/ssh_key/typescript/package.json index 10edf5528..4016e91b3 100644 --- a/examples/network/ssh_key/typescript/package.json +++ b/examples/network/ssh_key/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file diff --git a/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj b/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj index aa0909a64..361821045 100644 --- a/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj +++ b/examples/network/ssh_user/csharp/equinix-network-ssh_user.csproj @@ -7,7 +7,7 @@ - + \ No newline at end of file diff --git a/examples/network/ssh_user/java/pom.xml b/examples/network/ssh_user/java/pom.xml index 2d45468ce..3875caf75 100644 --- a/examples/network/ssh_user/java/pom.xml +++ b/examples/network/ssh_user/java/pom.xml @@ -26,7 +26,7 @@ com.pulumi equinix - 0.18.1-alpha.1729554944+37549499 + (,1.0) diff --git a/examples/network/ssh_user/python/requirements.txt b/examples/network/ssh_user/python/requirements.txt index ba4c8d1e9..317d94a17 100644 --- a/examples/network/ssh_user/python/requirements.txt +++ b/examples/network/ssh_user/python/requirements.txt @@ -1,2 +1,2 @@ pulumi>=3.0.0,<4.0.0 -pulumi_equinix==0.18.1-alpha.1729554944+37549499 +pulumi_equinix==<1.0.0 diff --git a/examples/network/ssh_user/typescript/package.json b/examples/network/ssh_user/typescript/package.json index 3ce919b6e..f939285fb 100644 --- a/examples/network/ssh_user/typescript/package.json +++ b/examples/network/ssh_user/typescript/package.json @@ -6,6 +6,6 @@ "dependencies": { "typescript": "^4.0.0", "@pulumi/pulumi": "^3.0.0", - "@equinix-labs/pulumi-equinix": "0.18.1-alpha.1729554944+37549499" + "@equinix-labs/pulumi-equinix": "<1.0.0" } } \ No newline at end of file