From dddbffe643a989595b1839605d8230c1c9294242 Mon Sep 17 00:00:00 2001 From: Venelin Date: Fri, 4 Oct 2024 11:22:41 +0100 Subject: [PATCH] update module mappings --- .gitignore | 3 + .../bridge-metadata.json | 122 +- .../cmd/pulumi-resource-openstack/schema.json | 4167 +++++++++++------ provider/resources.go | 44 +- .../BGPVPN/Inputs/PortAssociateV2RouteArgs.cs | 49 + .../Inputs/PortAssociateV2RouteGetArgs.cs | 49 + sdk/dotnet/BGPVPN/NetworkAssociateV2.cs | 208 + .../BGPVPN/Outputs/PortAssociateV2Route.cs | 54 + sdk/dotnet/BGPVPN/PortAssociateV2.cs | 272 ++ sdk/dotnet/BGPVPN/README.md | 1 + sdk/dotnet/BGPVPN/RouterAssociateV2.cs | 229 + sdk/dotnet/BGPVPN/V2.cs | 458 ++ sdk/dotnet/BgpvpnNetworkAssociateV2.cs | 3 +- sdk/dotnet/BgpvpnPortAssociateV2.cs | 7 +- sdk/dotnet/BgpvpnRouterAssociateV2.cs | 3 +- sdk/dotnet/BgpvpnV2.cs | 3 +- sdk/dotnet/Firewall/GetGroupV2.cs | 320 ++ sdk/dotnet/Firewall/GetPolicyV2.cs | 260 + sdk/dotnet/Firewall/GetRuleV2.cs | 428 ++ sdk/dotnet/GetFwGroupV2.cs | 5 +- sdk/dotnet/GetFwPolicyV2.cs | 5 +- sdk/dotnet/GetFwRuleV2.cs | 5 +- sdk/dotnet/LbFlavorprofileV2.cs | 5 +- sdk/dotnet/LbLoadbalancerV2.cs | 7 +- sdk/dotnet/LoadBalancer/FlavorprofileV2.cs | 215 + sdk/dotnet/LoadBalancer/L7PolicyV2.cs | 2 +- sdk/dotnet/LoadBalancer/L7RuleV2.cs | 2 +- sdk/dotnet/LoadBalancer/Listener.cs | 2 +- sdk/dotnet/LoadBalancer/LoadBalancer.cs | 482 ++ sdk/go/openstack/bgpvpn/init.go | 65 + sdk/go/openstack/bgpvpn/networkAssociateV2.go | 360 ++ sdk/go/openstack/bgpvpn/portAssociateV2.go | 406 ++ sdk/go/openstack/bgpvpn/pulumiTypes.go | 160 + sdk/go/openstack/bgpvpn/routerAssociateV2.go | 381 ++ sdk/go/openstack/bgpvpn/v2.go | 526 +++ sdk/go/openstack/bgpvpnNetworkAssociateV2.go | 6 +- sdk/go/openstack/bgpvpnPortAssociateV2.go | 12 +- sdk/go/openstack/bgpvpnRouterAssociateV2.go | 6 +- sdk/go/openstack/bgpvpnV2.go | 6 +- sdk/go/openstack/firewall/getGroupV2.go | 246 + sdk/go/openstack/firewall/getPolicyV2.go | 211 + sdk/go/openstack/firewall/getRuleV2.go | 302 ++ sdk/go/openstack/getFwGroupV2.go | 6 +- sdk/go/openstack/getFwPolicyV2.go | 6 +- sdk/go/openstack/getFwRuleV2.go | 6 +- sdk/go/openstack/lbFlavorprofileV2.go | 10 +- sdk/go/openstack/lbLoadbalancerV2.go | 12 +- .../openstack/loadbalancer/flavorprofileV2.go | 374 ++ sdk/go/openstack/loadbalancer/init.go | 14 + sdk/go/openstack/loadbalancer/l7policyV2.go | 3 +- sdk/go/openstack/loadbalancer/l7ruleV2.go | 3 +- sdk/go/openstack/loadbalancer/listener.go | 3 +- sdk/go/openstack/loadbalancer/loadBalancer.go | 624 +++ .../openstack/BgpvpnNetworkAssociateV2.java | 10 +- .../openstack/BgpvpnPortAssociateV2.java | 16 +- .../openstack/BgpvpnRouterAssociateV2.java | 10 +- .../java/com/pulumi/openstack/BgpvpnV2.java | 10 +- .../pulumi/openstack/LbFlavorprofileV2.java | 16 +- .../pulumi/openstack/LbLoadbalancerV2.java | 14 +- .../pulumi/openstack/OpenstackFunctions.java | 180 +- .../openstack/bgpvpn/NetworkAssociateV2.java | 203 + .../bgpvpn/NetworkAssociateV2Args.java | 233 + .../openstack/bgpvpn/PortAssociateV2.java | 246 + .../openstack/bgpvpn/PortAssociateV2Args.java | 324 ++ .../openstack/bgpvpn/RouterAssociateV2.java | 220 + .../bgpvpn/RouterAssociateV2Args.java | 275 ++ .../java/com/pulumi/openstack/bgpvpn/V2.java | 357 ++ .../com/pulumi/openstack/bgpvpn/V2Args.java | 514 ++ .../inputs/NetworkAssociateV2State.java | 226 + .../inputs/PortAssociateV2RouteArgs.java | 219 + .../bgpvpn/inputs/PortAssociateV2State.java | 317 ++ .../bgpvpn/inputs/RouterAssociateV2State.java | 268 ++ .../openstack/bgpvpn/inputs/V2State.java | 693 +++ .../bgpvpn/outputs/PortAssociateV2Route.java | 134 + .../openstack/firewall/FirewallFunctions.java | 779 +++ .../firewall/inputs/GetGroupV2Args.java | 470 ++ .../firewall/inputs/GetGroupV2PlainArgs.java | 355 ++ .../firewall/inputs/GetPolicyV2Args.java | 359 ++ .../firewall/inputs/GetPolicyV2PlainArgs.java | 274 ++ .../firewall/inputs/GetRuleV2Args.java | 683 +++ .../firewall/inputs/GetRuleV2PlainArgs.java | 514 ++ .../firewall/outputs/GetGroupV2Result.java | 331 ++ .../firewall/outputs/GetPolicyV2Result.java | 258 + .../firewall/outputs/GetRuleV2Result.java | 414 ++ .../loadbalancer/FlavorprofileV2.java | 231 + .../loadbalancer/FlavorprofileV2Args.java | 201 + .../openstack/loadbalancer/L7PolicyV2.java | 6 +- .../openstack/loadbalancer/L7RuleV2.java | 6 +- .../openstack/loadbalancer/Listener.java | 6 +- .../openstack/loadbalancer/LoadBalancer.java | 393 ++ .../loadbalancer/LoadBalancerArgs.java | 730 +++ .../inputs/FlavorprofileV2State.java | 194 + .../inputs/LoadBalancerState.java | 730 +++ sdk/nodejs/bgpvpn/index.ts | 49 + sdk/nodejs/bgpvpn/networkAssociateV2.ts | 182 + sdk/nodejs/bgpvpn/portAssociateV2.ts | 225 + sdk/nodejs/bgpvpn/routerAssociateV2.ts | 199 + sdk/nodejs/bgpvpn/v2.ts | 316 ++ sdk/nodejs/bgpvpnNetworkAssociateV2.ts | 8 +- sdk/nodejs/bgpvpnPortAssociateV2.ts | 8 +- sdk/nodejs/bgpvpnRouterAssociateV2.ts | 8 +- sdk/nodejs/bgpvpnV2.ts | 8 +- sdk/nodejs/firewall/getGroupV2.ts | 234 + sdk/nodejs/firewall/getPolicyV2.ts | 189 + sdk/nodejs/firewall/getRuleV2.ts | 308 ++ sdk/nodejs/firewall/index.ts | 15 + sdk/nodejs/getFwGroupV2.ts | 8 +- sdk/nodejs/getFwPolicyV2.ts | 8 +- sdk/nodejs/getFwRuleV2.ts | 8 +- sdk/nodejs/index.ts | 2 + sdk/nodejs/lbFlavorprofileV2.ts | 10 +- sdk/nodejs/lbLoadbalancerV2.ts | 10 +- sdk/nodejs/loadbalancer/flavorprofileV2.ts | 180 + sdk/nodejs/loadbalancer/index.ts | 16 + sdk/nodejs/loadbalancer/l7policyV2.ts | 2 +- sdk/nodejs/loadbalancer/l7ruleV2.ts | 2 +- sdk/nodejs/loadbalancer/listener.ts | 2 +- sdk/nodejs/loadbalancer/loadBalancer.ts | 380 ++ sdk/nodejs/tsconfig.json | 10 + sdk/nodejs/types/input.ts | 26 + sdk/nodejs/types/output.ts | 27 + sdk/python/pulumi_openstack/__init__.py | 51 + sdk/python/pulumi_openstack/_inputs.py | 28 - .../pulumi_openstack/bgpvpn/__init__.py | 13 + sdk/python/pulumi_openstack/bgpvpn/_inputs.py | 67 + .../bgpvpn/network_associate_v2.py | 236 + sdk/python/pulumi_openstack/bgpvpn/outputs.py | 70 + .../bgpvpn/port_associate_v2.py | 306 ++ .../bgpvpn/router_associate_v2.py | 270 ++ sdk/python/pulumi_openstack/bgpvpn/v2.py | 518 ++ .../bgpvpn_network_associate_v2.py | 166 +- .../bgpvpn_port_associate_v2.py | 219 +- .../bgpvpn_router_associate_v2.py | 186 +- sdk/python/pulumi_openstack/bgpvpn_v2.py | 313 +- .../pulumi_openstack/blockstorage/_inputs.py | 48 - .../blockstorage/get_availability_zones_v3.py | 44 +- .../blockstorage/get_quotaset_v3.py | 62 +- .../blockstorage/get_snapshot_v3.py | 63 +- .../blockstorage/get_volume_v3.py | 74 +- .../pulumi_openstack/blockstorage/outputs.py | 48 - .../blockstorage/qos_association_v3.py | 129 +- .../pulumi_openstack/blockstorage/qos_v3.py | 136 +- .../blockstorage/quote_set_v3.py | 252 +- .../pulumi_openstack/blockstorage/volume.py | 392 +- .../blockstorage/volume_attach.py | 360 +- .../blockstorage/volume_type_access_v3.py | 123 +- .../blockstorage/volume_type_v3.py | 188 +- .../pulumi_openstack/compute/_inputs.py | 250 - .../pulumi_openstack/compute/aggregate_v2.py | 210 +- sdk/python/pulumi_openstack/compute/flavor.py | 303 +- .../pulumi_openstack/compute/flavor_access.py | 130 +- .../compute/get_aggregate_v2.py | 46 +- .../compute/get_availability_zones.py | 33 +- .../pulumi_openstack/compute/get_flavor.py | 63 +- .../compute/get_hypervisor_v2.py | 54 +- .../compute/get_instance_v2.py | 80 +- .../pulumi_openstack/compute/get_keypair.py | 53 +- .../pulumi_openstack/compute/get_limits_v2.py | 95 +- .../compute/get_quota_set_v2.py | 80 +- .../pulumi_openstack/compute/instance.py | 709 --- .../compute/interface_attach.py | 242 +- .../pulumi_openstack/compute/keypair.py | 213 +- .../pulumi_openstack/compute/outputs.py | 250 - .../pulumi_openstack/compute/quota_set_v2.py | 365 +- .../pulumi_openstack/compute/server_group.py | 267 +- .../pulumi_openstack/compute/volume_attach.py | 250 +- .../containerinfra/cluster.py | 527 +-- .../containerinfra/cluster_template.py | 945 +--- .../containerinfra/get_cluster.py | 111 +- .../containerinfra/get_cluster_template.py | 147 +- .../containerinfra/get_node_group.py | 78 +- .../containerinfra/node_group.py | 372 +- .../pulumi_openstack/database/_inputs.py | 108 - .../database/configuration.py | 79 - .../pulumi_openstack/database/database.py | 87 +- .../pulumi_openstack/database/instance.py | 239 +- .../pulumi_openstack/database/outputs.py | 108 - sdk/python/pulumi_openstack/database/user.py | 109 +- .../pulumi_openstack/dns/get_dns_zone.py | 116 +- sdk/python/pulumi_openstack/dns/record_set.py | 276 +- .../pulumi_openstack/dns/transfer_accept.py | 173 +- .../pulumi_openstack/dns/transfer_request.py | 187 +- sdk/python/pulumi_openstack/dns/zone.py | 289 +- .../pulumi_openstack/firewall/__init__.py | 3 + .../pulumi_openstack/firewall/get_group_v2.py | 217 + .../firewall/get_policy_v2.py | 178 + .../pulumi_openstack/firewall/get_rule_v2.py | 272 ++ .../pulumi_openstack/firewall/group_v2.py | 389 +- .../pulumi_openstack/firewall/policy_v2.py | 333 +- .../pulumi_openstack/firewall/rule_v2.py | 448 +- .../pulumi_openstack/get_fw_group_v2.py | 96 +- .../pulumi_openstack/get_fw_policy_v2.py | 78 +- sdk/python/pulumi_openstack/get_fw_rule_v2.py | 126 +- .../pulumi_openstack/identity/_inputs.py | 46 - .../identity/application_credential.py | 405 +- .../identity/ec2_credential_v3.py | 192 +- .../pulumi_openstack/identity/endpoint_v3.py | 173 +- .../identity/get_auth_scope.py | 69 - .../pulumi_openstack/identity/get_endpoint.py | 74 +- .../pulumi_openstack/identity/get_group.py | 52 +- .../pulumi_openstack/identity/get_project.py | 73 +- .../identity/get_project_ids_v3.py | 54 +- .../pulumi_openstack/identity/get_role.py | 43 +- .../pulumi_openstack/identity/get_service.py | 55 +- .../pulumi_openstack/identity/get_user.py | 74 +- .../pulumi_openstack/identity/group_v3.py | 116 +- .../identity/inherit_role_assignment.py | 156 +- .../pulumi_openstack/identity/outputs.py | 102 - .../pulumi_openstack/identity/project.py | 203 +- sdk/python/pulumi_openstack/identity/role.py | 99 +- .../identity/role_assignment.py | 141 +- .../pulumi_openstack/identity/service_v3.py | 120 +- sdk/python/pulumi_openstack/identity/user.py | 335 +- .../identity/user_membership_v3.py | 140 +- .../pulumi_openstack/images/get_image.py | 147 +- .../pulumi_openstack/images/get_image_ids.py | 96 +- sdk/python/pulumi_openstack/images/image.py | 647 +-- .../pulumi_openstack/images/image_access.py | 230 +- .../images/image_access_accept.py | 167 +- .../pulumi_openstack/keymanager/_inputs.py | 92 - .../keymanager/container_v1.py | 346 +- .../keymanager/get_container.py | 70 +- .../pulumi_openstack/keymanager/get_secret.py | 171 +- .../pulumi_openstack/keymanager/order_v1.py | 220 +- .../pulumi_openstack/keymanager/outputs.py | 152 - .../pulumi_openstack/keymanager/secret_v1.py | 410 +- .../pulumi_openstack/lb_flavorprofile_v2.py | 164 +- .../pulumi_openstack/lb_loadbalancer_v2.py | 431 +- .../pulumi_openstack/loadbalancer/__init__.py | 2 + .../pulumi_openstack/loadbalancer/_inputs.py | 72 - .../loadbalancer/flavorprofile_v2.py | 236 + .../loadbalancer/get_flavor_v2.py | 49 +- .../loadbalancer/l7_policy_v2.py | 355 +- .../loadbalancer/l7_rule_v2.py | 315 +- .../pulumi_openstack/loadbalancer/listener.py | 894 +--- .../loadbalancer/load_balancer.py | 608 +++ .../pulumi_openstack/loadbalancer/member.py | 329 +- .../pulumi_openstack/loadbalancer/members.py | 142 +- .../pulumi_openstack/loadbalancer/monitor.py | 423 +- .../pulumi_openstack/loadbalancer/outputs.py | 72 - .../pulumi_openstack/loadbalancer/pool.py | 498 +- .../pulumi_openstack/loadbalancer/quota.py | 276 +- .../pulumi_openstack/networking/_inputs.py | 130 - .../networking/address_scope.py | 212 +- .../networking/floating_ip.py | 360 +- .../networking/floating_ip_associate.py | 124 +- .../networking/get_address_scope.py | 58 +- .../networking/get_floating_ip.py | 59 +- .../networking/get_network.py | 97 +- .../pulumi_openstack/networking/get_port.py | 120 +- .../networking/get_port_ids.py | 64 +- .../get_qos_bandwidth_limit_rule.py | 53 +- .../networking/get_qos_dscp_marking_rule.py | 45 +- .../get_qos_minimum_bandwidth_rule.py | 45 +- .../networking/get_qos_policy.py | 71 +- .../networking/get_quota_v2.py | 63 +- .../pulumi_openstack/networking/get_router.py | 65 +- .../networking/get_sec_group.py | 59 +- .../pulumi_openstack/networking/get_subnet.py | 85 +- .../networking/get_subnet_ids_v2.py | 72 +- .../networking/get_subnet_pool.py | 113 +- .../pulumi_openstack/networking/get_trunk.py | 58 +- .../pulumi_openstack/networking/network.py | 536 +-- .../pulumi_openstack/networking/outputs.py | 202 - .../pulumi_openstack/networking/port.py | 750 +-- .../networking/port_forwarding_v2.py | 205 +- .../networking/port_sec_group_associate.py | 208 +- .../networking/qos_bandwidth_limit_rule.py | 158 +- .../networking/qos_dscp_marking_rule.py | 114 +- .../networking/qos_minimum_bandwidth_rule.py | 134 +- .../pulumi_openstack/networking/qos_policy.py | 258 +- .../pulumi_openstack/networking/quota_v2.py | 265 +- .../networking/rbac_policy_v2.py | 206 +- .../pulumi_openstack/networking/router.py | 429 +- .../networking/router_interface.py | 189 +- .../networking/router_route.py | 180 +- .../pulumi_openstack/networking/sec_group.py | 191 +- .../networking/sec_group_rule.py | 507 +- .../pulumi_openstack/networking/subnet.py | 532 +-- .../networking/subnet_pool.py | 507 +- .../networking/subnet_route.py | 160 +- .../pulumi_openstack/networking/trunk.py | 285 +- .../pulumi_openstack/objectstorage/_inputs.py | 10 - .../objectstorage/account_v1.py | 164 +- .../objectstorage/container.py | 471 +- .../objectstorage/container_object.py | 435 +- .../pulumi_openstack/objectstorage/outputs.py | 10 - .../objectstorage/temp_url.py | 236 +- .../pulumi_openstack/orchestration/_inputs.py | 6 - .../pulumi_openstack/orchestration/outputs.py | 6 - .../orchestration/stack_v1.py | 433 +- sdk/python/pulumi_openstack/outputs.py | 28 - .../sharedfilesystem/get_availbility_zones.py | 38 +- .../sharedfilesystem/get_share.py | 102 +- .../sharedfilesystem/get_share_network.py | 89 +- .../sharedfilesystem/get_snapshot.py | 64 +- .../sharedfilesystem/security_service.py | 281 +- .../sharedfilesystem/share.py | 381 +- .../sharedfilesystem/share_access.py | 300 +- .../sharedfilesystem/share_network.py | 326 +- sdk/python/pulumi_openstack/vpnaas/_inputs.py | 42 - .../pulumi_openstack/vpnaas/endpoint_group.py | 199 +- .../pulumi_openstack/vpnaas/ike_policy.py | 260 +- .../pulumi_openstack/vpnaas/ip_sec_policy.py | 260 +- sdk/python/pulumi_openstack/vpnaas/outputs.py | 42 - sdk/python/pulumi_openstack/vpnaas/service.py | 223 +- .../vpnaas/site_connection.py | 432 +- 307 files changed, 26765 insertions(+), 35541 deletions(-) create mode 100644 sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteArgs.cs create mode 100644 sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteGetArgs.cs create mode 100644 sdk/dotnet/BGPVPN/NetworkAssociateV2.cs create mode 100644 sdk/dotnet/BGPVPN/Outputs/PortAssociateV2Route.cs create mode 100644 sdk/dotnet/BGPVPN/PortAssociateV2.cs create mode 100644 sdk/dotnet/BGPVPN/README.md create mode 100644 sdk/dotnet/BGPVPN/RouterAssociateV2.cs create mode 100644 sdk/dotnet/BGPVPN/V2.cs create mode 100644 sdk/dotnet/Firewall/GetGroupV2.cs create mode 100644 sdk/dotnet/Firewall/GetPolicyV2.cs create mode 100644 sdk/dotnet/Firewall/GetRuleV2.cs create mode 100644 sdk/dotnet/LoadBalancer/FlavorprofileV2.cs create mode 100644 sdk/dotnet/LoadBalancer/LoadBalancer.cs create mode 100644 sdk/go/openstack/bgpvpn/init.go create mode 100644 sdk/go/openstack/bgpvpn/networkAssociateV2.go create mode 100644 sdk/go/openstack/bgpvpn/portAssociateV2.go create mode 100644 sdk/go/openstack/bgpvpn/pulumiTypes.go create mode 100644 sdk/go/openstack/bgpvpn/routerAssociateV2.go create mode 100644 sdk/go/openstack/bgpvpn/v2.go create mode 100644 sdk/go/openstack/firewall/getGroupV2.go create mode 100644 sdk/go/openstack/firewall/getPolicyV2.go create mode 100644 sdk/go/openstack/firewall/getRuleV2.go create mode 100644 sdk/go/openstack/loadbalancer/flavorprofileV2.go create mode 100644 sdk/go/openstack/loadbalancer/loadBalancer.go create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/NetworkAssociateV2State.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2RouteArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2State.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/RouterAssociateV2State.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/V2State.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/outputs/PortAssociateV2Route.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/FirewallFunctions.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2PlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2PlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2PlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetGroupV2Result.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetPolicyV2Result.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetRuleV2Result.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2Args.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancer.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancerArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/FlavorprofileV2State.java create mode 100644 sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/LoadBalancerState.java create mode 100644 sdk/nodejs/bgpvpn/index.ts create mode 100644 sdk/nodejs/bgpvpn/networkAssociateV2.ts create mode 100644 sdk/nodejs/bgpvpn/portAssociateV2.ts create mode 100644 sdk/nodejs/bgpvpn/routerAssociateV2.ts create mode 100644 sdk/nodejs/bgpvpn/v2.ts create mode 100644 sdk/nodejs/firewall/getGroupV2.ts create mode 100644 sdk/nodejs/firewall/getPolicyV2.ts create mode 100644 sdk/nodejs/firewall/getRuleV2.ts create mode 100644 sdk/nodejs/loadbalancer/flavorprofileV2.ts create mode 100644 sdk/nodejs/loadbalancer/loadBalancer.ts create mode 100644 sdk/python/pulumi_openstack/bgpvpn/__init__.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/_inputs.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/network_associate_v2.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/outputs.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/port_associate_v2.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/router_associate_v2.py create mode 100644 sdk/python/pulumi_openstack/bgpvpn/v2.py create mode 100644 sdk/python/pulumi_openstack/firewall/get_group_v2.py create mode 100644 sdk/python/pulumi_openstack/firewall/get_policy_v2.py create mode 100644 sdk/python/pulumi_openstack/firewall/get_rule_v2.py create mode 100644 sdk/python/pulumi_openstack/loadbalancer/flavorprofile_v2.py create mode 100644 sdk/python/pulumi_openstack/loadbalancer/load_balancer.py diff --git a/.gitignore b/.gitignore index 959c6e7a9..dc1564628 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,6 @@ sdk/java/gradlew.bat sdk/python/venv + +go.work +go.work.sum diff --git a/provider/cmd/pulumi-resource-openstack/bridge-metadata.json b/provider/cmd/pulumi-resource-openstack/bridge-metadata.json index d149d21ec..957720872 100644 --- a/provider/cmd/pulumi-resource-openstack/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-openstack/bridge-metadata.json @@ -2,11 +2,25 @@ "auto-aliasing": { "resources": { "openstack_bgpvpn_network_associate_v2": { - "current": "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2", + "current": "openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", + "past": [ + { + "name": "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5 }, "openstack_bgpvpn_port_associate_v2": { - "current": "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2", + "current": "openstack:bgpvpn/portAssociateV2:PortAssociateV2", + "past": [ + { + "name": "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5, "fields": { "routes": { @@ -15,11 +29,25 @@ } }, "openstack_bgpvpn_router_associate_v2": { - "current": "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2", + "current": "openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", + "past": [ + { + "name": "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5 }, "openstack_bgpvpn_v2": { - "current": "openstack:index/bgpvpnV2:BgpvpnV2", + "current": "openstack:bgpvpn/v2:V2", + "past": [ + { + "name": "openstack:index/bgpvpnV2:BgpvpnV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5, "fields": { "export_targets": { @@ -464,7 +492,14 @@ } }, "openstack_lb_flavorprofile_v2": { - "current": "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2", + "current": "openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", + "past": [ + { + "name": "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5 }, "openstack_lb_l7policy_v2": { @@ -497,12 +532,12 @@ } }, "openstack_lb_loadbalancer_v2": { - "current": "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2", + "current": "openstack:loadbalancer/loadBalancer:LoadBalancer", "past": [ { - "name": "openstack:loadbalancer/loadBalancer:LoadBalancer", + "name": "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2", "inCodegen": true, - "majorVersion": 4 + "majorVersion": 5 } ], "majorVersion": 5, @@ -1006,7 +1041,14 @@ } }, "openstack_fw_group_v2": { - "current": "openstack:index/getFwGroupV2:getFwGroupV2", + "current": "openstack:firewall/getGroupV2:getGroupV2", + "past": [ + { + "name": "openstack:index/getFwGroupV2:getFwGroupV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5, "fields": { "ports": { @@ -1015,7 +1057,14 @@ } }, "openstack_fw_policy_v2": { - "current": "openstack:index/getFwPolicyV2:getFwPolicyV2", + "current": "openstack:firewall/getPolicyV2:getPolicyV2", + "past": [ + { + "name": "openstack:index/getFwPolicyV2:getFwPolicyV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5, "fields": { "rules": { @@ -1024,7 +1073,14 @@ } }, "openstack_fw_rule_v2": { - "current": "openstack:index/getFwRuleV2:getFwRuleV2", + "current": "openstack:firewall/getRuleV2:getRuleV2", + "past": [ + { + "name": "openstack:index/getFwRuleV2:getFwRuleV2", + "inCodegen": true, + "majorVersion": 5 + } + ], "majorVersion": 5, "fields": { "firewall_policy_id": { @@ -1413,9 +1469,51 @@ }, "auto-settings": { "resources": { + "openstack_bgpvpn_network_associate_v2": { + "aliases": [ + "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2" + ] + }, + "openstack_bgpvpn_port_associate_v2": { + "aliases": [ + "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2" + ] + }, + "openstack_bgpvpn_router_associate_v2": { + "aliases": [ + "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2" + ] + }, + "openstack_bgpvpn_v2": { + "aliases": [ + "openstack:index/bgpvpnV2:BgpvpnV2" + ] + }, + "openstack_lb_flavorprofile_v2": { + "aliases": [ + "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2" + ] + }, "openstack_lb_loadbalancer_v2": { + "aliases": [ + "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2" + ] + } + }, + "datasources": { + "openstack_fw_group_v2": { + "renames": [ + "openstack:index/getFwGroupV2:getFwGroupV2" + ] + }, + "openstack_fw_policy_v2": { + "renames": [ + "openstack:index/getFwPolicyV2:getFwPolicyV2" + ] + }, + "openstack_fw_rule_v2": { "renames": [ - "openstack:loadbalancer/loadBalancer:LoadBalancer" + "openstack:index/getFwRuleV2:getFwRuleV2" ] } } diff --git a/provider/cmd/pulumi-resource-openstack/schema.json b/provider/cmd/pulumi-resource-openstack/schema.json index e6f193caf..9b55d9c63 100644 --- a/provider/cmd/pulumi-resource-openstack/schema.json +++ b/provider/cmd/pulumi-resource-openstack/schema.json @@ -18,6 +18,7 @@ "Pulumi": "3.*" }, "namespaces": { + "bgpvpn": "BGPVPN", "blockstorage": "BlockStorage", "compute": "Compute", "containerinfra": "ContainerInfra", @@ -234,6 +235,30 @@ } }, "types": { + "openstack:bgpvpn/PortAssociateV2Route:PortAssociateV2Route": { + "properties": { + "bgpvpnId": { + "type": "string", + "description": "The ID of the BGP VPN to be advertised. Required\nif `type` is `bgpvpn`. Conflicts with `prefix`.\n" + }, + "localPref": { + "type": "integer", + "description": "The BGP LOCAL\\_PREF value of the routes that will\nbe advertised.\n" + }, + "prefix": { + "type": "string", + "description": "The CIDR prefix (v4 or v6) to be advertised. Required\nif `type` is `prefix`. Conflicts with `bgpvpn_id`.\n" + }, + "type": { + "type": "string", + "description": "Can be `prefix` or `bgpvpn`. For the `prefix` type, the\nCIDR prefix (v4 or v6) must be specified in the `prefix` key. For the\n`bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key.\n" + } + }, + "type": "object", + "required": [ + "type" + ] + }, "openstack:blockstorage/VolumeAttachment:VolumeAttachment": { "properties": { "device": { @@ -2083,1404 +2108,1949 @@ } }, "resources": { - "openstack:blockstorage/qosAssociationV3:QosAssociationV3": { - "description": "Manages a V3 block storage Qos Association resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst qos = new openstack.blockstorage.QosV3(\"qos\", {\n name: \"%s\",\n consumer: \"front-end\",\n specs: {\n read_iops_sec: \"20000\",\n },\n});\nconst volumeType = new openstack.blockstorage.VolumeTypeV3(\"volume_type\", {name: \"%s\"});\nconst qosAssociation = new openstack.blockstorage.QosAssociationV3(\"qos_association\", {\n qosId: qos.id,\n volumeTypeId: volumeType.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nqos = openstack.blockstorage.QosV3(\"qos\",\n name=\"%s\",\n consumer=\"front-end\",\n specs={\n \"read_iops_sec\": \"20000\",\n })\nvolume_type = openstack.blockstorage.VolumeTypeV3(\"volume_type\", name=\"%s\")\nqos_association = openstack.blockstorage.QosAssociationV3(\"qos_association\",\n qos_id=qos.id,\n volume_type_id=volume_type.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var qos = new OpenStack.BlockStorage.QosV3(\"qos\", new()\n {\n Name = \"%s\",\n Consumer = \"front-end\",\n Specs = \n {\n { \"read_iops_sec\", \"20000\" },\n },\n });\n\n var volumeType = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type\", new()\n {\n Name = \"%s\",\n });\n\n var qosAssociation = new OpenStack.BlockStorage.QosAssociationV3(\"qos_association\", new()\n {\n QosId = qos.Id,\n VolumeTypeId = volumeType.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tqos, err := blockstorage.NewQosV3(ctx, \"qos\", \u0026blockstorage.QosV3Args{\n\t\t\tName: pulumi.String(\"%s\"),\n\t\t\tConsumer: pulumi.String(\"front-end\"),\n\t\t\tSpecs: pulumi.StringMap{\n\t\t\t\t\"read_iops_sec\": pulumi.String(\"20000\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvolumeType, err := blockstorage.NewVolumeTypeV3(ctx, \"volume_type\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"%s\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewQosAssociationV3(ctx, \"qos_association\", \u0026blockstorage.QosAssociationV3Args{\n\t\t\tQosId: qos.ID(),\n\t\t\tVolumeTypeId: volumeType.ID(),\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.openstack.blockstorage.QosV3;\nimport com.pulumi.openstack.blockstorage.QosV3Args;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\nimport com.pulumi.openstack.blockstorage.QosAssociationV3;\nimport com.pulumi.openstack.blockstorage.QosAssociationV3Args;\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 qos = new QosV3(\"qos\", QosV3Args.builder()\n .name(\"%s\")\n .consumer(\"front-end\")\n .specs(Map.of(\"read_iops_sec\", \"20000\"))\n .build());\n\n var volumeType = new VolumeTypeV3(\"volumeType\", VolumeTypeV3Args.builder()\n .name(\"%s\")\n .build());\n\n var qosAssociation = new QosAssociationV3(\"qosAssociation\", QosAssociationV3Args.builder()\n .qosId(qos.id())\n .volumeTypeId(volumeType.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n qos:\n type: openstack:blockstorage:QosV3\n properties:\n name: '%s'\n consumer: front-end\n specs:\n read_iops_sec: '20000'\n volumeType:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type\n properties:\n name: '%s'\n qosAssociation:\n type: openstack:blockstorage:QosAssociationV3\n name: qos_association\n properties:\n qosId: ${qos.id}\n volumeTypeId: ${volumeType.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nQos association can be imported using the `qos_id/volume_type_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/qosAssociationV3:QosAssociationV3 qos_association 941793f0-0a34-4bc4-b72e-a6326ae58283/ea257959-eeb1-4c10-8d33-26f0409a755d\n```\n", + "openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2": { + "description": "Manages a V2 BGP VPN network association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.NetworkAssociateV2(\"association_1\", {\n bgpvpnId: \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n networkId: \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.NetworkAssociateV2(\"association_1\",\n bgpvpn_id=\"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n network_id=\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.NetworkAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n NetworkId = \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewNetworkAssociateV2(ctx, \"association_1\", \u0026bgpvpn.NetworkAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"e7189337-5684-46ee-bcb1-44f1a57066c9\"),\n\t\t\tNetworkId: pulumi.String(\"de83d56c-4d2f-44f7-ac24-af393252204f\"),\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.openstack.bgpvpn.NetworkAssociateV2;\nimport com.pulumi.openstack.bgpvpn.NetworkAssociateV2Args;\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 association1 = new NetworkAssociateV2(\"association1\", NetworkAssociateV2Args.builder()\n .bgpvpnId(\"e7189337-5684-46ee-bcb1-44f1a57066c9\")\n .networkId(\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:NetworkAssociateV2\n name: association_1\n properties:\n bgpvpnId: e7189337-5684-46ee-bcb1-44f1a57066c9\n networkId: de83d56c-4d2f-44f7-ac24-af393252204f\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN network associations can be imported using the BGP VPN ID and BGP VPN\n\nnetwork association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4\n```\n\n", "properties": { - "qosId": { + "bgpvpnId": { "type": "string", - "description": "ID of the qos to associate. Changing this creates\na new qos association.\n" + "description": "The ID of the BGP VPN to which the network will be\nassociated. Changing this creates a new BGP VPN network association\n" }, - "region": { + "networkId": { "type": "string", - "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n" + "description": "The ID of the network to be associated with the BGP\nVPN. Changing this creates a new BGP VPN network association.\n" }, - "volumeTypeId": { + "projectId": { "type": "string", - "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n" + "description": "The ID of the project that owns the BGP VPN network\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN network\nassociation.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN network association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN network association.\n" } }, "required": [ - "qosId", - "region", - "volumeTypeId" + "bgpvpnId", + "networkId", + "projectId", + "region" ], "inputProperties": { - "qosId": { + "bgpvpnId": { "type": "string", - "description": "ID of the qos to associate. Changing this creates\na new qos association.\n", + "description": "The ID of the BGP VPN to which the network will be\nassociated. Changing this creates a new BGP VPN network association\n", "willReplaceOnChanges": true }, - "region": { + "networkId": { "type": "string", - "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n", + "description": "The ID of the network to be associated with the BGP\nVPN. Changing this creates a new BGP VPN network association.\n", "willReplaceOnChanges": true }, - "volumeTypeId": { + "projectId": { "type": "string", - "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n", + "description": "The ID of the project that owns the BGP VPN network\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN network\nassociation.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN network association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN network association.\n", "willReplaceOnChanges": true } }, "requiredInputs": [ - "qosId", - "volumeTypeId" + "bgpvpnId", + "networkId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering QosAssociationV3 resources.\n", + "description": "Input properties used for looking up and filtering NetworkAssociateV2 resources.\n", "properties": { - "qosId": { + "bgpvpnId": { "type": "string", - "description": "ID of the qos to associate. Changing this creates\na new qos association.\n", + "description": "The ID of the BGP VPN to which the network will be\nassociated. Changing this creates a new BGP VPN network association\n", "willReplaceOnChanges": true }, - "region": { + "networkId": { "type": "string", - "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n", + "description": "The ID of the network to be associated with the BGP\nVPN. Changing this creates a new BGP VPN network association.\n", "willReplaceOnChanges": true }, - "volumeTypeId": { + "projectId": { "type": "string", - "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n", + "description": "The ID of the project that owns the BGP VPN network\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN network\nassociation.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN network association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN network association.\n", "willReplaceOnChanges": true } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2" + } + ] }, - "openstack:blockstorage/qosV3:QosV3": { - "description": "Manages a V3 block storage Quality-Of-Servirce (qos) resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst qos = new openstack.blockstorage.QosV3(\"qos\", {\n name: \"foo\",\n consumer: \"back-end\",\n specs: {\n read_iops_sec: \"40000\",\n write_iops_sec: \"40000\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nqos = openstack.blockstorage.QosV3(\"qos\",\n name=\"foo\",\n consumer=\"back-end\",\n specs={\n \"read_iops_sec\": \"40000\",\n \"write_iops_sec\": \"40000\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var qos = new OpenStack.BlockStorage.QosV3(\"qos\", new()\n {\n Name = \"foo\",\n Consumer = \"back-end\",\n Specs = \n {\n { \"read_iops_sec\", \"40000\" },\n { \"write_iops_sec\", \"40000\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewQosV3(ctx, \"qos\", \u0026blockstorage.QosV3Args{\n\t\t\tName: pulumi.String(\"foo\"),\n\t\t\tConsumer: pulumi.String(\"back-end\"),\n\t\t\tSpecs: pulumi.StringMap{\n\t\t\t\t\"read_iops_sec\": pulumi.String(\"40000\"),\n\t\t\t\t\"write_iops_sec\": pulumi.String(\"40000\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.QosV3;\nimport com.pulumi.openstack.blockstorage.QosV3Args;\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 qos = new QosV3(\"qos\", QosV3Args.builder()\n .name(\"foo\")\n .consumer(\"back-end\")\n .specs(Map.ofEntries(\n Map.entry(\"read_iops_sec\", \"40000\"),\n Map.entry(\"write_iops_sec\", \"40000\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n qos:\n type: openstack:blockstorage:QosV3\n properties:\n name: foo\n consumer: back-end\n specs:\n read_iops_sec: '40000'\n write_iops_sec: '40000'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nQos can be imported using the `qos_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/qosV3:QosV3 qos 941793f0-0a34-4bc4-b72e-a6326ae58283\n```\n", + "openstack:bgpvpn/portAssociateV2:PortAssociateV2": { + "description": "Manages a V2 BGP VPN port association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.PortAssociateV2(\"association_1\", {\n bgpvpnId: \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n portId: \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes: [\n {\n type: \"prefix\",\n prefix: \"192.168.170.1/32\",\n },\n {\n type: \"bgpvpn\",\n bgpvpnId: \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.PortAssociateV2(\"association_1\",\n bgpvpn_id=\"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n port_id=\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes=[\n {\n \"type\": \"prefix\",\n \"prefix\": \"192.168.170.1/32\",\n },\n {\n \"type\": \"bgpvpn\",\n \"bgpvpn_id\": \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.PortAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n PortId = \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n Routes = new[]\n {\n new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs\n {\n Type = \"prefix\",\n Prefix = \"192.168.170.1/32\",\n },\n new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs\n {\n Type = \"bgpvpn\",\n BgpvpnId = \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewPortAssociateV2(ctx, \"association_1\", \u0026bgpvpn.PortAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"19382ec5-8098-47d9-a9c6-6270c91103f4\"),\n\t\t\tPortId: pulumi.String(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\"),\n\t\t\tRoutes: bgpvpn.PortAssociateV2RouteArray{\n\t\t\t\t\u0026bgpvpn.PortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"prefix\"),\n\t\t\t\t\tPrefix: pulumi.String(\"192.168.170.1/32\"),\n\t\t\t\t},\n\t\t\t\t\u0026bgpvpn.PortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"bgpvpn\"),\n\t\t\t\t\tBgpvpnId: pulumi.String(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.bgpvpn.PortAssociateV2;\nimport com.pulumi.openstack.bgpvpn.PortAssociateV2Args;\nimport com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs;\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 association1 = new PortAssociateV2(\"association1\", PortAssociateV2Args.builder()\n .bgpvpnId(\"19382ec5-8098-47d9-a9c6-6270c91103f4\")\n .portId(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\")\n .routes( \n PortAssociateV2RouteArgs.builder()\n .type(\"prefix\")\n .prefix(\"192.168.170.1/32\")\n .build(),\n PortAssociateV2RouteArgs.builder()\n .type(\"bgpvpn\")\n .bgpvpnId(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:PortAssociateV2\n name: association_1\n properties:\n bgpvpnId: 19382ec5-8098-47d9-a9c6-6270c91103f4\n portId: b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\n routes:\n - type: prefix\n prefix: 192.168.170.1/32\n - type: bgpvpn\n bgpvpnId: 35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port\n\nassociation ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf\n```\n\n", "properties": { - "consumer": { + "advertiseFixedIps": { + "type": "boolean", + "description": "A boolean flag indicating whether fixed\nIPs should be advertised. Defaults to true.\n" + }, + "bgpvpnId": { "type": "string", - "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" + "description": "The ID of the BGP VPN to which the port will be\nassociated. Changing this creates a new BGP VPN port association.\n" }, - "name": { + "portId": { "type": "string", - "description": "Name of the qos. Changing this creates a new qos.\n" + "description": "The ID of the port to be associated with the BGP VPN.\nChanging this creates a new BGP VPN port association.\n" + }, + "projectId": { + "type": "string", + "description": "The ID of the project that owns the port\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN port\nassociation.\n" }, "region": { "type": "string", - "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n" + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN port association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN port association.\n" }, - "specs": { - "type": "object", - "additionalProperties": { - "type": "string" + "routes": { + "type": "array", + "items": { + "$ref": "#/types/openstack:bgpvpn/PortAssociateV2Route:PortAssociateV2Route" }, - "description": "Key/Value pairs of specs for the qos.\n" + "description": "A list of dictionaries containing the following keys:\n" } }, "required": [ - "name", + "advertiseFixedIps", + "bgpvpnId", + "portId", + "projectId", "region" ], "inputProperties": { - "consumer": { + "advertiseFixedIps": { + "type": "boolean", + "description": "A boolean flag indicating whether fixed\nIPs should be advertised. Defaults to true.\n" + }, + "bgpvpnId": { "type": "string", - "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" + "description": "The ID of the BGP VPN to which the port will be\nassociated. Changing this creates a new BGP VPN port association.\n", + "willReplaceOnChanges": true }, - "name": { + "portId": { "type": "string", - "description": "Name of the qos. Changing this creates a new qos.\n", + "description": "The ID of the port to be associated with the BGP VPN.\nChanging this creates a new BGP VPN port association.\n", + "willReplaceOnChanges": true + }, + "projectId": { + "type": "string", + "description": "The ID of the project that owns the port\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN port\nassociation.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN port association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN port association.\n", "willReplaceOnChanges": true }, - "specs": { - "type": "object", - "additionalProperties": { - "type": "string" + "routes": { + "type": "array", + "items": { + "$ref": "#/types/openstack:bgpvpn/PortAssociateV2Route:PortAssociateV2Route" }, - "description": "Key/Value pairs of specs for the qos.\n" + "description": "A list of dictionaries containing the following keys:\n" } }, + "requiredInputs": [ + "bgpvpnId", + "portId" + ], "stateInputs": { - "description": "Input properties used for looking up and filtering QosV3 resources.\n", + "description": "Input properties used for looking up and filtering PortAssociateV2 resources.\n", "properties": { - "consumer": { + "advertiseFixedIps": { + "type": "boolean", + "description": "A boolean flag indicating whether fixed\nIPs should be advertised. Defaults to true.\n" + }, + "bgpvpnId": { "type": "string", - "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" + "description": "The ID of the BGP VPN to which the port will be\nassociated. Changing this creates a new BGP VPN port association.\n", + "willReplaceOnChanges": true }, - "name": { + "portId": { "type": "string", - "description": "Name of the qos. Changing this creates a new qos.\n", + "description": "The ID of the port to be associated with the BGP VPN.\nChanging this creates a new BGP VPN port association.\n", + "willReplaceOnChanges": true + }, + "projectId": { + "type": "string", + "description": "The ID of the project that owns the port\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN port\nassociation.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN port association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN port association.\n", "willReplaceOnChanges": true }, - "specs": { - "type": "object", - "additionalProperties": { - "type": "string" + "routes": { + "type": "array", + "items": { + "$ref": "#/types/openstack:bgpvpn/PortAssociateV2Route:PortAssociateV2Route" }, - "description": "Key/Value pairs of specs for the qos.\n" + "description": "A list of dictionaries containing the following keys:\n" } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2" + } + ] }, - "openstack:blockstorage/quoteSetV3:QuoteSetV3": { - "description": "Manages a V3 block storage quotaset resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\u003e **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API\n in case of delete call.\n\n\u003e **Note:** This resource has all-in creation so all optional quota arguments that were not specified are\n created with zero value. This excludes volume type quota.\n\n## Import\n\nQuotasets can be imported using the `project_id/region`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/quoteSetV3:QuoteSetV3 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1\n```\n", + "openstack:bgpvpn/routerAssociateV2:RouterAssociateV2": { + "description": "Manages a V2 BGP VPN router association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.RouterAssociateV2(\"association_1\", {\n bgpvpnId: \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n routerId: \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.RouterAssociateV2(\"association_1\",\n bgpvpn_id=\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n router_id=\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.RouterAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n RouterId = \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewRouterAssociateV2(ctx, \"association_1\", \u0026bgpvpn.RouterAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\"),\n\t\t\tRouterId: pulumi.String(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\"),\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.openstack.bgpvpn.RouterAssociateV2;\nimport com.pulumi.openstack.bgpvpn.RouterAssociateV2Args;\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 association1 = new RouterAssociateV2(\"association1\", RouterAssociateV2Args.builder()\n .bgpvpnId(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\")\n .routerId(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:RouterAssociateV2\n name: association_1\n properties:\n bgpvpnId: d57d39e1-dc63-44fd-8cbd-a4e1488100c5\n routerId: 423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN router associations can be imported using the BGP VPN ID and BGP VPN\n\nrouter association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:bgpvpn/routerAssociateV2:RouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f\n```\n\n", "properties": { - "backupGigabytes": { - "type": "integer", - "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" - }, - "backups": { - "type": "integer", - "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" - }, - "gigabytes": { - "type": "integer", - "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" - }, - "groups": { - "type": "integer", - "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + "advertiseExtraRoutes": { + "type": "boolean", + "description": "A boolean flag indicating whether extra\nroutes should be advertised. Defaults to true.\n" }, - "perVolumeGigabytes": { - "type": "integer", - "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + "bgpvpnId": { + "type": "string", + "description": "The ID of the BGP VPN to which the router will be\nassociated. Changing this creates a new BGP VPN router association.\n" }, "projectId": { "type": "string", - "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n" + "description": "The ID of the project that owns the BGP VPN router\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN router\nassociation.\n" }, "region": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n" - }, - "snapshots": { - "type": "integer", - "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" - }, - "volumeTypeQuota": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN router association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN router association.\n" }, - "volumes": { - "type": "integer", - "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" + "routerId": { + "type": "string", + "description": "The ID of the router to be associated with the BGP\nVPN. Changing this creates a new BGP VPN router association.\n" } }, "required": [ - "backupGigabytes", - "backups", - "gigabytes", - "groups", - "perVolumeGigabytes", + "advertiseExtraRoutes", + "bgpvpnId", "projectId", "region", - "snapshots", - "volumes" + "routerId" ], "inputProperties": { - "backupGigabytes": { - "type": "integer", - "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" - }, - "backups": { - "type": "integer", - "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" - }, - "gigabytes": { - "type": "integer", - "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" - }, - "groups": { - "type": "integer", - "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + "advertiseExtraRoutes": { + "type": "boolean", + "description": "A boolean flag indicating whether extra\nroutes should be advertised. Defaults to true.\n" }, - "perVolumeGigabytes": { - "type": "integer", - "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + "bgpvpnId": { + "type": "string", + "description": "The ID of the BGP VPN to which the router will be\nassociated. Changing this creates a new BGP VPN router association.\n", + "willReplaceOnChanges": true }, "projectId": { "type": "string", - "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n", + "description": "The ID of the project that owns the BGP VPN router\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN router\nassociation.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN router association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN router association.\n", "willReplaceOnChanges": true }, - "snapshots": { - "type": "integer", - "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" - }, - "volumeTypeQuota": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" - }, - "volumes": { - "type": "integer", - "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" + "routerId": { + "type": "string", + "description": "The ID of the router to be associated with the BGP\nVPN. Changing this creates a new BGP VPN router association.\n", + "willReplaceOnChanges": true } }, "requiredInputs": [ - "projectId" + "bgpvpnId", + "routerId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering QuoteSetV3 resources.\n", + "description": "Input properties used for looking up and filtering RouterAssociateV2 resources.\n", "properties": { - "backupGigabytes": { - "type": "integer", - "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" - }, - "backups": { - "type": "integer", - "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" - }, - "gigabytes": { - "type": "integer", - "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" - }, - "groups": { - "type": "integer", - "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + "advertiseExtraRoutes": { + "type": "boolean", + "description": "A boolean flag indicating whether extra\nroutes should be advertised. Defaults to true.\n" }, - "perVolumeGigabytes": { - "type": "integer", - "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + "bgpvpnId": { + "type": "string", + "description": "The ID of the BGP VPN to which the router will be\nassociated. Changing this creates a new BGP VPN router association.\n", + "willReplaceOnChanges": true }, "projectId": { "type": "string", - "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n", + "description": "The ID of the project that owns the BGP VPN router\nassociation. Only administrative and users with `advsvc` role can specify a\nproject ID other than their own. Changing this creates a new BGP VPN router\nassociation.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN router association. If\nomitted, the `region` argument of the provider is used. Changing this creates\na new BGP VPN router association.\n", "willReplaceOnChanges": true }, - "snapshots": { - "type": "integer", - "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" - }, - "volumeTypeQuota": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" - }, - "volumes": { - "type": "integer", - "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" + "routerId": { + "type": "string", + "description": "The ID of the router to be associated with the BGP\nVPN. Changing this creates a new BGP VPN router association.\n", + "willReplaceOnChanges": true } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2" + } + ] }, - "openstack:blockstorage/volume:Volume": { - "description": "Manages a V3 volume resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volume1 = new openstack.blockstorage.Volume(\"volume_1\", {\n region: \"RegionOne\",\n name: \"volume_1\",\n description: \"first test volume\",\n size: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume1 = openstack.blockstorage.Volume(\"volume_1\",\n region=\"RegionOne\",\n name=\"volume_1\",\n description=\"first test volume\",\n size=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volume1 = new OpenStack.BlockStorage.Volume(\"volume_1\", new()\n {\n Region = \"RegionOne\",\n Name = \"volume_1\",\n Description = \"first test volume\",\n Size = 3,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolume(ctx, \"volume_1\", \u0026blockstorage.VolumeArgs{\n\t\t\tRegion: pulumi.String(\"RegionOne\"),\n\t\t\tName: pulumi.String(\"volume_1\"),\n\t\t\tDescription: pulumi.String(\"first test volume\"),\n\t\t\tSize: pulumi.Int(3),\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.openstack.blockstorage.Volume;\nimport com.pulumi.openstack.blockstorage.VolumeArgs;\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 volume1 = new Volume(\"volume1\", VolumeArgs.builder()\n .region(\"RegionOne\")\n .name(\"volume_1\")\n .description(\"first test volume\")\n .size(3)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volume1:\n type: openstack:blockstorage:Volume\n name: volume_1\n properties:\n region: RegionOne\n name: volume_1\n description: first test volume\n size: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolumes can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volume:Volume volume_1 ea257959-eeb1-4c10-8d33-26f0409a755d\n```\n", + "openstack:bgpvpn/v2:V2": { + "description": "Manages a V2 BGP VPN service resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst bgpvpn1 = new openstack.bgpvpn.V2(\"bgpvpn_1\", {\n name: \"bgpvpn1\",\n routeDistinguishers: [\"64512:1\"],\n routeTargets: [\"64512:1\"],\n importTargets: [\"64512:2\"],\n exportTargets: [\"64512:3\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nbgpvpn1 = openstack.bgpvpn.V2(\"bgpvpn_1\",\n name=\"bgpvpn1\",\n route_distinguishers=[\"64512:1\"],\n route_targets=[\"64512:1\"],\n import_targets=[\"64512:2\"],\n export_targets=[\"64512:3\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var bgpvpn1 = new OpenStack.BGPVPN.V2(\"bgpvpn_1\", new()\n {\n Name = \"bgpvpn1\",\n RouteDistinguishers = new[]\n {\n \"64512:1\",\n },\n RouteTargets = new[]\n {\n \"64512:1\",\n },\n ImportTargets = new[]\n {\n \"64512:2\",\n },\n ExportTargets = new[]\n {\n \"64512:3\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewV2(ctx, \"bgpvpn_1\", \u0026bgpvpn.V2Args{\n\t\t\tName: pulumi.String(\"bgpvpn1\"),\n\t\t\tRouteDistinguishers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tRouteTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tImportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:2\"),\n\t\t\t},\n\t\t\tExportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:3\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.bgpvpn.V2;\nimport com.pulumi.openstack.bgpvpn.V2Args;\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 bgpvpn1 = new V2(\"bgpvpn1\", V2Args.builder()\n .name(\"bgpvpn1\")\n .routeDistinguishers(\"64512:1\")\n .routeTargets(\"64512:1\")\n .importTargets(\"64512:2\")\n .exportTargets(\"64512:3\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n bgpvpn1:\n type: openstack:bgpvpn:V2\n name: bgpvpn_1\n properties:\n name: bgpvpn1\n routeDistinguishers:\n - 64512:1\n routeTargets:\n - 64512:1\n importTargets:\n - 64512:2\n exportTargets:\n - 64512:3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPNs can be imported using the `id`, e.g.\n\nhcl\n\n```sh\n$ pulumi import openstack:bgpvpn/v2:V2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c\n```\n\n", "properties": { - "attachments": { + "exportTargets": { "type": "array", "items": { - "$ref": "#/types/openstack:blockstorage/VolumeAttachment:VolumeAttachment" + "type": "string" }, - "description": "If a volume is attached to an instance, this attribute will\ndisplay the Attachment ID, Instance ID, and the Device as the Instance\nsees it.\n" - }, - "availabilityZone": { - "type": "string", - "description": "The availability zone for the volume.\nChanging this creates a new volume.\n" + "description": "A list of additional Route Targets that will be\nused for export.\n" }, - "backupId": { - "type": "string", - "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n" + "importTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of additional Route Targets that will be\nimported.\n" }, - "consistencyGroupId": { - "type": "string", - "description": "The consistency group to place the volume\nin.\n" + "localPref": { + "type": "integer", + "description": "The default BGP LOCAL\\_PREF of routes that will be\nadvertised to the BGP VPN, unless overridden per-route.\n" }, - "description": { + "name": { "type": "string", - "description": "A description of the volume. Changing this updates\nthe volume's description.\n" - }, - "enableOnlineResize": { - "type": "boolean", - "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + "description": "The name of the BGP VPN. Changing this updates the name of\nthe existing BGP VPN.\n" }, - "imageId": { - "type": "string", - "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n" + "networks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of network IDs that are associated with the BGP VPN.\n" }, - "metadata": { - "type": "object", - "additionalProperties": { + "ports": { + "type": "array", + "items": { "type": "string" }, - "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" + "description": "A list of port IDs that are associated with the BGP VPN.\n" }, - "name": { + "projectId": { "type": "string", - "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" + "description": "The ID of the project that owns the BGPVPN. Only\nadministrative and users with `advsvc` role can specify a project ID other\nthan their own. Changing this creates a new BGP VPN.\n" }, "region": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n" + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN service. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nBGP VPN.\n" }, - "schedulerHints": { + "routeDistinguishers": { "type": "array", "items": { - "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + "type": "string" }, - "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" + "description": "A list of route distinguisher strings. If\nspecified, one of these RDs will be used to advertise VPN routes.\n" }, - "size": { - "type": "integer", - "description": "The size of the volume to create (in gigabytes).\n" + "routeTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Route Targets that will be both\nimported and used for export.\n" }, - "snapshotId": { - "type": "string", - "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n" + "routers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of router IDs that are associated with the BGP VPN.\n" }, - "sourceReplica": { - "type": "string", - "description": "The volume ID to replicate with.\n" + "shared": { + "type": "boolean", + "description": "Indicates whether the BGP VPN is shared across projects.\n" }, - "sourceVolId": { + "type": { "type": "string", - "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n" + "description": "The type of the BGP VPN (either `l2` or `l3`). Changing this\ncreates a new BGP VPN. Defaults to `l3`.\n" }, - "volumeType": { - "type": "string", - "description": "The type of volume to create.\nChanging this creates a new volume.\n" + "vni": { + "type": "integer", + "description": "The globally-assigned VXLAN VNI for the BGP VPN. Changing\nthis creates a new BGP VPN.\n" } }, "required": [ - "attachments", - "availabilityZone", - "metadata", + "exportTargets", + "importTargets", "name", + "networks", + "ports", + "projectId", "region", - "size", - "volumeType" + "routeDistinguishers", + "routeTargets", + "routers", + "shared", + "type" ], "inputProperties": { - "availabilityZone": { - "type": "string", - "description": "The availability zone for the volume.\nChanging this creates a new volume.\n", - "willReplaceOnChanges": true + "exportTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of additional Route Targets that will be\nused for export.\n" }, - "backupId": { - "type": "string", - "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n", - "willReplaceOnChanges": true + "importTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of additional Route Targets that will be\nimported.\n" }, - "consistencyGroupId": { - "type": "string", - "description": "The consistency group to place the volume\nin.\n", - "willReplaceOnChanges": true + "localPref": { + "type": "integer", + "description": "The default BGP LOCAL\\_PREF of routes that will be\nadvertised to the BGP VPN, unless overridden per-route.\n" }, - "description": { + "name": { "type": "string", - "description": "A description of the volume. Changing this updates\nthe volume's description.\n" + "description": "The name of the BGP VPN. Changing this updates the name of\nthe existing BGP VPN.\n" }, - "enableOnlineResize": { - "type": "boolean", - "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + "projectId": { + "type": "string", + "description": "The ID of the project that owns the BGPVPN. Only\nadministrative and users with `advsvc` role can specify a project ID other\nthan their own. Changing this creates a new BGP VPN.\n", + "willReplaceOnChanges": true }, - "imageId": { + "region": { "type": "string", - "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN service. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nBGP VPN.\n", "willReplaceOnChanges": true }, - "metadata": { - "type": "object", - "additionalProperties": { + "routeDistinguishers": { + "type": "array", + "items": { "type": "string" }, - "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" - }, - "name": { - "type": "string", - "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" - }, - "region": { - "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n", - "willReplaceOnChanges": true + "description": "A list of route distinguisher strings. If\nspecified, one of these RDs will be used to advertise VPN routes.\n" }, - "schedulerHints": { + "routeTargets": { "type": "array", "items": { - "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + "type": "string" }, - "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" - }, - "size": { - "type": "integer", - "description": "The size of the volume to create (in gigabytes).\n" - }, - "snapshotId": { - "type": "string", - "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", - "willReplaceOnChanges": true - }, - "sourceReplica": { - "type": "string", - "description": "The volume ID to replicate with.\n", - "willReplaceOnChanges": true + "description": "A list of Route Targets that will be both\nimported and used for export.\n" }, - "sourceVolId": { + "type": { "type": "string", - "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "description": "The type of the BGP VPN (either `l2` or `l3`). Changing this\ncreates a new BGP VPN. Defaults to `l3`.\n", "willReplaceOnChanges": true }, - "volumeType": { - "type": "string", - "description": "The type of volume to create.\nChanging this creates a new volume.\n", + "vni": { + "type": "integer", + "description": "The globally-assigned VXLAN VNI for the BGP VPN. Changing\nthis creates a new BGP VPN.\n", "willReplaceOnChanges": true } }, - "requiredInputs": [ - "size" - ], "stateInputs": { - "description": "Input properties used for looking up and filtering Volume resources.\n", + "description": "Input properties used for looking up and filtering V2 resources.\n", "properties": { - "attachments": { + "exportTargets": { "type": "array", "items": { - "$ref": "#/types/openstack:blockstorage/VolumeAttachment:VolumeAttachment" + "type": "string" }, - "description": "If a volume is attached to an instance, this attribute will\ndisplay the Attachment ID, Instance ID, and the Device as the Instance\nsees it.\n" - }, - "availabilityZone": { - "type": "string", - "description": "The availability zone for the volume.\nChanging this creates a new volume.\n", - "willReplaceOnChanges": true + "description": "A list of additional Route Targets that will be\nused for export.\n" }, - "backupId": { - "type": "string", - "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n", - "willReplaceOnChanges": true + "importTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of additional Route Targets that will be\nimported.\n" }, - "consistencyGroupId": { - "type": "string", - "description": "The consistency group to place the volume\nin.\n", - "willReplaceOnChanges": true + "localPref": { + "type": "integer", + "description": "The default BGP LOCAL\\_PREF of routes that will be\nadvertised to the BGP VPN, unless overridden per-route.\n" }, - "description": { + "name": { "type": "string", - "description": "A description of the volume. Changing this updates\nthe volume's description.\n" - }, - "enableOnlineResize": { - "type": "boolean", - "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + "description": "The name of the BGP VPN. Changing this updates the name of\nthe existing BGP VPN.\n" }, - "imageId": { - "type": "string", - "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n", - "willReplaceOnChanges": true + "networks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of network IDs that are associated with the BGP VPN.\n" }, - "metadata": { - "type": "object", - "additionalProperties": { + "ports": { + "type": "array", + "items": { "type": "string" }, - "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" + "description": "A list of port IDs that are associated with the BGP VPN.\n" }, - "name": { + "projectId": { "type": "string", - "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" + "description": "The ID of the project that owns the BGPVPN. Only\nadministrative and users with `advsvc` role can specify a project ID other\nthan their own. Changing this creates a new BGP VPN.\n", + "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a BGP VPN service. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nBGP VPN.\n", "willReplaceOnChanges": true }, - "schedulerHints": { + "routeDistinguishers": { "type": "array", "items": { - "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + "type": "string" }, - "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" + "description": "A list of route distinguisher strings. If\nspecified, one of these RDs will be used to advertise VPN routes.\n" }, - "size": { - "type": "integer", - "description": "The size of the volume to create (in gigabytes).\n" + "routeTargets": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Route Targets that will be both\nimported and used for export.\n" }, - "snapshotId": { - "type": "string", - "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", - "willReplaceOnChanges": true + "routers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of router IDs that are associated with the BGP VPN.\n" }, - "sourceReplica": { - "type": "string", - "description": "The volume ID to replicate with.\n", - "willReplaceOnChanges": true + "shared": { + "type": "boolean", + "description": "Indicates whether the BGP VPN is shared across projects.\n" }, - "sourceVolId": { + "type": { "type": "string", - "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "description": "The type of the BGP VPN (either `l2` or `l3`). Changing this\ncreates a new BGP VPN. Defaults to `l3`.\n", "willReplaceOnChanges": true }, - "volumeType": { - "type": "string", - "description": "The type of volume to create.\nChanging this creates a new volume.\n", + "vni": { + "type": "integer", + "description": "The globally-assigned VXLAN VNI for the BGP VPN. Changing\nthis creates a new BGP VPN.\n", "willReplaceOnChanges": true } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/bgpvpnV2:BgpvpnV2" + } + ] }, - "openstack:blockstorage/volumeAttach:VolumeAttach": { - "description": "\u003e **Note:** This resource usually requires admin privileges.\n\n\u003e **Note:** This resource does not actually attach a volume to an instance.\nPlease use the `openstack.compute.VolumeAttach` resource for that.\n\n\u003e **Note:** All arguments including the `data` computed attribute will be\nstored in the raw state as plain-text. Read more about sensitive data in\nstate.\n\nCreates a general purpose attachment connection to a Block\nStorage volume using the OpenStack Block Storage (Cinder) v3 API.\n\nDepending on your Block Storage service configuration, this\nresource can assist in attaching a volume to a non-OpenStack resource\nsuch as a bare-metal server or a remote virtual machine in a\ndifferent cloud provider.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volume1 = new openstack.blockstorage.Volume(\"volume_1\", {\n name: \"volume_1\",\n size: 1,\n});\nconst va1 = new openstack.blockstorage.VolumeAttach(\"va_1\", {\n volumeId: volume1.id,\n device: \"auto\",\n hostName: \"devstack\",\n ipAddress: \"192.168.255.10\",\n initiator: \"iqn.1993-08.org.debian:01:e9861fb1859\",\n osType: \"linux2\",\n platform: \"x86_64\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume1 = openstack.blockstorage.Volume(\"volume_1\",\n name=\"volume_1\",\n size=1)\nva1 = openstack.blockstorage.VolumeAttach(\"va_1\",\n volume_id=volume1.id,\n device=\"auto\",\n host_name=\"devstack\",\n ip_address=\"192.168.255.10\",\n initiator=\"iqn.1993-08.org.debian:01:e9861fb1859\",\n os_type=\"linux2\",\n platform=\"x86_64\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volume1 = new OpenStack.BlockStorage.Volume(\"volume_1\", new()\n {\n Name = \"volume_1\",\n Size = 1,\n });\n\n var va1 = new OpenStack.BlockStorage.VolumeAttach(\"va_1\", new()\n {\n VolumeId = volume1.Id,\n Device = \"auto\",\n HostName = \"devstack\",\n IpAddress = \"192.168.255.10\",\n Initiator = \"iqn.1993-08.org.debian:01:e9861fb1859\",\n OsType = \"linux2\",\n Platform = \"x86_64\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tvolume1, err := blockstorage.NewVolume(ctx, \"volume_1\", \u0026blockstorage.VolumeArgs{\n\t\t\tName: pulumi.String(\"volume_1\"),\n\t\t\tSize: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewVolumeAttach(ctx, \"va_1\", \u0026blockstorage.VolumeAttachArgs{\n\t\t\tVolumeId: volume1.ID(),\n\t\t\tDevice: pulumi.String(\"auto\"),\n\t\t\tHostName: pulumi.String(\"devstack\"),\n\t\t\tIpAddress: pulumi.String(\"192.168.255.10\"),\n\t\t\tInitiator: pulumi.String(\"iqn.1993-08.org.debian:01:e9861fb1859\"),\n\t\t\tOsType: pulumi.String(\"linux2\"),\n\t\t\tPlatform: pulumi.String(\"x86_64\"),\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.openstack.blockstorage.Volume;\nimport com.pulumi.openstack.blockstorage.VolumeArgs;\nimport com.pulumi.openstack.blockstorage.VolumeAttach;\nimport com.pulumi.openstack.blockstorage.VolumeAttachArgs;\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 volume1 = new Volume(\"volume1\", VolumeArgs.builder()\n .name(\"volume_1\")\n .size(1)\n .build());\n\n var va1 = new VolumeAttach(\"va1\", VolumeAttachArgs.builder()\n .volumeId(volume1.id())\n .device(\"auto\")\n .hostName(\"devstack\")\n .ipAddress(\"192.168.255.10\")\n .initiator(\"iqn.1993-08.org.debian:01:e9861fb1859\")\n .osType(\"linux2\")\n .platform(\"x86_64\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volume1:\n type: openstack:blockstorage:Volume\n name: volume_1\n properties:\n name: volume_1\n size: 1\n va1:\n type: openstack:blockstorage:VolumeAttach\n name: va_1\n properties:\n volumeId: ${volume1.id}\n device: auto\n hostName: devstack\n ipAddress: 192.168.255.10\n initiator: iqn.1993-08.org.debian:01:e9861fb1859\n osType: linux2\n platform: x86_64\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Volume Connection Data\n\nUpon creation of this resource, a `data` exported attribute will be available.\nThis attribute is a set of key/value pairs that contains the information\nrequired to complete the block storage connection.\n\nAs an example, creating an iSCSI-based volume will return the following:\n\n```\ndata.access_mode = rw\ndata.auth_method = CHAP\ndata.auth_password = xUhbGKQ8QCwKmHQ2\ndata.auth_username = Sphn5X4EoyFUUMYVYSA4\ndata.target_iqn = iqn.2010-10.org.openstack:volume-2d87ed25-c312-4f42-be1d-3b36b014561d\ndata.target_portal = 192.168.255.10:3260\ndata.volume_id = 2d87ed25-c312-4f42-be1d-3b36b014561d\n```\n\nThis information can then be fed into a provisioner or a template shell script,\nwhere the final result would look something like:\n\n```\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --interface default --op new\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.authmethod -v ${self.data.auth_method}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.username -v ${self.data.auth_username}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.password -v ${self.data.auth_password}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --login\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.startup -v automatic\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --rescan\n```\n\nThe contents of `data` will vary from each Block Storage service. You must have\na good understanding of how the service is configured and how to make the\nappropriate final connection. However, if used correctly, this has the\nflexibility to be able to attach OpenStack Block Storage volumes to\nnon-OpenStack resources.\n\n## Import\n\nIt is not possible to import this resource.\n\n", + "openstack:blockstorage/qosAssociationV3:QosAssociationV3": { + "description": "Manages a V3 block storage Qos Association resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst qos = new openstack.blockstorage.QosV3(\"qos\", {\n name: \"%s\",\n consumer: \"front-end\",\n specs: {\n read_iops_sec: \"20000\",\n },\n});\nconst volumeType = new openstack.blockstorage.VolumeTypeV3(\"volume_type\", {name: \"%s\"});\nconst qosAssociation = new openstack.blockstorage.QosAssociationV3(\"qos_association\", {\n qosId: qos.id,\n volumeTypeId: volumeType.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nqos = openstack.blockstorage.QosV3(\"qos\",\n name=\"%s\",\n consumer=\"front-end\",\n specs={\n \"read_iops_sec\": \"20000\",\n })\nvolume_type = openstack.blockstorage.VolumeTypeV3(\"volume_type\", name=\"%s\")\nqos_association = openstack.blockstorage.QosAssociationV3(\"qos_association\",\n qos_id=qos.id,\n volume_type_id=volume_type.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var qos = new OpenStack.BlockStorage.QosV3(\"qos\", new()\n {\n Name = \"%s\",\n Consumer = \"front-end\",\n Specs = \n {\n { \"read_iops_sec\", \"20000\" },\n },\n });\n\n var volumeType = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type\", new()\n {\n Name = \"%s\",\n });\n\n var qosAssociation = new OpenStack.BlockStorage.QosAssociationV3(\"qos_association\", new()\n {\n QosId = qos.Id,\n VolumeTypeId = volumeType.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tqos, err := blockstorage.NewQosV3(ctx, \"qos\", \u0026blockstorage.QosV3Args{\n\t\t\tName: pulumi.String(\"%s\"),\n\t\t\tConsumer: pulumi.String(\"front-end\"),\n\t\t\tSpecs: pulumi.StringMap{\n\t\t\t\t\"read_iops_sec\": pulumi.String(\"20000\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvolumeType, err := blockstorage.NewVolumeTypeV3(ctx, \"volume_type\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"%s\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewQosAssociationV3(ctx, \"qos_association\", \u0026blockstorage.QosAssociationV3Args{\n\t\t\tQosId: qos.ID(),\n\t\t\tVolumeTypeId: volumeType.ID(),\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.openstack.blockstorage.QosV3;\nimport com.pulumi.openstack.blockstorage.QosV3Args;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\nimport com.pulumi.openstack.blockstorage.QosAssociationV3;\nimport com.pulumi.openstack.blockstorage.QosAssociationV3Args;\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 qos = new QosV3(\"qos\", QosV3Args.builder()\n .name(\"%s\")\n .consumer(\"front-end\")\n .specs(Map.of(\"read_iops_sec\", \"20000\"))\n .build());\n\n var volumeType = new VolumeTypeV3(\"volumeType\", VolumeTypeV3Args.builder()\n .name(\"%s\")\n .build());\n\n var qosAssociation = new QosAssociationV3(\"qosAssociation\", QosAssociationV3Args.builder()\n .qosId(qos.id())\n .volumeTypeId(volumeType.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n qos:\n type: openstack:blockstorage:QosV3\n properties:\n name: '%s'\n consumer: front-end\n specs:\n read_iops_sec: '20000'\n volumeType:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type\n properties:\n name: '%s'\n qosAssociation:\n type: openstack:blockstorage:QosAssociationV3\n name: qos_association\n properties:\n qosId: ${qos.id}\n volumeTypeId: ${volumeType.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nQos association can be imported using the `qos_id/volume_type_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/qosAssociationV3:QosAssociationV3 qos_association 941793f0-0a34-4bc4-b72e-a6326ae58283/ea257959-eeb1-4c10-8d33-26f0409a755d\n```\n", "properties": { - "attachMode": { - "type": "string", - "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n" - }, - "data": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "This is a map of key/value pairs that contain the connection\ninformation. You will want to pass this information to a provisioner\nscript to finalize the connection. See below for more information.\n", - "secret": true - }, - "device": { - "type": "string", - "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n" - }, - "driverVolumeType": { - "type": "string", - "description": "The storage driver that the volume is based on.\n" - }, - "hostName": { - "type": "string", - "description": "The host to attach the volume to.\n" - }, - "initiator": { - "type": "string", - "description": "The iSCSI initiator string to make the connection.\n" - }, - "ipAddress": { - "type": "string", - "description": "The IP address of the `host_name` above.\n" - }, - "mountPointBase": { - "type": "string", - "description": "A mount point base name for shared storage.\n" - }, - "multipath": { - "type": "boolean", - "description": "Whether to connect to this volume via multipath.\n" - }, - "osType": { - "type": "string", - "description": "The iSCSI initiator OS type.\n" - }, - "platform": { + "qosId": { "type": "string", - "description": "The iSCSI initiator platform.\n" + "description": "ID of the qos to associate. Changing this creates\na new qos association.\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n" - }, - "volumeId": { - "type": "string", - "description": "The ID of the Volume to attach to an Instance.\n" + "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n" }, - "wwnn": { + "volumeTypeId": { "type": "string", - "description": "A wwnn name. Used for Fibre Channel connections.\n" - }, - "wwpns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n" + "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n" } }, "required": [ - "data", - "driverVolumeType", - "hostName", - "mountPointBase", + "qosId", "region", - "volumeId" + "volumeTypeId" ], "inputProperties": { - "attachMode": { - "type": "string", - "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n", - "willReplaceOnChanges": true - }, - "device": { + "qosId": { "type": "string", - "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n", + "description": "ID of the qos to associate. Changing this creates\na new qos association.\n", "willReplaceOnChanges": true }, - "hostName": { + "region": { "type": "string", - "description": "The host to attach the volume to.\n", + "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n", "willReplaceOnChanges": true }, - "initiator": { + "volumeTypeId": { "type": "string", - "description": "The iSCSI initiator string to make the connection.\n", - "willReplaceOnChanges": true - }, - "ipAddress": { - "type": "string", - "description": "The IP address of the `host_name` above.\n", - "willReplaceOnChanges": true - }, - "multipath": { - "type": "boolean", - "description": "Whether to connect to this volume via multipath.\n", - "willReplaceOnChanges": true - }, - "osType": { - "type": "string", - "description": "The iSCSI initiator OS type.\n", - "willReplaceOnChanges": true - }, - "platform": { - "type": "string", - "description": "The iSCSI initiator platform.\n", - "willReplaceOnChanges": true - }, - "region": { - "type": "string", - "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n", - "willReplaceOnChanges": true - }, - "volumeId": { - "type": "string", - "description": "The ID of the Volume to attach to an Instance.\n", - "willReplaceOnChanges": true - }, - "wwnn": { - "type": "string", - "description": "A wwnn name. Used for Fibre Channel connections.\n", - "willReplaceOnChanges": true - }, - "wwpns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n", + "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n", "willReplaceOnChanges": true } }, "requiredInputs": [ - "hostName", - "volumeId" + "qosId", + "volumeTypeId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering VolumeAttach resources.\n", + "description": "Input properties used for looking up and filtering QosAssociationV3 resources.\n", "properties": { - "attachMode": { - "type": "string", - "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n", - "willReplaceOnChanges": true - }, - "data": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "This is a map of key/value pairs that contain the connection\ninformation. You will want to pass this information to a provisioner\nscript to finalize the connection. See below for more information.\n", - "secret": true - }, - "device": { - "type": "string", - "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n", - "willReplaceOnChanges": true - }, - "driverVolumeType": { - "type": "string", - "description": "The storage driver that the volume is based on.\n" - }, - "hostName": { - "type": "string", - "description": "The host to attach the volume to.\n", - "willReplaceOnChanges": true - }, - "initiator": { - "type": "string", - "description": "The iSCSI initiator string to make the connection.\n", - "willReplaceOnChanges": true - }, - "ipAddress": { - "type": "string", - "description": "The IP address of the `host_name` above.\n", - "willReplaceOnChanges": true - }, - "mountPointBase": { - "type": "string", - "description": "A mount point base name for shared storage.\n" - }, - "multipath": { - "type": "boolean", - "description": "Whether to connect to this volume via multipath.\n", - "willReplaceOnChanges": true - }, - "osType": { - "type": "string", - "description": "The iSCSI initiator OS type.\n", - "willReplaceOnChanges": true - }, - "platform": { + "qosId": { "type": "string", - "description": "The iSCSI initiator platform.\n", + "description": "ID of the qos to associate. Changing this creates\na new qos association.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n", - "willReplaceOnChanges": true - }, - "volumeId": { - "type": "string", - "description": "The ID of the Volume to attach to an Instance.\n", + "description": "The region in which to create the qos association.\nIf omitted, the `region` argument of the provider is used. Changing\nthis creates a new qos association.\n", "willReplaceOnChanges": true }, - "wwnn": { + "volumeTypeId": { "type": "string", - "description": "A wwnn name. Used for Fibre Channel connections.\n", - "willReplaceOnChanges": true - }, - "wwpns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n", + "description": "ID of the volume_type to associate.\nChanging this creates a new qos association.\n", "willReplaceOnChanges": true } }, "type": "object" } }, - "openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3": { - "description": "Manages a V3 block storage volume type access resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst project1 = new openstack.identity.Project(\"project_1\", {name: \"project_1\"});\nconst volumeType1 = new openstack.blockstorage.VolumeTypeV3(\"volume_type_1\", {\n name: \"volume_type_1\",\n isPublic: false,\n});\nconst volumeTypeAccess = new openstack.blockstorage.VolumeTypeAccessV3(\"volume_type_access\", {\n projectId: project1.id,\n volumeTypeId: volumeType1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nproject1 = openstack.identity.Project(\"project_1\", name=\"project_1\")\nvolume_type1 = openstack.blockstorage.VolumeTypeV3(\"volume_type_1\",\n name=\"volume_type_1\",\n is_public=False)\nvolume_type_access = openstack.blockstorage.VolumeTypeAccessV3(\"volume_type_access\",\n project_id=project1.id,\n volume_type_id=volume_type1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project1 = new OpenStack.Identity.Project(\"project_1\", new()\n {\n Name = \"project_1\",\n });\n\n var volumeType1 = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type_1\", new()\n {\n Name = \"volume_type_1\",\n IsPublic = false,\n });\n\n var volumeTypeAccess = new OpenStack.BlockStorage.VolumeTypeAccessV3(\"volume_type_access\", new()\n {\n ProjectId = project1.Id,\n VolumeTypeId = volumeType1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject1, err := identity.NewProject(ctx, \"project_1\", \u0026identity.ProjectArgs{\n\t\t\tName: pulumi.String(\"project_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvolumeType1, err := blockstorage.NewVolumeTypeV3(ctx, \"volume_type_1\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"volume_type_1\"),\n\t\t\tIsPublic: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewVolumeTypeAccessV3(ctx, \"volume_type_access\", \u0026blockstorage.VolumeTypeAccessV3Args{\n\t\t\tProjectId: project1.ID(),\n\t\t\tVolumeTypeId: volumeType1.ID(),\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.openstack.identity.Project;\nimport com.pulumi.openstack.identity.ProjectArgs;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\nimport com.pulumi.openstack.blockstorage.VolumeTypeAccessV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeAccessV3Args;\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 project1 = new Project(\"project1\", ProjectArgs.builder()\n .name(\"project_1\")\n .build());\n\n var volumeType1 = new VolumeTypeV3(\"volumeType1\", VolumeTypeV3Args.builder()\n .name(\"volume_type_1\")\n .isPublic(false)\n .build());\n\n var volumeTypeAccess = new VolumeTypeAccessV3(\"volumeTypeAccess\", VolumeTypeAccessV3Args.builder()\n .projectId(project1.id())\n .volumeTypeId(volumeType1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n project1:\n type: openstack:identity:Project\n name: project_1\n properties:\n name: project_1\n volumeType1:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type_1\n properties:\n name: volume_type_1\n isPublic: false\n volumeTypeAccess:\n type: openstack:blockstorage:VolumeTypeAccessV3\n name: volume_type_access\n properties:\n projectId: ${project1.id}\n volumeTypeId: ${volumeType1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolume types access can be imported using the `volume_type_id/project_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3 volume_type_access 941793f0-0a34-4bc4-b72e-a6326ae58283/ed498e81f0cc448bae0ad4f8f21bf67f\n```\n", + "openstack:blockstorage/qosV3:QosV3": { + "description": "Manages a V3 block storage Quality-Of-Servirce (qos) resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst qos = new openstack.blockstorage.QosV3(\"qos\", {\n name: \"foo\",\n consumer: \"back-end\",\n specs: {\n read_iops_sec: \"40000\",\n write_iops_sec: \"40000\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nqos = openstack.blockstorage.QosV3(\"qos\",\n name=\"foo\",\n consumer=\"back-end\",\n specs={\n \"read_iops_sec\": \"40000\",\n \"write_iops_sec\": \"40000\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var qos = new OpenStack.BlockStorage.QosV3(\"qos\", new()\n {\n Name = \"foo\",\n Consumer = \"back-end\",\n Specs = \n {\n { \"read_iops_sec\", \"40000\" },\n { \"write_iops_sec\", \"40000\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewQosV3(ctx, \"qos\", \u0026blockstorage.QosV3Args{\n\t\t\tName: pulumi.String(\"foo\"),\n\t\t\tConsumer: pulumi.String(\"back-end\"),\n\t\t\tSpecs: pulumi.StringMap{\n\t\t\t\t\"read_iops_sec\": pulumi.String(\"40000\"),\n\t\t\t\t\"write_iops_sec\": pulumi.String(\"40000\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.QosV3;\nimport com.pulumi.openstack.blockstorage.QosV3Args;\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 qos = new QosV3(\"qos\", QosV3Args.builder()\n .name(\"foo\")\n .consumer(\"back-end\")\n .specs(Map.ofEntries(\n Map.entry(\"read_iops_sec\", \"40000\"),\n Map.entry(\"write_iops_sec\", \"40000\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n qos:\n type: openstack:blockstorage:QosV3\n properties:\n name: foo\n consumer: back-end\n specs:\n read_iops_sec: '40000'\n write_iops_sec: '40000'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nQos can be imported using the `qos_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/qosV3:QosV3 qos 941793f0-0a34-4bc4-b72e-a6326ae58283\n```\n", "properties": { - "projectId": { + "consumer": { "type": "string", - "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n" + "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" }, - "region": { + "name": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n" + "description": "Name of the qos. Changing this creates a new qos.\n" }, - "volumeTypeId": { + "region": { "type": "string", - "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n" + "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n" + }, + "specs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of specs for the qos.\n" } }, "required": [ - "projectId", - "region", - "volumeTypeId" + "name", + "region" ], "inputProperties": { - "projectId": { + "consumer": { "type": "string", - "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n", - "willReplaceOnChanges": true + "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" }, - "region": { + "name": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "description": "Name of the qos. Changing this creates a new qos.\n", "willReplaceOnChanges": true }, - "volumeTypeId": { + "region": { "type": "string", - "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n", + "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n", "willReplaceOnChanges": true + }, + "specs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of specs for the qos.\n" } }, - "requiredInputs": [ - "projectId", - "volumeTypeId" - ], "stateInputs": { - "description": "Input properties used for looking up and filtering VolumeTypeAccessV3 resources.\n", + "description": "Input properties used for looking up and filtering QosV3 resources.\n", "properties": { - "projectId": { + "consumer": { "type": "string", - "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n", - "willReplaceOnChanges": true + "description": "The consumer of qos. Can be one of `front-end`,\n`back-end` or `both`. Changing this updates the `consumer` of an\nexisting qos.\n" }, - "region": { + "name": { "type": "string", - "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "description": "Name of the qos. Changing this creates a new qos.\n", "willReplaceOnChanges": true }, - "volumeTypeId": { + "region": { "type": "string", - "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n", + "description": "The region in which to create the qos. If omitted,\nthe `region` argument of the provider is used. Changing this creates\na new qos.\n", "willReplaceOnChanges": true + }, + "specs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of specs for the qos.\n" } }, "type": "object" } }, - "openstack:blockstorage/volumeTypeV3:VolumeTypeV3": { - "description": "Manages a V3 block storage volume type resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n### Basic Volume Type\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volumeType1 = new openstack.blockstorage.VolumeTypeV3(\"volume_type_1\", {\n name: \"volume_type_1\",\n description: \"Volume type 1\",\n extraSpecs: {\n capabilities: \"gpu\",\n volume_backend_name: \"ssd\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume_type1 = openstack.blockstorage.VolumeTypeV3(\"volume_type_1\",\n name=\"volume_type_1\",\n description=\"Volume type 1\",\n extra_specs={\n \"capabilities\": \"gpu\",\n \"volume_backend_name\": \"ssd\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volumeType1 = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type_1\", new()\n {\n Name = \"volume_type_1\",\n Description = \"Volume type 1\",\n ExtraSpecs = \n {\n { \"capabilities\", \"gpu\" },\n { \"volume_backend_name\", \"ssd\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolumeTypeV3(ctx, \"volume_type_1\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"volume_type_1\"),\n\t\t\tDescription: pulumi.String(\"Volume type 1\"),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"capabilities\": pulumi.String(\"gpu\"),\n\t\t\t\t\"volume_backend_name\": pulumi.String(\"ssd\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\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 volumeType1 = new VolumeTypeV3(\"volumeType1\", VolumeTypeV3Args.builder()\n .name(\"volume_type_1\")\n .description(\"Volume type 1\")\n .extraSpecs(Map.ofEntries(\n Map.entry(\"capabilities\", \"gpu\"),\n Map.entry(\"volume_backend_name\", \"ssd\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volumeType1:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type_1\n properties:\n name: volume_type_1\n description: Volume type 1\n extraSpecs:\n capabilities: gpu\n volume_backend_name: ssd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Volume Type with multiattach enabled\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst multiattach = new openstack.blockstorage.VolumeTypeV3(\"multiattach\", {\n name: \"multiattach\",\n description: \"Multiattach-enabled volume type\",\n extraSpecs: {\n multiattach: \"\u003cis\u003e True\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nmultiattach = openstack.blockstorage.VolumeTypeV3(\"multiattach\",\n name=\"multiattach\",\n description=\"Multiattach-enabled volume type\",\n extra_specs={\n \"multiattach\": \"\u003cis\u003e True\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var multiattach = new OpenStack.BlockStorage.VolumeTypeV3(\"multiattach\", new()\n {\n Name = \"multiattach\",\n Description = \"Multiattach-enabled volume type\",\n ExtraSpecs = \n {\n { \"multiattach\", \"\u003cis\u003e True\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolumeTypeV3(ctx, \"multiattach\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"multiattach\"),\n\t\t\tDescription: pulumi.String(\"Multiattach-enabled volume type\"),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"multiattach\": pulumi.String(\"\u003cis\u003e True\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\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 multiattach = new VolumeTypeV3(\"multiattach\", VolumeTypeV3Args.builder()\n .name(\"multiattach\")\n .description(\"Multiattach-enabled volume type\")\n .extraSpecs(Map.of(\"multiattach\", \"\u003cis\u003e True\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n multiattach:\n type: openstack:blockstorage:VolumeTypeV3\n properties:\n name: multiattach\n description: Multiattach-enabled volume type\n extraSpecs:\n multiattach: \u003cis\u003e True\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolume types can be imported using the `volume_type_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volumeTypeV3:VolumeTypeV3 volume_type_1 941793f0-0a34-4bc4-b72e-a6326ae58283\n```\n", + "openstack:blockstorage/quoteSetV3:QuoteSetV3": { + "description": "Manages a V3 block storage quotaset resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\u003e **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API\n in case of delete call.\n\n\u003e **Note:** This resource has all-in creation so all optional quota arguments that were not specified are\n created with zero value. This excludes volume type quota.\n\n## Import\n\nQuotasets can be imported using the `project_id/region`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/quoteSetV3:QuoteSetV3 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1\n```\n", "properties": { - "description": { - "type": "string", - "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" + "backupGigabytes": { + "type": "integer", + "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" }, - "extraSpecs": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs of metadata for the volume type.\n" + "backups": { + "type": "integer", + "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" }, - "isPublic": { - "type": "boolean", - "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" + "gigabytes": { + "type": "integer", + "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" }, - "name": { + "groups": { + "type": "integer", + "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + }, + "perVolumeGigabytes": { + "type": "integer", + "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + }, + "projectId": { "type": "string", - "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" + "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n" }, "region": { "type": "string", "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n" - } - }, - "required": [ - "description", - "extraSpecs", - "isPublic", - "name", - "region" - ], - "inputProperties": { - "description": { - "type": "string", - "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" }, - "extraSpecs": { + "snapshots": { + "type": "integer", + "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" + }, + "volumeTypeQuota": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "Key/Value pairs of metadata for the volume type.\n" - }, - "isPublic": { - "type": "boolean", - "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" + "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" }, - "name": { + "volumes": { + "type": "integer", + "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" + } + }, + "required": [ + "backupGigabytes", + "backups", + "gigabytes", + "groups", + "perVolumeGigabytes", + "projectId", + "region", + "snapshots", + "volumes" + ], + "inputProperties": { + "backupGigabytes": { + "type": "integer", + "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" + }, + "backups": { + "type": "integer", + "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" + }, + "gigabytes": { + "type": "integer", + "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" + }, + "groups": { + "type": "integer", + "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + }, + "perVolumeGigabytes": { + "type": "integer", + "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + }, + "projectId": { "type": "string", - "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" + "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n", + "willReplaceOnChanges": true }, "region": { "type": "string", "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", "willReplaceOnChanges": true + }, + "snapshots": { + "type": "integer", + "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" + }, + "volumeTypeQuota": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" + }, + "volumes": { + "type": "integer", + "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" } }, + "requiredInputs": [ + "projectId" + ], "stateInputs": { - "description": "Input properties used for looking up and filtering VolumeTypeV3 resources.\n", + "description": "Input properties used for looking up and filtering QuoteSetV3 resources.\n", "properties": { - "description": { - "type": "string", - "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" + "backupGigabytes": { + "type": "integer", + "description": "Quota value for backup gigabytes. Changing\nthis updates the existing quotaset.\n" }, - "extraSpecs": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs of metadata for the volume type.\n" + "backups": { + "type": "integer", + "description": "Quota value for backups. Changing this updates the\nexisting quotaset.\n" }, - "isPublic": { - "type": "boolean", - "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" + "gigabytes": { + "type": "integer", + "description": "Quota value for gigabytes. Changing this updates the\nexisting quotaset.\n" }, - "name": { + "groups": { + "type": "integer", + "description": "Quota value for groups. Changing this updates the\nexisting quotaset.\n" + }, + "perVolumeGigabytes": { + "type": "integer", + "description": "Quota value for gigabytes per volume .\nChanging this updates the existing quotaset.\n" + }, + "projectId": { "type": "string", - "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" + "description": "ID of the project to manage quotas. Changing this\ncreates a new quotaset.\n", + "willReplaceOnChanges": true }, "region": { "type": "string", "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", "willReplaceOnChanges": true + }, + "snapshots": { + "type": "integer", + "description": "Quota value for snapshots. Changing this updates the\nexisting quotaset.\n" + }, + "volumeTypeQuota": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs for setting quota for\nvolumes types. Possible keys are `snapshots_\u003cvolume_type_name\u003e`,\n`volumes_\u003cvolume_type_name\u003e` and `gigabytes_\u003cvolume_type_name\u003e`.\n" + }, + "volumes": { + "type": "integer", + "description": "Quota value for volumes. Changing this updates the\nexisting quotaset.\n" } }, "type": "object" } }, - "openstack:compute/aggregateV2:AggregateV2": { - "description": "Manages a Host Aggregate within Openstack Nova.\n\n## Example Usage\n\n### Full example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst dellServers = new openstack.compute.AggregateV2(\"dell_servers\", {\n region: \"RegionOne\",\n name: \"dell_servers\",\n zone: \"nova\",\n metadata: {\n cpus: \"56\",\n },\n hosts: [\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ndell_servers = openstack.compute.AggregateV2(\"dell_servers\",\n region=\"RegionOne\",\n name=\"dell_servers\",\n zone=\"nova\",\n metadata={\n \"cpus\": \"56\",\n },\n hosts=[\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dellServers = new OpenStack.Compute.AggregateV2(\"dell_servers\", new()\n {\n Region = \"RegionOne\",\n Name = \"dell_servers\",\n Zone = \"nova\",\n Metadata = \n {\n { \"cpus\", \"56\" },\n },\n Hosts = new[]\n {\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewAggregateV2(ctx, \"dell_servers\", \u0026compute.AggregateV2Args{\n\t\t\tRegion: pulumi.String(\"RegionOne\"),\n\t\t\tName: pulumi.String(\"dell_servers\"),\n\t\t\tZone: pulumi.String(\"nova\"),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"cpus\": pulumi.String(\"56\"),\n\t\t\t},\n\t\t\tHosts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"myhost01.example.com\"),\n\t\t\t\tpulumi.String(\"myhost02.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.compute.AggregateV2;\nimport com.pulumi.openstack.compute.AggregateV2Args;\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 dellServers = new AggregateV2(\"dellServers\", AggregateV2Args.builder()\n .region(\"RegionOne\")\n .name(\"dell_servers\")\n .zone(\"nova\")\n .metadata(Map.of(\"cpus\", \"56\"))\n .hosts( \n \"myhost01.example.com\",\n \"myhost02.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n dellServers:\n type: openstack:compute:AggregateV2\n name: dell_servers\n properties:\n region: RegionOne\n name: dell_servers\n zone: nova\n metadata:\n cpus: '56'\n hosts:\n - myhost01.example.com\n - myhost02.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Minimum required example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst test = new openstack.compute.AggregateV2(\"test\", {name: \"test\"});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ntest = openstack.compute.AggregateV2(\"test\", name=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new OpenStack.Compute.AggregateV2(\"test\", new()\n {\n Name = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewAggregateV2(ctx, \"test\", \u0026compute.AggregateV2Args{\n\t\t\tName: pulumi.String(\"test\"),\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.openstack.compute.AggregateV2;\nimport com.pulumi.openstack.compute.AggregateV2Args;\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 test = new AggregateV2(\"test\", AggregateV2Args.builder()\n .name(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: openstack:compute:AggregateV2\n properties:\n name: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nYou can import an existing Host Aggregate by their ID.\n\n```sh\n$ pulumi import openstack:compute/aggregateV2:AggregateV2 myaggregate 24\n```\n\nThe ID can be obtained with an openstack command:\n\n$ openstack aggregate list\n\n+----+------+-------------------+\n\n| ID | Name | Availability Zone |\n\n+----+------+-------------------+\n\n| 59 | test | None |\n\n+----+------+-------------------+\n\n", + "openstack:blockstorage/volume:Volume": { + "description": "Manages a V3 volume resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volume1 = new openstack.blockstorage.Volume(\"volume_1\", {\n region: \"RegionOne\",\n name: \"volume_1\",\n description: \"first test volume\",\n size: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume1 = openstack.blockstorage.Volume(\"volume_1\",\n region=\"RegionOne\",\n name=\"volume_1\",\n description=\"first test volume\",\n size=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volume1 = new OpenStack.BlockStorage.Volume(\"volume_1\", new()\n {\n Region = \"RegionOne\",\n Name = \"volume_1\",\n Description = \"first test volume\",\n Size = 3,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolume(ctx, \"volume_1\", \u0026blockstorage.VolumeArgs{\n\t\t\tRegion: pulumi.String(\"RegionOne\"),\n\t\t\tName: pulumi.String(\"volume_1\"),\n\t\t\tDescription: pulumi.String(\"first test volume\"),\n\t\t\tSize: pulumi.Int(3),\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.openstack.blockstorage.Volume;\nimport com.pulumi.openstack.blockstorage.VolumeArgs;\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 volume1 = new Volume(\"volume1\", VolumeArgs.builder()\n .region(\"RegionOne\")\n .name(\"volume_1\")\n .description(\"first test volume\")\n .size(3)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volume1:\n type: openstack:blockstorage:Volume\n name: volume_1\n properties:\n region: RegionOne\n name: volume_1\n description: first test volume\n size: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolumes can be imported using the `id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volume:Volume volume_1 ea257959-eeb1-4c10-8d33-26f0409a755d\n```\n", "properties": { - "hosts": { + "attachments": { "type": "array", "items": { - "type": "string" + "$ref": "#/types/openstack:blockstorage/VolumeAttachment:VolumeAttachment" }, - "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" + "description": "If a volume is attached to an instance, this attribute will\ndisplay the Attachment ID, Instance ID, and the Device as the Instance\nsees it.\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone for the volume.\nChanging this creates a new volume.\n" + }, + "backupId": { + "type": "string", + "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n" + }, + "consistencyGroupId": { + "type": "string", + "description": "The consistency group to place the volume\nin.\n" + }, + "description": { + "type": "string", + "description": "A description of the volume. Changing this updates\nthe volume's description.\n" + }, + "enableOnlineResize": { + "type": "boolean", + "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + }, + "imageId": { + "type": "string", + "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n" }, "metadata": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" + "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" }, "name": { "type": "string", - "description": "The name of the Host Aggregate\n" + "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" }, "region": { "type": "string", - "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n" + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n" }, - "zone": { + "schedulerHints": { + "type": "array", + "items": { + "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + }, + "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" + }, + "size": { + "type": "integer", + "description": "The size of the volume to create (in gigabytes).\n" + }, + "snapshotId": { "type": "string", - "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n" + }, + "sourceReplica": { + "type": "string", + "description": "The volume ID to replicate with.\n" + }, + "sourceVolId": { + "type": "string", + "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n" + }, + "volumeType": { + "type": "string", + "description": "The type of volume to create.\nChanging this creates a new volume.\n" } }, "required": [ + "attachments", + "availabilityZone", + "metadata", "name", - "region" + "region", + "size", + "volumeType" ], "inputProperties": { - "hosts": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" + "availabilityZone": { + "type": "string", + "description": "The availability zone for the volume.\nChanging this creates a new volume.\n", + "willReplaceOnChanges": true + }, + "backupId": { + "type": "string", + "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n", + "willReplaceOnChanges": true + }, + "consistencyGroupId": { + "type": "string", + "description": "The consistency group to place the volume\nin.\n", + "willReplaceOnChanges": true + }, + "description": { + "type": "string", + "description": "A description of the volume. Changing this updates\nthe volume's description.\n" + }, + "enableOnlineResize": { + "type": "boolean", + "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + }, + "imageId": { + "type": "string", + "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true }, "metadata": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" + "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" }, "name": { "type": "string", - "description": "The name of the Host Aggregate\n" + "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" }, "region": { "type": "string", - "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n", + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n", "willReplaceOnChanges": true }, - "zone": { + "schedulerHints": { + "type": "array", + "items": { + "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + }, + "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" + }, + "size": { + "type": "integer", + "description": "The size of the volume to create (in gigabytes).\n" + }, + "snapshotId": { "type": "string", - "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true + }, + "sourceReplica": { + "type": "string", + "description": "The volume ID to replicate with.\n", + "willReplaceOnChanges": true + }, + "sourceVolId": { + "type": "string", + "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true + }, + "volumeType": { + "type": "string", + "description": "The type of volume to create.\nChanging this creates a new volume.\n", + "willReplaceOnChanges": true } }, - "stateInputs": { - "description": "Input properties used for looking up and filtering AggregateV2 resources.\n", + "requiredInputs": [ + "size" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Volume resources.\n", "properties": { - "hosts": { + "attachments": { "type": "array", "items": { - "type": "string" + "$ref": "#/types/openstack:blockstorage/VolumeAttachment:VolumeAttachment" }, - "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" + "description": "If a volume is attached to an instance, this attribute will\ndisplay the Attachment ID, Instance ID, and the Device as the Instance\nsees it.\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone for the volume.\nChanging this creates a new volume.\n", + "willReplaceOnChanges": true + }, + "backupId": { + "type": "string", + "description": "The backup ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this\ncreates a new volume. Requires microversion \u003e= 3.47.\n", + "willReplaceOnChanges": true + }, + "consistencyGroupId": { + "type": "string", + "description": "The consistency group to place the volume\nin.\n", + "willReplaceOnChanges": true + }, + "description": { + "type": "string", + "description": "A description of the volume. Changing this updates\nthe volume's description.\n" + }, + "enableOnlineResize": { + "type": "boolean", + "description": "When this option is set it allows extending\nattached volumes. Note: updating size of an attached volume requires Cinder\nsupport for version 3.42 and a compatible storage driver.\n" + }, + "imageId": { + "type": "string", + "description": "The image ID from which to create the volume.\nConflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true }, "metadata": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" + "description": "Metadata key/value pairs to associate with the volume.\nChanging this updates the existing volume metadata.\n" }, "name": { "type": "string", - "description": "The name of the Host Aggregate\n" + "description": "A unique name for the volume. Changing this updates the\nvolume's name.\n" }, "region": { "type": "string", - "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n", + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new volume.\n", "willReplaceOnChanges": true }, - "zone": { + "schedulerHints": { + "type": "array", + "items": { + "$ref": "#/types/openstack:blockstorage/VolumeSchedulerHint:VolumeSchedulerHint" + }, + "description": "Provide the Cinder scheduler with hints on where\nto instantiate a volume in the OpenStack cloud. The available hints are described below.\n" + }, + "size": { + "type": "integer", + "description": "The size of the volume to create (in gigabytes).\n" + }, + "snapshotId": { "type": "string", - "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + "description": "The snapshot ID from which to create the volume.\nConflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true + }, + "sourceReplica": { + "type": "string", + "description": "The volume ID to replicate with.\n", + "willReplaceOnChanges": true + }, + "sourceVolId": { + "type": "string", + "description": "The volume ID from which to create the volume.\nConflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this\ncreates a new volume.\n", + "willReplaceOnChanges": true + }, + "volumeType": { + "type": "string", + "description": "The type of volume to create.\nChanging this creates a new volume.\n", + "willReplaceOnChanges": true } }, "type": "object" } }, - "openstack:compute/flavor:Flavor": { - "description": "Manages a V2 flavor resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst test_flavor = new openstack.compute.Flavor(\"test-flavor\", {\n name: \"my-flavor\",\n ram: 8096,\n vcpus: 2,\n disk: 20,\n extraSpecs: {\n \"hw:cpu_policy\": \"CPU-POLICY\",\n \"hw:cpu_thread_policy\": \"CPU-THREAD-POLICY\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ntest_flavor = openstack.compute.Flavor(\"test-flavor\",\n name=\"my-flavor\",\n ram=8096,\n vcpus=2,\n disk=20,\n extra_specs={\n \"hw:cpu_policy\": \"CPU-POLICY\",\n \"hw:cpu_thread_policy\": \"CPU-THREAD-POLICY\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_flavor = new OpenStack.Compute.Flavor(\"test-flavor\", new()\n {\n Name = \"my-flavor\",\n Ram = 8096,\n Vcpus = 2,\n Disk = 20,\n ExtraSpecs = \n {\n { \"hw:cpu_policy\", \"CPU-POLICY\" },\n { \"hw:cpu_thread_policy\", \"CPU-THREAD-POLICY\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewFlavor(ctx, \"test-flavor\", \u0026compute.FlavorArgs{\n\t\t\tName: pulumi.String(\"my-flavor\"),\n\t\t\tRam: pulumi.Int(8096),\n\t\t\tVcpus: pulumi.Int(2),\n\t\t\tDisk: pulumi.Int(20),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"hw:cpu_policy\": pulumi.String(\"CPU-POLICY\"),\n\t\t\t\t\"hw:cpu_thread_policy\": pulumi.String(\"CPU-THREAD-POLICY\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.compute.Flavor;\nimport com.pulumi.openstack.compute.FlavorArgs;\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 test_flavor = new Flavor(\"test-flavor\", FlavorArgs.builder()\n .name(\"my-flavor\")\n .ram(\"8096\")\n .vcpus(\"2\")\n .disk(\"20\")\n .extraSpecs(Map.ofEntries(\n Map.entry(\"hw:cpu_policy\", \"CPU-POLICY\"),\n Map.entry(\"hw:cpu_thread_policy\", \"CPU-THREAD-POLICY\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-flavor:\n type: openstack:compute:Flavor\n properties:\n name: my-flavor\n ram: '8096'\n vcpus: '2'\n disk: '20'\n extraSpecs:\n hw:cpu_policy: CPU-POLICY\n hw:cpu_thread_policy: CPU-THREAD-POLICY\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nFlavors can be imported using the `ID`, e.g.\n\n```sh\n$ pulumi import openstack:compute/flavor:Flavor my-flavor 4142e64b-1b35-44a0-9b1e-5affc7af1106\n```\n", + "openstack:blockstorage/volumeAttach:VolumeAttach": { + "description": "\u003e **Note:** This resource usually requires admin privileges.\n\n\u003e **Note:** This resource does not actually attach a volume to an instance.\nPlease use the `openstack.compute.VolumeAttach` resource for that.\n\n\u003e **Note:** All arguments including the `data` computed attribute will be\nstored in the raw state as plain-text. Read more about sensitive data in\nstate.\n\nCreates a general purpose attachment connection to a Block\nStorage volume using the OpenStack Block Storage (Cinder) v3 API.\n\nDepending on your Block Storage service configuration, this\nresource can assist in attaching a volume to a non-OpenStack resource\nsuch as a bare-metal server or a remote virtual machine in a\ndifferent cloud provider.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volume1 = new openstack.blockstorage.Volume(\"volume_1\", {\n name: \"volume_1\",\n size: 1,\n});\nconst va1 = new openstack.blockstorage.VolumeAttach(\"va_1\", {\n volumeId: volume1.id,\n device: \"auto\",\n hostName: \"devstack\",\n ipAddress: \"192.168.255.10\",\n initiator: \"iqn.1993-08.org.debian:01:e9861fb1859\",\n osType: \"linux2\",\n platform: \"x86_64\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume1 = openstack.blockstorage.Volume(\"volume_1\",\n name=\"volume_1\",\n size=1)\nva1 = openstack.blockstorage.VolumeAttach(\"va_1\",\n volume_id=volume1.id,\n device=\"auto\",\n host_name=\"devstack\",\n ip_address=\"192.168.255.10\",\n initiator=\"iqn.1993-08.org.debian:01:e9861fb1859\",\n os_type=\"linux2\",\n platform=\"x86_64\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volume1 = new OpenStack.BlockStorage.Volume(\"volume_1\", new()\n {\n Name = \"volume_1\",\n Size = 1,\n });\n\n var va1 = new OpenStack.BlockStorage.VolumeAttach(\"va_1\", new()\n {\n VolumeId = volume1.Id,\n Device = \"auto\",\n HostName = \"devstack\",\n IpAddress = \"192.168.255.10\",\n Initiator = \"iqn.1993-08.org.debian:01:e9861fb1859\",\n OsType = \"linux2\",\n Platform = \"x86_64\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tvolume1, err := blockstorage.NewVolume(ctx, \"volume_1\", \u0026blockstorage.VolumeArgs{\n\t\t\tName: pulumi.String(\"volume_1\"),\n\t\t\tSize: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewVolumeAttach(ctx, \"va_1\", \u0026blockstorage.VolumeAttachArgs{\n\t\t\tVolumeId: volume1.ID(),\n\t\t\tDevice: pulumi.String(\"auto\"),\n\t\t\tHostName: pulumi.String(\"devstack\"),\n\t\t\tIpAddress: pulumi.String(\"192.168.255.10\"),\n\t\t\tInitiator: pulumi.String(\"iqn.1993-08.org.debian:01:e9861fb1859\"),\n\t\t\tOsType: pulumi.String(\"linux2\"),\n\t\t\tPlatform: pulumi.String(\"x86_64\"),\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.openstack.blockstorage.Volume;\nimport com.pulumi.openstack.blockstorage.VolumeArgs;\nimport com.pulumi.openstack.blockstorage.VolumeAttach;\nimport com.pulumi.openstack.blockstorage.VolumeAttachArgs;\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 volume1 = new Volume(\"volume1\", VolumeArgs.builder()\n .name(\"volume_1\")\n .size(1)\n .build());\n\n var va1 = new VolumeAttach(\"va1\", VolumeAttachArgs.builder()\n .volumeId(volume1.id())\n .device(\"auto\")\n .hostName(\"devstack\")\n .ipAddress(\"192.168.255.10\")\n .initiator(\"iqn.1993-08.org.debian:01:e9861fb1859\")\n .osType(\"linux2\")\n .platform(\"x86_64\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volume1:\n type: openstack:blockstorage:Volume\n name: volume_1\n properties:\n name: volume_1\n size: 1\n va1:\n type: openstack:blockstorage:VolumeAttach\n name: va_1\n properties:\n volumeId: ${volume1.id}\n device: auto\n hostName: devstack\n ipAddress: 192.168.255.10\n initiator: iqn.1993-08.org.debian:01:e9861fb1859\n osType: linux2\n platform: x86_64\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Volume Connection Data\n\nUpon creation of this resource, a `data` exported attribute will be available.\nThis attribute is a set of key/value pairs that contains the information\nrequired to complete the block storage connection.\n\nAs an example, creating an iSCSI-based volume will return the following:\n\n```\ndata.access_mode = rw\ndata.auth_method = CHAP\ndata.auth_password = xUhbGKQ8QCwKmHQ2\ndata.auth_username = Sphn5X4EoyFUUMYVYSA4\ndata.target_iqn = iqn.2010-10.org.openstack:volume-2d87ed25-c312-4f42-be1d-3b36b014561d\ndata.target_portal = 192.168.255.10:3260\ndata.volume_id = 2d87ed25-c312-4f42-be1d-3b36b014561d\n```\n\nThis information can then be fed into a provisioner or a template shell script,\nwhere the final result would look something like:\n\n```\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --interface default --op new\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.authmethod -v ${self.data.auth_method}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.username -v ${self.data.auth_username}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.session.auth.password -v ${self.data.auth_password}\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --login\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --op update -n node.startup -v automatic\niscsiadm -m node -T ${self.data.target_iqn} -p ${self.data.target_portal} --rescan\n```\n\nThe contents of `data` will vary from each Block Storage service. You must have\na good understanding of how the service is configured and how to make the\nappropriate final connection. However, if used correctly, this has the\nflexibility to be able to attach OpenStack Block Storage volumes to\nnon-OpenStack resources.\n\n## Import\n\nIt is not possible to import this resource.\n\n", "properties": { - "description": { + "attachMode": { "type": "string", - "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" - }, - "disk": { - "type": "integer", - "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n" - }, - "ephemeral": { - "type": "integer", - "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n" + "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n" }, - "extraSpecs": { + "data": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "Key/Value pairs of metadata for the flavor.\n" + "description": "This is a map of key/value pairs that contain the connection\ninformation. You will want to pass this information to a provisioner\nscript to finalize the connection. See below for more information.\n", + "secret": true }, - "flavorId": { + "device": { "type": "string", - "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n" + "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n" }, - "isPublic": { + "driverVolumeType": { + "type": "string", + "description": "The storage driver that the volume is based on.\n" + }, + "hostName": { + "type": "string", + "description": "The host to attach the volume to.\n" + }, + "initiator": { + "type": "string", + "description": "The iSCSI initiator string to make the connection.\n" + }, + "ipAddress": { + "type": "string", + "description": "The IP address of the `host_name` above.\n" + }, + "mountPointBase": { + "type": "string", + "description": "A mount point base name for shared storage.\n" + }, + "multipath": { "type": "boolean", - "description": "Whether the flavor is public. Changing this creates\na new flavor.\n" + "description": "Whether to connect to this volume via multipath.\n" }, - "name": { + "osType": { "type": "string", - "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n" + "description": "The iSCSI initiator OS type.\n" }, - "ram": { - "type": "integer", - "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n" + "platform": { + "type": "string", + "description": "The iSCSI initiator platform.\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n" + "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n" }, - "rxTxFactor": { - "type": "number", - "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n" + "volumeId": { + "type": "string", + "description": "The ID of the Volume to attach to an Instance.\n" }, - "swap": { - "type": "integer", - "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n" + "wwnn": { + "type": "string", + "description": "A wwnn name. Used for Fibre Channel connections.\n" }, - "vcpus": { - "type": "integer", - "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n" + "wwpns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n" } }, "required": [ - "disk", - "extraSpecs", - "flavorId", - "name", - "ram", + "data", + "driverVolumeType", + "hostName", + "mountPointBase", "region", - "vcpus" + "volumeId" ], "inputProperties": { - "description": { + "attachMode": { "type": "string", - "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" + "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n", + "willReplaceOnChanges": true }, - "disk": { - "type": "integer", - "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n", + "device": { + "type": "string", + "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n", "willReplaceOnChanges": true }, - "ephemeral": { - "type": "integer", - "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n", + "hostName": { + "type": "string", + "description": "The host to attach the volume to.\n", "willReplaceOnChanges": true }, - "extraSpecs": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Key/Value pairs of metadata for the flavor.\n" + "initiator": { + "type": "string", + "description": "The iSCSI initiator string to make the connection.\n", + "willReplaceOnChanges": true }, - "flavorId": { + "ipAddress": { "type": "string", - "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n", + "description": "The IP address of the `host_name` above.\n", "willReplaceOnChanges": true }, - "isPublic": { + "multipath": { "type": "boolean", - "description": "Whether the flavor is public. Changing this creates\na new flavor.\n", + "description": "Whether to connect to this volume via multipath.\n", "willReplaceOnChanges": true }, - "name": { + "osType": { "type": "string", - "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n", + "description": "The iSCSI initiator OS type.\n", "willReplaceOnChanges": true }, - "ram": { - "type": "integer", - "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n", + "platform": { + "type": "string", + "description": "The iSCSI initiator platform.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n", + "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n", "willReplaceOnChanges": true }, - "rxTxFactor": { - "type": "number", - "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n", + "volumeId": { + "type": "string", + "description": "The ID of the Volume to attach to an Instance.\n", "willReplaceOnChanges": true }, - "swap": { - "type": "integer", - "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n", + "wwnn": { + "type": "string", + "description": "A wwnn name. Used for Fibre Channel connections.\n", "willReplaceOnChanges": true }, - "vcpus": { - "type": "integer", - "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n", + "wwpns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n", "willReplaceOnChanges": true } }, "requiredInputs": [ - "disk", - "ram", - "vcpus" + "hostName", + "volumeId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering Flavor resources.\n", + "description": "Input properties used for looking up and filtering VolumeAttach resources.\n", "properties": { - "description": { + "attachMode": { "type": "string", - "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" - }, - "disk": { - "type": "integer", - "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n", + "description": "Specify whether to attach the volume as Read-Only\n(`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted.\nIf left unspecified, the Block Storage API will apply a default of `rw`.\n", "willReplaceOnChanges": true }, - "ephemeral": { - "type": "integer", - "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n", - "willReplaceOnChanges": true - }, - "extraSpecs": { + "data": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "Key/Value pairs of metadata for the flavor.\n" + "description": "This is a map of key/value pairs that contain the connection\ninformation. You will want to pass this information to a provisioner\nscript to finalize the connection. See below for more information.\n", + "secret": true }, - "flavorId": { + "device": { "type": "string", - "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n", + "description": "The device to tell the Block Storage service this\nvolume will be attached as. This is purely for informational purposes.\nYou can specify `auto` or a device such as `/dev/vdc`.\n", "willReplaceOnChanges": true }, - "isPublic": { + "driverVolumeType": { + "type": "string", + "description": "The storage driver that the volume is based on.\n" + }, + "hostName": { + "type": "string", + "description": "The host to attach the volume to.\n", + "willReplaceOnChanges": true + }, + "initiator": { + "type": "string", + "description": "The iSCSI initiator string to make the connection.\n", + "willReplaceOnChanges": true + }, + "ipAddress": { + "type": "string", + "description": "The IP address of the `host_name` above.\n", + "willReplaceOnChanges": true + }, + "mountPointBase": { + "type": "string", + "description": "A mount point base name for shared storage.\n" + }, + "multipath": { "type": "boolean", - "description": "Whether the flavor is public. Changing this creates\na new flavor.\n", + "description": "Whether to connect to this volume via multipath.\n", "willReplaceOnChanges": true }, - "name": { + "osType": { "type": "string", - "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n", + "description": "The iSCSI initiator OS type.\n", "willReplaceOnChanges": true }, - "ram": { - "type": "integer", - "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n", + "platform": { + "type": "string", + "description": "The iSCSI initiator platform.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n", + "description": "The region in which to obtain the V3 Block Storage\nclient. A Block Storage client is needed to create a volume attachment.\nIf omitted, the `region` argument of the provider is used. Changing this\ncreates a new volume attachment.\n", "willReplaceOnChanges": true }, - "rxTxFactor": { - "type": "number", - "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n", + "volumeId": { + "type": "string", + "description": "The ID of the Volume to attach to an Instance.\n", "willReplaceOnChanges": true }, - "swap": { - "type": "integer", - "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n", + "wwnn": { + "type": "string", + "description": "A wwnn name. Used for Fibre Channel connections.\n", "willReplaceOnChanges": true }, - "vcpus": { - "type": "integer", - "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n", + "wwpns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of wwpn strings. Used for Fibre Channel\nconnections.\n", "willReplaceOnChanges": true } }, "type": "object" } }, - "openstack:compute/flavorAccess:FlavorAccess": { - "description": "Manages a project access for flavor V2 resource within OpenStack.\n\n\u003e **Note:** You _must_ have admin privileges in your OpenStack cloud to use\nthis resource.\n\n---\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst project1 = new openstack.identity.Project(\"project_1\", {name: \"my-project\"});\nconst flavor1 = new openstack.compute.Flavor(\"flavor_1\", {\n name: \"my-flavor\",\n ram: 8096,\n vcpus: 2,\n disk: 20,\n isPublic: false,\n});\nconst access1 = new openstack.compute.FlavorAccess(\"access_1\", {\n tenantId: project1.id,\n flavorId: flavor1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nproject1 = openstack.identity.Project(\"project_1\", name=\"my-project\")\nflavor1 = openstack.compute.Flavor(\"flavor_1\",\n name=\"my-flavor\",\n ram=8096,\n vcpus=2,\n disk=20,\n is_public=False)\naccess1 = openstack.compute.FlavorAccess(\"access_1\",\n tenant_id=project1.id,\n flavor_id=flavor1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project1 = new OpenStack.Identity.Project(\"project_1\", new()\n {\n Name = \"my-project\",\n });\n\n var flavor1 = new OpenStack.Compute.Flavor(\"flavor_1\", new()\n {\n Name = \"my-flavor\",\n Ram = 8096,\n Vcpus = 2,\n Disk = 20,\n IsPublic = false,\n });\n\n var access1 = new OpenStack.Compute.FlavorAccess(\"access_1\", new()\n {\n TenantId = project1.Id,\n FlavorId = flavor1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject1, err := identity.NewProject(ctx, \"project_1\", \u0026identity.ProjectArgs{\n\t\t\tName: pulumi.String(\"my-project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tflavor1, err := compute.NewFlavor(ctx, \"flavor_1\", \u0026compute.FlavorArgs{\n\t\t\tName: pulumi.String(\"my-flavor\"),\n\t\t\tRam: pulumi.Int(8096),\n\t\t\tVcpus: pulumi.Int(2),\n\t\t\tDisk: pulumi.Int(20),\n\t\t\tIsPublic: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewFlavorAccess(ctx, \"access_1\", \u0026compute.FlavorAccessArgs{\n\t\t\tTenantId: project1.ID(),\n\t\t\tFlavorId: flavor1.ID(),\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.openstack.identity.Project;\nimport com.pulumi.openstack.identity.ProjectArgs;\nimport com.pulumi.openstack.compute.Flavor;\nimport com.pulumi.openstack.compute.FlavorArgs;\nimport com.pulumi.openstack.compute.FlavorAccess;\nimport com.pulumi.openstack.compute.FlavorAccessArgs;\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 project1 = new Project(\"project1\", ProjectArgs.builder()\n .name(\"my-project\")\n .build());\n\n var flavor1 = new Flavor(\"flavor1\", FlavorArgs.builder()\n .name(\"my-flavor\")\n .ram(\"8096\")\n .vcpus(\"2\")\n .disk(\"20\")\n .isPublic(false)\n .build());\n\n var access1 = new FlavorAccess(\"access1\", FlavorAccessArgs.builder()\n .tenantId(project1.id())\n .flavorId(flavor1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n project1:\n type: openstack:identity:Project\n name: project_1\n properties:\n name: my-project\n flavor1:\n type: openstack:compute:Flavor\n name: flavor_1\n properties:\n name: my-flavor\n ram: '8096'\n vcpus: '2'\n disk: '20'\n isPublic: false\n access1:\n type: openstack:compute:FlavorAccess\n name: access_1\n properties:\n tenantId: ${project1.id}\n flavorId: ${flavor1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource can be imported by specifying all two arguments, separated\nby a forward slash:\n\n```sh\n$ pulumi import openstack:compute/flavorAccess:FlavorAccess access_1 flavor_id/tenant_id\n```\n", + "openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3": { + "description": "Manages a V3 block storage volume type access resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst project1 = new openstack.identity.Project(\"project_1\", {name: \"project_1\"});\nconst volumeType1 = new openstack.blockstorage.VolumeTypeV3(\"volume_type_1\", {\n name: \"volume_type_1\",\n isPublic: false,\n});\nconst volumeTypeAccess = new openstack.blockstorage.VolumeTypeAccessV3(\"volume_type_access\", {\n projectId: project1.id,\n volumeTypeId: volumeType1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nproject1 = openstack.identity.Project(\"project_1\", name=\"project_1\")\nvolume_type1 = openstack.blockstorage.VolumeTypeV3(\"volume_type_1\",\n name=\"volume_type_1\",\n is_public=False)\nvolume_type_access = openstack.blockstorage.VolumeTypeAccessV3(\"volume_type_access\",\n project_id=project1.id,\n volume_type_id=volume_type1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project1 = new OpenStack.Identity.Project(\"project_1\", new()\n {\n Name = \"project_1\",\n });\n\n var volumeType1 = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type_1\", new()\n {\n Name = \"volume_type_1\",\n IsPublic = false,\n });\n\n var volumeTypeAccess = new OpenStack.BlockStorage.VolumeTypeAccessV3(\"volume_type_access\", new()\n {\n ProjectId = project1.Id,\n VolumeTypeId = volumeType1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject1, err := identity.NewProject(ctx, \"project_1\", \u0026identity.ProjectArgs{\n\t\t\tName: pulumi.String(\"project_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvolumeType1, err := blockstorage.NewVolumeTypeV3(ctx, \"volume_type_1\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"volume_type_1\"),\n\t\t\tIsPublic: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = blockstorage.NewVolumeTypeAccessV3(ctx, \"volume_type_access\", \u0026blockstorage.VolumeTypeAccessV3Args{\n\t\t\tProjectId: project1.ID(),\n\t\t\tVolumeTypeId: volumeType1.ID(),\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.openstack.identity.Project;\nimport com.pulumi.openstack.identity.ProjectArgs;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\nimport com.pulumi.openstack.blockstorage.VolumeTypeAccessV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeAccessV3Args;\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 project1 = new Project(\"project1\", ProjectArgs.builder()\n .name(\"project_1\")\n .build());\n\n var volumeType1 = new VolumeTypeV3(\"volumeType1\", VolumeTypeV3Args.builder()\n .name(\"volume_type_1\")\n .isPublic(false)\n .build());\n\n var volumeTypeAccess = new VolumeTypeAccessV3(\"volumeTypeAccess\", VolumeTypeAccessV3Args.builder()\n .projectId(project1.id())\n .volumeTypeId(volumeType1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n project1:\n type: openstack:identity:Project\n name: project_1\n properties:\n name: project_1\n volumeType1:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type_1\n properties:\n name: volume_type_1\n isPublic: false\n volumeTypeAccess:\n type: openstack:blockstorage:VolumeTypeAccessV3\n name: volume_type_access\n properties:\n projectId: ${project1.id}\n volumeTypeId: ${volumeType1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolume types access can be imported using the `volume_type_id/project_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3 volume_type_access 941793f0-0a34-4bc4-b72e-a6326ae58283/ed498e81f0cc448bae0ad4f8f21bf67f\n```\n", "properties": { - "flavorId": { + "projectId": { "type": "string", - "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n" + "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n" + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n" }, - "tenantId": { + "volumeTypeId": { "type": "string", - "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n" + "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n" } }, "required": [ - "flavorId", + "projectId", "region", - "tenantId" + "volumeTypeId" ], "inputProperties": { - "flavorId": { + "projectId": { "type": "string", - "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n", + "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n", + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", "willReplaceOnChanges": true }, - "tenantId": { + "volumeTypeId": { "type": "string", - "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n", + "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n", "willReplaceOnChanges": true } }, "requiredInputs": [ - "flavorId", - "tenantId" + "projectId", + "volumeTypeId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering FlavorAccess resources.\n", + "description": "Input properties used for looking up and filtering VolumeTypeAccessV3 resources.\n", "properties": { - "flavorId": { + "projectId": { "type": "string", - "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n", + "description": "ID of the project to give access to. Changing this\ncreates a new resource.\n", "willReplaceOnChanges": true }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n", + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", "willReplaceOnChanges": true }, - "tenantId": { + "volumeTypeId": { "type": "string", - "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n", + "description": "ID of the volume type to give access to. Changing\nthis creates a new resource.\n", "willReplaceOnChanges": true } }, "type": "object" } }, - "openstack:compute/instance:Instance": { + "openstack:blockstorage/volumeTypeV3:VolumeTypeV3": { + "description": "Manages a V3 block storage volume type resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n\n## Example Usage\n\n### Basic Volume Type\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst volumeType1 = new openstack.blockstorage.VolumeTypeV3(\"volume_type_1\", {\n name: \"volume_type_1\",\n description: \"Volume type 1\",\n extraSpecs: {\n capabilities: \"gpu\",\n volume_backend_name: \"ssd\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nvolume_type1 = openstack.blockstorage.VolumeTypeV3(\"volume_type_1\",\n name=\"volume_type_1\",\n description=\"Volume type 1\",\n extra_specs={\n \"capabilities\": \"gpu\",\n \"volume_backend_name\": \"ssd\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var volumeType1 = new OpenStack.BlockStorage.VolumeTypeV3(\"volume_type_1\", new()\n {\n Name = \"volume_type_1\",\n Description = \"Volume type 1\",\n ExtraSpecs = \n {\n { \"capabilities\", \"gpu\" },\n { \"volume_backend_name\", \"ssd\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolumeTypeV3(ctx, \"volume_type_1\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"volume_type_1\"),\n\t\t\tDescription: pulumi.String(\"Volume type 1\"),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"capabilities\": pulumi.String(\"gpu\"),\n\t\t\t\t\"volume_backend_name\": pulumi.String(\"ssd\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\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 volumeType1 = new VolumeTypeV3(\"volumeType1\", VolumeTypeV3Args.builder()\n .name(\"volume_type_1\")\n .description(\"Volume type 1\")\n .extraSpecs(Map.ofEntries(\n Map.entry(\"capabilities\", \"gpu\"),\n Map.entry(\"volume_backend_name\", \"ssd\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n volumeType1:\n type: openstack:blockstorage:VolumeTypeV3\n name: volume_type_1\n properties:\n name: volume_type_1\n description: Volume type 1\n extraSpecs:\n capabilities: gpu\n volume_backend_name: ssd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Volume Type with multiattach enabled\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst multiattach = new openstack.blockstorage.VolumeTypeV3(\"multiattach\", {\n name: \"multiattach\",\n description: \"Multiattach-enabled volume type\",\n extraSpecs: {\n multiattach: \"\u003cis\u003e True\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nmultiattach = openstack.blockstorage.VolumeTypeV3(\"multiattach\",\n name=\"multiattach\",\n description=\"Multiattach-enabled volume type\",\n extra_specs={\n \"multiattach\": \"\u003cis\u003e True\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var multiattach = new OpenStack.BlockStorage.VolumeTypeV3(\"multiattach\", new()\n {\n Name = \"multiattach\",\n Description = \"Multiattach-enabled volume type\",\n ExtraSpecs = \n {\n { \"multiattach\", \"\u003cis\u003e True\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/blockstorage\"\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 := blockstorage.NewVolumeTypeV3(ctx, \"multiattach\", \u0026blockstorage.VolumeTypeV3Args{\n\t\t\tName: pulumi.String(\"multiattach\"),\n\t\t\tDescription: pulumi.String(\"Multiattach-enabled volume type\"),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"multiattach\": pulumi.String(\"\u003cis\u003e True\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3;\nimport com.pulumi.openstack.blockstorage.VolumeTypeV3Args;\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 multiattach = new VolumeTypeV3(\"multiattach\", VolumeTypeV3Args.builder()\n .name(\"multiattach\")\n .description(\"Multiattach-enabled volume type\")\n .extraSpecs(Map.of(\"multiattach\", \"\u003cis\u003e True\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n multiattach:\n type: openstack:blockstorage:VolumeTypeV3\n properties:\n name: multiattach\n description: Multiattach-enabled volume type\n extraSpecs:\n multiattach: \u003cis\u003e True\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nVolume types can be imported using the `volume_type_id`, e.g.\n\n```sh\n$ pulumi import openstack:blockstorage/volumeTypeV3:VolumeTypeV3 volume_type_1 941793f0-0a34-4bc4-b72e-a6326ae58283\n```\n", "properties": { - "accessIpV4": { - "type": "string", - "description": "The first detected Fixed IPv4 address.\n" - }, - "accessIpV6": { - "type": "string", - "description": "The first detected Fixed IPv6 address.\n" - }, - "adminPass": { + "description": { "type": "string", - "description": "The administrative password to assign to the server.\nChanging this changes the root password on the existing server.\n", - "secret": true + "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" }, - "allMetadata": { + "extraSpecs": { "type": "object", "additionalProperties": { "type": "string" - } - }, - "allTags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of tags assigned on the instance, which have\nbeen explicitly and implicitly added.\n" - }, - "availabilityZone": { - "type": "string", - "description": "The availability zone in which to create\nthe server. Conflicts with `availability_zone_hints`. Changing this creates\na new server.\n" - }, - "availabilityZoneHints": { - "type": "string", - "description": "The availability zone in which to\ncreate the server. This argument is preferred to `availability_zone`, when\nscheduling the server on a\n[particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html)\nhost or node. Conflicts with `availability_zone`. Changing this creates a\nnew server.\n" - }, - "blockDevices": { - "type": "array", - "items": { - "$ref": "#/types/openstack:compute/InstanceBlockDevice:InstanceBlockDevice" }, - "description": "Configuration of block devices. The block_device\nstructure is documented below. Changing this creates a new server.\nYou can specify multiple block devices which will create an instance with\nmultiple disks. This configuration is very flexible, so please see the\nfollowing [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html)\nfor more information.\n" + "description": "Key/Value pairs of metadata for the volume type.\n" }, - "configDrive": { + "isPublic": { "type": "boolean", - "description": "Whether to use the config_drive feature to\nconfigure the instance. Changing this creates a new server.\n" + "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" }, - "created": { + "name": { "type": "string", - "description": "The creation time of the instance.\n" + "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" }, - "flavorId": { + "region": { "type": "string", - "description": "The flavor ID of\nthe desired flavor for the server. Changing this resizes the existing server.\n" - }, - "flavorName": { + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n" + } + }, + "required": [ + "description", + "extraSpecs", + "isPublic", + "name", + "region" + ], + "inputProperties": { + "description": { "type": "string", - "description": "The name of the\ndesired flavor for the server. Changing this resizes the existing server.\n" + "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" }, - "forceDelete": { + "extraSpecs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of metadata for the volume type.\n" + }, + "isPublic": { "type": "boolean", - "description": "Whether to force the OpenStack instance to be\nforcefully deleted. This is useful for environments that have reclaim / soft\ndeletion enabled.\n" + "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" }, - "imageId": { + "name": { "type": "string", - "description": "(Optional; Required if `image_name` is empty and not booting\nfrom a volume. Do not specify if booting from a volume.) The image ID of\nthe desired image for the server. Changing this rebuilds the existing\nserver.\n" + "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" }, - "imageName": { + "region": { "type": "string", - "description": "(Optional; Required if `image_id` is empty and not booting\nfrom a volume. Do not specify if booting from a volume.) The name of the\ndesired image for the server. Changing this rebuilds the existing server.\n" + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "willReplaceOnChanges": true + } + }, + "stateInputs": { + "description": "Input properties used for looking up and filtering VolumeTypeV3 resources.\n", + "properties": { + "description": { + "type": "string", + "description": "Human-readable description of the port. Changing\nthis updates the `description` of an existing volume type.\n" + }, + "extraSpecs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of metadata for the volume type.\n" + }, + "isPublic": { + "type": "boolean", + "description": "Whether the volume type is public. Changing\nthis updates the `is_public` of an existing volume type.\n" + }, + "name": { + "type": "string", + "description": "Name of the volume type. Changing this\nupdates the `name` of an existing volume type.\n" + }, + "region": { + "type": "string", + "description": "The region in which to create the volume. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new quotaset.\n", + "willReplaceOnChanges": true + } }, - "keyPair": { - "type": "string", - "description": "The name of a key pair to put on the server. The key\npair must already be created and associated with the tenant's account.\nChanging this creates a new server.\n" + "type": "object" + } + }, + "openstack:compute/aggregateV2:AggregateV2": { + "description": "Manages a Host Aggregate within Openstack Nova.\n\n## Example Usage\n\n### Full example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst dellServers = new openstack.compute.AggregateV2(\"dell_servers\", {\n region: \"RegionOne\",\n name: \"dell_servers\",\n zone: \"nova\",\n metadata: {\n cpus: \"56\",\n },\n hosts: [\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ndell_servers = openstack.compute.AggregateV2(\"dell_servers\",\n region=\"RegionOne\",\n name=\"dell_servers\",\n zone=\"nova\",\n metadata={\n \"cpus\": \"56\",\n },\n hosts=[\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dellServers = new OpenStack.Compute.AggregateV2(\"dell_servers\", new()\n {\n Region = \"RegionOne\",\n Name = \"dell_servers\",\n Zone = \"nova\",\n Metadata = \n {\n { \"cpus\", \"56\" },\n },\n Hosts = new[]\n {\n \"myhost01.example.com\",\n \"myhost02.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewAggregateV2(ctx, \"dell_servers\", \u0026compute.AggregateV2Args{\n\t\t\tRegion: pulumi.String(\"RegionOne\"),\n\t\t\tName: pulumi.String(\"dell_servers\"),\n\t\t\tZone: pulumi.String(\"nova\"),\n\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\"cpus\": pulumi.String(\"56\"),\n\t\t\t},\n\t\t\tHosts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"myhost01.example.com\"),\n\t\t\t\tpulumi.String(\"myhost02.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.compute.AggregateV2;\nimport com.pulumi.openstack.compute.AggregateV2Args;\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 dellServers = new AggregateV2(\"dellServers\", AggregateV2Args.builder()\n .region(\"RegionOne\")\n .name(\"dell_servers\")\n .zone(\"nova\")\n .metadata(Map.of(\"cpus\", \"56\"))\n .hosts( \n \"myhost01.example.com\",\n \"myhost02.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n dellServers:\n type: openstack:compute:AggregateV2\n name: dell_servers\n properties:\n region: RegionOne\n name: dell_servers\n zone: nova\n metadata:\n cpus: '56'\n hosts:\n - myhost01.example.com\n - myhost02.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Minimum required example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst test = new openstack.compute.AggregateV2(\"test\", {name: \"test\"});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ntest = openstack.compute.AggregateV2(\"test\", name=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new OpenStack.Compute.AggregateV2(\"test\", new()\n {\n Name = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewAggregateV2(ctx, \"test\", \u0026compute.AggregateV2Args{\n\t\t\tName: pulumi.String(\"test\"),\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.openstack.compute.AggregateV2;\nimport com.pulumi.openstack.compute.AggregateV2Args;\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 test = new AggregateV2(\"test\", AggregateV2Args.builder()\n .name(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: openstack:compute:AggregateV2\n properties:\n name: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nYou can import an existing Host Aggregate by their ID.\n\n```sh\n$ pulumi import openstack:compute/aggregateV2:AggregateV2 myaggregate 24\n```\n\nThe ID can be obtained with an openstack command:\n\n$ openstack aggregate list\n\n+----+------+-------------------+\n\n| ID | Name | Availability Zone |\n\n+----+------+-------------------+\n\n| 59 | test | None |\n\n+----+------+-------------------+\n\n", + "properties": { + "hosts": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" }, "metadata": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "Metadata key/value pairs to make available from\nwithin the instance. Changing this updates the existing server metadata.\n" + "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" }, "name": { "type": "string", - "description": "A unique name for the resource.\n" + "description": "The name of the Host Aggregate\n" }, - "networkMode": { + "region": { "type": "string", - "description": "Special string for `network` option to create\nthe server. `network_mode` can be `\"auto\"` or `\"none\"`.\nPlease see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`.\n" + "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n" }, - "networks": { + "zone": { + "type": "string", + "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + } + }, + "required": [ + "name", + "region" + ], + "inputProperties": { + "hosts": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" + }, + "name": { + "type": "string", + "description": "The name of the Host Aggregate\n" + }, + "region": { + "type": "string", + "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n", + "willReplaceOnChanges": true + }, + "zone": { + "type": "string", + "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + } + }, + "stateInputs": { + "description": "Input properties used for looking up and filtering AggregateV2 resources.\n", + "properties": { + "hosts": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of hosts contained in the Host Aggregate. The hosts must be added\nto Openstack and visible in the web interface, or the provider will fail to add them to the host\naggregate.\n" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The metadata of the Host Aggregate. Can be useful to indicate scheduler hints.\n" + }, + "name": { + "type": "string", + "description": "The name of the Host Aggregate\n" + }, + "region": { + "type": "string", + "description": "The region in which to create the Host Aggregate. If\nomitted, the `region` argument of the provider is used. Changing this\ncreates a new Host Aggregate.\n", + "willReplaceOnChanges": true + }, + "zone": { + "type": "string", + "description": "The name of the Availability Zone to use. If ommited, it will take the default\navailability zone.\n" + } + }, + "type": "object" + } + }, + "openstack:compute/flavor:Flavor": { + "description": "Manages a V2 flavor resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst test_flavor = new openstack.compute.Flavor(\"test-flavor\", {\n name: \"my-flavor\",\n ram: 8096,\n vcpus: 2,\n disk: 20,\n extraSpecs: {\n \"hw:cpu_policy\": \"CPU-POLICY\",\n \"hw:cpu_thread_policy\": \"CPU-THREAD-POLICY\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ntest_flavor = openstack.compute.Flavor(\"test-flavor\",\n name=\"my-flavor\",\n ram=8096,\n vcpus=2,\n disk=20,\n extra_specs={\n \"hw:cpu_policy\": \"CPU-POLICY\",\n \"hw:cpu_thread_policy\": \"CPU-THREAD-POLICY\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_flavor = new OpenStack.Compute.Flavor(\"test-flavor\", new()\n {\n Name = \"my-flavor\",\n Ram = 8096,\n Vcpus = 2,\n Disk = 20,\n ExtraSpecs = \n {\n { \"hw:cpu_policy\", \"CPU-POLICY\" },\n { \"hw:cpu_thread_policy\", \"CPU-THREAD-POLICY\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.NewFlavor(ctx, \"test-flavor\", \u0026compute.FlavorArgs{\n\t\t\tName: pulumi.String(\"my-flavor\"),\n\t\t\tRam: pulumi.Int(8096),\n\t\t\tVcpus: pulumi.Int(2),\n\t\t\tDisk: pulumi.Int(20),\n\t\t\tExtraSpecs: pulumi.StringMap{\n\t\t\t\t\"hw:cpu_policy\": pulumi.String(\"CPU-POLICY\"),\n\t\t\t\t\"hw:cpu_thread_policy\": pulumi.String(\"CPU-THREAD-POLICY\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.compute.Flavor;\nimport com.pulumi.openstack.compute.FlavorArgs;\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 test_flavor = new Flavor(\"test-flavor\", FlavorArgs.builder()\n .name(\"my-flavor\")\n .ram(\"8096\")\n .vcpus(\"2\")\n .disk(\"20\")\n .extraSpecs(Map.ofEntries(\n Map.entry(\"hw:cpu_policy\", \"CPU-POLICY\"),\n Map.entry(\"hw:cpu_thread_policy\", \"CPU-THREAD-POLICY\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-flavor:\n type: openstack:compute:Flavor\n properties:\n name: my-flavor\n ram: '8096'\n vcpus: '2'\n disk: '20'\n extraSpecs:\n hw:cpu_policy: CPU-POLICY\n hw:cpu_thread_policy: CPU-THREAD-POLICY\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nFlavors can be imported using the `ID`, e.g.\n\n```sh\n$ pulumi import openstack:compute/flavor:Flavor my-flavor 4142e64b-1b35-44a0-9b1e-5affc7af1106\n```\n", + "properties": { + "description": { + "type": "string", + "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" + }, + "disk": { + "type": "integer", + "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n" + }, + "ephemeral": { + "type": "integer", + "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n" + }, + "extraSpecs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of metadata for the flavor.\n" + }, + "flavorId": { + "type": "string", + "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n" + }, + "isPublic": { + "type": "boolean", + "description": "Whether the flavor is public. Changing this creates\na new flavor.\n" + }, + "name": { + "type": "string", + "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n" + }, + "ram": { + "type": "integer", + "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n" + }, + "rxTxFactor": { + "type": "number", + "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n" + }, + "swap": { + "type": "integer", + "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n" + }, + "vcpus": { + "type": "integer", + "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n" + } + }, + "required": [ + "disk", + "extraSpecs", + "flavorId", + "name", + "ram", + "region", + "vcpus" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" + }, + "disk": { + "type": "integer", + "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "ephemeral": { + "type": "integer", + "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "extraSpecs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of metadata for the flavor.\n" + }, + "flavorId": { + "type": "string", + "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "isPublic": { + "type": "boolean", + "description": "Whether the flavor is public. Changing this creates\na new flavor.\n", + "willReplaceOnChanges": true + }, + "name": { + "type": "string", + "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n", + "willReplaceOnChanges": true + }, + "ram": { + "type": "integer", + "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "rxTxFactor": { + "type": "number", + "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "swap": { + "type": "integer", + "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "vcpus": { + "type": "integer", + "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "disk", + "ram", + "vcpus" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Flavor resources.\n", + "properties": { + "description": { + "type": "string", + "description": "The description of the flavor. Changing this\nupdates the description of the flavor. Requires microversion \u003e= 2.55.\n" + }, + "disk": { + "type": "integer", + "description": "The amount of disk space in GiB to use for the root\n(/) partition. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "ephemeral": { + "type": "integer", + "description": "The amount of ephemeral in GiB. If unspecified,\nthe default is 0. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "extraSpecs": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key/Value pairs of metadata for the flavor.\n" + }, + "flavorId": { + "type": "string", + "description": "Unique ID (integer or UUID) of flavor to create. Changing\nthis creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "isPublic": { + "type": "boolean", + "description": "Whether the flavor is public. Changing this creates\na new flavor.\n", + "willReplaceOnChanges": true + }, + "name": { + "type": "string", + "description": "A unique name for the flavor. Changing this creates a new\nflavor.\n", + "willReplaceOnChanges": true + }, + "ram": { + "type": "integer", + "description": "The amount of RAM to use, in megabytes. Changing this\ncreates a new flavor.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nFlavors are associated with accounts, but a Compute client is needed to\ncreate one. If omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "rxTxFactor": { + "type": "number", + "description": "RX/TX bandwith factor. The default is 1. Changing\nthis creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "swap": { + "type": "integer", + "description": "The amount of disk space in megabytes to use. If\nunspecified, the default is 0. Changing this creates a new flavor.\n", + "willReplaceOnChanges": true + }, + "vcpus": { + "type": "integer", + "description": "The number of virtual CPUs to use. Changing this creates\na new flavor.\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, + "openstack:compute/flavorAccess:FlavorAccess": { + "description": "Manages a project access for flavor V2 resource within OpenStack.\n\n\u003e **Note:** You _must_ have admin privileges in your OpenStack cloud to use\nthis resource.\n\n---\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst project1 = new openstack.identity.Project(\"project_1\", {name: \"my-project\"});\nconst flavor1 = new openstack.compute.Flavor(\"flavor_1\", {\n name: \"my-flavor\",\n ram: 8096,\n vcpus: 2,\n disk: 20,\n isPublic: false,\n});\nconst access1 = new openstack.compute.FlavorAccess(\"access_1\", {\n tenantId: project1.id,\n flavorId: flavor1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nproject1 = openstack.identity.Project(\"project_1\", name=\"my-project\")\nflavor1 = openstack.compute.Flavor(\"flavor_1\",\n name=\"my-flavor\",\n ram=8096,\n vcpus=2,\n disk=20,\n is_public=False)\naccess1 = openstack.compute.FlavorAccess(\"access_1\",\n tenant_id=project1.id,\n flavor_id=flavor1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var project1 = new OpenStack.Identity.Project(\"project_1\", new()\n {\n Name = \"my-project\",\n });\n\n var flavor1 = new OpenStack.Compute.Flavor(\"flavor_1\", new()\n {\n Name = \"my-flavor\",\n Ram = 8096,\n Vcpus = 2,\n Disk = 20,\n IsPublic = false,\n });\n\n var access1 = new OpenStack.Compute.FlavorAccess(\"access_1\", new()\n {\n TenantId = project1.Id,\n FlavorId = flavor1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/identity\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tproject1, err := identity.NewProject(ctx, \"project_1\", \u0026identity.ProjectArgs{\n\t\t\tName: pulumi.String(\"my-project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tflavor1, err := compute.NewFlavor(ctx, \"flavor_1\", \u0026compute.FlavorArgs{\n\t\t\tName: pulumi.String(\"my-flavor\"),\n\t\t\tRam: pulumi.Int(8096),\n\t\t\tVcpus: pulumi.Int(2),\n\t\t\tDisk: pulumi.Int(20),\n\t\t\tIsPublic: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewFlavorAccess(ctx, \"access_1\", \u0026compute.FlavorAccessArgs{\n\t\t\tTenantId: project1.ID(),\n\t\t\tFlavorId: flavor1.ID(),\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.openstack.identity.Project;\nimport com.pulumi.openstack.identity.ProjectArgs;\nimport com.pulumi.openstack.compute.Flavor;\nimport com.pulumi.openstack.compute.FlavorArgs;\nimport com.pulumi.openstack.compute.FlavorAccess;\nimport com.pulumi.openstack.compute.FlavorAccessArgs;\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 project1 = new Project(\"project1\", ProjectArgs.builder()\n .name(\"my-project\")\n .build());\n\n var flavor1 = new Flavor(\"flavor1\", FlavorArgs.builder()\n .name(\"my-flavor\")\n .ram(\"8096\")\n .vcpus(\"2\")\n .disk(\"20\")\n .isPublic(false)\n .build());\n\n var access1 = new FlavorAccess(\"access1\", FlavorAccessArgs.builder()\n .tenantId(project1.id())\n .flavorId(flavor1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n project1:\n type: openstack:identity:Project\n name: project_1\n properties:\n name: my-project\n flavor1:\n type: openstack:compute:Flavor\n name: flavor_1\n properties:\n name: my-flavor\n ram: '8096'\n vcpus: '2'\n disk: '20'\n isPublic: false\n access1:\n type: openstack:compute:FlavorAccess\n name: access_1\n properties:\n tenantId: ${project1.id}\n flavorId: ${flavor1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThis resource can be imported by specifying all two arguments, separated\nby a forward slash:\n\n```sh\n$ pulumi import openstack:compute/flavorAccess:FlavorAccess access_1 flavor_id/tenant_id\n```\n", + "properties": { + "flavorId": { + "type": "string", + "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n" + }, + "tenantId": { + "type": "string", + "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n" + } + }, + "required": [ + "flavorId", + "region", + "tenantId" + ], + "inputProperties": { + "flavorId": { + "type": "string", + "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n", + "willReplaceOnChanges": true + }, + "tenantId": { + "type": "string", + "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "flavorId", + "tenantId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering FlavorAccess resources.\n", + "properties": { + "flavorId": { + "type": "string", + "description": "The UUID of flavor to use. Changing this creates a new flavor access.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\nChanging this creates a new flavor access.\n", + "willReplaceOnChanges": true + }, + "tenantId": { + "type": "string", + "description": "The UUID of tenant which is allowed to use the flavor.\nChanging this creates a new flavor access.\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, + "openstack:compute/instance:Instance": { + "properties": { + "accessIpV4": { + "type": "string", + "description": "The first detected Fixed IPv4 address.\n" + }, + "accessIpV6": { + "type": "string", + "description": "The first detected Fixed IPv6 address.\n" + }, + "adminPass": { + "type": "string", + "description": "The administrative password to assign to the server.\nChanging this changes the root password on the existing server.\n", + "secret": true + }, + "allMetadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "allTags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of tags assigned on the instance, which have\nbeen explicitly and implicitly added.\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone in which to create\nthe server. Conflicts with `availability_zone_hints`. Changing this creates\na new server.\n" + }, + "availabilityZoneHints": { + "type": "string", + "description": "The availability zone in which to\ncreate the server. This argument is preferred to `availability_zone`, when\nscheduling the server on a\n[particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html)\nhost or node. Conflicts with `availability_zone`. Changing this creates a\nnew server.\n" + }, + "blockDevices": { + "type": "array", + "items": { + "$ref": "#/types/openstack:compute/InstanceBlockDevice:InstanceBlockDevice" + }, + "description": "Configuration of block devices. The block_device\nstructure is documented below. Changing this creates a new server.\nYou can specify multiple block devices which will create an instance with\nmultiple disks. This configuration is very flexible, so please see the\nfollowing [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html)\nfor more information.\n" + }, + "configDrive": { + "type": "boolean", + "description": "Whether to use the config_drive feature to\nconfigure the instance. Changing this creates a new server.\n" + }, + "created": { + "type": "string", + "description": "The creation time of the instance.\n" + }, + "flavorId": { + "type": "string", + "description": "The flavor ID of\nthe desired flavor for the server. Changing this resizes the existing server.\n" + }, + "flavorName": { + "type": "string", + "description": "The name of the\ndesired flavor for the server. Changing this resizes the existing server.\n" + }, + "forceDelete": { + "type": "boolean", + "description": "Whether to force the OpenStack instance to be\nforcefully deleted. This is useful for environments that have reclaim / soft\ndeletion enabled.\n" + }, + "imageId": { + "type": "string", + "description": "(Optional; Required if `image_name` is empty and not booting\nfrom a volume. Do not specify if booting from a volume.) The image ID of\nthe desired image for the server. Changing this rebuilds the existing\nserver.\n" + }, + "imageName": { + "type": "string", + "description": "(Optional; Required if `image_id` is empty and not booting\nfrom a volume. Do not specify if booting from a volume.) The name of the\ndesired image for the server. Changing this rebuilds the existing server.\n" + }, + "keyPair": { + "type": "string", + "description": "The name of a key pair to put on the server. The key\npair must already be created and associated with the tenant's account.\nChanging this creates a new server.\n" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Metadata key/value pairs to make available from\nwithin the instance. Changing this updates the existing server metadata.\n" + }, + "name": { + "type": "string", + "description": "A unique name for the resource.\n" + }, + "networkMode": { + "type": "string", + "description": "Special string for `network` option to create\nthe server. `network_mode` can be `\"auto\"` or `\"none\"`.\nPlease see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`.\n" + }, + "networks": { "type": "array", "items": { "$ref": "#/types/openstack:compute/InstanceNetwork:InstanceNetwork" @@ -8856,7 +9426,7 @@ } }, "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2": { - "description": "Manages a V2 BGP VPN network association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.BgpvpnNetworkAssociateV2(\"association_1\", {\n bgpvpnId: \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n networkId: \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.BgpvpnNetworkAssociateV2(\"association_1\",\n bgpvpn_id=\"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n network_id=\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BgpvpnNetworkAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n NetworkId = \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewBgpvpnNetworkAssociateV2(ctx, \"association_1\", \u0026openstack.BgpvpnNetworkAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"e7189337-5684-46ee-bcb1-44f1a57066c9\"),\n\t\t\tNetworkId: pulumi.String(\"de83d56c-4d2f-44f7-ac24-af393252204f\"),\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.openstack.BgpvpnNetworkAssociateV2;\nimport com.pulumi.openstack.BgpvpnNetworkAssociateV2Args;\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 association1 = new BgpvpnNetworkAssociateV2(\"association1\", BgpvpnNetworkAssociateV2Args.builder()\n .bgpvpnId(\"e7189337-5684-46ee-bcb1-44f1a57066c9\")\n .networkId(\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:BgpvpnNetworkAssociateV2\n name: association_1\n properties:\n bgpvpnId: e7189337-5684-46ee-bcb1-44f1a57066c9\n networkId: de83d56c-4d2f-44f7-ac24-af393252204f\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN network associations can be imported using the BGP VPN ID and BGP VPN\n\nnetwork association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4\n```\n\n", + "description": "Manages a V2 BGP VPN network association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.NetworkAssociateV2(\"association_1\", {\n bgpvpnId: \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n networkId: \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.NetworkAssociateV2(\"association_1\",\n bgpvpn_id=\"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n network_id=\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.NetworkAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"e7189337-5684-46ee-bcb1-44f1a57066c9\",\n NetworkId = \"de83d56c-4d2f-44f7-ac24-af393252204f\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewNetworkAssociateV2(ctx, \"association_1\", \u0026bgpvpn.NetworkAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"e7189337-5684-46ee-bcb1-44f1a57066c9\"),\n\t\t\tNetworkId: pulumi.String(\"de83d56c-4d2f-44f7-ac24-af393252204f\"),\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.openstack.bgpvpn.NetworkAssociateV2;\nimport com.pulumi.openstack.bgpvpn.NetworkAssociateV2Args;\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 association1 = new NetworkAssociateV2(\"association1\", NetworkAssociateV2Args.builder()\n .bgpvpnId(\"e7189337-5684-46ee-bcb1-44f1a57066c9\")\n .networkId(\"de83d56c-4d2f-44f7-ac24-af393252204f\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:NetworkAssociateV2\n name: association_1\n properties:\n bgpvpnId: e7189337-5684-46ee-bcb1-44f1a57066c9\n networkId: de83d56c-4d2f-44f7-ac24-af393252204f\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN network associations can be imported using the BGP VPN ID and BGP VPN\n\nnetwork association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4\n```\n\n", "properties": { "bgpvpnId": { "type": "string", @@ -8932,10 +9502,11 @@ } }, "type": "object" - } + }, + "deprecationMessage": "openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2" }, "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2": { - "description": "Manages a V2 BGP VPN port association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.BgpvpnPortAssociateV2(\"association_1\", {\n bgpvpnId: \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n portId: \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes: [\n {\n type: \"prefix\",\n prefix: \"192.168.170.1/32\",\n },\n {\n type: \"bgpvpn\",\n bgpvpnId: \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.BgpvpnPortAssociateV2(\"association_1\",\n bgpvpn_id=\"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n port_id=\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes=[\n {\n \"type\": \"prefix\",\n \"prefix\": \"192.168.170.1/32\",\n },\n {\n \"type\": \"bgpvpn\",\n \"bgpvpn_id\": \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BgpvpnPortAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n PortId = \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n Routes = new[]\n {\n new OpenStack.Inputs.BgpvpnPortAssociateV2RouteArgs\n {\n Type = \"prefix\",\n Prefix = \"192.168.170.1/32\",\n },\n new OpenStack.Inputs.BgpvpnPortAssociateV2RouteArgs\n {\n Type = \"bgpvpn\",\n BgpvpnId = \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewBgpvpnPortAssociateV2(ctx, \"association_1\", \u0026openstack.BgpvpnPortAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"19382ec5-8098-47d9-a9c6-6270c91103f4\"),\n\t\t\tPortId: pulumi.String(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\"),\n\t\t\tRoutes: openstack.BgpvpnPortAssociateV2RouteArray{\n\t\t\t\t\u0026openstack.BgpvpnPortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"prefix\"),\n\t\t\t\t\tPrefix: pulumi.String(\"192.168.170.1/32\"),\n\t\t\t\t},\n\t\t\t\t\u0026openstack.BgpvpnPortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"bgpvpn\"),\n\t\t\t\t\tBgpvpnId: pulumi.String(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.BgpvpnPortAssociateV2;\nimport com.pulumi.openstack.BgpvpnPortAssociateV2Args;\nimport com.pulumi.openstack.inputs.BgpvpnPortAssociateV2RouteArgs;\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 association1 = new BgpvpnPortAssociateV2(\"association1\", BgpvpnPortAssociateV2Args.builder()\n .bgpvpnId(\"19382ec5-8098-47d9-a9c6-6270c91103f4\")\n .portId(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\")\n .routes( \n BgpvpnPortAssociateV2RouteArgs.builder()\n .type(\"prefix\")\n .prefix(\"192.168.170.1/32\")\n .build(),\n BgpvpnPortAssociateV2RouteArgs.builder()\n .type(\"bgpvpn\")\n .bgpvpnId(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:BgpvpnPortAssociateV2\n name: association_1\n properties:\n bgpvpnId: 19382ec5-8098-47d9-a9c6-6270c91103f4\n portId: b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\n routes:\n - type: prefix\n prefix: 192.168.170.1/32\n - type: bgpvpn\n bgpvpnId: 35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port\n\nassociation ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf\n```\n\n", + "description": "Manages a V2 BGP VPN port association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.PortAssociateV2(\"association_1\", {\n bgpvpnId: \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n portId: \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes: [\n {\n type: \"prefix\",\n prefix: \"192.168.170.1/32\",\n },\n {\n type: \"bgpvpn\",\n bgpvpnId: \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.PortAssociateV2(\"association_1\",\n bgpvpn_id=\"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n port_id=\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n routes=[\n {\n \"type\": \"prefix\",\n \"prefix\": \"192.168.170.1/32\",\n },\n {\n \"type\": \"bgpvpn\",\n \"bgpvpn_id\": \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.PortAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"19382ec5-8098-47d9-a9c6-6270c91103f4\",\n PortId = \"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\",\n Routes = new[]\n {\n new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs\n {\n Type = \"prefix\",\n Prefix = \"192.168.170.1/32\",\n },\n new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs\n {\n Type = \"bgpvpn\",\n BgpvpnId = \"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewPortAssociateV2(ctx, \"association_1\", \u0026bgpvpn.PortAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"19382ec5-8098-47d9-a9c6-6270c91103f4\"),\n\t\t\tPortId: pulumi.String(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\"),\n\t\t\tRoutes: bgpvpn.PortAssociateV2RouteArray{\n\t\t\t\t\u0026bgpvpn.PortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"prefix\"),\n\t\t\t\t\tPrefix: pulumi.String(\"192.168.170.1/32\"),\n\t\t\t\t},\n\t\t\t\t\u0026bgpvpn.PortAssociateV2RouteArgs{\n\t\t\t\t\tType: pulumi.String(\"bgpvpn\"),\n\t\t\t\t\tBgpvpnId: pulumi.String(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.bgpvpn.PortAssociateV2;\nimport com.pulumi.openstack.bgpvpn.PortAssociateV2Args;\nimport com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs;\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 association1 = new PortAssociateV2(\"association1\", PortAssociateV2Args.builder()\n .bgpvpnId(\"19382ec5-8098-47d9-a9c6-6270c91103f4\")\n .portId(\"b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\")\n .routes( \n PortAssociateV2RouteArgs.builder()\n .type(\"prefix\")\n .prefix(\"192.168.170.1/32\")\n .build(),\n PortAssociateV2RouteArgs.builder()\n .type(\"bgpvpn\")\n .bgpvpnId(\"35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:PortAssociateV2\n name: association_1\n properties:\n bgpvpnId: 19382ec5-8098-47d9-a9c6-6270c91103f4\n portId: b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f\n routes:\n - type: prefix\n prefix: 192.168.170.1/32\n - type: bgpvpn\n bgpvpnId: 35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port\n\nassociation ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf\n```\n\n", "properties": { "advertiseFixedIps": { "type": "boolean", @@ -9045,10 +9616,11 @@ } }, "type": "object" - } + }, + "deprecationMessage": "openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2" }, "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2": { - "description": "Manages a V2 BGP VPN router association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.BgpvpnRouterAssociateV2(\"association_1\", {\n bgpvpnId: \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n routerId: \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.BgpvpnRouterAssociateV2(\"association_1\",\n bgpvpn_id=\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n router_id=\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BgpvpnRouterAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n RouterId = \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewBgpvpnRouterAssociateV2(ctx, \"association_1\", \u0026openstack.BgpvpnRouterAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\"),\n\t\t\tRouterId: pulumi.String(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\"),\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.openstack.BgpvpnRouterAssociateV2;\nimport com.pulumi.openstack.BgpvpnRouterAssociateV2Args;\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 association1 = new BgpvpnRouterAssociateV2(\"association1\", BgpvpnRouterAssociateV2Args.builder()\n .bgpvpnId(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\")\n .routerId(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:BgpvpnRouterAssociateV2\n name: association_1\n properties:\n bgpvpnId: d57d39e1-dc63-44fd-8cbd-a4e1488100c5\n routerId: 423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN router associations can be imported using the BGP VPN ID and BGP VPN\n\nrouter association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f\n```\n\n", + "description": "Manages a V2 BGP VPN router association resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst association1 = new openstack.bgpvpn.RouterAssociateV2(\"association_1\", {\n bgpvpnId: \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n routerId: \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nassociation1 = openstack.bgpvpn.RouterAssociateV2(\"association_1\",\n bgpvpn_id=\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n router_id=\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var association1 = new OpenStack.BGPVPN.RouterAssociateV2(\"association_1\", new()\n {\n BgpvpnId = \"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\",\n RouterId = \"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewRouterAssociateV2(ctx, \"association_1\", \u0026bgpvpn.RouterAssociateV2Args{\n\t\t\tBgpvpnId: pulumi.String(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\"),\n\t\t\tRouterId: pulumi.String(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\"),\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.openstack.bgpvpn.RouterAssociateV2;\nimport com.pulumi.openstack.bgpvpn.RouterAssociateV2Args;\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 association1 = new RouterAssociateV2(\"association1\", RouterAssociateV2Args.builder()\n .bgpvpnId(\"d57d39e1-dc63-44fd-8cbd-a4e1488100c5\")\n .routerId(\"423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n association1:\n type: openstack:bgpvpn:RouterAssociateV2\n name: association_1\n properties:\n bgpvpnId: d57d39e1-dc63-44fd-8cbd-a4e1488100c5\n routerId: 423fa80f-e0d7-4d02-a9a5-8b8c05812bf6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPN router associations can be imported using the BGP VPN ID and BGP VPN\n\nrouter association ID separated by a slash, e.g.:\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f\n```\n\n", "properties": { "advertiseExtraRoutes": { "type": "boolean", @@ -9137,10 +9709,11 @@ } }, "type": "object" - } + }, + "deprecationMessage": "openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2" }, "openstack:index/bgpvpnV2:BgpvpnV2": { - "description": "Manages a V2 BGP VPN service resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst bgpvpn1 = new openstack.BgpvpnV2(\"bgpvpn_1\", {\n name: \"bgpvpn1\",\n routeDistinguishers: [\"64512:1\"],\n routeTargets: [\"64512:1\"],\n importTargets: [\"64512:2\"],\n exportTargets: [\"64512:3\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nbgpvpn1 = openstack.BgpvpnV2(\"bgpvpn_1\",\n name=\"bgpvpn1\",\n route_distinguishers=[\"64512:1\"],\n route_targets=[\"64512:1\"],\n import_targets=[\"64512:2\"],\n export_targets=[\"64512:3\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var bgpvpn1 = new OpenStack.BgpvpnV2(\"bgpvpn_1\", new()\n {\n Name = \"bgpvpn1\",\n RouteDistinguishers = new[]\n {\n \"64512:1\",\n },\n RouteTargets = new[]\n {\n \"64512:1\",\n },\n ImportTargets = new[]\n {\n \"64512:2\",\n },\n ExportTargets = new[]\n {\n \"64512:3\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewBgpvpnV2(ctx, \"bgpvpn_1\", \u0026openstack.BgpvpnV2Args{\n\t\t\tName: pulumi.String(\"bgpvpn1\"),\n\t\t\tRouteDistinguishers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tRouteTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tImportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:2\"),\n\t\t\t},\n\t\t\tExportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:3\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.BgpvpnV2;\nimport com.pulumi.openstack.BgpvpnV2Args;\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 bgpvpn1 = new BgpvpnV2(\"bgpvpn1\", BgpvpnV2Args.builder()\n .name(\"bgpvpn1\")\n .routeDistinguishers(\"64512:1\")\n .routeTargets(\"64512:1\")\n .importTargets(\"64512:2\")\n .exportTargets(\"64512:3\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n bgpvpn1:\n type: openstack:BgpvpnV2\n name: bgpvpn_1\n properties:\n name: bgpvpn1\n routeDistinguishers:\n - 64512:1\n routeTargets:\n - 64512:1\n importTargets:\n - 64512:2\n exportTargets:\n - 64512:3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPNs can be imported using the `id`, e.g.\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c\n```\n\n", + "description": "Manages a V2 BGP VPN service resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst bgpvpn1 = new openstack.bgpvpn.V2(\"bgpvpn_1\", {\n name: \"bgpvpn1\",\n routeDistinguishers: [\"64512:1\"],\n routeTargets: [\"64512:1\"],\n importTargets: [\"64512:2\"],\n exportTargets: [\"64512:3\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nbgpvpn1 = openstack.bgpvpn.V2(\"bgpvpn_1\",\n name=\"bgpvpn1\",\n route_distinguishers=[\"64512:1\"],\n route_targets=[\"64512:1\"],\n import_targets=[\"64512:2\"],\n export_targets=[\"64512:3\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var bgpvpn1 = new OpenStack.BGPVPN.V2(\"bgpvpn_1\", new()\n {\n Name = \"bgpvpn1\",\n RouteDistinguishers = new[]\n {\n \"64512:1\",\n },\n RouteTargets = new[]\n {\n \"64512:1\",\n },\n ImportTargets = new[]\n {\n \"64512:2\",\n },\n ExportTargets = new[]\n {\n \"64512:3\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn\"\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 := bgpvpn.NewV2(ctx, \"bgpvpn_1\", \u0026bgpvpn.V2Args{\n\t\t\tName: pulumi.String(\"bgpvpn1\"),\n\t\t\tRouteDistinguishers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tRouteTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:1\"),\n\t\t\t},\n\t\t\tImportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:2\"),\n\t\t\t},\n\t\t\tExportTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"64512:3\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.bgpvpn.V2;\nimport com.pulumi.openstack.bgpvpn.V2Args;\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 bgpvpn1 = new V2(\"bgpvpn1\", V2Args.builder()\n .name(\"bgpvpn1\")\n .routeDistinguishers(\"64512:1\")\n .routeTargets(\"64512:1\")\n .importTargets(\"64512:2\")\n .exportTargets(\"64512:3\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n bgpvpn1:\n type: openstack:bgpvpn:V2\n name: bgpvpn_1\n properties:\n name: bgpvpn1\n routeDistinguishers:\n - 64512:1\n routeTargets:\n - 64512:1\n importTargets:\n - 64512:2\n exportTargets:\n - 64512:3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBGP VPNs can be imported using the `id`, e.g.\n\nhcl\n\n```sh\n$ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c\n```\n\n", "properties": { "exportTargets": { "type": "array", @@ -9378,10 +9951,11 @@ } }, "type": "object" - } + }, + "deprecationMessage": "openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2" }, "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2": { - "description": "Manages a V2 load balancer flavorprofile resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n## Example Usage\n\n### Using jsonencode\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.LbFlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: JSON.stringify({\n loadbalancer_topology: \"SINGLE\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.LbFlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=json.dumps({\n \"loadbalancer_topology\": \"SINGLE\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LbFlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"loadbalancer_topology\"] = \"SINGLE\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"loadbalancer_topology\": \"SINGLE\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = openstack.NewLbFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026openstack.LbFlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(json0),\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.openstack.LbFlavorprofileV2;\nimport com.pulumi.openstack.LbFlavorprofileV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\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 flavorprofile1 = new LbFlavorprofileV2(\"flavorprofile1\", LbFlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(serializeJson(\n jsonObject(\n jsonProperty(\"loadbalancer_topology\", \"SINGLE\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:LbFlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData:\n fn::toJSON:\n loadbalancer_topology: SINGLE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using plain string\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.LbFlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.LbFlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LbFlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewLbFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026openstack.LbFlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\"),\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.openstack.LbFlavorprofileV2;\nimport com.pulumi.openstack.LbFlavorprofileV2Args;\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 flavorprofile1 = new LbFlavorprofileV2(\"flavorprofile1\", LbFlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:LbFlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData: '{\"loadbalancer_topology\": \"SINGLE\"}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nflavorprofiles can be imported using their `id`. Example:\n\n```sh\n$ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b\n```\n", + "description": "Manages a V2 load balancer flavorprofile resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n## Example Usage\n\n### Using jsonencode\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: JSON.stringify({\n loadbalancer_topology: \"SINGLE\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=json.dumps({\n \"loadbalancer_topology\": \"SINGLE\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"loadbalancer_topology\"] = \"SINGLE\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"loadbalancer_topology\": \"SINGLE\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = loadbalancer.NewFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026loadbalancer.FlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(json0),\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.openstack.loadbalancer.FlavorprofileV2;\nimport com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\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 flavorprofile1 = new FlavorprofileV2(\"flavorprofile1\", FlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(serializeJson(\n jsonObject(\n jsonProperty(\"loadbalancer_topology\", \"SINGLE\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:loadbalancer:FlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData:\n fn::toJSON:\n loadbalancer_topology: SINGLE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using plain string\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026loadbalancer.FlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\"),\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.openstack.loadbalancer.FlavorprofileV2;\nimport com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;\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 flavorprofile1 = new FlavorprofileV2(\"flavorprofile1\", FlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:loadbalancer:FlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData: '{\"loadbalancer_topology\": \"SINGLE\"}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nflavorprofiles can be imported using their `id`. Example:\n\n```sh\n$ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b\n```\n", "properties": { "flavorData": { "type": "string", @@ -9448,10 +10022,11 @@ } }, "type": "object" - } + }, + "deprecationMessage": "openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2" }, "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2": { - "description": "Manages a V2 loadbalancer resource within OpenStack.\n\n\u003e **Note:** This resource has attributes that depend on octavia minor versions.\nPlease ensure your Openstack cloud supports the required minor version.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst lb1 = new openstack.LbLoadbalancerV2(\"lb_1\", {vipSubnetId: \"d9415786-5f1a-428b-b35f-2f1523e146d2\"});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlb1 = openstack.LbLoadbalancerV2(\"lb_1\", vip_subnet_id=\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var lb1 = new OpenStack.LbLoadbalancerV2(\"lb_1\", new()\n {\n VipSubnetId = \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.NewLbLoadbalancerV2(ctx, \"lb_1\", \u0026openstack.LbLoadbalancerV2Args{\n\t\t\tVipSubnetId: pulumi.String(\"d9415786-5f1a-428b-b35f-2f1523e146d2\"),\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.openstack.LbLoadbalancerV2;\nimport com.pulumi.openstack.LbLoadbalancerV2Args;\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 lb1 = new LbLoadbalancerV2(\"lb1\", LbLoadbalancerV2Args.builder()\n .vipSubnetId(\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n lb1:\n type: openstack:LbLoadbalancerV2\n name: lb_1\n properties:\n vipSubnetId: d9415786-5f1a-428b-b35f-2f1523e146d2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer can be imported using the Load Balancer ID, e.g.:\n\n```sh\n$ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76\n```\n", + "description": "Manages a V2 loadbalancer resource within OpenStack.\n\n\u003e **Note:** This resource has attributes that depend on octavia minor versions.\nPlease ensure your Openstack cloud supports the required minor version.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst lb1 = new openstack.loadbalancer.LoadBalancer(\"lb_1\", {vipSubnetId: \"d9415786-5f1a-428b-b35f-2f1523e146d2\"});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlb1 = openstack.loadbalancer.LoadBalancer(\"lb_1\", vip_subnet_id=\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var lb1 = new OpenStack.LoadBalancer.LoadBalancer(\"lb_1\", new()\n {\n VipSubnetId = \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewLoadBalancer(ctx, \"lb_1\", \u0026loadbalancer.LoadBalancerArgs{\n\t\t\tVipSubnetId: pulumi.String(\"d9415786-5f1a-428b-b35f-2f1523e146d2\"),\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.openstack.loadbalancer.LoadBalancer;\nimport com.pulumi.openstack.loadbalancer.LoadBalancerArgs;\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 lb1 = new LoadBalancer(\"lb1\", LoadBalancerArgs.builder()\n .vipSubnetId(\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n lb1:\n type: openstack:loadbalancer:LoadBalancer\n name: lb_1\n properties:\n vipSubnetId: d9415786-5f1a-428b-b35f-2f1523e146d2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer can be imported using the Load Balancer ID, e.g.:\n\n```sh\n$ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76\n```\n", "properties": { "adminStateUp": { "type": "boolean", @@ -9690,11 +10265,7 @@ }, "type": "object" }, - "aliases": [ - { - "type": "openstack:loadbalancer/loadBalancer:LoadBalancer" - } - ] + "deprecationMessage": "openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer" }, "openstack:keymanager/containerV1:ContainerV1": { "description": "Manages a V1 Barbican container resource within OpenStack.\n\n## Example Usage\n\n### Simple container\n\nA container with the TLS certificates.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\nimport * as std from \"@pulumi/std\";\n\nconst certificate1 = new openstack.keymanager.SecretV1(\"certificate_1\", {\n name: \"certificate\",\n payload: std.file({\n input: \"cert.pem\",\n }).then(invoke =\u003e invoke.result),\n secretType: \"certificate\",\n payloadContentType: \"text/plain\",\n});\nconst privateKey1 = new openstack.keymanager.SecretV1(\"private_key_1\", {\n name: \"private_key\",\n payload: std.file({\n input: \"cert-key.pem\",\n }).then(invoke =\u003e invoke.result),\n secretType: \"private\",\n payloadContentType: \"text/plain\",\n});\nconst intermediate1 = new openstack.keymanager.SecretV1(\"intermediate_1\", {\n name: \"intermediate\",\n payload: std.file({\n input: \"intermediate-ca.pem\",\n }).then(invoke =\u003e invoke.result),\n secretType: \"certificate\",\n payloadContentType: \"text/plain\",\n});\nconst tls1 = new openstack.keymanager.ContainerV1(\"tls_1\", {\n name: \"tls\",\n type: \"certificate\",\n secretRefs: [\n {\n name: \"certificate\",\n secretRef: certificate1.secretRef,\n },\n {\n name: \"private_key\",\n secretRef: privateKey1.secretRef,\n },\n {\n name: \"intermediates\",\n secretRef: intermediate1.secretRef,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\nimport pulumi_std as std\n\ncertificate1 = openstack.keymanager.SecretV1(\"certificate_1\",\n name=\"certificate\",\n payload=std.file(input=\"cert.pem\").result,\n secret_type=\"certificate\",\n payload_content_type=\"text/plain\")\nprivate_key1 = openstack.keymanager.SecretV1(\"private_key_1\",\n name=\"private_key\",\n payload=std.file(input=\"cert-key.pem\").result,\n secret_type=\"private\",\n payload_content_type=\"text/plain\")\nintermediate1 = openstack.keymanager.SecretV1(\"intermediate_1\",\n name=\"intermediate\",\n payload=std.file(input=\"intermediate-ca.pem\").result,\n secret_type=\"certificate\",\n payload_content_type=\"text/plain\")\ntls1 = openstack.keymanager.ContainerV1(\"tls_1\",\n name=\"tls\",\n type=\"certificate\",\n secret_refs=[\n {\n \"name\": \"certificate\",\n \"secret_ref\": certificate1.secret_ref,\n },\n {\n \"name\": \"private_key\",\n \"secret_ref\": private_key1.secret_ref,\n },\n {\n \"name\": \"intermediates\",\n \"secret_ref\": intermediate1.secret_ref,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var certificate1 = new OpenStack.KeyManager.SecretV1(\"certificate_1\", new()\n {\n Name = \"certificate\",\n Payload = Std.File.Invoke(new()\n {\n Input = \"cert.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n SecretType = \"certificate\",\n PayloadContentType = \"text/plain\",\n });\n\n var privateKey1 = new OpenStack.KeyManager.SecretV1(\"private_key_1\", new()\n {\n Name = \"private_key\",\n Payload = Std.File.Invoke(new()\n {\n Input = \"cert-key.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n SecretType = \"private\",\n PayloadContentType = \"text/plain\",\n });\n\n var intermediate1 = new OpenStack.KeyManager.SecretV1(\"intermediate_1\", new()\n {\n Name = \"intermediate\",\n Payload = Std.File.Invoke(new()\n {\n Input = \"intermediate-ca.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n SecretType = \"certificate\",\n PayloadContentType = \"text/plain\",\n });\n\n var tls1 = new OpenStack.KeyManager.ContainerV1(\"tls_1\", new()\n {\n Name = \"tls\",\n Type = \"certificate\",\n SecretRefs = new[]\n {\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"certificate\",\n SecretRef = certificate1.SecretRef,\n },\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"private_key\",\n SecretRef = privateKey1.SecretRef,\n },\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"intermediates\",\n SecretRef = intermediate1.SecretRef,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/keymanager\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinvokeFile, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcertificate1, err := keymanager.NewSecretV1(ctx, \"certificate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\tPayload: pulumi.String(invokeFile.Result),\n\t\t\tSecretType: pulumi.String(\"certificate\"),\n\t\t\tPayloadContentType: pulumi.String(\"text/plain\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile1, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"cert-key.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprivateKey1, err := keymanager.NewSecretV1(ctx, \"private_key_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"private_key\"),\n\t\t\tPayload: pulumi.String(invokeFile1.Result),\n\t\t\tSecretType: pulumi.String(\"private\"),\n\t\t\tPayloadContentType: pulumi.String(\"text/plain\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile2, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"intermediate-ca.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tintermediate1, err := keymanager.NewSecretV1(ctx, \"intermediate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"intermediate\"),\n\t\t\tPayload: pulumi.String(invokeFile2.Result),\n\t\t\tSecretType: pulumi.String(\"certificate\"),\n\t\t\tPayloadContentType: pulumi.String(\"text/plain\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keymanager.NewContainerV1(ctx, \"tls_1\", \u0026keymanager.ContainerV1Args{\n\t\t\tName: pulumi.String(\"tls\"),\n\t\t\tType: pulumi.String(\"certificate\"),\n\t\t\tSecretRefs: keymanager.ContainerV1SecretRefArray{\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\t\t\tSecretRef: certificate1.SecretRef,\n\t\t\t\t},\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"private_key\"),\n\t\t\t\t\tSecretRef: privateKey1.SecretRef,\n\t\t\t\t},\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"intermediates\"),\n\t\t\t\t\tSecretRef: intermediate1.SecretRef,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.keymanager.SecretV1;\nimport com.pulumi.openstack.keymanager.SecretV1Args;\nimport com.pulumi.openstack.keymanager.ContainerV1;\nimport com.pulumi.openstack.keymanager.ContainerV1Args;\nimport com.pulumi.openstack.keymanager.inputs.ContainerV1SecretRefArgs;\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 certificate1 = new SecretV1(\"certificate1\", SecretV1Args.builder()\n .name(\"certificate\")\n .payload(StdFunctions.file(FileArgs.builder()\n .input(\"cert.pem\")\n .build()).result())\n .secretType(\"certificate\")\n .payloadContentType(\"text/plain\")\n .build());\n\n var privateKey1 = new SecretV1(\"privateKey1\", SecretV1Args.builder()\n .name(\"private_key\")\n .payload(StdFunctions.file(FileArgs.builder()\n .input(\"cert-key.pem\")\n .build()).result())\n .secretType(\"private\")\n .payloadContentType(\"text/plain\")\n .build());\n\n var intermediate1 = new SecretV1(\"intermediate1\", SecretV1Args.builder()\n .name(\"intermediate\")\n .payload(StdFunctions.file(FileArgs.builder()\n .input(\"intermediate-ca.pem\")\n .build()).result())\n .secretType(\"certificate\")\n .payloadContentType(\"text/plain\")\n .build());\n\n var tls1 = new ContainerV1(\"tls1\", ContainerV1Args.builder()\n .name(\"tls\")\n .type(\"certificate\")\n .secretRefs( \n ContainerV1SecretRefArgs.builder()\n .name(\"certificate\")\n .secretRef(certificate1.secretRef())\n .build(),\n ContainerV1SecretRefArgs.builder()\n .name(\"private_key\")\n .secretRef(privateKey1.secretRef())\n .build(),\n ContainerV1SecretRefArgs.builder()\n .name(\"intermediates\")\n .secretRef(intermediate1.secretRef())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n certificate1:\n type: openstack:keymanager:SecretV1\n name: certificate_1\n properties:\n name: certificate\n payload:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert.pem\n Return: result\n secretType: certificate\n payloadContentType: text/plain\n privateKey1:\n type: openstack:keymanager:SecretV1\n name: private_key_1\n properties:\n name: private_key\n payload:\n fn::invoke:\n Function: std:file\n Arguments:\n input: cert-key.pem\n Return: result\n secretType: private\n payloadContentType: text/plain\n intermediate1:\n type: openstack:keymanager:SecretV1\n name: intermediate_1\n properties:\n name: intermediate\n payload:\n fn::invoke:\n Function: std:file\n Arguments:\n input: intermediate-ca.pem\n Return: result\n secretType: certificate\n payloadContentType: text/plain\n tls1:\n type: openstack:keymanager:ContainerV1\n name: tls_1\n properties:\n name: tls\n type: certificate\n secretRefs:\n - name: certificate\n secretRef: ${certificate1.secretRef}\n - name: private_key\n secretRef: ${privateKey1.secretRef}\n - name: intermediates\n secretRef: ${intermediate1.secretRef}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Container with the ACL\n\n\u003e **Note** Only read ACLs are supported\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst tls1 = new openstack.keymanager.ContainerV1(\"tls_1\", {\n name: \"tls\",\n type: \"certificate\",\n secretRefs: [\n {\n name: \"certificate\",\n secretRef: certificate1.secretRef,\n },\n {\n name: \"private_key\",\n secretRef: privateKey1.secretRef,\n },\n {\n name: \"intermediates\",\n secretRef: intermediate1.secretRef,\n },\n ],\n acl: {\n read: {\n projectAccess: false,\n users: [\n \"userid1\",\n \"userid2\",\n ],\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ntls1 = openstack.keymanager.ContainerV1(\"tls_1\",\n name=\"tls\",\n type=\"certificate\",\n secret_refs=[\n {\n \"name\": \"certificate\",\n \"secret_ref\": certificate1[\"secretRef\"],\n },\n {\n \"name\": \"private_key\",\n \"secret_ref\": private_key1[\"secretRef\"],\n },\n {\n \"name\": \"intermediates\",\n \"secret_ref\": intermediate1[\"secretRef\"],\n },\n ],\n acl={\n \"read\": {\n \"project_access\": False,\n \"users\": [\n \"userid1\",\n \"userid2\",\n ],\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var tls1 = new OpenStack.KeyManager.ContainerV1(\"tls_1\", new()\n {\n Name = \"tls\",\n Type = \"certificate\",\n SecretRefs = new[]\n {\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"certificate\",\n SecretRef = certificate1.SecretRef,\n },\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"private_key\",\n SecretRef = privateKey1.SecretRef,\n },\n new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs\n {\n Name = \"intermediates\",\n SecretRef = intermediate1.SecretRef,\n },\n },\n Acl = new OpenStack.KeyManager.Inputs.ContainerV1AclArgs\n {\n Read = new OpenStack.KeyManager.Inputs.ContainerV1AclReadArgs\n {\n ProjectAccess = false,\n Users = new[]\n {\n \"userid1\",\n \"userid2\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/keymanager\"\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 := keymanager.NewContainerV1(ctx, \"tls_1\", \u0026keymanager.ContainerV1Args{\n\t\t\tName: pulumi.String(\"tls\"),\n\t\t\tType: pulumi.String(\"certificate\"),\n\t\t\tSecretRefs: keymanager.ContainerV1SecretRefArray{\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\t\t\tSecretRef: pulumi.Any(certificate1.SecretRef),\n\t\t\t\t},\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"private_key\"),\n\t\t\t\t\tSecretRef: pulumi.Any(privateKey1.SecretRef),\n\t\t\t\t},\n\t\t\t\t\u0026keymanager.ContainerV1SecretRefArgs{\n\t\t\t\t\tName: pulumi.String(\"intermediates\"),\n\t\t\t\t\tSecretRef: pulumi.Any(intermediate1.SecretRef),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAcl: \u0026keymanager.ContainerV1AclArgs{\n\t\t\t\tRead: \u0026keymanager.ContainerV1AclReadArgs{\n\t\t\t\t\tProjectAccess: pulumi.Bool(false),\n\t\t\t\t\tUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"userid1\"),\n\t\t\t\t\t\tpulumi.String(\"userid2\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.keymanager.ContainerV1;\nimport com.pulumi.openstack.keymanager.ContainerV1Args;\nimport com.pulumi.openstack.keymanager.inputs.ContainerV1SecretRefArgs;\nimport com.pulumi.openstack.keymanager.inputs.ContainerV1AclArgs;\nimport com.pulumi.openstack.keymanager.inputs.ContainerV1AclReadArgs;\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 tls1 = new ContainerV1(\"tls1\", ContainerV1Args.builder()\n .name(\"tls\")\n .type(\"certificate\")\n .secretRefs( \n ContainerV1SecretRefArgs.builder()\n .name(\"certificate\")\n .secretRef(certificate1.secretRef())\n .build(),\n ContainerV1SecretRefArgs.builder()\n .name(\"private_key\")\n .secretRef(privateKey1.secretRef())\n .build(),\n ContainerV1SecretRefArgs.builder()\n .name(\"intermediates\")\n .secretRef(intermediate1.secretRef())\n .build())\n .acl(ContainerV1AclArgs.builder()\n .read(ContainerV1AclReadArgs.builder()\n .projectAccess(false)\n .users( \n \"userid1\",\n \"userid2\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n tls1:\n type: openstack:keymanager:ContainerV1\n name: tls_1\n properties:\n name: tls\n type: certificate\n secretRefs:\n - name: certificate\n secretRef: ${certificate1.secretRef}\n - name: private_key\n secretRef: ${privateKey1.secretRef}\n - name: intermediates\n secretRef: ${intermediate1.secretRef}\n acl:\n read:\n projectAccess: false\n users:\n - userid1\n - userid2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainers can be imported using the container id (the last part of the container reference), e.g.:\n\n```sh\n$ pulumi import openstack:keymanager/containerV1:ContainerV1 container_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953\n```\n", @@ -10256,23 +10827,98 @@ }, "secretType": { "type": "string", - "description": "Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html).\n", - "willReplaceOnChanges": true + "description": "Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html).\n", + "willReplaceOnChanges": true + }, + "status": { + "type": "string", + "description": "The status of the secret.\n" + }, + "updatedAt": { + "type": "string", + "description": "The date the secret was last updated.\n" + } + }, + "type": "object" + } + }, + "openstack:loadbalancer/flavorprofileV2:FlavorprofileV2": { + "description": "Manages a V2 load balancer flavorprofile resource within OpenStack.\n\n\u003e **Note:** This usually requires admin privileges.\n\n## Example Usage\n\n### Using jsonencode\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: JSON.stringify({\n loadbalancer_topology: \"SINGLE\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=json.dumps({\n \"loadbalancer_topology\": \"SINGLE\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"loadbalancer_topology\"] = \"SINGLE\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"loadbalancer_topology\": \"SINGLE\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = loadbalancer.NewFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026loadbalancer.FlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(json0),\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.openstack.loadbalancer.FlavorprofileV2;\nimport com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;\nimport static com.pulumi.codegen.internal.Serialization.*;\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 flavorprofile1 = new FlavorprofileV2(\"flavorprofile1\", FlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(serializeJson(\n jsonObject(\n jsonProperty(\"loadbalancer_topology\", \"SINGLE\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:loadbalancer:FlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData:\n fn::toJSON:\n loadbalancer_topology: SINGLE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using plain string\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\", {\n name: \"amphora-single-profile\",\n providerName: \"amphora\",\n flavorData: \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nflavorprofile1 = openstack.loadbalancer.FlavorprofileV2(\"flavorprofile_1\",\n name=\"amphora-single-profile\",\n provider_name=\"amphora\",\n flavor_data=\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2(\"flavorprofile_1\", new()\n {\n Name = \"amphora-single-profile\",\n ProviderName = \"amphora\",\n FlavorData = \"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewFlavorprofileV2(ctx, \"flavorprofile_1\", \u0026loadbalancer.FlavorprofileV2Args{\n\t\t\tName: pulumi.String(\"amphora-single-profile\"),\n\t\t\tProviderName: pulumi.String(\"amphora\"),\n\t\t\tFlavorData: pulumi.String(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\"),\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.openstack.loadbalancer.FlavorprofileV2;\nimport com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;\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 flavorprofile1 = new FlavorprofileV2(\"flavorprofile1\", FlavorprofileV2Args.builder()\n .name(\"amphora-single-profile\")\n .providerName(\"amphora\")\n .flavorData(\"{\\\"loadbalancer_topology\\\": \\\"SINGLE\\\"}\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n flavorprofile1:\n type: openstack:loadbalancer:FlavorprofileV2\n name: flavorprofile_1\n properties:\n name: amphora-single-profile\n providerName: amphora\n flavorData: '{\"loadbalancer_topology\": \"SINGLE\"}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nflavorprofiles can be imported using their `id`. Example:\n\n```sh\n$ pulumi import openstack:loadbalancer/flavorprofileV2:FlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b\n```\n", + "properties": { + "flavorData": { + "type": "string", + "description": "String that passes the flavor_data for the flavorprofile.\nThe data that are allowed depend on the `provider_name` that is passed. jsonencode\ncan be used for readability as shown in the example above.\nChanging this updates the existing flavorprofile.\n" + }, + "name": { + "type": "string", + "description": "Name of the flavorprofile. Changing this updates the existing\nflavorprofile.\n" + }, + "providerName": { + "type": "string", + "description": "The provider_name that the flavor_profile will use.\nChanging this updates the existing flavorprofile.\n" + }, + "region": { + "type": "string" + } + }, + "required": [ + "flavorData", + "name", + "providerName", + "region" + ], + "inputProperties": { + "flavorData": { + "type": "string", + "description": "String that passes the flavor_data for the flavorprofile.\nThe data that are allowed depend on the `provider_name` that is passed. jsonencode\ncan be used for readability as shown in the example above.\nChanging this updates the existing flavorprofile.\n" + }, + "name": { + "type": "string", + "description": "Name of the flavorprofile. Changing this updates the existing\nflavorprofile.\n" + }, + "providerName": { + "type": "string", + "description": "The provider_name that the flavor_profile will use.\nChanging this updates the existing flavorprofile.\n" + }, + "region": { + "type": "string", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "flavorData", + "providerName" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering FlavorprofileV2 resources.\n", + "properties": { + "flavorData": { + "type": "string", + "description": "String that passes the flavor_data for the flavorprofile.\nThe data that are allowed depend on the `provider_name` that is passed. jsonencode\ncan be used for readability as shown in the example above.\nChanging this updates the existing flavorprofile.\n" + }, + "name": { + "type": "string", + "description": "Name of the flavorprofile. Changing this updates the existing\nflavorprofile.\n" }, - "status": { + "providerName": { "type": "string", - "description": "The status of the secret.\n" + "description": "The provider_name that the flavor_profile will use.\nChanging this updates the existing flavorprofile.\n" }, - "updatedAt": { + "region": { "type": "string", - "description": "The date the secret was last updated.\n" + "willReplaceOnChanges": true } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2" + } + ] }, "openstack:loadbalancer/l7PolicyV2:L7PolicyV2": { - "description": "Manages a Load Balancer L7 Policy resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst network1 = new openstack.networking.Network(\"network_1\", {\n name: \"network_1\",\n adminStateUp: true,\n});\nconst subnet1 = new openstack.networking.Subnet(\"subnet_1\", {\n name: \"subnet_1\",\n cidr: \"192.168.199.0/24\",\n ipVersion: 4,\n networkId: network1.id,\n});\nconst loadbalancer1 = new openstack.LbLoadbalancerV2(\"loadbalancer_1\", {\n name: \"loadbalancer_1\",\n vipSubnetId: subnet1.id,\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"listener_1\",\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: loadbalancer1.id,\n});\nconst pool1 = new openstack.loadbalancer.Pool(\"pool_1\", {\n name: \"pool_1\",\n protocol: \"HTTP\",\n lbMethod: \"ROUND_ROBIN\",\n loadbalancerId: loadbalancer1.id,\n});\nconst l7policy1 = new openstack.loadbalancer.L7PolicyV2(\"l7policy_1\", {\n name: \"test\",\n action: \"REDIRECT_TO_POOL\",\n description: \"test l7 policy\",\n position: 1,\n listenerId: listener1.id,\n redirectPoolId: pool1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnetwork1 = openstack.networking.Network(\"network_1\",\n name=\"network_1\",\n admin_state_up=True)\nsubnet1 = openstack.networking.Subnet(\"subnet_1\",\n name=\"subnet_1\",\n cidr=\"192.168.199.0/24\",\n ip_version=4,\n network_id=network1.id)\nloadbalancer1 = openstack.LbLoadbalancerV2(\"loadbalancer_1\",\n name=\"loadbalancer_1\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=loadbalancer1.id)\npool1 = openstack.loadbalancer.Pool(\"pool_1\",\n name=\"pool_1\",\n protocol=\"HTTP\",\n lb_method=\"ROUND_ROBIN\",\n loadbalancer_id=loadbalancer1.id)\nl7policy1 = openstack.loadbalancer.L7PolicyV2(\"l7policy_1\",\n name=\"test\",\n action=\"REDIRECT_TO_POOL\",\n description=\"test l7 policy\",\n position=1,\n listener_id=listener1.id,\n redirect_pool_id=pool1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var network1 = new OpenStack.Networking.Network(\"network_1\", new()\n {\n Name = \"network_1\",\n AdminStateUp = true,\n });\n\n var subnet1 = new OpenStack.Networking.Subnet(\"subnet_1\", new()\n {\n Name = \"subnet_1\",\n Cidr = \"192.168.199.0/24\",\n IpVersion = 4,\n NetworkId = network1.Id,\n });\n\n var loadbalancer1 = new OpenStack.LbLoadbalancerV2(\"loadbalancer_1\", new()\n {\n Name = \"loadbalancer_1\",\n VipSubnetId = subnet1.Id,\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"listener_1\",\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var pool1 = new OpenStack.LoadBalancer.Pool(\"pool_1\", new()\n {\n Name = \"pool_1\",\n Protocol = \"HTTP\",\n LbMethod = \"ROUND_ROBIN\",\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var l7policy1 = new OpenStack.LoadBalancer.L7PolicyV2(\"l7policy_1\", new()\n {\n Name = \"test\",\n Action = \"REDIRECT_TO_POOL\",\n Description = \"test l7 policy\",\n Position = 1,\n ListenerId = listener1.Id,\n RedirectPoolId = pool1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tnetwork1, err := networking.NewNetwork(ctx, \"network_1\", \u0026networking.NetworkArgs{\n\t\t\tName: pulumi.String(\"network_1\"),\n\t\t\tAdminStateUp: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.NewSubnet(ctx, \"subnet_1\", \u0026networking.SubnetArgs{\n\t\t\tName: pulumi.String(\"subnet_1\"),\n\t\t\tCidr: pulumi.String(\"192.168.199.0/24\"),\n\t\t\tIpVersion: pulumi.Int(4),\n\t\t\tNetworkId: network1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tloadbalancer1, err := openstack.NewLbLoadbalancerV2(ctx, \"loadbalancer_1\", \u0026openstack.LbLoadbalancerV2Args{\n\t\t\tName: pulumi.String(\"loadbalancer_1\"),\n\t\t\tVipSubnetId: subnet1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlistener1, err := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"listener_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpool1, err := loadbalancer.NewPool(ctx, \"pool_1\", \u0026loadbalancer.PoolArgs{\n\t\t\tName: pulumi.String(\"pool_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tLbMethod: pulumi.String(\"ROUND_ROBIN\"),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewL7PolicyV2(ctx, \"l7policy_1\", \u0026loadbalancer.L7PolicyV2Args{\n\t\t\tName: pulumi.String(\"test\"),\n\t\t\tAction: pulumi.String(\"REDIRECT_TO_POOL\"),\n\t\t\tDescription: pulumi.String(\"test l7 policy\"),\n\t\t\tPosition: pulumi.Int(1),\n\t\t\tListenerId: listener1.ID(),\n\t\t\tRedirectPoolId: pool1.ID(),\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.openstack.networking.Network;\nimport com.pulumi.openstack.networking.NetworkArgs;\nimport com.pulumi.openstack.networking.Subnet;\nimport com.pulumi.openstack.networking.SubnetArgs;\nimport com.pulumi.openstack.LbLoadbalancerV2;\nimport com.pulumi.openstack.LbLoadbalancerV2Args;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\nimport com.pulumi.openstack.loadbalancer.Pool;\nimport com.pulumi.openstack.loadbalancer.PoolArgs;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2Args;\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 network1 = new Network(\"network1\", NetworkArgs.builder()\n .name(\"network_1\")\n .adminStateUp(\"true\")\n .build());\n\n var subnet1 = new Subnet(\"subnet1\", SubnetArgs.builder()\n .name(\"subnet_1\")\n .cidr(\"192.168.199.0/24\")\n .ipVersion(4)\n .networkId(network1.id())\n .build());\n\n var loadbalancer1 = new LbLoadbalancerV2(\"loadbalancer1\", LbLoadbalancerV2Args.builder()\n .name(\"loadbalancer_1\")\n .vipSubnetId(subnet1.id())\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"listener_1\")\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var pool1 = new Pool(\"pool1\", PoolArgs.builder()\n .name(\"pool_1\")\n .protocol(\"HTTP\")\n .lbMethod(\"ROUND_ROBIN\")\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var l7policy1 = new L7PolicyV2(\"l7policy1\", L7PolicyV2Args.builder()\n .name(\"test\")\n .action(\"REDIRECT_TO_POOL\")\n .description(\"test l7 policy\")\n .position(1)\n .listenerId(listener1.id())\n .redirectPoolId(pool1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n network1:\n type: openstack:networking:Network\n name: network_1\n properties:\n name: network_1\n adminStateUp: 'true'\n subnet1:\n type: openstack:networking:Subnet\n name: subnet_1\n properties:\n name: subnet_1\n cidr: 192.168.199.0/24\n ipVersion: 4\n networkId: ${network1.id}\n loadbalancer1:\n type: openstack:LbLoadbalancerV2\n name: loadbalancer_1\n properties:\n name: loadbalancer_1\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: listener_1\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: ${loadbalancer1.id}\n pool1:\n type: openstack:loadbalancer:Pool\n name: pool_1\n properties:\n name: pool_1\n protocol: HTTP\n lbMethod: ROUND_ROBIN\n loadbalancerId: ${loadbalancer1.id}\n l7policy1:\n type: openstack:loadbalancer:L7PolicyV2\n name: l7policy_1\n properties:\n name: test\n action: REDIRECT_TO_POOL\n description: test l7 policy\n position: 1\n listenerId: ${listener1.id}\n redirectPoolId: ${pool1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer L7 Policy can be imported using the L7 Policy ID, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/l7PolicyV2:L7PolicyV2 l7policy_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74\n```\n", + "description": "Manages a Load Balancer L7 Policy resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst network1 = new openstack.networking.Network(\"network_1\", {\n name: \"network_1\",\n adminStateUp: true,\n});\nconst subnet1 = new openstack.networking.Subnet(\"subnet_1\", {\n name: \"subnet_1\",\n cidr: \"192.168.199.0/24\",\n ipVersion: 4,\n networkId: network1.id,\n});\nconst loadbalancer1 = new openstack.loadbalancer.LoadBalancer(\"loadbalancer_1\", {\n name: \"loadbalancer_1\",\n vipSubnetId: subnet1.id,\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"listener_1\",\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: loadbalancer1.id,\n});\nconst pool1 = new openstack.loadbalancer.Pool(\"pool_1\", {\n name: \"pool_1\",\n protocol: \"HTTP\",\n lbMethod: \"ROUND_ROBIN\",\n loadbalancerId: loadbalancer1.id,\n});\nconst l7policy1 = new openstack.loadbalancer.L7PolicyV2(\"l7policy_1\", {\n name: \"test\",\n action: \"REDIRECT_TO_POOL\",\n description: \"test l7 policy\",\n position: 1,\n listenerId: listener1.id,\n redirectPoolId: pool1.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnetwork1 = openstack.networking.Network(\"network_1\",\n name=\"network_1\",\n admin_state_up=True)\nsubnet1 = openstack.networking.Subnet(\"subnet_1\",\n name=\"subnet_1\",\n cidr=\"192.168.199.0/24\",\n ip_version=4,\n network_id=network1.id)\nloadbalancer1 = openstack.loadbalancer.LoadBalancer(\"loadbalancer_1\",\n name=\"loadbalancer_1\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=loadbalancer1.id)\npool1 = openstack.loadbalancer.Pool(\"pool_1\",\n name=\"pool_1\",\n protocol=\"HTTP\",\n lb_method=\"ROUND_ROBIN\",\n loadbalancer_id=loadbalancer1.id)\nl7policy1 = openstack.loadbalancer.L7PolicyV2(\"l7policy_1\",\n name=\"test\",\n action=\"REDIRECT_TO_POOL\",\n description=\"test l7 policy\",\n position=1,\n listener_id=listener1.id,\n redirect_pool_id=pool1.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var network1 = new OpenStack.Networking.Network(\"network_1\", new()\n {\n Name = \"network_1\",\n AdminStateUp = true,\n });\n\n var subnet1 = new OpenStack.Networking.Subnet(\"subnet_1\", new()\n {\n Name = \"subnet_1\",\n Cidr = \"192.168.199.0/24\",\n IpVersion = 4,\n NetworkId = network1.Id,\n });\n\n var loadbalancer1 = new OpenStack.LoadBalancer.LoadBalancer(\"loadbalancer_1\", new()\n {\n Name = \"loadbalancer_1\",\n VipSubnetId = subnet1.Id,\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"listener_1\",\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var pool1 = new OpenStack.LoadBalancer.Pool(\"pool_1\", new()\n {\n Name = \"pool_1\",\n Protocol = \"HTTP\",\n LbMethod = \"ROUND_ROBIN\",\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var l7policy1 = new OpenStack.LoadBalancer.L7PolicyV2(\"l7policy_1\", new()\n {\n Name = \"test\",\n Action = \"REDIRECT_TO_POOL\",\n Description = \"test l7 policy\",\n Position = 1,\n ListenerId = listener1.Id,\n RedirectPoolId = pool1.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tnetwork1, err := networking.NewNetwork(ctx, \"network_1\", \u0026networking.NetworkArgs{\n\t\t\tName: pulumi.String(\"network_1\"),\n\t\t\tAdminStateUp: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.NewSubnet(ctx, \"subnet_1\", \u0026networking.SubnetArgs{\n\t\t\tName: pulumi.String(\"subnet_1\"),\n\t\t\tCidr: pulumi.String(\"192.168.199.0/24\"),\n\t\t\tIpVersion: pulumi.Int(4),\n\t\t\tNetworkId: network1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tloadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, \"loadbalancer_1\", \u0026loadbalancer.LoadBalancerArgs{\n\t\t\tName: pulumi.String(\"loadbalancer_1\"),\n\t\t\tVipSubnetId: subnet1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlistener1, err := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"listener_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpool1, err := loadbalancer.NewPool(ctx, \"pool_1\", \u0026loadbalancer.PoolArgs{\n\t\t\tName: pulumi.String(\"pool_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tLbMethod: pulumi.String(\"ROUND_ROBIN\"),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewL7PolicyV2(ctx, \"l7policy_1\", \u0026loadbalancer.L7PolicyV2Args{\n\t\t\tName: pulumi.String(\"test\"),\n\t\t\tAction: pulumi.String(\"REDIRECT_TO_POOL\"),\n\t\t\tDescription: pulumi.String(\"test l7 policy\"),\n\t\t\tPosition: pulumi.Int(1),\n\t\t\tListenerId: listener1.ID(),\n\t\t\tRedirectPoolId: pool1.ID(),\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.openstack.networking.Network;\nimport com.pulumi.openstack.networking.NetworkArgs;\nimport com.pulumi.openstack.networking.Subnet;\nimport com.pulumi.openstack.networking.SubnetArgs;\nimport com.pulumi.openstack.loadbalancer.LoadBalancer;\nimport com.pulumi.openstack.loadbalancer.LoadBalancerArgs;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\nimport com.pulumi.openstack.loadbalancer.Pool;\nimport com.pulumi.openstack.loadbalancer.PoolArgs;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2Args;\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 network1 = new Network(\"network1\", NetworkArgs.builder()\n .name(\"network_1\")\n .adminStateUp(\"true\")\n .build());\n\n var subnet1 = new Subnet(\"subnet1\", SubnetArgs.builder()\n .name(\"subnet_1\")\n .cidr(\"192.168.199.0/24\")\n .ipVersion(4)\n .networkId(network1.id())\n .build());\n\n var loadbalancer1 = new LoadBalancer(\"loadbalancer1\", LoadBalancerArgs.builder()\n .name(\"loadbalancer_1\")\n .vipSubnetId(subnet1.id())\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"listener_1\")\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var pool1 = new Pool(\"pool1\", PoolArgs.builder()\n .name(\"pool_1\")\n .protocol(\"HTTP\")\n .lbMethod(\"ROUND_ROBIN\")\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var l7policy1 = new L7PolicyV2(\"l7policy1\", L7PolicyV2Args.builder()\n .name(\"test\")\n .action(\"REDIRECT_TO_POOL\")\n .description(\"test l7 policy\")\n .position(1)\n .listenerId(listener1.id())\n .redirectPoolId(pool1.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n network1:\n type: openstack:networking:Network\n name: network_1\n properties:\n name: network_1\n adminStateUp: 'true'\n subnet1:\n type: openstack:networking:Subnet\n name: subnet_1\n properties:\n name: subnet_1\n cidr: 192.168.199.0/24\n ipVersion: 4\n networkId: ${network1.id}\n loadbalancer1:\n type: openstack:loadbalancer:LoadBalancer\n name: loadbalancer_1\n properties:\n name: loadbalancer_1\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: listener_1\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: ${loadbalancer1.id}\n pool1:\n type: openstack:loadbalancer:Pool\n name: pool_1\n properties:\n name: pool_1\n protocol: HTTP\n lbMethod: ROUND_ROBIN\n loadbalancerId: ${loadbalancer1.id}\n l7policy1:\n type: openstack:loadbalancer:L7PolicyV2\n name: l7policy_1\n properties:\n name: test\n action: REDIRECT_TO_POOL\n description: test l7 policy\n position: 1\n listenerId: ${listener1.id}\n redirectPoolId: ${pool1.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer L7 Policy can be imported using the L7 Policy ID, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/l7PolicyV2:L7PolicyV2 l7policy_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74\n```\n", "properties": { "action": { "type": "string", @@ -10448,7 +11094,7 @@ } }, "openstack:loadbalancer/l7RuleV2:L7RuleV2": { - "description": "Manages a V2 L7 Rule resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst network1 = new openstack.networking.Network(\"network_1\", {\n name: \"network_1\",\n adminStateUp: true,\n});\nconst subnet1 = new openstack.networking.Subnet(\"subnet_1\", {\n name: \"subnet_1\",\n cidr: \"192.168.199.0/24\",\n ipVersion: 4,\n networkId: network1.id,\n});\nconst loadbalancer1 = new openstack.LbLoadbalancerV2(\"loadbalancer_1\", {\n name: \"loadbalancer_1\",\n vipSubnetId: subnet1.id,\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"listener_1\",\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: loadbalancer1.id,\n});\nconst pool1 = new openstack.loadbalancer.Pool(\"pool_1\", {\n name: \"pool_1\",\n protocol: \"HTTP\",\n lbMethod: \"ROUND_ROBIN\",\n loadbalancerId: loadbalancer1.id,\n});\nconst l7policy1 = new openstack.loadbalancer.L7PolicyV2(\"l7policy_1\", {\n name: \"test\",\n action: \"REDIRECT_TO_URL\",\n description: \"test description\",\n position: 1,\n listenerId: listener1.id,\n redirectUrl: \"http://www.example.com\",\n});\nconst l7rule1 = new openstack.loadbalancer.L7RuleV2(\"l7rule_1\", {\n l7policyId: l7policy1.id,\n type: \"PATH\",\n compareType: \"EQUAL_TO\",\n value: \"/api\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnetwork1 = openstack.networking.Network(\"network_1\",\n name=\"network_1\",\n admin_state_up=True)\nsubnet1 = openstack.networking.Subnet(\"subnet_1\",\n name=\"subnet_1\",\n cidr=\"192.168.199.0/24\",\n ip_version=4,\n network_id=network1.id)\nloadbalancer1 = openstack.LbLoadbalancerV2(\"loadbalancer_1\",\n name=\"loadbalancer_1\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=loadbalancer1.id)\npool1 = openstack.loadbalancer.Pool(\"pool_1\",\n name=\"pool_1\",\n protocol=\"HTTP\",\n lb_method=\"ROUND_ROBIN\",\n loadbalancer_id=loadbalancer1.id)\nl7policy1 = openstack.loadbalancer.L7PolicyV2(\"l7policy_1\",\n name=\"test\",\n action=\"REDIRECT_TO_URL\",\n description=\"test description\",\n position=1,\n listener_id=listener1.id,\n redirect_url=\"http://www.example.com\")\nl7rule1 = openstack.loadbalancer.L7RuleV2(\"l7rule_1\",\n l7policy_id=l7policy1.id,\n type=\"PATH\",\n compare_type=\"EQUAL_TO\",\n value=\"/api\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var network1 = new OpenStack.Networking.Network(\"network_1\", new()\n {\n Name = \"network_1\",\n AdminStateUp = true,\n });\n\n var subnet1 = new OpenStack.Networking.Subnet(\"subnet_1\", new()\n {\n Name = \"subnet_1\",\n Cidr = \"192.168.199.0/24\",\n IpVersion = 4,\n NetworkId = network1.Id,\n });\n\n var loadbalancer1 = new OpenStack.LbLoadbalancerV2(\"loadbalancer_1\", new()\n {\n Name = \"loadbalancer_1\",\n VipSubnetId = subnet1.Id,\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"listener_1\",\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var pool1 = new OpenStack.LoadBalancer.Pool(\"pool_1\", new()\n {\n Name = \"pool_1\",\n Protocol = \"HTTP\",\n LbMethod = \"ROUND_ROBIN\",\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var l7policy1 = new OpenStack.LoadBalancer.L7PolicyV2(\"l7policy_1\", new()\n {\n Name = \"test\",\n Action = \"REDIRECT_TO_URL\",\n Description = \"test description\",\n Position = 1,\n ListenerId = listener1.Id,\n RedirectUrl = \"http://www.example.com\",\n });\n\n var l7rule1 = new OpenStack.LoadBalancer.L7RuleV2(\"l7rule_1\", new()\n {\n L7policyId = l7policy1.Id,\n Type = \"PATH\",\n CompareType = \"EQUAL_TO\",\n Value = \"/api\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tnetwork1, err := networking.NewNetwork(ctx, \"network_1\", \u0026networking.NetworkArgs{\n\t\t\tName: pulumi.String(\"network_1\"),\n\t\t\tAdminStateUp: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.NewSubnet(ctx, \"subnet_1\", \u0026networking.SubnetArgs{\n\t\t\tName: pulumi.String(\"subnet_1\"),\n\t\t\tCidr: pulumi.String(\"192.168.199.0/24\"),\n\t\t\tIpVersion: pulumi.Int(4),\n\t\t\tNetworkId: network1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tloadbalancer1, err := openstack.NewLbLoadbalancerV2(ctx, \"loadbalancer_1\", \u0026openstack.LbLoadbalancerV2Args{\n\t\t\tName: pulumi.String(\"loadbalancer_1\"),\n\t\t\tVipSubnetId: subnet1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlistener1, err := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"listener_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewPool(ctx, \"pool_1\", \u0026loadbalancer.PoolArgs{\n\t\t\tName: pulumi.String(\"pool_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tLbMethod: pulumi.String(\"ROUND_ROBIN\"),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tl7policy1, err := loadbalancer.NewL7PolicyV2(ctx, \"l7policy_1\", \u0026loadbalancer.L7PolicyV2Args{\n\t\t\tName: pulumi.String(\"test\"),\n\t\t\tAction: pulumi.String(\"REDIRECT_TO_URL\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tPosition: pulumi.Int(1),\n\t\t\tListenerId: listener1.ID(),\n\t\t\tRedirectUrl: pulumi.String(\"http://www.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewL7RuleV2(ctx, \"l7rule_1\", \u0026loadbalancer.L7RuleV2Args{\n\t\t\tL7policyId: l7policy1.ID(),\n\t\t\tType: pulumi.String(\"PATH\"),\n\t\t\tCompareType: pulumi.String(\"EQUAL_TO\"),\n\t\t\tValue: pulumi.String(\"/api\"),\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.openstack.networking.Network;\nimport com.pulumi.openstack.networking.NetworkArgs;\nimport com.pulumi.openstack.networking.Subnet;\nimport com.pulumi.openstack.networking.SubnetArgs;\nimport com.pulumi.openstack.LbLoadbalancerV2;\nimport com.pulumi.openstack.LbLoadbalancerV2Args;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\nimport com.pulumi.openstack.loadbalancer.Pool;\nimport com.pulumi.openstack.loadbalancer.PoolArgs;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2Args;\nimport com.pulumi.openstack.loadbalancer.L7RuleV2;\nimport com.pulumi.openstack.loadbalancer.L7RuleV2Args;\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 network1 = new Network(\"network1\", NetworkArgs.builder()\n .name(\"network_1\")\n .adminStateUp(\"true\")\n .build());\n\n var subnet1 = new Subnet(\"subnet1\", SubnetArgs.builder()\n .name(\"subnet_1\")\n .cidr(\"192.168.199.0/24\")\n .ipVersion(4)\n .networkId(network1.id())\n .build());\n\n var loadbalancer1 = new LbLoadbalancerV2(\"loadbalancer1\", LbLoadbalancerV2Args.builder()\n .name(\"loadbalancer_1\")\n .vipSubnetId(subnet1.id())\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"listener_1\")\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var pool1 = new Pool(\"pool1\", PoolArgs.builder()\n .name(\"pool_1\")\n .protocol(\"HTTP\")\n .lbMethod(\"ROUND_ROBIN\")\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var l7policy1 = new L7PolicyV2(\"l7policy1\", L7PolicyV2Args.builder()\n .name(\"test\")\n .action(\"REDIRECT_TO_URL\")\n .description(\"test description\")\n .position(1)\n .listenerId(listener1.id())\n .redirectUrl(\"http://www.example.com\")\n .build());\n\n var l7rule1 = new L7RuleV2(\"l7rule1\", L7RuleV2Args.builder()\n .l7policyId(l7policy1.id())\n .type(\"PATH\")\n .compareType(\"EQUAL_TO\")\n .value(\"/api\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n network1:\n type: openstack:networking:Network\n name: network_1\n properties:\n name: network_1\n adminStateUp: 'true'\n subnet1:\n type: openstack:networking:Subnet\n name: subnet_1\n properties:\n name: subnet_1\n cidr: 192.168.199.0/24\n ipVersion: 4\n networkId: ${network1.id}\n loadbalancer1:\n type: openstack:LbLoadbalancerV2\n name: loadbalancer_1\n properties:\n name: loadbalancer_1\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: listener_1\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: ${loadbalancer1.id}\n pool1:\n type: openstack:loadbalancer:Pool\n name: pool_1\n properties:\n name: pool_1\n protocol: HTTP\n lbMethod: ROUND_ROBIN\n loadbalancerId: ${loadbalancer1.id}\n l7policy1:\n type: openstack:loadbalancer:L7PolicyV2\n name: l7policy_1\n properties:\n name: test\n action: REDIRECT_TO_URL\n description: test description\n position: 1\n listenerId: ${listener1.id}\n redirectUrl: http://www.example.com\n l7rule1:\n type: openstack:loadbalancer:L7RuleV2\n name: l7rule_1\n properties:\n l7policyId: ${l7policy1.id}\n type: PATH\n compareType: EQUAL_TO\n value: /api\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer L7 Rule can be imported using the L7 Policy ID and L7 Rule ID\nseparated by a slash, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/l7RuleV2:L7RuleV2 l7rule_1 e0bd694a-abbe-450e-b329-0931fd1cc5eb/4086b0c9-b18c-4d1c-b6b8-4c56c3ad2a9e\n```\n", + "description": "Manages a V2 L7 Rule resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst network1 = new openstack.networking.Network(\"network_1\", {\n name: \"network_1\",\n adminStateUp: true,\n});\nconst subnet1 = new openstack.networking.Subnet(\"subnet_1\", {\n name: \"subnet_1\",\n cidr: \"192.168.199.0/24\",\n ipVersion: 4,\n networkId: network1.id,\n});\nconst loadbalancer1 = new openstack.loadbalancer.LoadBalancer(\"loadbalancer_1\", {\n name: \"loadbalancer_1\",\n vipSubnetId: subnet1.id,\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"listener_1\",\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: loadbalancer1.id,\n});\nconst pool1 = new openstack.loadbalancer.Pool(\"pool_1\", {\n name: \"pool_1\",\n protocol: \"HTTP\",\n lbMethod: \"ROUND_ROBIN\",\n loadbalancerId: loadbalancer1.id,\n});\nconst l7policy1 = new openstack.loadbalancer.L7PolicyV2(\"l7policy_1\", {\n name: \"test\",\n action: \"REDIRECT_TO_URL\",\n description: \"test description\",\n position: 1,\n listenerId: listener1.id,\n redirectUrl: \"http://www.example.com\",\n});\nconst l7rule1 = new openstack.loadbalancer.L7RuleV2(\"l7rule_1\", {\n l7policyId: l7policy1.id,\n type: \"PATH\",\n compareType: \"EQUAL_TO\",\n value: \"/api\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnetwork1 = openstack.networking.Network(\"network_1\",\n name=\"network_1\",\n admin_state_up=True)\nsubnet1 = openstack.networking.Subnet(\"subnet_1\",\n name=\"subnet_1\",\n cidr=\"192.168.199.0/24\",\n ip_version=4,\n network_id=network1.id)\nloadbalancer1 = openstack.loadbalancer.LoadBalancer(\"loadbalancer_1\",\n name=\"loadbalancer_1\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=loadbalancer1.id)\npool1 = openstack.loadbalancer.Pool(\"pool_1\",\n name=\"pool_1\",\n protocol=\"HTTP\",\n lb_method=\"ROUND_ROBIN\",\n loadbalancer_id=loadbalancer1.id)\nl7policy1 = openstack.loadbalancer.L7PolicyV2(\"l7policy_1\",\n name=\"test\",\n action=\"REDIRECT_TO_URL\",\n description=\"test description\",\n position=1,\n listener_id=listener1.id,\n redirect_url=\"http://www.example.com\")\nl7rule1 = openstack.loadbalancer.L7RuleV2(\"l7rule_1\",\n l7policy_id=l7policy1.id,\n type=\"PATH\",\n compare_type=\"EQUAL_TO\",\n value=\"/api\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var network1 = new OpenStack.Networking.Network(\"network_1\", new()\n {\n Name = \"network_1\",\n AdminStateUp = true,\n });\n\n var subnet1 = new OpenStack.Networking.Subnet(\"subnet_1\", new()\n {\n Name = \"subnet_1\",\n Cidr = \"192.168.199.0/24\",\n IpVersion = 4,\n NetworkId = network1.Id,\n });\n\n var loadbalancer1 = new OpenStack.LoadBalancer.LoadBalancer(\"loadbalancer_1\", new()\n {\n Name = \"loadbalancer_1\",\n VipSubnetId = subnet1.Id,\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"listener_1\",\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var pool1 = new OpenStack.LoadBalancer.Pool(\"pool_1\", new()\n {\n Name = \"pool_1\",\n Protocol = \"HTTP\",\n LbMethod = \"ROUND_ROBIN\",\n LoadbalancerId = loadbalancer1.Id,\n });\n\n var l7policy1 = new OpenStack.LoadBalancer.L7PolicyV2(\"l7policy_1\", new()\n {\n Name = \"test\",\n Action = \"REDIRECT_TO_URL\",\n Description = \"test description\",\n Position = 1,\n ListenerId = listener1.Id,\n RedirectUrl = \"http://www.example.com\",\n });\n\n var l7rule1 = new OpenStack.LoadBalancer.L7RuleV2(\"l7rule_1\", new()\n {\n L7policyId = l7policy1.Id,\n Type = \"PATH\",\n CompareType = \"EQUAL_TO\",\n Value = \"/api\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tnetwork1, err := networking.NewNetwork(ctx, \"network_1\", \u0026networking.NetworkArgs{\n\t\t\tName: pulumi.String(\"network_1\"),\n\t\t\tAdminStateUp: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.NewSubnet(ctx, \"subnet_1\", \u0026networking.SubnetArgs{\n\t\t\tName: pulumi.String(\"subnet_1\"),\n\t\t\tCidr: pulumi.String(\"192.168.199.0/24\"),\n\t\t\tIpVersion: pulumi.Int(4),\n\t\t\tNetworkId: network1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tloadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, \"loadbalancer_1\", \u0026loadbalancer.LoadBalancerArgs{\n\t\t\tName: pulumi.String(\"loadbalancer_1\"),\n\t\t\tVipSubnetId: subnet1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlistener1, err := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"listener_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewPool(ctx, \"pool_1\", \u0026loadbalancer.PoolArgs{\n\t\t\tName: pulumi.String(\"pool_1\"),\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tLbMethod: pulumi.String(\"ROUND_ROBIN\"),\n\t\t\tLoadbalancerId: loadbalancer1.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tl7policy1, err := loadbalancer.NewL7PolicyV2(ctx, \"l7policy_1\", \u0026loadbalancer.L7PolicyV2Args{\n\t\t\tName: pulumi.String(\"test\"),\n\t\t\tAction: pulumi.String(\"REDIRECT_TO_URL\"),\n\t\t\tDescription: pulumi.String(\"test description\"),\n\t\t\tPosition: pulumi.Int(1),\n\t\t\tListenerId: listener1.ID(),\n\t\t\tRedirectUrl: pulumi.String(\"http://www.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewL7RuleV2(ctx, \"l7rule_1\", \u0026loadbalancer.L7RuleV2Args{\n\t\t\tL7policyId: l7policy1.ID(),\n\t\t\tType: pulumi.String(\"PATH\"),\n\t\t\tCompareType: pulumi.String(\"EQUAL_TO\"),\n\t\t\tValue: pulumi.String(\"/api\"),\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.openstack.networking.Network;\nimport com.pulumi.openstack.networking.NetworkArgs;\nimport com.pulumi.openstack.networking.Subnet;\nimport com.pulumi.openstack.networking.SubnetArgs;\nimport com.pulumi.openstack.loadbalancer.LoadBalancer;\nimport com.pulumi.openstack.loadbalancer.LoadBalancerArgs;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\nimport com.pulumi.openstack.loadbalancer.Pool;\nimport com.pulumi.openstack.loadbalancer.PoolArgs;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2;\nimport com.pulumi.openstack.loadbalancer.L7PolicyV2Args;\nimport com.pulumi.openstack.loadbalancer.L7RuleV2;\nimport com.pulumi.openstack.loadbalancer.L7RuleV2Args;\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 network1 = new Network(\"network1\", NetworkArgs.builder()\n .name(\"network_1\")\n .adminStateUp(\"true\")\n .build());\n\n var subnet1 = new Subnet(\"subnet1\", SubnetArgs.builder()\n .name(\"subnet_1\")\n .cidr(\"192.168.199.0/24\")\n .ipVersion(4)\n .networkId(network1.id())\n .build());\n\n var loadbalancer1 = new LoadBalancer(\"loadbalancer1\", LoadBalancerArgs.builder()\n .name(\"loadbalancer_1\")\n .vipSubnetId(subnet1.id())\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"listener_1\")\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var pool1 = new Pool(\"pool1\", PoolArgs.builder()\n .name(\"pool_1\")\n .protocol(\"HTTP\")\n .lbMethod(\"ROUND_ROBIN\")\n .loadbalancerId(loadbalancer1.id())\n .build());\n\n var l7policy1 = new L7PolicyV2(\"l7policy1\", L7PolicyV2Args.builder()\n .name(\"test\")\n .action(\"REDIRECT_TO_URL\")\n .description(\"test description\")\n .position(1)\n .listenerId(listener1.id())\n .redirectUrl(\"http://www.example.com\")\n .build());\n\n var l7rule1 = new L7RuleV2(\"l7rule1\", L7RuleV2Args.builder()\n .l7policyId(l7policy1.id())\n .type(\"PATH\")\n .compareType(\"EQUAL_TO\")\n .value(\"/api\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n network1:\n type: openstack:networking:Network\n name: network_1\n properties:\n name: network_1\n adminStateUp: 'true'\n subnet1:\n type: openstack:networking:Subnet\n name: subnet_1\n properties:\n name: subnet_1\n cidr: 192.168.199.0/24\n ipVersion: 4\n networkId: ${network1.id}\n loadbalancer1:\n type: openstack:loadbalancer:LoadBalancer\n name: loadbalancer_1\n properties:\n name: loadbalancer_1\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: listener_1\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: ${loadbalancer1.id}\n pool1:\n type: openstack:loadbalancer:Pool\n name: pool_1\n properties:\n name: pool_1\n protocol: HTTP\n lbMethod: ROUND_ROBIN\n loadbalancerId: ${loadbalancer1.id}\n l7policy1:\n type: openstack:loadbalancer:L7PolicyV2\n name: l7policy_1\n properties:\n name: test\n action: REDIRECT_TO_URL\n description: test description\n position: 1\n listenerId: ${listener1.id}\n redirectUrl: http://www.example.com\n l7rule1:\n type: openstack:loadbalancer:L7RuleV2\n name: l7rule_1\n properties:\n l7policyId: ${l7policy1.id}\n type: PATH\n compareType: EQUAL_TO\n value: /api\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer L7 Rule can be imported using the L7 Policy ID and L7 Rule ID\nseparated by a slash, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/l7RuleV2:L7RuleV2 l7rule_1 e0bd694a-abbe-450e-b329-0931fd1cc5eb/4086b0c9-b18c-4d1c-b6b8-4c56c3ad2a9e\n```\n", "properties": { "adminStateUp": { "type": "boolean", @@ -10598,7 +11244,7 @@ } }, "openstack:loadbalancer/listener:Listener": { - "description": "Manages a V2 listener resource within OpenStack.\n\n\u003e **Note:** This resource has attributes that depend on octavia minor versions.\nPlease ensure your Openstack cloud supports the required minor version.\n\n## Example Usage\n\n### Simple listener\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n insertHeaders: {\n \"X-Forwarded-For\": \"true\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=\"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n insert_headers={\n \"X-Forwarded-For\": \"true\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n InsertHeaders = \n {\n { \"X-Forwarded-For\", \"true\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: pulumi.String(\"d9415786-5f1a-428b-b35f-2f1523e146d2\"),\n\t\t\tInsertHeaders: pulumi.StringMap{\n\t\t\t\t\"X-Forwarded-For\": pulumi.String(\"true\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\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 listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n .insertHeaders(Map.of(\"X-Forwarded-For\", \"true\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: d9415786-5f1a-428b-b35f-2f1523e146d2\n insertHeaders:\n X-Forwarded-For: 'true'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Listener with TLS and client certificate authentication\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\nimport * as std from \"@pulumi/std\";\n\nconst certificate1 = new openstack.keymanager.SecretV1(\"certificate_1\", {\n name: \"certificate\",\n payload: std.filebase64({\n input: \"snakeoil.p12\",\n }).then(invoke =\u003e invoke.result),\n payloadContentEncoding: \"base64\",\n payloadContentType: \"application/octet-stream\",\n});\nconst caCertificate1 = new openstack.keymanager.SecretV1(\"ca_certificate_1\", {\n name: \"certificate\",\n payload: std.file({\n input: \"CA.pem\",\n }).then(invoke =\u003e invoke.result),\n secretType: \"certificate\",\n payloadContentType: \"text/plain\",\n});\nconst subnet1 = openstack.networking.getSubnet({\n name: \"my-subnet\",\n});\nconst lb1 = new openstack.LbLoadbalancerV2(\"lb_1\", {\n name: \"loadbalancer\",\n vipSubnetId: subnet1.then(subnet1 =\u003e subnet1.id),\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"https\",\n protocol: \"TERMINATED_HTTPS\",\n protocolPort: 443,\n loadbalancerId: lb1.id,\n defaultTlsContainerRef: certificate1,\n clientAuthentication: \"OPTIONAL\",\n clientCaTlsContainerRef: caCertificate2.secretRef,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\nimport pulumi_std as std\n\ncertificate1 = openstack.keymanager.SecretV1(\"certificate_1\",\n name=\"certificate\",\n payload=std.filebase64(input=\"snakeoil.p12\").result,\n payload_content_encoding=\"base64\",\n payload_content_type=\"application/octet-stream\")\nca_certificate1 = openstack.keymanager.SecretV1(\"ca_certificate_1\",\n name=\"certificate\",\n payload=std.file(input=\"CA.pem\").result,\n secret_type=\"certificate\",\n payload_content_type=\"text/plain\")\nsubnet1 = openstack.networking.get_subnet(name=\"my-subnet\")\nlb1 = openstack.LbLoadbalancerV2(\"lb_1\",\n name=\"loadbalancer\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"https\",\n protocol=\"TERMINATED_HTTPS\",\n protocol_port=443,\n loadbalancer_id=lb1.id,\n default_tls_container_ref=certificate1,\n client_authentication=\"OPTIONAL\",\n client_ca_tls_container_ref=ca_certificate2[\"secretRef\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var certificate1 = new OpenStack.KeyManager.SecretV1(\"certificate_1\", new()\n {\n Name = \"certificate\",\n Payload = Std.Filebase64.Invoke(new()\n {\n Input = \"snakeoil.p12\",\n }).Apply(invoke =\u003e invoke.Result),\n PayloadContentEncoding = \"base64\",\n PayloadContentType = \"application/octet-stream\",\n });\n\n var caCertificate1 = new OpenStack.KeyManager.SecretV1(\"ca_certificate_1\", new()\n {\n Name = \"certificate\",\n Payload = Std.File.Invoke(new()\n {\n Input = \"CA.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n SecretType = \"certificate\",\n PayloadContentType = \"text/plain\",\n });\n\n var subnet1 = OpenStack.Networking.GetSubnet.Invoke(new()\n {\n Name = \"my-subnet\",\n });\n\n var lb1 = new OpenStack.LbLoadbalancerV2(\"lb_1\", new()\n {\n Name = \"loadbalancer\",\n VipSubnetId = subnet1.Apply(getSubnetResult =\u003e getSubnetResult.Id),\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"https\",\n Protocol = \"TERMINATED_HTTPS\",\n ProtocolPort = 443,\n LoadbalancerId = lb1.Id,\n DefaultTlsContainerRef = certificate1,\n ClientAuthentication = \"OPTIONAL\",\n ClientCaTlsContainerRef = caCertificate2.SecretRef,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/keymanager\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinvokeFilebase64, err := std.Filebase64(ctx, \u0026std.Filebase64Args{\n\t\t\tInput: \"snakeoil.p12\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcertificate1, err := keymanager.NewSecretV1(ctx, \"certificate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\tPayload: pulumi.String(invokeFilebase64.Result),\n\t\t\tPayloadContentEncoding: pulumi.String(\"base64\"),\n\t\t\tPayloadContentType: pulumi.String(\"application/octet-stream\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile1, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"CA.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keymanager.NewSecretV1(ctx, \"ca_certificate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\tPayload: pulumi.String(invokeFile1.Result),\n\t\t\tSecretType: pulumi.String(\"certificate\"),\n\t\t\tPayloadContentType: pulumi.String(\"text/plain\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.LookupSubnet(ctx, \u0026networking.LookupSubnetArgs{\n\t\t\tName: pulumi.StringRef(\"my-subnet\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlb1, err := openstack.NewLbLoadbalancerV2(ctx, \"lb_1\", \u0026openstack.LbLoadbalancerV2Args{\n\t\t\tName: pulumi.String(\"loadbalancer\"),\n\t\t\tVipSubnetId: pulumi.String(subnet1.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"https\"),\n\t\t\tProtocol: pulumi.String(\"TERMINATED_HTTPS\"),\n\t\t\tProtocolPort: pulumi.Int(443),\n\t\t\tLoadbalancerId: lb1.ID(),\n\t\t\tDefaultTlsContainerRef: certificate1,\n\t\t\tClientAuthentication: pulumi.String(\"OPTIONAL\"),\n\t\t\tClientCaTlsContainerRef: pulumi.Any(caCertificate2.SecretRef),\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.openstack.keymanager.SecretV1;\nimport com.pulumi.openstack.keymanager.SecretV1Args;\nimport com.pulumi.openstack.networking.NetworkingFunctions;\nimport com.pulumi.openstack.networking.inputs.GetSubnetArgs;\nimport com.pulumi.openstack.LbLoadbalancerV2;\nimport com.pulumi.openstack.LbLoadbalancerV2Args;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\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 certificate1 = new SecretV1(\"certificate1\", SecretV1Args.builder()\n .name(\"certificate\")\n .payload(StdFunctions.filebase64(Filebase64Args.builder()\n .input(\"snakeoil.p12\")\n .build()).result())\n .payloadContentEncoding(\"base64\")\n .payloadContentType(\"application/octet-stream\")\n .build());\n\n var caCertificate1 = new SecretV1(\"caCertificate1\", SecretV1Args.builder()\n .name(\"certificate\")\n .payload(StdFunctions.file(FileArgs.builder()\n .input(\"CA.pem\")\n .build()).result())\n .secretType(\"certificate\")\n .payloadContentType(\"text/plain\")\n .build());\n\n final var subnet1 = NetworkingFunctions.getSubnet(GetSubnetArgs.builder()\n .name(\"my-subnet\")\n .build());\n\n var lb1 = new LbLoadbalancerV2(\"lb1\", LbLoadbalancerV2Args.builder()\n .name(\"loadbalancer\")\n .vipSubnetId(subnet1.applyValue(getSubnetResult -\u003e getSubnetResult.id()))\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"https\")\n .protocol(\"TERMINATED_HTTPS\")\n .protocolPort(443)\n .loadbalancerId(lb1.id())\n .defaultTlsContainerRef(certificate1)\n .clientAuthentication(\"OPTIONAL\")\n .clientCaTlsContainerRef(caCertificate2.secretRef())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n certificate1:\n type: openstack:keymanager:SecretV1\n name: certificate_1\n properties:\n name: certificate\n payload:\n fn::invoke:\n Function: std:filebase64\n Arguments:\n input: snakeoil.p12\n Return: result\n payloadContentEncoding: base64\n payloadContentType: application/octet-stream\n caCertificate1:\n type: openstack:keymanager:SecretV1\n name: ca_certificate_1\n properties:\n name: certificate\n payload:\n fn::invoke:\n Function: std:file\n Arguments:\n input: CA.pem\n Return: result\n secretType: certificate\n payloadContentType: text/plain\n lb1:\n type: openstack:LbLoadbalancerV2\n name: lb_1\n properties:\n name: loadbalancer\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: https\n protocol: TERMINATED_HTTPS\n protocolPort: 443\n loadbalancerId: ${lb1.id}\n defaultTlsContainerRef: ${certificate1}\n clientAuthentication: OPTIONAL\n clientCaTlsContainerRef: ${caCertificate2.secretRef}\nvariables:\n subnet1:\n fn::invoke:\n Function: openstack:networking:getSubnet\n Arguments:\n name: my-subnet\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer Listener can be imported using the Listener ID, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/listener:Listener listener_1 b67ce64e-8b26-405d-afeb-4a078901f15a\n```\n", + "description": "Manages a V2 listener resource within OpenStack.\n\n\u003e **Note:** This resource has attributes that depend on octavia minor versions.\nPlease ensure your Openstack cloud supports the required minor version.\n\n## Example Usage\n\n### Simple listener\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n protocol: \"HTTP\",\n protocolPort: 8080,\n loadbalancerId: \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n insertHeaders: {\n \"X-Forwarded-For\": \"true\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n protocol=\"HTTP\",\n protocol_port=8080,\n loadbalancer_id=\"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n insert_headers={\n \"X-Forwarded-For\": \"true\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Protocol = \"HTTP\",\n ProtocolPort = 8080,\n LoadbalancerId = \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n InsertHeaders = \n {\n { \"X-Forwarded-For\", \"true\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\n\t\t\tLoadbalancerId: pulumi.String(\"d9415786-5f1a-428b-b35f-2f1523e146d2\"),\n\t\t\tInsertHeaders: pulumi.StringMap{\n\t\t\t\t\"X-Forwarded-For\": pulumi.String(\"true\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\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 listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .protocol(\"HTTP\")\n .protocolPort(8080)\n .loadbalancerId(\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n .insertHeaders(Map.of(\"X-Forwarded-For\", \"true\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n protocol: HTTP\n protocolPort: 8080\n loadbalancerId: d9415786-5f1a-428b-b35f-2f1523e146d2\n insertHeaders:\n X-Forwarded-For: 'true'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Listener with TLS and client certificate authentication\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\nimport * as std from \"@pulumi/std\";\n\nconst certificate1 = new openstack.keymanager.SecretV1(\"certificate_1\", {\n name: \"certificate\",\n payload: std.filebase64({\n input: \"snakeoil.p12\",\n }).then(invoke =\u003e invoke.result),\n payloadContentEncoding: \"base64\",\n payloadContentType: \"application/octet-stream\",\n});\nconst caCertificate1 = new openstack.keymanager.SecretV1(\"ca_certificate_1\", {\n name: \"certificate\",\n payload: std.file({\n input: \"CA.pem\",\n }).then(invoke =\u003e invoke.result),\n secretType: \"certificate\",\n payloadContentType: \"text/plain\",\n});\nconst subnet1 = openstack.networking.getSubnet({\n name: \"my-subnet\",\n});\nconst lb1 = new openstack.loadbalancer.LoadBalancer(\"lb_1\", {\n name: \"loadbalancer\",\n vipSubnetId: subnet1.then(subnet1 =\u003e subnet1.id),\n});\nconst listener1 = new openstack.loadbalancer.Listener(\"listener_1\", {\n name: \"https\",\n protocol: \"TERMINATED_HTTPS\",\n protocolPort: 443,\n loadbalancerId: lb1.id,\n defaultTlsContainerRef: certificate1,\n clientAuthentication: \"OPTIONAL\",\n clientCaTlsContainerRef: caCertificate2.secretRef,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\nimport pulumi_std as std\n\ncertificate1 = openstack.keymanager.SecretV1(\"certificate_1\",\n name=\"certificate\",\n payload=std.filebase64(input=\"snakeoil.p12\").result,\n payload_content_encoding=\"base64\",\n payload_content_type=\"application/octet-stream\")\nca_certificate1 = openstack.keymanager.SecretV1(\"ca_certificate_1\",\n name=\"certificate\",\n payload=std.file(input=\"CA.pem\").result,\n secret_type=\"certificate\",\n payload_content_type=\"text/plain\")\nsubnet1 = openstack.networking.get_subnet(name=\"my-subnet\")\nlb1 = openstack.loadbalancer.LoadBalancer(\"lb_1\",\n name=\"loadbalancer\",\n vip_subnet_id=subnet1.id)\nlistener1 = openstack.loadbalancer.Listener(\"listener_1\",\n name=\"https\",\n protocol=\"TERMINATED_HTTPS\",\n protocol_port=443,\n loadbalancer_id=lb1.id,\n default_tls_container_ref=certificate1,\n client_authentication=\"OPTIONAL\",\n client_ca_tls_container_ref=ca_certificate2[\"secretRef\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var certificate1 = new OpenStack.KeyManager.SecretV1(\"certificate_1\", new()\n {\n Name = \"certificate\",\n Payload = Std.Filebase64.Invoke(new()\n {\n Input = \"snakeoil.p12\",\n }).Apply(invoke =\u003e invoke.Result),\n PayloadContentEncoding = \"base64\",\n PayloadContentType = \"application/octet-stream\",\n });\n\n var caCertificate1 = new OpenStack.KeyManager.SecretV1(\"ca_certificate_1\", new()\n {\n Name = \"certificate\",\n Payload = Std.File.Invoke(new()\n {\n Input = \"CA.pem\",\n }).Apply(invoke =\u003e invoke.Result),\n SecretType = \"certificate\",\n PayloadContentType = \"text/plain\",\n });\n\n var subnet1 = OpenStack.Networking.GetSubnet.Invoke(new()\n {\n Name = \"my-subnet\",\n });\n\n var lb1 = new OpenStack.LoadBalancer.LoadBalancer(\"lb_1\", new()\n {\n Name = \"loadbalancer\",\n VipSubnetId = subnet1.Apply(getSubnetResult =\u003e getSubnetResult.Id),\n });\n\n var listener1 = new OpenStack.LoadBalancer.Listener(\"listener_1\", new()\n {\n Name = \"https\",\n Protocol = \"TERMINATED_HTTPS\",\n ProtocolPort = 443,\n LoadbalancerId = lb1.Id,\n DefaultTlsContainerRef = certificate1,\n ClientAuthentication = \"OPTIONAL\",\n ClientCaTlsContainerRef = caCertificate2.SecretRef,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/keymanager\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinvokeFilebase64, err := std.Filebase64(ctx, \u0026std.Filebase64Args{\n\t\t\tInput: \"snakeoil.p12\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcertificate1, err := keymanager.NewSecretV1(ctx, \"certificate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\tPayload: pulumi.String(invokeFilebase64.Result),\n\t\t\tPayloadContentEncoding: pulumi.String(\"base64\"),\n\t\t\tPayloadContentType: pulumi.String(\"application/octet-stream\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFile1, err := std.File(ctx, \u0026std.FileArgs{\n\t\t\tInput: \"CA.pem\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keymanager.NewSecretV1(ctx, \"ca_certificate_1\", \u0026keymanager.SecretV1Args{\n\t\t\tName: pulumi.String(\"certificate\"),\n\t\t\tPayload: pulumi.String(invokeFile1.Result),\n\t\t\tSecretType: pulumi.String(\"certificate\"),\n\t\t\tPayloadContentType: pulumi.String(\"text/plain\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsubnet1, err := networking.LookupSubnet(ctx, \u0026networking.LookupSubnetArgs{\n\t\t\tName: pulumi.StringRef(\"my-subnet\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlb1, err := loadbalancer.NewLoadBalancer(ctx, \"lb_1\", \u0026loadbalancer.LoadBalancerArgs{\n\t\t\tName: pulumi.String(\"loadbalancer\"),\n\t\t\tVipSubnetId: pulumi.String(subnet1.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = loadbalancer.NewListener(ctx, \"listener_1\", \u0026loadbalancer.ListenerArgs{\n\t\t\tName: pulumi.String(\"https\"),\n\t\t\tProtocol: pulumi.String(\"TERMINATED_HTTPS\"),\n\t\t\tProtocolPort: pulumi.Int(443),\n\t\t\tLoadbalancerId: lb1.ID(),\n\t\t\tDefaultTlsContainerRef: certificate1,\n\t\t\tClientAuthentication: pulumi.String(\"OPTIONAL\"),\n\t\t\tClientCaTlsContainerRef: pulumi.Any(caCertificate2.SecretRef),\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.openstack.keymanager.SecretV1;\nimport com.pulumi.openstack.keymanager.SecretV1Args;\nimport com.pulumi.openstack.networking.NetworkingFunctions;\nimport com.pulumi.openstack.networking.inputs.GetSubnetArgs;\nimport com.pulumi.openstack.loadbalancer.LoadBalancer;\nimport com.pulumi.openstack.loadbalancer.LoadBalancerArgs;\nimport com.pulumi.openstack.loadbalancer.Listener;\nimport com.pulumi.openstack.loadbalancer.ListenerArgs;\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 certificate1 = new SecretV1(\"certificate1\", SecretV1Args.builder()\n .name(\"certificate\")\n .payload(StdFunctions.filebase64(Filebase64Args.builder()\n .input(\"snakeoil.p12\")\n .build()).result())\n .payloadContentEncoding(\"base64\")\n .payloadContentType(\"application/octet-stream\")\n .build());\n\n var caCertificate1 = new SecretV1(\"caCertificate1\", SecretV1Args.builder()\n .name(\"certificate\")\n .payload(StdFunctions.file(FileArgs.builder()\n .input(\"CA.pem\")\n .build()).result())\n .secretType(\"certificate\")\n .payloadContentType(\"text/plain\")\n .build());\n\n final var subnet1 = NetworkingFunctions.getSubnet(GetSubnetArgs.builder()\n .name(\"my-subnet\")\n .build());\n\n var lb1 = new LoadBalancer(\"lb1\", LoadBalancerArgs.builder()\n .name(\"loadbalancer\")\n .vipSubnetId(subnet1.applyValue(getSubnetResult -\u003e getSubnetResult.id()))\n .build());\n\n var listener1 = new Listener(\"listener1\", ListenerArgs.builder()\n .name(\"https\")\n .protocol(\"TERMINATED_HTTPS\")\n .protocolPort(443)\n .loadbalancerId(lb1.id())\n .defaultTlsContainerRef(certificate1)\n .clientAuthentication(\"OPTIONAL\")\n .clientCaTlsContainerRef(caCertificate2.secretRef())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n certificate1:\n type: openstack:keymanager:SecretV1\n name: certificate_1\n properties:\n name: certificate\n payload:\n fn::invoke:\n Function: std:filebase64\n Arguments:\n input: snakeoil.p12\n Return: result\n payloadContentEncoding: base64\n payloadContentType: application/octet-stream\n caCertificate1:\n type: openstack:keymanager:SecretV1\n name: ca_certificate_1\n properties:\n name: certificate\n payload:\n fn::invoke:\n Function: std:file\n Arguments:\n input: CA.pem\n Return: result\n secretType: certificate\n payloadContentType: text/plain\n lb1:\n type: openstack:loadbalancer:LoadBalancer\n name: lb_1\n properties:\n name: loadbalancer\n vipSubnetId: ${subnet1.id}\n listener1:\n type: openstack:loadbalancer:Listener\n name: listener_1\n properties:\n name: https\n protocol: TERMINATED_HTTPS\n protocolPort: 443\n loadbalancerId: ${lb1.id}\n defaultTlsContainerRef: ${certificate1}\n clientAuthentication: OPTIONAL\n clientCaTlsContainerRef: ${caCertificate2.secretRef}\nvariables:\n subnet1:\n fn::invoke:\n Function: openstack:networking:getSubnet\n Arguments:\n name: my-subnet\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer Listener can be imported using the Listener ID, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/listener:Listener listener_1 b67ce64e-8b26-405d-afeb-4a078901f15a\n```\n", "properties": { "adminStateUp": { "type": "boolean", @@ -10979,58 +11625,304 @@ }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a listener. If omitted, the `region`\nargument of the provider is used. Changing this creates a new Listener.\n", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create a listener. If omitted, the `region`\nargument of the provider is used. Changing this creates a new Listener.\n", + "willReplaceOnChanges": true + }, + "sniContainerRefs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of references to Barbican Secrets\ncontainers which store SNI information. See\n[here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer)\nfor more information.\n" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of simple strings assigned to the pool. Available\nfor Octavia **minor version 2.5 or later**.\n" + }, + "tenantId": { + "type": "string", + "description": "Required for admins. The UUID of the tenant who owns\nthe Listener. Only administrative users can specify a tenant UUID other than\ntheir own. Changing this creates a new Listener.\n", + "willReplaceOnChanges": true + }, + "timeoutClientData": { + "type": "integer", + "description": "The client inactivity timeout in\nmilliseconds.\n" + }, + "timeoutMemberConnect": { + "type": "integer", + "description": "The member connection timeout in\nmilliseconds.\n" + }, + "timeoutMemberData": { + "type": "integer", + "description": "The member inactivity timeout in\nmilliseconds.\n" + }, + "timeoutTcpInspect": { + "type": "integer", + "description": "The time in milliseconds, to wait for\nadditional TCP packets for content inspection.\n" + }, + "tlsCiphers": { + "type": "string", + "description": "List of ciphers in OpenSSL format\n(colon-separated). See\nhttps://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information.\nSupported only in **Octavia minor version \u003e= 2.15**.\n" + }, + "tlsVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of TLS protocol versions. Available\nversions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in\n**Octavia minor version \u003e= 2.17**.\n" + } + }, + "type": "object" + } + }, + "openstack:loadbalancer/loadBalancer:LoadBalancer": { + "description": "Manages a V2 loadbalancer resource within OpenStack.\n\n\u003e **Note:** This resource has attributes that depend on octavia minor versions.\nPlease ensure your Openstack cloud supports the required minor version.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst lb1 = new openstack.loadbalancer.LoadBalancer(\"lb_1\", {vipSubnetId: \"d9415786-5f1a-428b-b35f-2f1523e146d2\"});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlb1 = openstack.loadbalancer.LoadBalancer(\"lb_1\", vip_subnet_id=\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var lb1 = new OpenStack.LoadBalancer.LoadBalancer(\"lb_1\", new()\n {\n VipSubnetId = \"d9415786-5f1a-428b-b35f-2f1523e146d2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewLoadBalancer(ctx, \"lb_1\", \u0026loadbalancer.LoadBalancerArgs{\n\t\t\tVipSubnetId: pulumi.String(\"d9415786-5f1a-428b-b35f-2f1523e146d2\"),\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.openstack.loadbalancer.LoadBalancer;\nimport com.pulumi.openstack.loadbalancer.LoadBalancerArgs;\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 lb1 = new LoadBalancer(\"lb1\", LoadBalancerArgs.builder()\n .vipSubnetId(\"d9415786-5f1a-428b-b35f-2f1523e146d2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n lb1:\n type: openstack:loadbalancer:LoadBalancer\n name: lb_1\n properties:\n vipSubnetId: d9415786-5f1a-428b-b35f-2f1523e146d2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer can be imported using the Load Balancer ID, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76\n```\n", + "properties": { + "adminStateUp": { + "type": "boolean", + "description": "The administrative state of the Loadbalancer.\nA valid value is true (UP) or false (DOWN).\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone of the Loadbalancer.\nChanging this creates a new loadbalancer. Available only for Octavia\n**minor version 2.14 or later**.\n" + }, + "description": { + "type": "string", + "description": "Human-readable description for the Loadbalancer.\n" + }, + "flavorId": { + "type": "string", + "description": "The UUID of a flavor. Changing this creates a new\nloadbalancer.\n" + }, + "loadbalancerProvider": { + "type": "string", + "description": "The name of the provider. Changing this\ncreates a new loadbalancer.\n" + }, + "name": { + "type": "string", + "description": "Human-readable name for the Loadbalancer. Does not have\nto be unique.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create an LB member. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nLB member.\n" + }, + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of security group IDs to apply to the\nloadbalancer. The security groups must be specified by ID and not name (as\nopposed to how they are configured with the Compute Instance).\n" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of simple strings assigned to the loadbalancer.\nAvailable only for Octavia **minor version 2.5 or later**.\n" + }, + "tenantId": { + "type": "string", + "description": "Required for admins. The UUID of the tenant who owns\nthe Loadbalancer. Only administrative users can specify a tenant UUID\nother than their own. Changing this creates a new loadbalancer.\n" + }, + "vipAddress": { + "type": "string", + "description": "The ip address of the load balancer.\nChanging this creates a new loadbalancer.\n" + }, + "vipNetworkId": { + "type": "string", + "description": "The network on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n" + }, + "vipPortId": { + "type": "string", + "description": "The port UUID that the loadbalancer will use.\nChanging this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n" + }, + "vipQosPolicyId": { + "type": "string", + "description": "The ID of the QoS Policy which will \nbe applied to the Virtual IP (VIP).\n" + }, + "vipSubnetId": { + "type": "string", + "description": "The subnet on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n" + } + }, + "required": [ + "flavorId", + "loadbalancerProvider", + "name", + "region", + "securityGroupIds", + "tenantId", + "vipAddress", + "vipNetworkId", + "vipPortId", + "vipSubnetId" + ], + "inputProperties": { + "adminStateUp": { + "type": "boolean", + "description": "The administrative state of the Loadbalancer.\nA valid value is true (UP) or false (DOWN).\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone of the Loadbalancer.\nChanging this creates a new loadbalancer. Available only for Octavia\n**minor version 2.14 or later**.\n", + "willReplaceOnChanges": true + }, + "description": { + "type": "string", + "description": "Human-readable description for the Loadbalancer.\n" + }, + "flavorId": { + "type": "string", + "description": "The UUID of a flavor. Changing this creates a new\nloadbalancer.\n", + "willReplaceOnChanges": true + }, + "loadbalancerProvider": { + "type": "string", + "description": "The name of the provider. Changing this\ncreates a new loadbalancer.\n", + "willReplaceOnChanges": true + }, + "name": { + "type": "string", + "description": "Human-readable name for the Loadbalancer. Does not have\nto be unique.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create an LB member. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nLB member.\n", + "willReplaceOnChanges": true + }, + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of security group IDs to apply to the\nloadbalancer. The security groups must be specified by ID and not name (as\nopposed to how they are configured with the Compute Instance).\n" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of simple strings assigned to the loadbalancer.\nAvailable only for Octavia **minor version 2.5 or later**.\n" + }, + "tenantId": { + "type": "string", + "description": "Required for admins. The UUID of the tenant who owns\nthe Loadbalancer. Only administrative users can specify a tenant UUID\nother than their own. Changing this creates a new loadbalancer.\n", + "willReplaceOnChanges": true + }, + "vipAddress": { + "type": "string", + "description": "The ip address of the load balancer.\nChanging this creates a new loadbalancer.\n", + "willReplaceOnChanges": true + }, + "vipNetworkId": { + "type": "string", + "description": "The network on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true + }, + "vipPortId": { + "type": "string", + "description": "The port UUID that the loadbalancer will use.\nChanging this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true + }, + "vipQosPolicyId": { + "type": "string", + "description": "The ID of the QoS Policy which will \nbe applied to the Virtual IP (VIP).\n" + }, + "vipSubnetId": { + "type": "string", + "description": "The subnet on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true + } + }, + "stateInputs": { + "description": "Input properties used for looking up and filtering LoadBalancer resources.\n", + "properties": { + "adminStateUp": { + "type": "boolean", + "description": "The administrative state of the Loadbalancer.\nA valid value is true (UP) or false (DOWN).\n" + }, + "availabilityZone": { + "type": "string", + "description": "The availability zone of the Loadbalancer.\nChanging this creates a new loadbalancer. Available only for Octavia\n**minor version 2.14 or later**.\n", + "willReplaceOnChanges": true + }, + "description": { + "type": "string", + "description": "Human-readable description for the Loadbalancer.\n" + }, + "flavorId": { + "type": "string", + "description": "The UUID of a flavor. Changing this creates a new\nloadbalancer.\n", + "willReplaceOnChanges": true + }, + "loadbalancerProvider": { + "type": "string", + "description": "The name of the provider. Changing this\ncreates a new loadbalancer.\n", + "willReplaceOnChanges": true + }, + "name": { + "type": "string", + "description": "Human-readable name for the Loadbalancer. Does not have\nto be unique.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Networking client.\nA Networking client is needed to create an LB member. If omitted, the\n`region` argument of the provider is used. Changing this creates a new\nLB member.\n", "willReplaceOnChanges": true }, - "sniContainerRefs": { + "securityGroupIds": { "type": "array", "items": { "type": "string" }, - "description": "A list of references to Barbican Secrets\ncontainers which store SNI information. See\n[here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer)\nfor more information.\n" + "description": "A list of security group IDs to apply to the\nloadbalancer. The security groups must be specified by ID and not name (as\nopposed to how they are configured with the Compute Instance).\n" }, "tags": { "type": "array", "items": { "type": "string" }, - "description": "A list of simple strings assigned to the pool. Available\nfor Octavia **minor version 2.5 or later**.\n" + "description": "A list of simple strings assigned to the loadbalancer.\nAvailable only for Octavia **minor version 2.5 or later**.\n" }, "tenantId": { "type": "string", - "description": "Required for admins. The UUID of the tenant who owns\nthe Listener. Only administrative users can specify a tenant UUID other than\ntheir own. Changing this creates a new Listener.\n", + "description": "Required for admins. The UUID of the tenant who owns\nthe Loadbalancer. Only administrative users can specify a tenant UUID\nother than their own. Changing this creates a new loadbalancer.\n", "willReplaceOnChanges": true }, - "timeoutClientData": { - "type": "integer", - "description": "The client inactivity timeout in\nmilliseconds.\n" - }, - "timeoutMemberConnect": { - "type": "integer", - "description": "The member connection timeout in\nmilliseconds.\n" + "vipAddress": { + "type": "string", + "description": "The ip address of the load balancer.\nChanging this creates a new loadbalancer.\n", + "willReplaceOnChanges": true }, - "timeoutMemberData": { - "type": "integer", - "description": "The member inactivity timeout in\nmilliseconds.\n" + "vipNetworkId": { + "type": "string", + "description": "The network on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true }, - "timeoutTcpInspect": { - "type": "integer", - "description": "The time in milliseconds, to wait for\nadditional TCP packets for content inspection.\n" + "vipPortId": { + "type": "string", + "description": "The port UUID that the loadbalancer will use.\nChanging this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true }, - "tlsCiphers": { + "vipQosPolicyId": { "type": "string", - "description": "List of ciphers in OpenSSL format\n(colon-separated). See\nhttps://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information.\nSupported only in **Octavia minor version \u003e= 2.15**.\n" + "description": "The ID of the QoS Policy which will \nbe applied to the Virtual IP (VIP).\n" }, - "tlsVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of TLS protocol versions. Available\nversions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in\n**Octavia minor version \u003e= 2.17**.\n" + "vipSubnetId": { + "type": "string", + "description": "The subnet on which to allocate the\nLoadbalancer's address. A tenant can only create Loadbalancers on networks\nauthorized by policy (e.g. networks that belong to them or networks that\nare shared). Changing this creates a new loadbalancer. Exactly one of\n`vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined.\n", + "willReplaceOnChanges": true } }, "type": "object" - } + }, + "aliases": [ + { + "type": "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2" + } + ] }, "openstack:loadbalancer/member:Member": { "description": "Manages a V2 member resource within OpenStack.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst member1 = new openstack.loadbalancer.Member(\"member_1\", {\n poolId: \"935685fb-a896-40f9-9ff4-ae531a3a00fe\",\n address: \"192.168.199.23\",\n protocolPort: 8080,\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nmember1 = openstack.loadbalancer.Member(\"member_1\",\n pool_id=\"935685fb-a896-40f9-9ff4-ae531a3a00fe\",\n address=\"192.168.199.23\",\n protocol_port=8080)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var member1 = new OpenStack.LoadBalancer.Member(\"member_1\", new()\n {\n PoolId = \"935685fb-a896-40f9-9ff4-ae531a3a00fe\",\n Address = \"192.168.199.23\",\n ProtocolPort = 8080,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer\"\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 := loadbalancer.NewMember(ctx, \"member_1\", \u0026loadbalancer.MemberArgs{\n\t\t\tPoolId: pulumi.String(\"935685fb-a896-40f9-9ff4-ae531a3a00fe\"),\n\t\t\tAddress: pulumi.String(\"192.168.199.23\"),\n\t\t\tProtocolPort: pulumi.Int(8080),\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.openstack.loadbalancer.Member;\nimport com.pulumi.openstack.loadbalancer.MemberArgs;\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 member1 = new Member(\"member1\", MemberArgs.builder()\n .poolId(\"935685fb-a896-40f9-9ff4-ae531a3a00fe\")\n .address(\"192.168.199.23\")\n .protocolPort(8080)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n member1:\n type: openstack:loadbalancer:Member\n name: member_1\n properties:\n poolId: 935685fb-a896-40f9-9ff4-ae531a3a00fe\n address: 192.168.199.23\n protocolPort: 8080\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLoad Balancer Pool Member can be imported using the Pool ID and Member ID\nseparated by a slash, e.g.:\n\n```sh\n$ pulumi import openstack:loadbalancer/member:Member member_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5/9563b79c-8460-47da-8a95-2711b746510f\n```\n", @@ -19007,311 +19899,695 @@ }, "type": "object", "required": [ - "name" + "name" + ] + }, + "outputs": { + "description": "A collection of values returned by getKeypair.\n", + "properties": { + "fingerprint": { + "description": "The fingerprint of the OpenSSH key.\n", + "type": "string" + }, + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" + }, + "name": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "publicKey": { + "description": "The OpenSSH-formatted public key of the keypair.\n", + "type": "string" + }, + "region": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "userId": { + "description": "See Argument Reference above.\n", + "type": "string" + } + }, + "required": [ + "fingerprint", + "name", + "publicKey", + "region", + "userId", + "id" + ], + "type": "object" + } + }, + "openstack:compute/getLimitsV2:getLimitsV2": { + "description": "Use this data source to get the compute limits of an OpenStack project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst limits = openstack.compute.getLimitsV2({\n projectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlimits = openstack.compute.get_limits_v2(project_id=\"2e367a3d29f94fd988e6ec54e305ec9d\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var limits = OpenStack.Compute.GetLimitsV2.Invoke(new()\n {\n ProjectId = \"2e367a3d29f94fd988e6ec54e305ec9d\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.GetLimitsV2(ctx, \u0026compute.GetLimitsV2Args{\n\t\t\tProjectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n\t\t}, nil)\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.openstack.compute.ComputeFunctions;\nimport com.pulumi.openstack.compute.inputs.GetLimitsV2Args;\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 limits = ComputeFunctions.getLimitsV2(GetLimitsV2Args.builder()\n .projectId(\"2e367a3d29f94fd988e6ec54e305ec9d\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n limits:\n fn::invoke:\n Function: openstack:compute:getLimitsV2\n Arguments:\n projectId: 2e367a3d29f94fd988e6ec54e305ec9d\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getLimitsV2.\n", + "properties": { + "projectId": { + "type": "string", + "description": "The id of the project to retrieve the limits.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\n", + "willReplaceOnChanges": true + } + }, + "type": "object", + "required": [ + "projectId" + ] + }, + "outputs": { + "description": "A collection of values returned by getLimitsV2.\n", + "properties": { + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" + }, + "maxImageMeta": { + "description": "The number of allowed metadata items for each image. Starting from version 2.39 this field is dropped from ‘os-limits’ response, because ‘image-metadata’ proxy API was deprecated. Available until version 2.38.\n", + "type": "integer" + }, + "maxPersonality": { + "description": "The number of allowed injected files for the tenant. Available until version 2.56.\n", + "type": "integer" + }, + "maxPersonalitySize": { + "description": "The number of allowed bytes of content for each injected file. Available until version 2.56.\n", + "type": "integer" + }, + "maxSecurityGroupRules": { + "description": "The number of allowed rules for each security group. Available until version 2.35.\n", + "type": "integer" + }, + "maxSecurityGroups": { + "description": "The number of allowed security groups for the tenant. Available until version 2.35.\n", + "type": "integer" + }, + "maxServerGroupMembers": { + "description": "The number of allowed members for each server group.\n", + "type": "integer" + }, + "maxServerGroups": { + "description": "The number of allowed server groups for the tenant.\n", + "type": "integer" + }, + "maxServerMeta": { + "description": "The number of allowed server groups for the tenant.\n", + "type": "integer" + }, + "maxTotalCores": { + "description": "The number of allowed server cores for the tenant.\n", + "type": "integer" + }, + "maxTotalFloatingIps": { + "description": "The number of allowed floating IP addresses for each tenant. Available until version 2.35.\n", + "type": "integer" + }, + "maxTotalInstances": { + "description": "The number of allowed servers for the tenant.\n", + "type": "integer" + }, + "maxTotalKeypairs": { + "description": "The number of allowed key pairs for the user.\n", + "type": "integer" + }, + "maxTotalRamSize": { + "description": "The number of allowed floating IP addresses for the tenant. Available until version 2.35.\n", + "type": "integer" + }, + "projectId": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "region": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "totalCoresUsed": { + "description": "The number of used server cores in the tenant.\n", + "type": "integer" + }, + "totalFloatingIpsUsed": { + "description": "The number of used floating IP addresses in the tenant.\n", + "type": "integer" + }, + "totalInstancesUsed": { + "description": "The number of used server cores in the tenant.\n", + "type": "integer" + }, + "totalRamUsed": { + "description": "The amount of used server RAM in the tenant.\n", + "type": "integer" + }, + "totalSecurityGroupsUsed": { + "description": "The number of used security groups in the tenant. Available until version 2.35.\n", + "type": "integer" + }, + "totalServerGroupsUsed": { + "description": "The number of used server groups in each tenant.\n", + "type": "integer" + } + }, + "required": [ + "maxImageMeta", + "maxPersonality", + "maxPersonalitySize", + "maxSecurityGroupRules", + "maxSecurityGroups", + "maxServerGroupMembers", + "maxServerGroups", + "maxServerMeta", + "maxTotalCores", + "maxTotalFloatingIps", + "maxTotalInstances", + "maxTotalKeypairs", + "maxTotalRamSize", + "projectId", + "region", + "totalCoresUsed", + "totalFloatingIpsUsed", + "totalInstancesUsed", + "totalRamUsed", + "totalSecurityGroupsUsed", + "totalServerGroupsUsed", + "id" + ], + "type": "object" + } + }, + "openstack:compute/getQuotaSetV2:getQuotaSetV2": { + "description": "Use this data source to get the compute quotaset of an OpenStack project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst quota = openstack.compute.getQuotaSetV2({\n projectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nquota = openstack.compute.get_quota_set_v2(project_id=\"2e367a3d29f94fd988e6ec54e305ec9d\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var quota = OpenStack.Compute.GetQuotaSetV2.Invoke(new()\n {\n ProjectId = \"2e367a3d29f94fd988e6ec54e305ec9d\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.LookupQuotaSetV2(ctx, \u0026compute.LookupQuotaSetV2Args{\n\t\t\tProjectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n\t\t}, nil)\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.openstack.compute.ComputeFunctions;\nimport com.pulumi.openstack.compute.inputs.GetQuotaSetV2Args;\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 quota = ComputeFunctions.getQuotaSetV2(GetQuotaSetV2Args.builder()\n .projectId(\"2e367a3d29f94fd988e6ec54e305ec9d\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n quota:\n fn::invoke:\n Function: openstack:compute:getQuotaSetV2\n Arguments:\n projectId: 2e367a3d29f94fd988e6ec54e305ec9d\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getQuotaSetV2.\n", + "properties": { + "projectId": { + "type": "string", + "description": "The id of the project to retrieve the quotaset.\n", + "willReplaceOnChanges": true + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\n", + "willReplaceOnChanges": true + } + }, + "type": "object", + "required": [ + "projectId" ] }, "outputs": { - "description": "A collection of values returned by getKeypair.\n", + "description": "A collection of values returned by getQuotaSetV2.\n", "properties": { - "fingerprint": { - "description": "The fingerprint of the OpenSSH key.\n", - "type": "string" + "cores": { + "description": "The number of allowed server cores.\n", + "type": "integer" + }, + "fixedIps": { + "description": "The number of allowed fixed IP addresses. Available until version 2.35.\n", + "type": "integer" + }, + "floatingIps": { + "description": "The number of allowed floating IP addresses. Available until version 2.35.\n", + "type": "integer" }, "id": { "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "name": { + "injectedFileContentBytes": { + "description": "The number of allowed bytes of content for each injected file. Available until version 2.56.\n", + "type": "integer" + }, + "injectedFilePathBytes": { + "description": "The number of allowed bytes for each injected file path. Available until version 2.56.\n", + "type": "integer" + }, + "injectedFiles": { + "description": "The number of allowed injected files. Available until version 2.56.\n", + "type": "integer" + }, + "instances": { + "description": "The number of allowed servers.\n", + "type": "integer" + }, + "keyPairs": { + "description": "The number of allowed key pairs for each user.\n", + "type": "integer" + }, + "metadataItems": { + "description": "The number of allowed metadata items for each server.\n", + "type": "integer" + }, + "projectId": { "description": "See Argument Reference above.\n", "type": "string" }, - "publicKey": { - "description": "The OpenSSH-formatted public key of the keypair.\n", - "type": "string" + "ram": { + "description": "The amount of allowed server RAM, in MiB.\n", + "type": "integer" }, "region": { "description": "See Argument Reference above.\n", "type": "string" }, - "userId": { - "description": "See Argument Reference above.\n", - "type": "string" + "securityGroupRules": { + "description": "The number of allowed rules for each security group. Available until version 2.35.\n", + "type": "integer" + }, + "securityGroups": { + "description": "The number of allowed security groups. Available until version 2.35.\n", + "type": "integer" + }, + "serverGroupMembers": { + "description": "The number of allowed members for each server group.\n", + "type": "integer" + }, + "serverGroups": { + "description": "The number of allowed server groups.\n", + "type": "integer" } }, "required": [ - "fingerprint", - "name", - "publicKey", + "cores", + "fixedIps", + "floatingIps", + "injectedFileContentBytes", + "injectedFilePathBytes", + "injectedFiles", + "instances", + "keyPairs", + "metadataItems", + "projectId", + "ram", "region", - "userId", + "securityGroupRules", + "securityGroups", + "serverGroupMembers", + "serverGroups", "id" ], "type": "object" } }, - "openstack:compute/getLimitsV2:getLimitsV2": { - "description": "Use this data source to get the compute limits of an OpenStack project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst limits = openstack.compute.getLimitsV2({\n projectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nlimits = openstack.compute.get_limits_v2(project_id=\"2e367a3d29f94fd988e6ec54e305ec9d\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var limits = OpenStack.Compute.GetLimitsV2.Invoke(new()\n {\n ProjectId = \"2e367a3d29f94fd988e6ec54e305ec9d\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.GetLimitsV2(ctx, \u0026compute.GetLimitsV2Args{\n\t\t\tProjectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n\t\t}, nil)\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.openstack.compute.ComputeFunctions;\nimport com.pulumi.openstack.compute.inputs.GetLimitsV2Args;\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 limits = ComputeFunctions.getLimitsV2(GetLimitsV2Args.builder()\n .projectId(\"2e367a3d29f94fd988e6ec54e305ec9d\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n limits:\n fn::invoke:\n Function: openstack:compute:getLimitsV2\n Arguments:\n projectId: 2e367a3d29f94fd988e6ec54e305ec9d\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:containerinfra/getCluster:getCluster": { + "description": "Use this data source to get the ID of an available OpenStack Magnum cluster.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst cluster1 = openstack.containerinfra.getCluster({\n name: \"cluster_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ncluster1 = openstack.containerinfra.get_cluster(name=\"cluster_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster1 = OpenStack.ContainerInfra.GetCluster.Invoke(new()\n {\n Name = \"cluster_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupCluster(ctx, \u0026containerinfra.LookupClusterArgs{\n\t\t\tName: \"cluster_1\",\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetClusterArgs;\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 cluster1 = ContainerinfraFunctions.getCluster(GetClusterArgs.builder()\n .name(\"cluster_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n cluster1:\n fn::invoke:\n Function: openstack:containerinfra:getCluster\n Arguments:\n name: cluster_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getLimitsV2.\n", + "description": "A collection of arguments for invoking getCluster.\n", "properties": { - "projectId": { + "name": { "type": "string", - "description": "The id of the project to retrieve the limits.\n", - "willReplaceOnChanges": true + "description": "The name of the cluster.\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\n", - "willReplaceOnChanges": true + "description": "The region in which to obtain the V1 Container Infra\nclient.\nIf omitted, the `region` argument of the provider is used.\n" } }, "type": "object", "required": [ - "projectId" + "name" ] }, "outputs": { - "description": "A collection of values returned by getLimitsV2.\n", + "description": "A collection of values returned by getCluster.\n", "properties": { - "id": { - "description": "The provider-assigned unique ID for this managed resource.\n", + "apiAddress": { + "description": "COE API address.\n", "type": "string" }, - "maxImageMeta": { - "description": "The number of allowed metadata items for each image. Starting from version 2.39 this field is dropped from ‘os-limits’ response, because ‘image-metadata’ proxy API was deprecated. Available until version 2.38.\n", - "type": "integer" + "clusterTemplateId": { + "description": "The UUID of the V1 Container Infra cluster template.\n", + "type": "string" }, - "maxPersonality": { - "description": "The number of allowed injected files for the tenant. Available until version 2.56.\n", - "type": "integer" + "coeVersion": { + "description": "COE software version.\n", + "type": "string" }, - "maxPersonalitySize": { - "description": "The number of allowed bytes of content for each injected file. Available until version 2.56.\n", - "type": "integer" + "containerVersion": { + "type": "string" }, - "maxSecurityGroupRules": { - "description": "The number of allowed rules for each security group. Available until version 2.35.\n", + "createTimeout": { + "description": "The timeout (in minutes) for creating the cluster.\n", "type": "integer" }, - "maxSecurityGroups": { - "description": "The number of allowed security groups for the tenant. Available until version 2.35.\n", - "type": "integer" + "createdAt": { + "description": "The time at which cluster was created.\n", + "type": "string" }, - "maxServerGroupMembers": { - "description": "The number of allowed members for each server group.\n", - "type": "integer" + "discoveryUrl": { + "description": "The URL used for cluster node discovery.\n", + "type": "string" }, - "maxServerGroups": { - "description": "The number of allowed server groups for the tenant.\n", + "dockerVolumeSize": { + "description": "The size (in GB) of the Docker volume.\n", "type": "integer" }, - "maxServerMeta": { - "description": "The number of allowed server groups for the tenant.\n", - "type": "integer" + "fixedNetwork": { + "description": "The fixed network that is attached to the cluster.\n", + "type": "string" }, - "maxTotalCores": { - "description": "The number of allowed server cores for the tenant.\n", - "type": "integer" + "fixedSubnet": { + "description": "The fixed subnet that is attached to the cluster.\n", + "type": "string" }, - "maxTotalFloatingIps": { - "description": "The number of allowed floating IP addresses for each tenant. Available until version 2.35.\n", - "type": "integer" + "flavor": { + "description": "The flavor for the nodes of the cluster.\n", + "type": "string" }, - "maxTotalInstances": { - "description": "The number of allowed servers for the tenant.\n", - "type": "integer" + "floatingIpEnabled": { + "type": "boolean" }, - "maxTotalKeypairs": { - "description": "The number of allowed key pairs for the user.\n", - "type": "integer" + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" }, - "maxTotalRamSize": { - "description": "The number of allowed floating IP addresses for the tenant. Available until version 2.35.\n", + "keypair": { + "description": "The name of the Compute service SSH keypair.\n", + "type": "string" + }, + "kubeconfig": { + "additionalProperties": { + "type": "string" + }, + "description": "The Kubernetes cluster's credentials\n", + "secret": true, + "type": "object" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The list of key value pairs representing additional properties of\nthe cluster.\n", + "type": "object" + }, + "masterAddresses": { + "description": "IP addresses of the master node of the cluster.\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "masterCount": { + "description": "The number of master nodes for the cluster.\n", "type": "integer" }, - "projectId": { - "description": "See Argument Reference above.\n", + "masterFlavor": { + "description": "The flavor for the master nodes.\n", "type": "string" }, - "region": { + "masterLbEnabled": { + "description": "Whether a load balancer is created for the master\ncluster nodes.\n", + "type": "boolean" + }, + "name": { "description": "See Argument Reference above.\n", "type": "string" }, - "totalCoresUsed": { - "description": "The number of used server cores in the tenant.\n", - "type": "integer" + "nodeAddresses": { + "description": "IP addresses of the node of the cluster.\n", + "items": { + "type": "string" + }, + "type": "array" }, - "totalFloatingIpsUsed": { - "description": "The number of used floating IP addresses in the tenant.\n", + "nodeCount": { + "description": "The number of nodes for the cluster.\n", "type": "integer" }, - "totalInstancesUsed": { - "description": "The number of used server cores in the tenant.\n", - "type": "integer" + "projectId": { + "description": "The project of the cluster.\n", + "type": "string" }, - "totalRamUsed": { - "description": "The amount of used server RAM in the tenant.\n", - "type": "integer" + "region": { + "description": "See Argument Reference above.\n", + "type": "string" }, - "totalSecurityGroupsUsed": { - "description": "The number of used security groups in the tenant. Available until version 2.35.\n", - "type": "integer" + "stackId": { + "description": "UUID of the Orchestration service stack.\n", + "type": "string" }, - "totalServerGroupsUsed": { - "description": "The number of used server groups in each tenant.\n", - "type": "integer" + "updatedAt": { + "description": "The time at which cluster was updated.\n", + "type": "string" + }, + "userId": { + "description": "The user of the cluster.\n", + "type": "string" } }, "required": [ - "maxImageMeta", - "maxPersonality", - "maxPersonalitySize", - "maxSecurityGroupRules", - "maxSecurityGroups", - "maxServerGroupMembers", - "maxServerGroups", - "maxServerMeta", - "maxTotalCores", - "maxTotalFloatingIps", - "maxTotalInstances", - "maxTotalKeypairs", - "maxTotalRamSize", + "apiAddress", + "clusterTemplateId", + "coeVersion", + "containerVersion", + "createTimeout", + "createdAt", + "discoveryUrl", + "dockerVolumeSize", + "fixedNetwork", + "fixedSubnet", + "flavor", + "floatingIpEnabled", + "keypair", + "kubeconfig", + "labels", + "masterAddresses", + "masterCount", + "masterFlavor", + "masterLbEnabled", + "name", + "nodeAddresses", + "nodeCount", "projectId", "region", - "totalCoresUsed", - "totalFloatingIpsUsed", - "totalInstancesUsed", - "totalRamUsed", - "totalSecurityGroupsUsed", - "totalServerGroupsUsed", + "stackId", + "updatedAt", + "userId", "id" ], "type": "object" } }, - "openstack:compute/getQuotaSetV2:getQuotaSetV2": { - "description": "Use this data source to get the compute quotaset of an OpenStack project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst quota = openstack.compute.getQuotaSetV2({\n projectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nquota = openstack.compute.get_quota_set_v2(project_id=\"2e367a3d29f94fd988e6ec54e305ec9d\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var quota = OpenStack.Compute.GetQuotaSetV2.Invoke(new()\n {\n ProjectId = \"2e367a3d29f94fd988e6ec54e305ec9d\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/compute\"\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 := compute.LookupQuotaSetV2(ctx, \u0026compute.LookupQuotaSetV2Args{\n\t\t\tProjectId: \"2e367a3d29f94fd988e6ec54e305ec9d\",\n\t\t}, nil)\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.openstack.compute.ComputeFunctions;\nimport com.pulumi.openstack.compute.inputs.GetQuotaSetV2Args;\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 quota = ComputeFunctions.getQuotaSetV2(GetQuotaSetV2Args.builder()\n .projectId(\"2e367a3d29f94fd988e6ec54e305ec9d\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n quota:\n fn::invoke:\n Function: openstack:compute:getQuotaSetV2\n Arguments:\n projectId: 2e367a3d29f94fd988e6ec54e305ec9d\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:containerinfra/getClusterTemplate:getClusterTemplate": { + "description": "Use this data source to get the ID of an available OpenStack Magnum cluster\ntemplate.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst clustertemplate1 = openstack.containerinfra.getClusterTemplate({\n name: \"clustertemplate_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nclustertemplate1 = openstack.containerinfra.get_cluster_template(name=\"clustertemplate_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var clustertemplate1 = OpenStack.ContainerInfra.GetClusterTemplate.Invoke(new()\n {\n Name = \"clustertemplate_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupClusterTemplate(ctx, \u0026containerinfra.LookupClusterTemplateArgs{\n\t\t\tName: \"clustertemplate_1\",\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetClusterTemplateArgs;\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 clustertemplate1 = ContainerinfraFunctions.getClusterTemplate(GetClusterTemplateArgs.builder()\n .name(\"clustertemplate_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n clustertemplate1:\n fn::invoke:\n Function: openstack:containerinfra:getClusterTemplate\n Arguments:\n name: clustertemplate_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getQuotaSetV2.\n", + "description": "A collection of arguments for invoking getClusterTemplate.\n", "properties": { - "projectId": { + "name": { "type": "string", - "description": "The id of the project to retrieve the quotaset.\n", - "willReplaceOnChanges": true + "description": "The name of the cluster template.\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V2 Compute client.\nIf omitted, the `region` argument of the provider is used.\n", - "willReplaceOnChanges": true + "description": "The region in which to obtain the V1 Container Infra\nclient.\nIf omitted, the `region` argument of the provider is used.\n" } }, "type": "object", "required": [ - "projectId" + "name" ] }, "outputs": { - "description": "A collection of values returned by getQuotaSetV2.\n", + "description": "A collection of values returned by getClusterTemplate.\n", "properties": { - "cores": { - "description": "The number of allowed server cores.\n", + "apiserverPort": { + "description": "The API server port for the Container Orchestration\nEngine for this cluster template.\n", "type": "integer" }, - "fixedIps": { - "description": "The number of allowed fixed IP addresses. Available until version 2.35.\n", - "type": "integer" + "clusterDistro": { + "description": "The distro for the cluster (fedora-atomic, coreos, etc.).\n", + "type": "string" }, - "floatingIps": { - "description": "The number of allowed floating IP addresses. Available until version 2.35.\n", + "coe": { + "description": "The Container Orchestration Engine for this cluster template.\n", + "type": "string" + }, + "createdAt": { + "description": "The time at which cluster template was created.\n", + "type": "string" + }, + "dnsNameserver": { + "description": "Address of the DNS nameserver that is used in nodes of the\ncluster.\n", + "type": "string" + }, + "dockerStorageDriver": { + "description": "Docker storage driver. Changing this updates the\nDocker storage driver of the existing cluster template.\n", + "type": "string" + }, + "dockerVolumeSize": { + "description": "The size (in GB) of the Docker volume.\n", "type": "integer" }, + "externalNetworkId": { + "description": "The ID of the external network that will be used for\nthe cluster.\n", + "type": "string" + }, + "fixedNetwork": { + "description": "The fixed network that will be attached to the cluster.\n", + "type": "string" + }, + "fixedSubnet": { + "description": "=The fixed subnet that will be attached to the cluster.\n", + "type": "string" + }, + "flavor": { + "description": "The flavor for the nodes of the cluster.\n", + "type": "string" + }, + "floatingIpEnabled": { + "description": "Indicates whether created cluster should create IP\nfloating IP for every node or not.\n", + "type": "boolean" + }, + "hidden": { + "description": "Indicates whether the ClusterTemplate is hidden or not.\n", + "type": "boolean" + }, + "httpProxy": { + "description": "The address of a proxy for receiving all HTTP requests and\nrelay them.\n", + "type": "string" + }, + "httpsProxy": { + "description": "The address of a proxy for receiving all HTTPS requests and\nrelay them.\n", + "type": "string" + }, "id": { "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "injectedFileContentBytes": { - "description": "The number of allowed bytes of content for each injected file. Available until version 2.56.\n", - "type": "integer" + "image": { + "description": "The reference to an image that is used for nodes of the cluster.\n", + "type": "string" }, - "injectedFilePathBytes": { - "description": "The number of allowed bytes for each injected file path. Available until version 2.56.\n", - "type": "integer" + "insecureRegistry": { + "description": "The insecure registry URL for the cluster template.\n", + "type": "string" }, - "injectedFiles": { - "description": "The number of allowed injected files. Available until version 2.56.\n", - "type": "integer" + "keypairId": { + "description": "The name of the Compute service SSH keypair.\n", + "type": "string" }, - "instances": { - "description": "The number of allowed servers.\n", - "type": "integer" + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The list of key value pairs representing additional properties\nof the cluster template.\n", + "type": "object" }, - "keyPairs": { - "description": "The number of allowed key pairs for each user.\n", - "type": "integer" + "masterFlavor": { + "description": "The flavor for the master nodes.\n", + "type": "string" }, - "metadataItems": { - "description": "The number of allowed metadata items for each server.\n", - "type": "integer" + "masterLbEnabled": { + "description": "Indicates whether created cluster should has a\nloadbalancer for master nodes or not.\n", + "type": "boolean" }, - "projectId": { + "name": { "description": "See Argument Reference above.\n", "type": "string" }, - "ram": { - "description": "The amount of allowed server RAM, in MiB.\n", - "type": "integer" + "networkDriver": { + "description": "The name of the driver for the container network.\n", + "type": "string" + }, + "noProxy": { + "description": "A comma-separated list of IP addresses that shouldn't be used in\nthe cluster.\n", + "type": "string" + }, + "projectId": { + "description": "The project of the cluster template.\n", + "type": "string" + }, + "public": { + "description": "Indicates whether cluster template should be public.\n", + "type": "boolean" }, "region": { "description": "See Argument Reference above.\n", "type": "string" }, - "securityGroupRules": { - "description": "The number of allowed rules for each security group. Available until version 2.35.\n", - "type": "integer" + "registryEnabled": { + "description": "Indicates whether Docker registry is enabled in the\ncluster.\n", + "type": "boolean" }, - "securityGroups": { - "description": "The number of allowed security groups. Available until version 2.35.\n", - "type": "integer" + "serverType": { + "description": "The server type for the cluster template.\n", + "type": "string" }, - "serverGroupMembers": { - "description": "The number of allowed members for each server group.\n", - "type": "integer" + "tlsDisabled": { + "description": "Indicates whether the TLS should be disabled in the cluster.\n", + "type": "boolean" }, - "serverGroups": { - "description": "The number of allowed server groups.\n", - "type": "integer" + "updatedAt": { + "description": "The time at which cluster template was updated.\n", + "type": "string" + }, + "userId": { + "description": "The user of the cluster template.\n", + "type": "string" + }, + "volumeDriver": { + "description": "The name of the driver that is used for the volumes of the\ncluster nodes.\n", + "type": "string" } }, "required": [ - "cores", - "fixedIps", - "floatingIps", - "injectedFileContentBytes", - "injectedFilePathBytes", - "injectedFiles", - "instances", - "keyPairs", - "metadataItems", + "apiserverPort", + "clusterDistro", + "coe", + "createdAt", + "dnsNameserver", + "dockerStorageDriver", + "dockerVolumeSize", + "externalNetworkId", + "fixedNetwork", + "fixedSubnet", + "flavor", + "floatingIpEnabled", + "hidden", + "httpProxy", + "httpsProxy", + "image", + "insecureRegistry", + "keypairId", + "labels", + "masterFlavor", + "masterLbEnabled", + "name", + "networkDriver", + "noProxy", "projectId", - "ram", + "public", "region", - "securityGroupRules", - "securityGroups", - "serverGroupMembers", - "serverGroups", + "registryEnabled", + "serverType", + "tlsDisabled", + "updatedAt", + "userId", + "volumeDriver", "id" ], "type": "object" } }, - "openstack:containerinfra/getCluster:getCluster": { - "description": "Use this data source to get the ID of an available OpenStack Magnum cluster.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst cluster1 = openstack.containerinfra.getCluster({\n name: \"cluster_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ncluster1 = openstack.containerinfra.get_cluster(name=\"cluster_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster1 = OpenStack.ContainerInfra.GetCluster.Invoke(new()\n {\n Name = \"cluster_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupCluster(ctx, \u0026containerinfra.LookupClusterArgs{\n\t\t\tName: \"cluster_1\",\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetClusterArgs;\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 cluster1 = ContainerinfraFunctions.getCluster(GetClusterArgs.builder()\n .name(\"cluster_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n cluster1:\n fn::invoke:\n Function: openstack:containerinfra:getCluster\n Arguments:\n name: cluster_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:containerinfra/getNodeGroup:getNodeGroup": { + "description": "Use this data source to get information of an available OpenStack Magnum node group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst nodegroup1 = openstack.containerinfra.getNodeGroup({\n clusterId: \"cluster_1\",\n name: \"nodegroup_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnodegroup1 = openstack.containerinfra.get_node_group(cluster_id=\"cluster_1\",\n name=\"nodegroup_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var nodegroup1 = OpenStack.ContainerInfra.GetNodeGroup.Invoke(new()\n {\n ClusterId = \"cluster_1\",\n Name = \"nodegroup_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupNodeGroup(ctx, \u0026containerinfra.LookupNodeGroupArgs{\n\t\t\tClusterId: \"cluster_1\",\n\t\t\tName: pulumi.StringRef(\"nodegroup_1\"),\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetNodeGroupArgs;\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 nodegroup1 = ContainerinfraFunctions.getNodeGroup(GetNodeGroupArgs.builder()\n .clusterId(\"cluster_1\")\n .name(\"nodegroup_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n nodegroup1:\n fn::invoke:\n Function: openstack:containerinfra:getNodeGroup\n Arguments:\n clusterId: cluster_1\n name: nodegroup_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getCluster.\n", + "description": "A collection of arguments for invoking getNodeGroup.\n", "properties": { + "clusterId": { + "type": "string", + "description": "The name of the OpenStack Magnum cluster.\n" + }, "name": { "type": "string", - "description": "The name of the cluster.\n" + "description": "The name of the node group.\n" }, "region": { "type": "string", @@ -19320,653 +20596,655 @@ }, "type": "object", "required": [ - "name" + "clusterId" ] }, "outputs": { - "description": "A collection of values returned by getCluster.\n", + "description": "A collection of values returned by getNodeGroup.\n", "properties": { - "apiAddress": { - "description": "COE API address.\n", - "type": "string" - }, - "clusterTemplateId": { - "description": "The UUID of the V1 Container Infra cluster template.\n", - "type": "string" - }, - "coeVersion": { - "description": "COE software version.\n", - "type": "string" - }, - "containerVersion": { + "clusterId": { "type": "string" }, - "createTimeout": { - "description": "The timeout (in minutes) for creating the cluster.\n", - "type": "integer" - }, "createdAt": { - "description": "The time at which cluster was created.\n", - "type": "string" - }, - "discoveryUrl": { - "description": "The URL used for cluster node discovery.\n", + "description": "The time at which the node group was created.\n", "type": "string" }, "dockerVolumeSize": { "description": "The size (in GB) of the Docker volume.\n", "type": "integer" }, - "fixedNetwork": { - "description": "The fixed network that is attached to the cluster.\n", - "type": "string" - }, - "fixedSubnet": { - "description": "The fixed subnet that is attached to the cluster.\n", - "type": "string" - }, "flavor": { - "description": "The flavor for the nodes of the cluster.\n", + "description": "The flavor for the nodes of the node group.\n", "type": "string" }, - "floatingIpEnabled": { - "type": "boolean" - }, "id": { "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "keypair": { - "description": "The name of the Compute service SSH keypair.\n", + "image": { + "description": "The reference to an image that is used for nodes of the node group.\n", "type": "string" }, - "kubeconfig": { - "additionalProperties": { - "type": "string" - }, - "description": "The Kubernetes cluster's credentials\n", - "secret": true, - "type": "object" - }, "labels": { "additionalProperties": { "type": "string" }, - "description": "The list of key value pairs representing additional properties of\nthe cluster.\n", + "description": "The list of key value pairs representing additional properties of\nthe node group.\n", "type": "object" }, - "masterAddresses": { - "description": "IP addresses of the master node of the cluster.\n", - "items": { - "type": "string" - }, - "type": "array" - }, - "masterCount": { - "description": "The number of master nodes for the cluster.\n", + "maxNodeCount": { + "description": "The maximum number of nodes for the node group.\n", "type": "integer" }, - "masterFlavor": { - "description": "The flavor for the master nodes.\n", - "type": "string" - }, - "masterLbEnabled": { - "description": "Whether a load balancer is created for the master\ncluster nodes.\n", - "type": "boolean" + "minNodeCount": { + "description": "The minimum number of nodes for the node group.\n", + "type": "integer" }, "name": { "description": "See Argument Reference above.\n", "type": "string" }, - "nodeAddresses": { - "description": "IP addresses of the node of the cluster.\n", - "items": { - "type": "string" - }, - "type": "array" - }, "nodeCount": { - "description": "The number of nodes for the cluster.\n", + "description": "The number of nodes for the node group.\n", "type": "integer" }, "projectId": { - "description": "The project of the cluster.\n", + "description": "The project of the node group.\n", "type": "string" }, "region": { "description": "See Argument Reference above.\n", "type": "string" }, - "stackId": { - "description": "UUID of the Orchestration service stack.\n", + "role": { + "description": "The role of the node group.\n", "type": "string" }, "updatedAt": { - "description": "The time at which cluster was updated.\n", - "type": "string" - }, - "userId": { - "description": "The user of the cluster.\n", + "description": "The time at which the node group was updated.\n", "type": "string" } }, "required": [ - "apiAddress", - "clusterTemplateId", - "coeVersion", - "containerVersion", - "createTimeout", + "clusterId", "createdAt", - "discoveryUrl", "dockerVolumeSize", - "fixedNetwork", - "fixedSubnet", "flavor", - "floatingIpEnabled", - "keypair", - "kubeconfig", + "image", "labels", - "masterAddresses", - "masterCount", - "masterFlavor", - "masterLbEnabled", + "maxNodeCount", + "minNodeCount", "name", - "nodeAddresses", "nodeCount", "projectId", "region", - "stackId", + "role", "updatedAt", - "userId", "id" ], "type": "object" } }, - "openstack:containerinfra/getClusterTemplate:getClusterTemplate": { - "description": "Use this data source to get the ID of an available OpenStack Magnum cluster\ntemplate.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst clustertemplate1 = openstack.containerinfra.getClusterTemplate({\n name: \"clustertemplate_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nclustertemplate1 = openstack.containerinfra.get_cluster_template(name=\"clustertemplate_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var clustertemplate1 = OpenStack.ContainerInfra.GetClusterTemplate.Invoke(new()\n {\n Name = \"clustertemplate_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupClusterTemplate(ctx, \u0026containerinfra.LookupClusterTemplateArgs{\n\t\t\tName: \"clustertemplate_1\",\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetClusterTemplateArgs;\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 clustertemplate1 = ContainerinfraFunctions.getClusterTemplate(GetClusterTemplateArgs.builder()\n .name(\"clustertemplate_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n clustertemplate1:\n fn::invoke:\n Function: openstack:containerinfra:getClusterTemplate\n Arguments:\n name: clustertemplate_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:dns/getDnsZone:getDnsZone": { + "description": "Use this data source to get the ID of an available OpenStack DNS zone.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst zone1 = openstack.dns.getDnsZone({\n name: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nzone1 = openstack.dns.get_dns_zone(name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var zone1 = OpenStack.Dns.GetDnsZone.Invoke(new()\n {\n Name = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/dns\"\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 := dns.GetDnsZone(ctx, \u0026dns.GetDnsZoneArgs{\n\t\t\tName: pulumi.StringRef(\"example.com\"),\n\t\t}, nil)\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.openstack.dns.DnsFunctions;\nimport com.pulumi.openstack.dns.inputs.GetDnsZoneArgs;\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 zone1 = DnsFunctions.getDnsZone(GetDnsZoneArgs.builder()\n .name(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n zone1:\n fn::invoke:\n Function: openstack:dns:getDnsZone\n Arguments:\n name: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getClusterTemplate.\n", + "description": "A collection of arguments for invoking getDnsZone.\n", "properties": { + "allProjects": { + "type": "string", + "description": "Try to obtain zone ID by listing all projects\n(requires admin role by default, depends on your policy configuration)\n" + }, + "attributes": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Attributes of the DNS Service scheduler.\n" + }, + "createdAt": { + "type": "string", + "description": "The time the zone was created.\n" + }, + "description": { + "type": "string", + "description": "A description of the zone.\n" + }, + "email": { + "type": "string", + "description": "The email contact for the zone record.\n" + }, + "masters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of master DNS servers. When `type` is `SECONDARY`.\n" + }, "name": { "type": "string", - "description": "The name of the cluster template.\n" + "description": "The name of the zone.\n" + }, + "poolId": { + "type": "string", + "description": "The ID of the pool hosting the zone.\n" + }, + "projectId": { + "type": "string", + "description": "The ID of the project the DNS zone is obtained from,\nsets `X-Auth-Sudo-Tenant-ID` header (requires an assigned user role in target project)\n" }, "region": { "type": "string", - "description": "The region in which to obtain the V1 Container Infra\nclient.\nIf omitted, the `region` argument of the provider is used.\n" + "description": "The region in which to obtain the V2 DNS client.\nA DNS client is needed to retrieve zone ids. If omitted, the\n`region` argument of the provider is used.\n" + }, + "serial": { + "type": "integer", + "description": "The serial number of the zone.\n" + }, + "status": { + "type": "string", + "description": "The zone's status.\n" + }, + "transferredAt": { + "type": "string", + "description": "The time the zone was transferred.\n" + }, + "ttl": { + "type": "integer", + "description": "The time to live (TTL) of the zone.\n" + }, + "type": { + "type": "string", + "description": "The type of the zone. Can either be `PRIMARY` or `SECONDARY`.\n" + }, + "updatedAt": { + "type": "string", + "description": "The time the zone was last updated.\n" + }, + "version": { + "type": "integer", + "description": "The version of the zone.\n" } }, - "type": "object", - "required": [ - "name" - ] + "type": "object" }, "outputs": { - "description": "A collection of values returned by getClusterTemplate.\n", + "description": "A collection of values returned by getDnsZone.\n", "properties": { - "apiserverPort": { - "description": "The API server port for the Container Orchestration\nEngine for this cluster template.\n", - "type": "integer" + "allProjects": { + "type": "string" }, - "clusterDistro": { - "description": "The distro for the cluster (fedora-atomic, coreos, etc.).\n", + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Attributes of the DNS Service scheduler.\n", + "type": "object" + }, + "createdAt": { + "description": "The time the zone was created.\n", + "type": "string" + }, + "description": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "email": { + "description": "See Argument Reference above.\n", + "type": "string" + }, + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "coe": { - "description": "The Container Orchestration Engine for this cluster template.\n", + "masters": { + "description": "An array of master DNS servers. When `type` is `SECONDARY`.\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "See Argument Reference above.\n", "type": "string" }, - "createdAt": { - "description": "The time at which cluster template was created.\n", + "poolId": { + "description": "The ID of the pool hosting the zone.\n", "type": "string" }, - "dnsNameserver": { - "description": "Address of the DNS nameserver that is used in nodes of the\ncluster.\n", + "projectId": { + "description": "The project ID that owns the zone.\n", "type": "string" }, - "dockerStorageDriver": { - "description": "Docker storage driver. Changing this updates the\nDocker storage driver of the existing cluster template.\n", + "region": { + "description": "See Argument Reference above.\n", "type": "string" }, - "dockerVolumeSize": { - "description": "The size (in GB) of the Docker volume.\n", + "serial": { + "description": "The serial number of the zone.\n", "type": "integer" }, - "externalNetworkId": { - "description": "The ID of the external network that will be used for\nthe cluster.\n", + "status": { + "description": "See Argument Reference above.\n", "type": "string" }, - "fixedNetwork": { - "description": "The fixed network that will be attached to the cluster.\n", + "transferredAt": { + "description": "The time the zone was transferred.\n", "type": "string" }, - "fixedSubnet": { - "description": "=The fixed subnet that will be attached to the cluster.\n", + "ttl": { + "description": "See Argument Reference above.\n", + "type": "integer" + }, + "type": { + "description": "See Argument Reference above.\n", "type": "string" }, - "flavor": { - "description": "The flavor for the nodes of the cluster.\n", + "updatedAt": { + "description": "The time the zone was last updated.\n", "type": "string" }, - "floatingIpEnabled": { - "description": "Indicates whether created cluster should create IP\nfloating IP for every node or not.\n", - "type": "boolean" + "version": { + "description": "The version of the zone.\n", + "type": "integer" + } + }, + "required": [ + "attributes", + "createdAt", + "masters", + "poolId", + "projectId", + "region", + "serial", + "transferredAt", + "updatedAt", + "version", + "id" + ], + "type": "object" + } + }, + "openstack:firewall/getGroupV2:getGroupV2": { + "description": "Use this data source to get information of an available OpenStack firewall group v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst group = openstack.firewall.getGroupV2({\n name: \"tf_test_group\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ngroup = openstack.firewall.get_group_v2(name=\"tf_test_group\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = OpenStack.Firewall.GetGroupV2.Invoke(new()\n {\n Name = \"tf_test_group\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupGroupV2(ctx, \u0026firewall.LookupGroupV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_group\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetGroupV2Args;\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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()\n .name(\"tf_test_group\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n group:\n fn::invoke:\n Function: openstack:firewall:getGroupV2\n Arguments:\n name: tf_test_group\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getGroupV2.\n", + "properties": { + "adminStateUp": { + "type": "boolean", + "description": "Administrative up/down status for the firewall group.\n" }, - "hidden": { - "description": "Indicates whether the ClusterTemplate is hidden or not.\n", - "type": "boolean" + "description": { + "type": "string", + "description": "Human-readable description of the firewall group.\n" }, - "httpProxy": { - "description": "The address of a proxy for receiving all HTTP requests and\nrelay them.\n", - "type": "string" + "egressFirewallPolicyId": { + "type": "string", + "description": "The egress policy ID of the firewall group.\n" }, - "httpsProxy": { - "description": "The address of a proxy for receiving all HTTPS requests and\nrelay them.\n", - "type": "string" + "groupId": { + "type": "string", + "description": "The ID of the firewall group.\n" }, - "id": { - "description": "The provider-assigned unique ID for this managed resource.\n", - "type": "string" + "ingressFirewallPolicyId": { + "type": "string", + "description": "The ingress policy ID of the firewall group.\n" }, - "image": { - "description": "The reference to an image that is used for nodes of the cluster.\n", - "type": "string" + "name": { + "type": "string", + "description": "The name of the firewall group.\n" }, - "insecureRegistry": { - "description": "The insecure registry URL for the cluster template.\n", - "type": "string" + "projectId": { + "type": "string", + "description": "This argument conflicts and is interchangeable\nwith `tenant_id`. The owner of the firewall group.\n" }, - "keypairId": { - "description": "The name of the Compute service SSH keypair.\n", - "type": "string" + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Neutron client.\nA Neutron client is needed to retrieve firewall group ids. If omitted, the\n`region` argument of the provider is used.\n" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The list of key value pairs representing additional properties\nof the cluster template.\n", - "type": "object" + "shared": { + "type": "boolean", + "description": "The sharing status of the firewall group.\n" }, - "masterFlavor": { - "description": "The flavor for the master nodes.\n", - "type": "string" + "status": { + "type": "string", + "description": "Enabled status for the firewall group.\n" }, - "masterLbEnabled": { - "description": "Indicates whether created cluster should has a\nloadbalancer for master nodes or not.\n", + "tenantId": { + "type": "string", + "description": "This argument conflicts and is interchangeable\nwith `project_id`. The owner of the firewall group.\n" + } + }, + "type": "object" + }, + "outputs": { + "description": "A collection of values returned by getGroupV2.\n", + "properties": { + "adminStateUp": { + "description": "See Argument Reference above.\n", "type": "boolean" }, - "name": { + "description": { "description": "See Argument Reference above.\n", "type": "string" }, - "networkDriver": { - "description": "The name of the driver for the container network.\n", + "egressFirewallPolicyId": { + "description": "See Argument Reference above.\n", "type": "string" }, - "noProxy": { - "description": "A comma-separated list of IP addresses that shouldn't be used in\nthe cluster.\n", + "groupId": { + "description": "See Argument Reference above.\n", "type": "string" }, - "projectId": { - "description": "The project of the cluster template.\n", + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "public": { - "description": "Indicates whether cluster template should be public.\n", - "type": "boolean" + "ingressFirewallPolicyId": { + "description": "See Argument Reference above.\n", + "type": "string" }, - "region": { + "name": { "description": "See Argument Reference above.\n", "type": "string" }, - "registryEnabled": { - "description": "Indicates whether Docker registry is enabled in the\ncluster.\n", - "type": "boolean" + "ports": { + "description": "Ports associated with the firewall group.\n", + "items": { + "type": "string" + }, + "type": "array" }, - "serverType": { - "description": "The server type for the cluster template.\n", + "projectId": { + "description": "See Argument Reference above.\n", "type": "string" }, - "tlsDisabled": { - "description": "Indicates whether the TLS should be disabled in the cluster.\n", - "type": "boolean" - }, - "updatedAt": { - "description": "The time at which cluster template was updated.\n", + "region": { + "description": "See Argument Reference above.\n", "type": "string" }, - "userId": { - "description": "The user of the cluster template.\n", + "shared": { + "description": "See Argument Reference above.\n", + "type": "boolean" + }, + "status": { + "description": "See Argument Reference above.\n", "type": "string" }, - "volumeDriver": { - "description": "The name of the driver that is used for the volumes of the\ncluster nodes.\n", + "tenantId": { + "description": "See Argument Reference above.\n", "type": "string" } }, "required": [ - "apiserverPort", - "clusterDistro", - "coe", - "createdAt", - "dnsNameserver", - "dockerStorageDriver", - "dockerVolumeSize", - "externalNetworkId", - "fixedNetwork", - "fixedSubnet", - "flavor", - "floatingIpEnabled", - "hidden", - "httpProxy", - "httpsProxy", - "image", - "insecureRegistry", - "keypairId", - "labels", - "masterFlavor", - "masterLbEnabled", - "name", - "networkDriver", - "noProxy", + "adminStateUp", + "ports", "projectId", - "public", "region", - "registryEnabled", - "serverType", - "tlsDisabled", - "updatedAt", - "userId", - "volumeDriver", + "shared", + "status", + "tenantId", "id" ], "type": "object" } }, - "openstack:containerinfra/getNodeGroup:getNodeGroup": { - "description": "Use this data source to get information of an available OpenStack Magnum node group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst nodegroup1 = openstack.containerinfra.getNodeGroup({\n clusterId: \"cluster_1\",\n name: \"nodegroup_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nnodegroup1 = openstack.containerinfra.get_node_group(cluster_id=\"cluster_1\",\n name=\"nodegroup_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var nodegroup1 = OpenStack.ContainerInfra.GetNodeGroup.Invoke(new()\n {\n ClusterId = \"cluster_1\",\n Name = \"nodegroup_1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/containerinfra\"\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 := containerinfra.LookupNodeGroup(ctx, \u0026containerinfra.LookupNodeGroupArgs{\n\t\t\tClusterId: \"cluster_1\",\n\t\t\tName: pulumi.StringRef(\"nodegroup_1\"),\n\t\t}, nil)\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.openstack.containerinfra.ContainerinfraFunctions;\nimport com.pulumi.openstack.containerinfra.inputs.GetNodeGroupArgs;\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 nodegroup1 = ContainerinfraFunctions.getNodeGroup(GetNodeGroupArgs.builder()\n .clusterId(\"cluster_1\")\n .name(\"nodegroup_1\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n nodegroup1:\n fn::invoke:\n Function: openstack:containerinfra:getNodeGroup\n Arguments:\n clusterId: cluster_1\n name: nodegroup_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:firewall/getPolicyV2:getPolicyV2": { + "description": "Use this data source to get information of an available OpenStack firewall policy v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst policy = openstack.firewall.getPolicyV2({\n name: \"tf_test_policy\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\npolicy = openstack.firewall.get_policy_v2(name=\"tf_test_policy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new()\n {\n Name = \"tf_test_policy\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupPolicyV2(ctx, \u0026firewall.LookupPolicyV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_policy\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;\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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()\n .name(\"tf_test_policy\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n policy:\n fn::invoke:\n Function: openstack:firewall:getPolicyV2\n Arguments:\n name: tf_test_policy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getNodeGroup.\n", + "description": "A collection of arguments for invoking getPolicyV2.\n", "properties": { - "clusterId": { + "audited": { + "type": "boolean", + "description": "Whether this policy has been audited.\n" + }, + "description": { "type": "string", - "description": "The name of the OpenStack Magnum cluster.\n" + "description": "Human-readable description of the policy.\n" }, "name": { "type": "string", - "description": "The name of the node group.\n" + "description": "The name of the firewall policy.\n" + }, + "policyId": { + "type": "string", + "description": "The ID of the firewall policy.\n" + }, + "projectId": { + "type": "string", + "description": "This argument conflicts and is interchangeable\nwith `tenant_id`. The owner of the firewall policy.\n" + }, + "region": { + "type": "string", + "description": "The region in which to obtain the V2 Neutron client.\nA Neutron client is needed to retrieve firewall policy ids. If omitted, the\n`region` argument of the provider is used.\n", + "willReplaceOnChanges": true }, - "region": { + "shared": { + "type": "boolean", + "description": "Whether this policy is shared across all projects.\n" + }, + "tenantId": { "type": "string", - "description": "The region in which to obtain the V1 Container Infra\nclient.\nIf omitted, the `region` argument of the provider is used.\n" + "description": "This argument conflicts and is interchangeable\nwith `project_id`. The owner of the firewall policy.\n" } }, - "type": "object", - "required": [ - "clusterId" - ] + "type": "object" }, "outputs": { - "description": "A collection of values returned by getNodeGroup.\n", + "description": "A collection of values returned by getPolicyV2.\n", "properties": { - "clusterId": { - "type": "string" - }, - "createdAt": { - "description": "The time at which the node group was created.\n", - "type": "string" - }, - "dockerVolumeSize": { - "description": "The size (in GB) of the Docker volume.\n", - "type": "integer" + "audited": { + "description": "The audit status of the firewall policy.\n", + "type": "boolean" }, - "flavor": { - "description": "The flavor for the nodes of the node group.\n", + "description": { "type": "string" }, "id": { "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "image": { - "description": "The reference to an image that is used for nodes of the node group.\n", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The list of key value pairs representing additional properties of\nthe node group.\n", - "type": "object" - }, - "maxNodeCount": { - "description": "The maximum number of nodes for the node group.\n", - "type": "integer" - }, - "minNodeCount": { - "description": "The minimum number of nodes for the node group.\n", - "type": "integer" - }, "name": { "description": "See Argument Reference above.\n", "type": "string" }, - "nodeCount": { - "description": "The number of nodes for the node group.\n", - "type": "integer" + "policyId": { + "description": "See Argument Reference above.\n", + "type": "string" }, "projectId": { - "description": "The project of the node group.\n", + "description": "See Argument Reference above.\n", "type": "string" }, "region": { "description": "See Argument Reference above.\n", "type": "string" }, - "role": { - "description": "The role of the node group.\n", - "type": "string" + "rules": { + "description": "The array of one or more firewall rules that comprise the policy.\n", + "items": { + "type": "string" + }, + "type": "array" }, - "updatedAt": { - "description": "The time at which the node group was updated.\n", + "shared": { + "description": "The sharing status of the firewall policy.\n", + "type": "boolean" + }, + "tenantId": { + "description": "See Argument Reference above.\n", "type": "string" } }, "required": [ - "clusterId", - "createdAt", - "dockerVolumeSize", - "flavor", - "image", - "labels", - "maxNodeCount", - "minNodeCount", - "name", - "nodeCount", + "audited", "projectId", "region", - "role", - "updatedAt", + "rules", + "shared", + "tenantId", "id" ], "type": "object" } }, - "openstack:dns/getDnsZone:getDnsZone": { - "description": "Use this data source to get the ID of an available OpenStack DNS zone.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst zone1 = openstack.dns.getDnsZone({\n name: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nzone1 = openstack.dns.get_dns_zone(name=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var zone1 = OpenStack.Dns.GetDnsZone.Invoke(new()\n {\n Name = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/dns\"\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 := dns.GetDnsZone(ctx, \u0026dns.GetDnsZoneArgs{\n\t\t\tName: pulumi.StringRef(\"example.com\"),\n\t\t}, nil)\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.openstack.dns.DnsFunctions;\nimport com.pulumi.openstack.dns.inputs.GetDnsZoneArgs;\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 zone1 = DnsFunctions.getDnsZone(GetDnsZoneArgs.builder()\n .name(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n zone1:\n fn::invoke:\n Function: openstack:dns:getDnsZone\n Arguments:\n name: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "openstack:firewall/getRuleV2:getRuleV2": { + "description": "Use this data source to get information of an available OpenStack firewall rule v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst rule = openstack.firewall.getRuleV2({\n name: \"tf_test_rule\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nrule = openstack.firewall.get_rule_v2(name=\"tf_test_rule\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rule = OpenStack.Firewall.GetRuleV2.Invoke(new()\n {\n Name = \"tf_test_rule\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupRuleV2(ctx, \u0026firewall.LookupRuleV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_rule\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetRuleV2Args;\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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()\n .name(\"tf_test_rule\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rule:\n fn::invoke:\n Function: openstack:firewall:getRuleV2\n Arguments:\n name: tf_test_rule\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getDnsZone.\n", + "description": "A collection of arguments for invoking getRuleV2.\n", "properties": { - "allProjects": { + "action": { "type": "string", - "description": "Try to obtain zone ID by listing all projects\n(requires admin role by default, depends on your policy configuration)\n" - }, - "attributes": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Attributes of the DNS Service scheduler.\n" + "description": "Action to be taken when the firewall rule matches.\n" }, - "createdAt": { + "description": { "type": "string", - "description": "The time the zone was created.\n" + "description": "The description of the firewall rule.\n" }, - "description": { + "destinationIpAddress": { "type": "string", - "description": "A description of the zone.\n" + "description": "The destination IP address on which the\nfirewall rule operates.\n" }, - "email": { + "destinationPort": { "type": "string", - "description": "The email contact for the zone record.\n" + "description": "The destination port on which the firewall\nrule operates.\n" }, - "masters": { + "enabled": { + "type": "boolean", + "description": "Enabled status for the firewall rule.\n" + }, + "firewallPolicyIds": { "type": "array", "items": { "type": "string" }, - "description": "An array of master DNS servers. When `type` is `SECONDARY`.\n" + "description": "The ID of the firewall policy the rule belongs to.\n" }, - "name": { - "type": "string", - "description": "The name of the zone.\n" + "ipVersion": { + "type": "integer", + "description": "IP version, either 4 (default) or 6.\n" }, - "poolId": { + "name": { "type": "string", - "description": "The ID of the pool hosting the zone.\n" + "description": "The name of the firewall rule.\n" }, "projectId": { "type": "string", - "description": "The ID of the project the DNS zone is obtained from,\nsets `X-Auth-Sudo-Tenant-ID` header (requires an assigned user role in target project)\n" + "description": "This argument conflicts and is interchangeable\nwith `tenant_id`. The owner of the firewall rule.\n" }, - "region": { + "protocol": { "type": "string", - "description": "The region in which to obtain the V2 DNS client.\nA DNS client is needed to retrieve zone ids. If omitted, the\n`region` argument of the provider is used.\n" - }, - "serial": { - "type": "integer", - "description": "The serial number of the zone.\n" + "description": "The protocol type on which the firewall rule operates.\n" }, - "status": { + "region": { "type": "string", - "description": "The zone's status.\n" + "description": "The region in which to obtain the V2 Neutron client.\nA Neutron client is needed to retrieve firewall policy ids. If omitted, the\n`region` argument of the provider is used.\n", + "willReplaceOnChanges": true }, - "transferredAt": { + "ruleId": { "type": "string", - "description": "The time the zone was transferred.\n" + "description": "The ID of the firewall rule.\n" }, - "ttl": { - "type": "integer", - "description": "The time to live (TTL) of the zone.\n" + "shared": { + "type": "boolean", + "description": "The sharing status of the firewall policy.\n" }, - "type": { + "sourceIpAddress": { "type": "string", - "description": "The type of the zone. Can either be `PRIMARY` or `SECONDARY`.\n" + "description": "The source IP address on which the firewall\nrule operates.\n" }, - "updatedAt": { + "sourcePort": { "type": "string", - "description": "The time the zone was last updated.\n" + "description": "The source port on which the firewall\nrule operates.\n" }, - "version": { - "type": "integer", - "description": "The version of the zone.\n" + "tenantId": { + "type": "string", + "description": "This argument conflicts and is interchangeable\nwith `project_id`. The owner of the firewall rule.\n" } }, "type": "object" }, "outputs": { - "description": "A collection of values returned by getDnsZone.\n", + "description": "A collection of values returned by getRuleV2.\n", "properties": { - "allProjects": { - "type": "string" - }, - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Attributes of the DNS Service scheduler.\n", - "type": "object" - }, - "createdAt": { - "description": "The time the zone was created.\n", + "action": { + "description": "See Argument Reference above.\n", "type": "string" }, "description": { "description": "See Argument Reference above.\n", "type": "string" }, - "email": { + "destinationIpAddress": { "description": "See Argument Reference above.\n", "type": "string" }, - "id": { - "description": "The provider-assigned unique ID for this managed resource.\n", + "destinationPort": { + "description": "See Argument Reference above.\n", "type": "string" }, - "masters": { - "description": "An array of master DNS servers. When `type` is `SECONDARY`.\n", + "enabled": { + "description": "See Argument Reference above.\n", + "type": "boolean" + }, + "firewallPolicyIds": { + "description": "The ID of the firewall policy the rule belongs to.\n", "items": { "type": "string" }, "type": "array" }, - "name": { - "description": "See Argument Reference above.\n", + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" }, - "poolId": { - "description": "The ID of the pool hosting the zone.\n", + "ipVersion": { + "description": "See Argument Reference above.\n", + "type": "integer" + }, + "name": { + "description": "See Argument Reference above.\n", "type": "string" }, "projectId": { - "description": "The project ID that owns the zone.\n", + "description": "See Argument Reference above.\n", "type": "string" }, - "region": { + "protocol": { "description": "See Argument Reference above.\n", "type": "string" }, - "serial": { - "description": "The serial number of the zone.\n", - "type": "integer" - }, - "status": { + "region": { "description": "See Argument Reference above.\n", "type": "string" }, - "transferredAt": { - "description": "The time the zone was transferred.\n", + "ruleId": { + "description": "See Argument Reference above.\n", "type": "string" }, - "ttl": { + "shared": { "description": "See Argument Reference above.\n", - "type": "integer" + "type": "boolean" }, - "type": { + "sourceIpAddress": { "description": "See Argument Reference above.\n", "type": "string" }, - "updatedAt": { - "description": "The time the zone was last updated.\n", + "sourcePort": { + "description": "See Argument Reference above.\n", "type": "string" }, - "version": { - "description": "The version of the zone.\n", - "type": "integer" + "tenantId": { + "description": "See Argument Reference above.\n", + "type": "string" } }, "required": [ - "attributes", - "createdAt", - "masters", - "poolId", + "enabled", + "firewallPolicyIds", "projectId", "region", - "serial", - "transferredAt", - "updatedAt", - "version", + "shared", + "tenantId", "id" ], "type": "object" @@ -21019,7 +22297,8 @@ } }, "openstack:index/getFwGroupV2:getFwGroupV2": { - "description": "Use this data source to get information of an available OpenStack firewall group v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst group = openstack.getFwGroupV2({\n name: \"tf_test_group\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ngroup = openstack.get_fw_group_v2(name=\"tf_test_group\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = OpenStack.GetFwGroupV2.Invoke(new()\n {\n Name = \"tf_test_group\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.GetFwGroupV2(ctx, \u0026openstack.GetFwGroupV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_group\"),\n\t\t}, nil)\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.openstack.OpenstackFunctions;\nimport com.pulumi.openstack.inputs.GetFwGroupV2Args;\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 group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder()\n .name(\"tf_test_group\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n group:\n fn::invoke:\n Function: openstack:getFwGroupV2\n Arguments:\n name: tf_test_group\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "deprecationMessage": "openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2", + "description": "Use this data source to get information of an available OpenStack firewall group v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst group = openstack.firewall.getGroupV2({\n name: \"tf_test_group\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\ngroup = openstack.firewall.get_group_v2(name=\"tf_test_group\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @group = OpenStack.Firewall.GetGroupV2.Invoke(new()\n {\n Name = \"tf_test_group\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupGroupV2(ctx, \u0026firewall.LookupGroupV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_group\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetGroupV2Args;\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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()\n .name(\"tf_test_group\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n group:\n fn::invoke:\n Function: openstack:firewall:getGroupV2\n Arguments:\n name: tf_test_group\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getFwGroupV2.\n", "properties": { @@ -21143,7 +22422,8 @@ } }, "openstack:index/getFwPolicyV2:getFwPolicyV2": { - "description": "Use this data source to get information of an available OpenStack firewall policy v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst policy = openstack.getFwPolicyV2({\n name: \"tf_test_policy\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\npolicy = openstack.get_fw_policy_v2(name=\"tf_test_policy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var policy = OpenStack.GetFwPolicyV2.Invoke(new()\n {\n Name = \"tf_test_policy\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.GetFwPolicyV2(ctx, \u0026openstack.GetFwPolicyV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_policy\"),\n\t\t}, nil)\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.openstack.OpenstackFunctions;\nimport com.pulumi.openstack.inputs.GetFwPolicyV2Args;\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 policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder()\n .name(\"tf_test_policy\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n policy:\n fn::invoke:\n Function: openstack:getFwPolicyV2\n Arguments:\n name: tf_test_policy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "deprecationMessage": "openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2", + "description": "Use this data source to get information of an available OpenStack firewall policy v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst policy = openstack.firewall.getPolicyV2({\n name: \"tf_test_policy\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\npolicy = openstack.firewall.get_policy_v2(name=\"tf_test_policy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new()\n {\n Name = \"tf_test_policy\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupPolicyV2(ctx, \u0026firewall.LookupPolicyV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_policy\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;\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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()\n .name(\"tf_test_policy\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n policy:\n fn::invoke:\n Function: openstack:firewall:getPolicyV2\n Arguments:\n name: tf_test_policy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getFwPolicyV2.\n", "properties": { @@ -21242,7 +22522,8 @@ } }, "openstack:index/getFwRuleV2:getFwRuleV2": { - "description": "Use this data source to get information of an available OpenStack firewall rule v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst rule = openstack.getFwRuleV2({\n name: \"tf_test_rule\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nrule = openstack.get_fw_rule_v2(name=\"tf_test_rule\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rule = OpenStack.GetFwRuleV2.Invoke(new()\n {\n Name = \"tf_test_rule\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack\"\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 := openstack.GetFwRuleV2(ctx, \u0026openstack.GetFwRuleV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_rule\"),\n\t\t}, nil)\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.openstack.OpenstackFunctions;\nimport com.pulumi.openstack.inputs.GetFwRuleV2Args;\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 rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder()\n .name(\"tf_test_rule\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rule:\n fn::invoke:\n Function: openstack:getFwRuleV2\n Arguments:\n name: tf_test_rule\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "deprecationMessage": "openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2", + "description": "Use this data source to get information of an available OpenStack firewall rule v2.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as openstack from \"@pulumi/openstack\";\n\nconst rule = openstack.firewall.getRuleV2({\n name: \"tf_test_rule\",\n});\n```\n```python\nimport pulumi\nimport pulumi_openstack as openstack\n\nrule = openstack.firewall.get_rule_v2(name=\"tf_test_rule\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing OpenStack = Pulumi.OpenStack;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rule = OpenStack.Firewall.GetRuleV2.Invoke(new()\n {\n Name = \"tf_test_rule\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall\"\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 := firewall.LookupRuleV2(ctx, \u0026firewall.LookupRuleV2Args{\n\t\t\tName: pulumi.StringRef(\"tf_test_rule\"),\n\t\t}, nil)\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.openstack.firewall.FirewallFunctions;\nimport com.pulumi.openstack.firewall.inputs.GetRuleV2Args;\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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()\n .name(\"tf_test_rule\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rule:\n fn::invoke:\n Function: openstack:firewall:getRuleV2\n Arguments:\n name: tf_test_rule\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { "description": "A collection of arguments for invoking getFwRuleV2.\n", "properties": { diff --git a/provider/resources.go b/provider/resources.go index d915a7fc2..460ddc167 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -39,6 +39,7 @@ const ( openstackPkg = "openstack" // modules: blockstorageMod = "BlockStorage" // Block Storage + bgpvpnMod = "BGPVPN" // BGP VPN computeMod = "Compute" // Compute containerinfraMod = "ContainerInfra" // Container Infrastructure databaseMod = "Database" // Database @@ -55,6 +56,26 @@ const ( vpnaasMod = "VPNaaS" // VPNaaS ) +var moduleMapping = map[string]string{ + "blockstorage": blockstorageMod, + "bgpvpn": bgpvpnMod, + "compute": computeMod, + "containerinfra": containerinfraMod, + "database": databaseMod, + "dns": dnsMod, + "identity": identityMod, + "images": imagesMod, + "keymanager": keymanagerMod, + "networking": networkingMod, + "lb": lbMod, + "loadbalancer": lbMod, + "fw": firewallMod, + "objectstorage": osMod, + "orchestration": orchestrationMod, + "sharedfilesystem": sharedfilesystemMod, + "vpnaas": vpnaasMod, +} + var namespaceMap = map[string]string{ "openstack": "OpenStack", } @@ -236,11 +257,11 @@ func Provider() tfbridge.ProviderInfo { }, }, "openstack_lb_loadbalancer_v2": { + Tok: openstackResource(lbMod, "LoadBalancer"), Docs: &tfbridge.DocInfo{ AllowMissing: true, }, }, - // Firewall "openstack_fw_group_v2": {Tok: openstackResource(firewallMod, "GroupV2")}, "openstack_fw_policy_v2": {Tok: openstackResource(firewallMod, "PolicyV2")}, @@ -404,23 +425,10 @@ func Provider() tfbridge.ProviderInfo { }, } - prov.MustComputeTokens(tfbridgetokens.KnownModules("openstack_", "index", []string{ - "blockstorage_", - "compute_", - "containerinfra_", - "database_", - "dns_", - "identity_", - "images_", - "keymanager_", - "networking_", - "loadbalancer_", - "firewall_", - "objectstorage_", - "orchestration_", - "sharedfile_system_", - "vpnaas_", - }, tfbridgetokens.MakeStandard(openstackPkg))) + prov.MustComputeTokens(tfbridgetokens.MappedModules("openstack_", "", + moduleMapping, func(module, name string) (string, error) { + return string(openstackResource(module, name)), nil + })) prov.MustApplyAutoAliases() prov.SetAutonaming(255, "-") diff --git a/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteArgs.cs b/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteArgs.cs new file mode 100644 index 000000000..1ebfcbc5d --- /dev/null +++ b/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteArgs.cs @@ -0,0 +1,49 @@ +// *** 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.OpenStack.BGPVPN.Inputs +{ + + public sealed class PortAssociateV2RouteArgs : global::Pulumi.ResourceArgs + { + /// + /// The ID of the BGP VPN to be advertised. Required + /// if `type` is `bgpvpn`. Conflicts with `prefix`. + /// + [Input("bgpvpnId")] + public Input? BgpvpnId { get; set; } + + /// + /// The BGP LOCAL\_PREF value of the routes that will + /// be advertised. + /// + [Input("localPref")] + public Input? LocalPref { get; set; } + + /// + /// The CIDR prefix (v4 or v6) to be advertised. Required + /// if `type` is `prefix`. Conflicts with `bgpvpn_id`. + /// + [Input("prefix")] + public Input? Prefix { get; set; } + + /// + /// Can be `prefix` or `bgpvpn`. For the `prefix` type, the + /// CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + /// `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public PortAssociateV2RouteArgs() + { + } + public static new PortAssociateV2RouteArgs Empty => new PortAssociateV2RouteArgs(); + } +} diff --git a/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteGetArgs.cs b/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteGetArgs.cs new file mode 100644 index 000000000..e4174ff70 --- /dev/null +++ b/sdk/dotnet/BGPVPN/Inputs/PortAssociateV2RouteGetArgs.cs @@ -0,0 +1,49 @@ +// *** 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.OpenStack.BGPVPN.Inputs +{ + + public sealed class PortAssociateV2RouteGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The ID of the BGP VPN to be advertised. Required + /// if `type` is `bgpvpn`. Conflicts with `prefix`. + /// + [Input("bgpvpnId")] + public Input? BgpvpnId { get; set; } + + /// + /// The BGP LOCAL\_PREF value of the routes that will + /// be advertised. + /// + [Input("localPref")] + public Input? LocalPref { get; set; } + + /// + /// The CIDR prefix (v4 or v6) to be advertised. Required + /// if `type` is `prefix`. Conflicts with `bgpvpn_id`. + /// + [Input("prefix")] + public Input? Prefix { get; set; } + + /// + /// Can be `prefix` or `bgpvpn`. For the `prefix` type, the + /// CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + /// `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public PortAssociateV2RouteGetArgs() + { + } + public static new PortAssociateV2RouteGetArgs Empty => new PortAssociateV2RouteGetArgs(); + } +} diff --git a/sdk/dotnet/BGPVPN/NetworkAssociateV2.cs b/sdk/dotnet/BGPVPN/NetworkAssociateV2.cs new file mode 100644 index 000000000..953581491 --- /dev/null +++ b/sdk/dotnet/BGPVPN/NetworkAssociateV2.cs @@ -0,0 +1,208 @@ +// *** 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.OpenStack.BGPVPN +{ + /// + /// Manages a V2 BGP VPN network association resource within OpenStack. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var association1 = new OpenStack.BGPVPN.NetworkAssociateV2("association_1", new() + /// { + /// BgpvpnId = "e7189337-5684-46ee-bcb1-44f1a57066c9", + /// NetworkId = "de83d56c-4d2f-44f7-ac24-af393252204f", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN + /// + /// network association ID separated by a slash, e.g.: + /// + /// hcl + /// + /// ```sh + /// $ pulumi import openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 + /// ``` + /// + [OpenStackResourceType("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2")] + public partial class NetworkAssociateV2 : global::Pulumi.CustomResource + { + /// + /// The ID of the BGP VPN to which the network will be + /// associated. Changing this creates a new BGP VPN network association + /// + [Output("bgpvpnId")] + public Output BgpvpnId { get; private set; } = null!; + + /// + /// The ID of the network to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN network association. + /// + [Output("networkId")] + public Output NetworkId { get; private set; } = null!; + + /// + /// The ID of the project that owns the BGP VPN network + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN network + /// association. + /// + [Output("projectId")] + public Output ProjectId { get; private set; } = null!; + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN network association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN network association. + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + + /// + /// Create a NetworkAssociateV2 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 NetworkAssociateV2(string name, NetworkAssociateV2Args args, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, args ?? new NetworkAssociateV2Args(), MakeResourceOptions(options, "")) + { + } + + private NetworkAssociateV2(string name, Input id, NetworkAssociateV2State? state = null, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2" }, + }, + }; + 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 NetworkAssociateV2 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 NetworkAssociateV2 Get(string name, Input id, NetworkAssociateV2State? state = null, CustomResourceOptions? options = null) + { + return new NetworkAssociateV2(name, id, state, options); + } + } + + public sealed class NetworkAssociateV2Args : global::Pulumi.ResourceArgs + { + /// + /// The ID of the BGP VPN to which the network will be + /// associated. Changing this creates a new BGP VPN network association + /// + [Input("bgpvpnId", required: true)] + public Input BgpvpnId { get; set; } = null!; + + /// + /// The ID of the network to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN network association. + /// + [Input("networkId", required: true)] + public Input NetworkId { get; set; } = null!; + + /// + /// The ID of the project that owns the BGP VPN network + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN network + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN network association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN network association. + /// + [Input("region")] + public Input? Region { get; set; } + + public NetworkAssociateV2Args() + { + } + public static new NetworkAssociateV2Args Empty => new NetworkAssociateV2Args(); + } + + public sealed class NetworkAssociateV2State : global::Pulumi.ResourceArgs + { + /// + /// The ID of the BGP VPN to which the network will be + /// associated. Changing this creates a new BGP VPN network association + /// + [Input("bgpvpnId")] + public Input? BgpvpnId { get; set; } + + /// + /// The ID of the network to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN network association. + /// + [Input("networkId")] + public Input? NetworkId { get; set; } + + /// + /// The ID of the project that owns the BGP VPN network + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN network + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN network association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN network association. + /// + [Input("region")] + public Input? Region { get; set; } + + public NetworkAssociateV2State() + { + } + public static new NetworkAssociateV2State Empty => new NetworkAssociateV2State(); + } +} diff --git a/sdk/dotnet/BGPVPN/Outputs/PortAssociateV2Route.cs b/sdk/dotnet/BGPVPN/Outputs/PortAssociateV2Route.cs new file mode 100644 index 000000000..8ad2efdd3 --- /dev/null +++ b/sdk/dotnet/BGPVPN/Outputs/PortAssociateV2Route.cs @@ -0,0 +1,54 @@ +// *** 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.OpenStack.BGPVPN.Outputs +{ + + [OutputType] + public sealed class PortAssociateV2Route + { + /// + /// The ID of the BGP VPN to be advertised. Required + /// if `type` is `bgpvpn`. Conflicts with `prefix`. + /// + public readonly string? BgpvpnId; + /// + /// The BGP LOCAL\_PREF value of the routes that will + /// be advertised. + /// + public readonly int? LocalPref; + /// + /// The CIDR prefix (v4 or v6) to be advertised. Required + /// if `type` is `prefix`. Conflicts with `bgpvpn_id`. + /// + public readonly string? Prefix; + /// + /// Can be `prefix` or `bgpvpn`. For the `prefix` type, the + /// CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + /// `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + /// + public readonly string Type; + + [OutputConstructor] + private PortAssociateV2Route( + string? bgpvpnId, + + int? localPref, + + string? prefix, + + string type) + { + BgpvpnId = bgpvpnId; + LocalPref = localPref; + Prefix = prefix; + Type = type; + } + } +} diff --git a/sdk/dotnet/BGPVPN/PortAssociateV2.cs b/sdk/dotnet/BGPVPN/PortAssociateV2.cs new file mode 100644 index 000000000..b977b2302 --- /dev/null +++ b/sdk/dotnet/BGPVPN/PortAssociateV2.cs @@ -0,0 +1,272 @@ +// *** 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.OpenStack.BGPVPN +{ + /// + /// Manages a V2 BGP VPN port association resource within OpenStack. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var association1 = new OpenStack.BGPVPN.PortAssociateV2("association_1", new() + /// { + /// BgpvpnId = "19382ec5-8098-47d9-a9c6-6270c91103f4", + /// PortId = "b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", + /// Routes = new[] + /// { + /// new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs + /// { + /// Type = "prefix", + /// Prefix = "192.168.170.1/32", + /// }, + /// new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs + /// { + /// Type = "bgpvpn", + /// BgpvpnId = "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", + /// }, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port + /// + /// association ID separated by a slash, e.g.: + /// + /// hcl + /// + /// ```sh + /// $ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf + /// ``` + /// + [OpenStackResourceType("openstack:bgpvpn/portAssociateV2:PortAssociateV2")] + public partial class PortAssociateV2 : global::Pulumi.CustomResource + { + /// + /// A boolean flag indicating whether fixed + /// IPs should be advertised. Defaults to true. + /// + [Output("advertiseFixedIps")] + public Output AdvertiseFixedIps { get; private set; } = null!; + + /// + /// The ID of the BGP VPN to which the port will be + /// associated. Changing this creates a new BGP VPN port association. + /// + [Output("bgpvpnId")] + public Output BgpvpnId { get; private set; } = null!; + + /// + /// The ID of the port to be associated with the BGP VPN. + /// Changing this creates a new BGP VPN port association. + /// + [Output("portId")] + public Output PortId { get; private set; } = null!; + + /// + /// The ID of the project that owns the port + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN port + /// association. + /// + [Output("projectId")] + public Output ProjectId { get; private set; } = null!; + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN port association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN port association. + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + /// + /// A list of dictionaries containing the following keys: + /// + [Output("routes")] + public Output> Routes { get; private set; } = null!; + + + /// + /// Create a PortAssociateV2 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 PortAssociateV2(string name, PortAssociateV2Args args, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, args ?? new PortAssociateV2Args(), MakeResourceOptions(options, "")) + { + } + + private PortAssociateV2(string name, Input id, PortAssociateV2State? state = null, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2" }, + }, + }; + 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 PortAssociateV2 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 PortAssociateV2 Get(string name, Input id, PortAssociateV2State? state = null, CustomResourceOptions? options = null) + { + return new PortAssociateV2(name, id, state, options); + } + } + + public sealed class PortAssociateV2Args : global::Pulumi.ResourceArgs + { + /// + /// A boolean flag indicating whether fixed + /// IPs should be advertised. Defaults to true. + /// + [Input("advertiseFixedIps")] + public Input? AdvertiseFixedIps { get; set; } + + /// + /// The ID of the BGP VPN to which the port will be + /// associated. Changing this creates a new BGP VPN port association. + /// + [Input("bgpvpnId", required: true)] + public Input BgpvpnId { get; set; } = null!; + + /// + /// The ID of the port to be associated with the BGP VPN. + /// Changing this creates a new BGP VPN port association. + /// + [Input("portId", required: true)] + public Input PortId { get; set; } = null!; + + /// + /// The ID of the project that owns the port + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN port + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN port association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN port association. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("routes")] + private InputList? _routes; + + /// + /// A list of dictionaries containing the following keys: + /// + public InputList Routes + { + get => _routes ?? (_routes = new InputList()); + set => _routes = value; + } + + public PortAssociateV2Args() + { + } + public static new PortAssociateV2Args Empty => new PortAssociateV2Args(); + } + + public sealed class PortAssociateV2State : global::Pulumi.ResourceArgs + { + /// + /// A boolean flag indicating whether fixed + /// IPs should be advertised. Defaults to true. + /// + [Input("advertiseFixedIps")] + public Input? AdvertiseFixedIps { get; set; } + + /// + /// The ID of the BGP VPN to which the port will be + /// associated. Changing this creates a new BGP VPN port association. + /// + [Input("bgpvpnId")] + public Input? BgpvpnId { get; set; } + + /// + /// The ID of the port to be associated with the BGP VPN. + /// Changing this creates a new BGP VPN port association. + /// + [Input("portId")] + public Input? PortId { get; set; } + + /// + /// The ID of the project that owns the port + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN port + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN port association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN port association. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("routes")] + private InputList? _routes; + + /// + /// A list of dictionaries containing the following keys: + /// + public InputList Routes + { + get => _routes ?? (_routes = new InputList()); + set => _routes = value; + } + + public PortAssociateV2State() + { + } + public static new PortAssociateV2State Empty => new PortAssociateV2State(); + } +} diff --git a/sdk/dotnet/BGPVPN/README.md b/sdk/dotnet/BGPVPN/README.md new file mode 100644 index 000000000..de7e57805 --- /dev/null +++ b/sdk/dotnet/BGPVPN/README.md @@ -0,0 +1 @@ +A Pulumi package for creating and managing OpenStack cloud resources. diff --git a/sdk/dotnet/BGPVPN/RouterAssociateV2.cs b/sdk/dotnet/BGPVPN/RouterAssociateV2.cs new file mode 100644 index 000000000..dbf6266f1 --- /dev/null +++ b/sdk/dotnet/BGPVPN/RouterAssociateV2.cs @@ -0,0 +1,229 @@ +// *** 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.OpenStack.BGPVPN +{ + /// + /// Manages a V2 BGP VPN router association resource within OpenStack. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var association1 = new OpenStack.BGPVPN.RouterAssociateV2("association_1", new() + /// { + /// BgpvpnId = "d57d39e1-dc63-44fd-8cbd-a4e1488100c5", + /// RouterId = "423fa80f-e0d7-4d02-a9a5-8b8c05812bf6", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN + /// + /// router association ID separated by a slash, e.g.: + /// + /// hcl + /// + /// ```sh + /// $ pulumi import openstack:bgpvpn/routerAssociateV2:RouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f + /// ``` + /// + [OpenStackResourceType("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2")] + public partial class RouterAssociateV2 : global::Pulumi.CustomResource + { + /// + /// A boolean flag indicating whether extra + /// routes should be advertised. Defaults to true. + /// + [Output("advertiseExtraRoutes")] + public Output AdvertiseExtraRoutes { get; private set; } = null!; + + /// + /// The ID of the BGP VPN to which the router will be + /// associated. Changing this creates a new BGP VPN router association. + /// + [Output("bgpvpnId")] + public Output BgpvpnId { get; private set; } = null!; + + /// + /// The ID of the project that owns the BGP VPN router + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN router + /// association. + /// + [Output("projectId")] + public Output ProjectId { get; private set; } = null!; + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN router association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN router association. + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + /// + /// The ID of the router to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN router association. + /// + [Output("routerId")] + public Output RouterId { get; private set; } = null!; + + + /// + /// Create a RouterAssociateV2 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 RouterAssociateV2(string name, RouterAssociateV2Args args, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, args ?? new RouterAssociateV2Args(), MakeResourceOptions(options, "")) + { + } + + private RouterAssociateV2(string name, Input id, RouterAssociateV2State? state = null, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2" }, + }, + }; + 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 RouterAssociateV2 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 RouterAssociateV2 Get(string name, Input id, RouterAssociateV2State? state = null, CustomResourceOptions? options = null) + { + return new RouterAssociateV2(name, id, state, options); + } + } + + public sealed class RouterAssociateV2Args : global::Pulumi.ResourceArgs + { + /// + /// A boolean flag indicating whether extra + /// routes should be advertised. Defaults to true. + /// + [Input("advertiseExtraRoutes")] + public Input? AdvertiseExtraRoutes { get; set; } + + /// + /// The ID of the BGP VPN to which the router will be + /// associated. Changing this creates a new BGP VPN router association. + /// + [Input("bgpvpnId", required: true)] + public Input BgpvpnId { get; set; } = null!; + + /// + /// The ID of the project that owns the BGP VPN router + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN router + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN router association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN router association. + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// The ID of the router to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN router association. + /// + [Input("routerId", required: true)] + public Input RouterId { get; set; } = null!; + + public RouterAssociateV2Args() + { + } + public static new RouterAssociateV2Args Empty => new RouterAssociateV2Args(); + } + + public sealed class RouterAssociateV2State : global::Pulumi.ResourceArgs + { + /// + /// A boolean flag indicating whether extra + /// routes should be advertised. Defaults to true. + /// + [Input("advertiseExtraRoutes")] + public Input? AdvertiseExtraRoutes { get; set; } + + /// + /// The ID of the BGP VPN to which the router will be + /// associated. Changing this creates a new BGP VPN router association. + /// + [Input("bgpvpnId")] + public Input? BgpvpnId { get; set; } + + /// + /// The ID of the project that owns the BGP VPN router + /// association. Only administrative and users with `advsvc` role can specify a + /// project ID other than their own. Changing this creates a new BGP VPN router + /// association. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN router association. If + /// omitted, the `region` argument of the provider is used. Changing this creates + /// a new BGP VPN router association. + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// The ID of the router to be associated with the BGP + /// VPN. Changing this creates a new BGP VPN router association. + /// + [Input("routerId")] + public Input? RouterId { get; set; } + + public RouterAssociateV2State() + { + } + public static new RouterAssociateV2State Empty => new RouterAssociateV2State(); + } +} diff --git a/sdk/dotnet/BGPVPN/V2.cs b/sdk/dotnet/BGPVPN/V2.cs new file mode 100644 index 000000000..cf41c673e --- /dev/null +++ b/sdk/dotnet/BGPVPN/V2.cs @@ -0,0 +1,458 @@ +// *** 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.OpenStack.BGPVPN +{ + /// + /// Manages a V2 BGP VPN service resource within OpenStack. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var bgpvpn1 = new OpenStack.BGPVPN.V2("bgpvpn_1", new() + /// { + /// Name = "bgpvpn1", + /// RouteDistinguishers = new[] + /// { + /// "64512:1", + /// }, + /// RouteTargets = new[] + /// { + /// "64512:1", + /// }, + /// ImportTargets = new[] + /// { + /// "64512:2", + /// }, + /// ExportTargets = new[] + /// { + /// "64512:3", + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// BGP VPNs can be imported using the `id`, e.g. + /// + /// hcl + /// + /// ```sh + /// $ pulumi import openstack:bgpvpn/v2:V2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c + /// ``` + /// + [OpenStackResourceType("openstack:bgpvpn/v2:V2")] + public partial class V2 : global::Pulumi.CustomResource + { + /// + /// A list of additional Route Targets that will be + /// used for export. + /// + [Output("exportTargets")] + public Output> ExportTargets { get; private set; } = null!; + + /// + /// A list of additional Route Targets that will be + /// imported. + /// + [Output("importTargets")] + public Output> ImportTargets { get; private set; } = null!; + + /// + /// The default BGP LOCAL\_PREF of routes that will be + /// advertised to the BGP VPN, unless overridden per-route. + /// + [Output("localPref")] + public Output LocalPref { get; private set; } = null!; + + /// + /// The name of the BGP VPN. Changing this updates the name of + /// the existing BGP VPN. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// A list of network IDs that are associated with the BGP VPN. + /// + [Output("networks")] + public Output> Networks { get; private set; } = null!; + + /// + /// A list of port IDs that are associated with the BGP VPN. + /// + [Output("ports")] + public Output> Ports { get; private set; } = null!; + + /// + /// The ID of the project that owns the BGPVPN. Only + /// administrative and users with `advsvc` role can specify a project ID other + /// than their own. Changing this creates a new BGP VPN. + /// + [Output("projectId")] + public Output ProjectId { get; private set; } = null!; + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN service. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// BGP VPN. + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + /// + /// A list of route distinguisher strings. If + /// specified, one of these RDs will be used to advertise VPN routes. + /// + [Output("routeDistinguishers")] + public Output> RouteDistinguishers { get; private set; } = null!; + + /// + /// A list of Route Targets that will be both + /// imported and used for export. + /// + [Output("routeTargets")] + public Output> RouteTargets { get; private set; } = null!; + + /// + /// A list of router IDs that are associated with the BGP VPN. + /// + [Output("routers")] + public Output> Routers { get; private set; } = null!; + + /// + /// Indicates whether the BGP VPN is shared across projects. + /// + [Output("shared")] + public Output Shared { get; private set; } = null!; + + /// + /// The type of the BGP VPN (either `l2` or `l3`). Changing this + /// creates a new BGP VPN. Defaults to `l3`. + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + /// + /// The globally-assigned VXLAN VNI for the BGP VPN. Changing + /// this creates a new BGP VPN. + /// + [Output("vni")] + public Output Vni { get; private set; } = null!; + + + /// + /// Create a V2 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 V2(string name, V2Args? args = null, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/v2:V2", name, args ?? new V2Args(), MakeResourceOptions(options, "")) + { + } + + private V2(string name, Input id, V2State? state = null, CustomResourceOptions? options = null) + : base("openstack:bgpvpn/v2:V2", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/bgpvpnV2:BgpvpnV2" }, + }, + }; + 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 V2 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 V2 Get(string name, Input id, V2State? state = null, CustomResourceOptions? options = null) + { + return new V2(name, id, state, options); + } + } + + public sealed class V2Args : global::Pulumi.ResourceArgs + { + [Input("exportTargets")] + private InputList? _exportTargets; + + /// + /// A list of additional Route Targets that will be + /// used for export. + /// + public InputList ExportTargets + { + get => _exportTargets ?? (_exportTargets = new InputList()); + set => _exportTargets = value; + } + + [Input("importTargets")] + private InputList? _importTargets; + + /// + /// A list of additional Route Targets that will be + /// imported. + /// + public InputList ImportTargets + { + get => _importTargets ?? (_importTargets = new InputList()); + set => _importTargets = value; + } + + /// + /// The default BGP LOCAL\_PREF of routes that will be + /// advertised to the BGP VPN, unless overridden per-route. + /// + [Input("localPref")] + public Input? LocalPref { get; set; } + + /// + /// The name of the BGP VPN. Changing this updates the name of + /// the existing BGP VPN. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The ID of the project that owns the BGPVPN. Only + /// administrative and users with `advsvc` role can specify a project ID other + /// than their own. Changing this creates a new BGP VPN. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN service. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// BGP VPN. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("routeDistinguishers")] + private InputList? _routeDistinguishers; + + /// + /// A list of route distinguisher strings. If + /// specified, one of these RDs will be used to advertise VPN routes. + /// + public InputList RouteDistinguishers + { + get => _routeDistinguishers ?? (_routeDistinguishers = new InputList()); + set => _routeDistinguishers = value; + } + + [Input("routeTargets")] + private InputList? _routeTargets; + + /// + /// A list of Route Targets that will be both + /// imported and used for export. + /// + public InputList RouteTargets + { + get => _routeTargets ?? (_routeTargets = new InputList()); + set => _routeTargets = value; + } + + /// + /// The type of the BGP VPN (either `l2` or `l3`). Changing this + /// creates a new BGP VPN. Defaults to `l3`. + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// The globally-assigned VXLAN VNI for the BGP VPN. Changing + /// this creates a new BGP VPN. + /// + [Input("vni")] + public Input? Vni { get; set; } + + public V2Args() + { + } + public static new V2Args Empty => new V2Args(); + } + + public sealed class V2State : global::Pulumi.ResourceArgs + { + [Input("exportTargets")] + private InputList? _exportTargets; + + /// + /// A list of additional Route Targets that will be + /// used for export. + /// + public InputList ExportTargets + { + get => _exportTargets ?? (_exportTargets = new InputList()); + set => _exportTargets = value; + } + + [Input("importTargets")] + private InputList? _importTargets; + + /// + /// A list of additional Route Targets that will be + /// imported. + /// + public InputList ImportTargets + { + get => _importTargets ?? (_importTargets = new InputList()); + set => _importTargets = value; + } + + /// + /// The default BGP LOCAL\_PREF of routes that will be + /// advertised to the BGP VPN, unless overridden per-route. + /// + [Input("localPref")] + public Input? LocalPref { get; set; } + + /// + /// The name of the BGP VPN. Changing this updates the name of + /// the existing BGP VPN. + /// + [Input("name")] + public Input? Name { get; set; } + + [Input("networks")] + private InputList? _networks; + + /// + /// A list of network IDs that are associated with the BGP VPN. + /// + public InputList Networks + { + get => _networks ?? (_networks = new InputList()); + set => _networks = value; + } + + [Input("ports")] + private InputList? _ports; + + /// + /// A list of port IDs that are associated with the BGP VPN. + /// + public InputList Ports + { + get => _ports ?? (_ports = new InputList()); + set => _ports = value; + } + + /// + /// The ID of the project that owns the BGPVPN. Only + /// administrative and users with `advsvc` role can specify a project ID other + /// than their own. Changing this creates a new BGP VPN. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create a BGP VPN service. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// BGP VPN. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("routeDistinguishers")] + private InputList? _routeDistinguishers; + + /// + /// A list of route distinguisher strings. If + /// specified, one of these RDs will be used to advertise VPN routes. + /// + public InputList RouteDistinguishers + { + get => _routeDistinguishers ?? (_routeDistinguishers = new InputList()); + set => _routeDistinguishers = value; + } + + [Input("routeTargets")] + private InputList? _routeTargets; + + /// + /// A list of Route Targets that will be both + /// imported and used for export. + /// + public InputList RouteTargets + { + get => _routeTargets ?? (_routeTargets = new InputList()); + set => _routeTargets = value; + } + + [Input("routers")] + private InputList? _routers; + + /// + /// A list of router IDs that are associated with the BGP VPN. + /// + public InputList Routers + { + get => _routers ?? (_routers = new InputList()); + set => _routers = value; + } + + /// + /// Indicates whether the BGP VPN is shared across projects. + /// + [Input("shared")] + public Input? Shared { get; set; } + + /// + /// The type of the BGP VPN (either `l2` or `l3`). Changing this + /// creates a new BGP VPN. Defaults to `l3`. + /// + [Input("type")] + public Input? Type { get; set; } + + /// + /// The globally-assigned VXLAN VNI for the BGP VPN. Changing + /// this creates a new BGP VPN. + /// + [Input("vni")] + public Input? Vni { get; set; } + + public V2State() + { + } + public static new V2State Empty => new V2State(); + } +} diff --git a/sdk/dotnet/BgpvpnNetworkAssociateV2.cs b/sdk/dotnet/BgpvpnNetworkAssociateV2.cs index e2bdc8345..4aefede49 100644 --- a/sdk/dotnet/BgpvpnNetworkAssociateV2.cs +++ b/sdk/dotnet/BgpvpnNetworkAssociateV2.cs @@ -22,7 +22,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var association1 = new OpenStack.BgpvpnNetworkAssociateV2("association_1", new() + /// var association1 = new OpenStack.BGPVPN.NetworkAssociateV2("association_1", new() /// { /// BgpvpnId = "e7189337-5684-46ee-bcb1-44f1a57066c9", /// NetworkId = "de83d56c-4d2f-44f7-ac24-af393252204f", @@ -43,6 +43,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 /// ``` /// + [Obsolete(@"openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2")] [OpenStackResourceType("openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2")] public partial class BgpvpnNetworkAssociateV2 : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/BgpvpnPortAssociateV2.cs b/sdk/dotnet/BgpvpnPortAssociateV2.cs index 9b56cedd2..40c618be2 100644 --- a/sdk/dotnet/BgpvpnPortAssociateV2.cs +++ b/sdk/dotnet/BgpvpnPortAssociateV2.cs @@ -22,18 +22,18 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var association1 = new OpenStack.BgpvpnPortAssociateV2("association_1", new() + /// var association1 = new OpenStack.BGPVPN.PortAssociateV2("association_1", new() /// { /// BgpvpnId = "19382ec5-8098-47d9-a9c6-6270c91103f4", /// PortId = "b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", /// Routes = new[] /// { - /// new OpenStack.Inputs.BgpvpnPortAssociateV2RouteArgs + /// new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs /// { /// Type = "prefix", /// Prefix = "192.168.170.1/32", /// }, - /// new OpenStack.Inputs.BgpvpnPortAssociateV2RouteArgs + /// new OpenStack.BGPVPN.Inputs.PortAssociateV2RouteArgs /// { /// Type = "bgpvpn", /// BgpvpnId = "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", @@ -56,6 +56,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf /// ``` /// + [Obsolete(@"openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2")] [OpenStackResourceType("openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2")] public partial class BgpvpnPortAssociateV2 : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/BgpvpnRouterAssociateV2.cs b/sdk/dotnet/BgpvpnRouterAssociateV2.cs index 93c93b265..ccabf1c3a 100644 --- a/sdk/dotnet/BgpvpnRouterAssociateV2.cs +++ b/sdk/dotnet/BgpvpnRouterAssociateV2.cs @@ -22,7 +22,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var association1 = new OpenStack.BgpvpnRouterAssociateV2("association_1", new() + /// var association1 = new OpenStack.BGPVPN.RouterAssociateV2("association_1", new() /// { /// BgpvpnId = "d57d39e1-dc63-44fd-8cbd-a4e1488100c5", /// RouterId = "423fa80f-e0d7-4d02-a9a5-8b8c05812bf6", @@ -43,6 +43,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f /// ``` /// + [Obsolete(@"openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2")] [OpenStackResourceType("openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2")] public partial class BgpvpnRouterAssociateV2 : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/BgpvpnV2.cs b/sdk/dotnet/BgpvpnV2.cs index 82099258e..ee3fffe0b 100644 --- a/sdk/dotnet/BgpvpnV2.cs +++ b/sdk/dotnet/BgpvpnV2.cs @@ -22,7 +22,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var bgpvpn1 = new OpenStack.BgpvpnV2("bgpvpn_1", new() + /// var bgpvpn1 = new OpenStack.BGPVPN.V2("bgpvpn_1", new() /// { /// Name = "bgpvpn1", /// RouteDistinguishers = new[] @@ -56,6 +56,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c /// ``` /// + [Obsolete(@"openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2")] [OpenStackResourceType("openstack:index/bgpvpnV2:BgpvpnV2")] public partial class BgpvpnV2 : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/Firewall/GetGroupV2.cs b/sdk/dotnet/Firewall/GetGroupV2.cs new file mode 100644 index 000000000..2bcb3787a --- /dev/null +++ b/sdk/dotnet/Firewall/GetGroupV2.cs @@ -0,0 +1,320 @@ +// *** 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.OpenStack.Firewall +{ + public static class GetGroupV2 + { + /// + /// Use this data source to get information of an available OpenStack firewall group v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var @group = OpenStack.Firewall.GetGroupV2.Invoke(new() + /// { + /// Name = "tf_test_group", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetGroupV2Args? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("openstack:firewall/getGroupV2:getGroupV2", args ?? new GetGroupV2Args(), options.WithDefaults()); + + /// + /// Use this data source to get information of an available OpenStack firewall group v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var @group = OpenStack.Firewall.GetGroupV2.Invoke(new() + /// { + /// Name = "tf_test_group", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetGroupV2InvokeArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("openstack:firewall/getGroupV2:getGroupV2", args ?? new GetGroupV2InvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetGroupV2Args : global::Pulumi.InvokeArgs + { + /// + /// Administrative up/down status for the firewall group. + /// + [Input("adminStateUp")] + public bool? AdminStateUp { get; set; } + + /// + /// Human-readable description of the firewall group. + /// + [Input("description")] + public string? Description { get; set; } + + /// + /// The egress policy ID of the firewall group. + /// + [Input("egressFirewallPolicyId")] + public string? EgressFirewallPolicyId { get; set; } + + /// + /// The ID of the firewall group. + /// + [Input("groupId")] + public string? GroupId { get; set; } + + /// + /// The ingress policy ID of the firewall group. + /// + [Input("ingressFirewallPolicyId")] + public string? IngressFirewallPolicyId { get; set; } + + /// + /// The name of the firewall group. + /// + [Input("name")] + public string? Name { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall group. + /// + [Input("projectId")] + public string? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall group ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public string? Region { get; set; } + + /// + /// The sharing status of the firewall group. + /// + [Input("shared")] + public bool? Shared { get; set; } + + /// + /// Enabled status for the firewall group. + /// + [Input("status")] + public string? Status { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall group. + /// + [Input("tenantId")] + public string? TenantId { get; set; } + + public GetGroupV2Args() + { + } + public static new GetGroupV2Args Empty => new GetGroupV2Args(); + } + + public sealed class GetGroupV2InvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Administrative up/down status for the firewall group. + /// + [Input("adminStateUp")] + public Input? AdminStateUp { get; set; } + + /// + /// Human-readable description of the firewall group. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The egress policy ID of the firewall group. + /// + [Input("egressFirewallPolicyId")] + public Input? EgressFirewallPolicyId { get; set; } + + /// + /// The ID of the firewall group. + /// + [Input("groupId")] + public Input? GroupId { get; set; } + + /// + /// The ingress policy ID of the firewall group. + /// + [Input("ingressFirewallPolicyId")] + public Input? IngressFirewallPolicyId { get; set; } + + /// + /// The name of the firewall group. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall group. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall group ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// The sharing status of the firewall group. + /// + [Input("shared")] + public Input? Shared { get; set; } + + /// + /// Enabled status for the firewall group. + /// + [Input("status")] + public Input? Status { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall group. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + public GetGroupV2InvokeArgs() + { + } + public static new GetGroupV2InvokeArgs Empty => new GetGroupV2InvokeArgs(); + } + + + [OutputType] + public sealed class GetGroupV2Result + { + /// + /// See Argument Reference above. + /// + public readonly bool AdminStateUp; + /// + /// See Argument Reference above. + /// + public readonly string? Description; + /// + /// See Argument Reference above. + /// + public readonly string? EgressFirewallPolicyId; + /// + /// See Argument Reference above. + /// + public readonly string? GroupId; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// See Argument Reference above. + /// + public readonly string? IngressFirewallPolicyId; + /// + /// See Argument Reference above. + /// + public readonly string? Name; + /// + /// Ports associated with the firewall group. + /// + public readonly ImmutableArray Ports; + /// + /// See Argument Reference above. + /// + public readonly string ProjectId; + /// + /// See Argument Reference above. + /// + public readonly string Region; + /// + /// See Argument Reference above. + /// + public readonly bool Shared; + /// + /// See Argument Reference above. + /// + public readonly string Status; + /// + /// See Argument Reference above. + /// + public readonly string TenantId; + + [OutputConstructor] + private GetGroupV2Result( + bool adminStateUp, + + string? description, + + string? egressFirewallPolicyId, + + string? groupId, + + string id, + + string? ingressFirewallPolicyId, + + string? name, + + ImmutableArray ports, + + string projectId, + + string region, + + bool shared, + + string status, + + string tenantId) + { + AdminStateUp = adminStateUp; + Description = description; + EgressFirewallPolicyId = egressFirewallPolicyId; + GroupId = groupId; + Id = id; + IngressFirewallPolicyId = ingressFirewallPolicyId; + Name = name; + Ports = ports; + ProjectId = projectId; + Region = region; + Shared = shared; + Status = status; + TenantId = tenantId; + } + } +} diff --git a/sdk/dotnet/Firewall/GetPolicyV2.cs b/sdk/dotnet/Firewall/GetPolicyV2.cs new file mode 100644 index 000000000..763b42e6b --- /dev/null +++ b/sdk/dotnet/Firewall/GetPolicyV2.cs @@ -0,0 +1,260 @@ +// *** 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.OpenStack.Firewall +{ + public static class GetPolicyV2 + { + /// + /// Use this data source to get information of an available OpenStack firewall policy v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new() + /// { + /// Name = "tf_test_policy", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetPolicyV2Args? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("openstack:firewall/getPolicyV2:getPolicyV2", args ?? new GetPolicyV2Args(), options.WithDefaults()); + + /// + /// Use this data source to get information of an available OpenStack firewall policy v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new() + /// { + /// Name = "tf_test_policy", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetPolicyV2InvokeArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("openstack:firewall/getPolicyV2:getPolicyV2", args ?? new GetPolicyV2InvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetPolicyV2Args : global::Pulumi.InvokeArgs + { + /// + /// Whether this policy has been audited. + /// + [Input("audited")] + public bool? Audited { get; set; } + + /// + /// Human-readable description of the policy. + /// + [Input("description")] + public string? Description { get; set; } + + /// + /// The name of the firewall policy. + /// + [Input("name")] + public string? Name { get; set; } + + /// + /// The ID of the firewall policy. + /// + [Input("policyId")] + public string? PolicyId { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall policy. + /// + [Input("projectId")] + public string? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall policy ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public string? Region { get; set; } + + /// + /// Whether this policy is shared across all projects. + /// + [Input("shared")] + public bool? Shared { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall policy. + /// + [Input("tenantId")] + public string? TenantId { get; set; } + + public GetPolicyV2Args() + { + } + public static new GetPolicyV2Args Empty => new GetPolicyV2Args(); + } + + public sealed class GetPolicyV2InvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Whether this policy has been audited. + /// + [Input("audited")] + public Input? Audited { get; set; } + + /// + /// Human-readable description of the policy. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The name of the firewall policy. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The ID of the firewall policy. + /// + [Input("policyId")] + public Input? PolicyId { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall policy. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall policy ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// Whether this policy is shared across all projects. + /// + [Input("shared")] + public Input? Shared { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall policy. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + public GetPolicyV2InvokeArgs() + { + } + public static new GetPolicyV2InvokeArgs Empty => new GetPolicyV2InvokeArgs(); + } + + + [OutputType] + public sealed class GetPolicyV2Result + { + /// + /// The audit status of the firewall policy. + /// + public readonly bool Audited; + public readonly string? Description; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// See Argument Reference above. + /// + public readonly string? Name; + /// + /// See Argument Reference above. + /// + public readonly string? PolicyId; + /// + /// See Argument Reference above. + /// + public readonly string ProjectId; + /// + /// See Argument Reference above. + /// + public readonly string Region; + /// + /// The array of one or more firewall rules that comprise the policy. + /// + public readonly ImmutableArray Rules; + /// + /// The sharing status of the firewall policy. + /// + public readonly bool Shared; + /// + /// See Argument Reference above. + /// + public readonly string TenantId; + + [OutputConstructor] + private GetPolicyV2Result( + bool audited, + + string? description, + + string id, + + string? name, + + string? policyId, + + string projectId, + + string region, + + ImmutableArray rules, + + bool shared, + + string tenantId) + { + Audited = audited; + Description = description; + Id = id; + Name = name; + PolicyId = policyId; + ProjectId = projectId; + Region = region; + Rules = rules; + Shared = shared; + TenantId = tenantId; + } + } +} diff --git a/sdk/dotnet/Firewall/GetRuleV2.cs b/sdk/dotnet/Firewall/GetRuleV2.cs new file mode 100644 index 000000000..d0de913f2 --- /dev/null +++ b/sdk/dotnet/Firewall/GetRuleV2.cs @@ -0,0 +1,428 @@ +// *** 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.OpenStack.Firewall +{ + public static class GetRuleV2 + { + /// + /// Use this data source to get information of an available OpenStack firewall rule v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rule = OpenStack.Firewall.GetRuleV2.Invoke(new() + /// { + /// Name = "tf_test_rule", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRuleV2Args? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("openstack:firewall/getRuleV2:getRuleV2", args ?? new GetRuleV2Args(), options.WithDefaults()); + + /// + /// Use this data source to get information of an available OpenStack firewall rule v2. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var rule = OpenStack.Firewall.GetRuleV2.Invoke(new() + /// { + /// Name = "tf_test_rule", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetRuleV2InvokeArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("openstack:firewall/getRuleV2:getRuleV2", args ?? new GetRuleV2InvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRuleV2Args : global::Pulumi.InvokeArgs + { + /// + /// Action to be taken when the firewall rule matches. + /// + [Input("action")] + public string? Action { get; set; } + + /// + /// The description of the firewall rule. + /// + [Input("description")] + public string? Description { get; set; } + + /// + /// The destination IP address on which the + /// firewall rule operates. + /// + [Input("destinationIpAddress")] + public string? DestinationIpAddress { get; set; } + + /// + /// The destination port on which the firewall + /// rule operates. + /// + [Input("destinationPort")] + public string? DestinationPort { get; set; } + + /// + /// Enabled status for the firewall rule. + /// + [Input("enabled")] + public bool? Enabled { get; set; } + + [Input("firewallPolicyIds")] + private List? _firewallPolicyIds; + + /// + /// The ID of the firewall policy the rule belongs to. + /// + public List FirewallPolicyIds + { + get => _firewallPolicyIds ?? (_firewallPolicyIds = new List()); + set => _firewallPolicyIds = value; + } + + /// + /// IP version, either 4 (default) or 6. + /// + [Input("ipVersion")] + public int? IpVersion { get; set; } + + /// + /// The name of the firewall rule. + /// + [Input("name")] + public string? Name { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall rule. + /// + [Input("projectId")] + public string? ProjectId { get; set; } + + /// + /// The protocol type on which the firewall rule operates. + /// + [Input("protocol")] + public string? Protocol { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall policy ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public string? Region { get; set; } + + /// + /// The ID of the firewall rule. + /// + [Input("ruleId")] + public string? RuleId { get; set; } + + /// + /// The sharing status of the firewall policy. + /// + [Input("shared")] + public bool? Shared { get; set; } + + /// + /// The source IP address on which the firewall + /// rule operates. + /// + [Input("sourceIpAddress")] + public string? SourceIpAddress { get; set; } + + /// + /// The source port on which the firewall + /// rule operates. + /// + [Input("sourcePort")] + public string? SourcePort { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall rule. + /// + [Input("tenantId")] + public string? TenantId { get; set; } + + public GetRuleV2Args() + { + } + public static new GetRuleV2Args Empty => new GetRuleV2Args(); + } + + public sealed class GetRuleV2InvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Action to be taken when the firewall rule matches. + /// + [Input("action")] + public Input? Action { get; set; } + + /// + /// The description of the firewall rule. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The destination IP address on which the + /// firewall rule operates. + /// + [Input("destinationIpAddress")] + public Input? DestinationIpAddress { get; set; } + + /// + /// The destination port on which the firewall + /// rule operates. + /// + [Input("destinationPort")] + public Input? DestinationPort { get; set; } + + /// + /// Enabled status for the firewall rule. + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + [Input("firewallPolicyIds")] + private InputList? _firewallPolicyIds; + + /// + /// The ID of the firewall policy the rule belongs to. + /// + public InputList FirewallPolicyIds + { + get => _firewallPolicyIds ?? (_firewallPolicyIds = new InputList()); + set => _firewallPolicyIds = value; + } + + /// + /// IP version, either 4 (default) or 6. + /// + [Input("ipVersion")] + public Input? IpVersion { get; set; } + + /// + /// The name of the firewall rule. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `tenant_id`. The owner of the firewall rule. + /// + [Input("projectId")] + public Input? ProjectId { get; set; } + + /// + /// The protocol type on which the firewall rule operates. + /// + [Input("protocol")] + public Input? Protocol { get; set; } + + /// + /// The region in which to obtain the V2 Neutron client. + /// A Neutron client is needed to retrieve firewall policy ids. If omitted, the + /// `region` argument of the provider is used. + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// The ID of the firewall rule. + /// + [Input("ruleId")] + public Input? RuleId { get; set; } + + /// + /// The sharing status of the firewall policy. + /// + [Input("shared")] + public Input? Shared { get; set; } + + /// + /// The source IP address on which the firewall + /// rule operates. + /// + [Input("sourceIpAddress")] + public Input? SourceIpAddress { get; set; } + + /// + /// The source port on which the firewall + /// rule operates. + /// + [Input("sourcePort")] + public Input? SourcePort { get; set; } + + /// + /// This argument conflicts and is interchangeable + /// with `project_id`. The owner of the firewall rule. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + public GetRuleV2InvokeArgs() + { + } + public static new GetRuleV2InvokeArgs Empty => new GetRuleV2InvokeArgs(); + } + + + [OutputType] + public sealed class GetRuleV2Result + { + /// + /// See Argument Reference above. + /// + public readonly string? Action; + /// + /// See Argument Reference above. + /// + public readonly string? Description; + /// + /// See Argument Reference above. + /// + public readonly string? DestinationIpAddress; + /// + /// See Argument Reference above. + /// + public readonly string? DestinationPort; + /// + /// See Argument Reference above. + /// + public readonly bool Enabled; + /// + /// The ID of the firewall policy the rule belongs to. + /// + public readonly ImmutableArray FirewallPolicyIds; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// See Argument Reference above. + /// + public readonly int? IpVersion; + /// + /// See Argument Reference above. + /// + public readonly string? Name; + /// + /// See Argument Reference above. + /// + public readonly string ProjectId; + /// + /// See Argument Reference above. + /// + public readonly string? Protocol; + /// + /// See Argument Reference above. + /// + public readonly string Region; + /// + /// See Argument Reference above. + /// + public readonly string? RuleId; + /// + /// See Argument Reference above. + /// + public readonly bool Shared; + /// + /// See Argument Reference above. + /// + public readonly string? SourceIpAddress; + /// + /// See Argument Reference above. + /// + public readonly string? SourcePort; + /// + /// See Argument Reference above. + /// + public readonly string TenantId; + + [OutputConstructor] + private GetRuleV2Result( + string? action, + + string? description, + + string? destinationIpAddress, + + string? destinationPort, + + bool enabled, + + ImmutableArray firewallPolicyIds, + + string id, + + int? ipVersion, + + string? name, + + string projectId, + + string? protocol, + + string region, + + string? ruleId, + + bool shared, + + string? sourceIpAddress, + + string? sourcePort, + + string tenantId) + { + Action = action; + Description = description; + DestinationIpAddress = destinationIpAddress; + DestinationPort = destinationPort; + Enabled = enabled; + FirewallPolicyIds = firewallPolicyIds; + Id = id; + IpVersion = ipVersion; + Name = name; + ProjectId = projectId; + Protocol = protocol; + Region = region; + RuleId = ruleId; + Shared = shared; + SourceIpAddress = sourceIpAddress; + SourcePort = sourcePort; + TenantId = tenantId; + } + } +} diff --git a/sdk/dotnet/GetFwGroupV2.cs b/sdk/dotnet/GetFwGroupV2.cs index bb884df5f..b34b64b4b 100644 --- a/sdk/dotnet/GetFwGroupV2.cs +++ b/sdk/dotnet/GetFwGroupV2.cs @@ -9,6 +9,7 @@ namespace Pulumi.OpenStack { + [Obsolete(@"openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2")] public static class GetFwGroupV2 { /// @@ -24,7 +25,7 @@ public static class GetFwGroupV2 /// /// return await Deployment.RunAsync(() => /// { - /// var @group = OpenStack.GetFwGroupV2.Invoke(new() + /// var @group = OpenStack.Firewall.GetGroupV2.Invoke(new() /// { /// Name = "tf_test_group", /// }); @@ -48,7 +49,7 @@ public static Task InvokeAsync(GetFwGroupV2Args? args = null /// /// return await Deployment.RunAsync(() => /// { - /// var @group = OpenStack.GetFwGroupV2.Invoke(new() + /// var @group = OpenStack.Firewall.GetGroupV2.Invoke(new() /// { /// Name = "tf_test_group", /// }); diff --git a/sdk/dotnet/GetFwPolicyV2.cs b/sdk/dotnet/GetFwPolicyV2.cs index 7821ce0fd..ed726a714 100644 --- a/sdk/dotnet/GetFwPolicyV2.cs +++ b/sdk/dotnet/GetFwPolicyV2.cs @@ -9,6 +9,7 @@ namespace Pulumi.OpenStack { + [Obsolete(@"openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2")] public static class GetFwPolicyV2 { /// @@ -24,7 +25,7 @@ public static class GetFwPolicyV2 /// /// return await Deployment.RunAsync(() => /// { - /// var policy = OpenStack.GetFwPolicyV2.Invoke(new() + /// var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new() /// { /// Name = "tf_test_policy", /// }); @@ -48,7 +49,7 @@ public static Task InvokeAsync(GetFwPolicyV2Args? args = nu /// /// return await Deployment.RunAsync(() => /// { - /// var policy = OpenStack.GetFwPolicyV2.Invoke(new() + /// var policy = OpenStack.Firewall.GetPolicyV2.Invoke(new() /// { /// Name = "tf_test_policy", /// }); diff --git a/sdk/dotnet/GetFwRuleV2.cs b/sdk/dotnet/GetFwRuleV2.cs index 562ef2e58..676de0023 100644 --- a/sdk/dotnet/GetFwRuleV2.cs +++ b/sdk/dotnet/GetFwRuleV2.cs @@ -9,6 +9,7 @@ namespace Pulumi.OpenStack { + [Obsolete(@"openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2")] public static class GetFwRuleV2 { /// @@ -24,7 +25,7 @@ public static class GetFwRuleV2 /// /// return await Deployment.RunAsync(() => /// { - /// var rule = OpenStack.GetFwRuleV2.Invoke(new() + /// var rule = OpenStack.Firewall.GetRuleV2.Invoke(new() /// { /// Name = "tf_test_rule", /// }); @@ -48,7 +49,7 @@ public static Task InvokeAsync(GetFwRuleV2Args? args = null, /// /// return await Deployment.RunAsync(() => /// { - /// var rule = OpenStack.GetFwRuleV2.Invoke(new() + /// var rule = OpenStack.Firewall.GetRuleV2.Invoke(new() /// { /// Name = "tf_test_rule", /// }); diff --git a/sdk/dotnet/LbFlavorprofileV2.cs b/sdk/dotnet/LbFlavorprofileV2.cs index 0f0c27c87..a6124af68 100644 --- a/sdk/dotnet/LbFlavorprofileV2.cs +++ b/sdk/dotnet/LbFlavorprofileV2.cs @@ -27,7 +27,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var flavorprofile1 = new OpenStack.LbFlavorprofileV2("flavorprofile_1", new() + /// var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2("flavorprofile_1", new() /// { /// Name = "amphora-single-profile", /// ProviderName = "amphora", @@ -50,7 +50,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var flavorprofile1 = new OpenStack.LbFlavorprofileV2("flavorprofile_1", new() + /// var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2("flavorprofile_1", new() /// { /// Name = "amphora-single-profile", /// ProviderName = "amphora", @@ -68,6 +68,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b /// ``` /// + [Obsolete(@"openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2")] [OpenStackResourceType("openstack:index/lbFlavorprofileV2:LbFlavorprofileV2")] public partial class LbFlavorprofileV2 : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/LbLoadbalancerV2.cs b/sdk/dotnet/LbLoadbalancerV2.cs index a1dc393fa..712b82bef 100644 --- a/sdk/dotnet/LbLoadbalancerV2.cs +++ b/sdk/dotnet/LbLoadbalancerV2.cs @@ -25,7 +25,7 @@ namespace Pulumi.OpenStack /// /// return await Deployment.RunAsync(() => /// { - /// var lb1 = new OpenStack.LbLoadbalancerV2("lb_1", new() + /// var lb1 = new OpenStack.LoadBalancer.LoadBalancer("lb_1", new() /// { /// VipSubnetId = "d9415786-5f1a-428b-b35f-2f1523e146d2", /// }); @@ -41,6 +41,7 @@ namespace Pulumi.OpenStack /// $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 /// ``` /// + [Obsolete(@"openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer")] [OpenStackResourceType("openstack:index/lbLoadbalancerV2:LbLoadbalancerV2")] public partial class LbLoadbalancerV2 : global::Pulumi.CustomResource { @@ -183,10 +184,6 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - Aliases = - { - new global::Pulumi.Alias { Type = "openstack:loadbalancer/loadBalancer:LoadBalancer" }, - }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/LoadBalancer/FlavorprofileV2.cs b/sdk/dotnet/LoadBalancer/FlavorprofileV2.cs new file mode 100644 index 000000000..9aa35d473 --- /dev/null +++ b/sdk/dotnet/LoadBalancer/FlavorprofileV2.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.OpenStack.LoadBalancer +{ + /// + /// Manages a V2 load balancer flavorprofile resource within OpenStack. + /// + /// > **Note:** This usually requires admin privileges. + /// + /// ## Example Usage + /// + /// ### Using jsonencode + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using System.Text.Json; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2("flavorprofile_1", new() + /// { + /// Name = "amphora-single-profile", + /// ProviderName = "amphora", + /// FlavorData = JsonSerializer.Serialize(new Dictionary<string, object?> + /// { + /// ["loadbalancer_topology"] = "SINGLE", + /// }), + /// }); + /// + /// }); + /// ``` + /// + /// ### Using plain string + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var flavorprofile1 = new OpenStack.LoadBalancer.FlavorprofileV2("flavorprofile_1", new() + /// { + /// Name = "amphora-single-profile", + /// ProviderName = "amphora", + /// FlavorData = "{\"loadbalancer_topology\": \"SINGLE\"}", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// flavorprofiles can be imported using their `id`. Example: + /// + /// ```sh + /// $ pulumi import openstack:loadbalancer/flavorprofileV2:FlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b + /// ``` + /// + [OpenStackResourceType("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2")] + public partial class FlavorprofileV2 : global::Pulumi.CustomResource + { + /// + /// String that passes the flavor_data for the flavorprofile. + /// The data that are allowed depend on the `provider_name` that is passed. jsonencode + /// can be used for readability as shown in the example above. + /// Changing this updates the existing flavorprofile. + /// + [Output("flavorData")] + public Output FlavorData { get; private set; } = null!; + + /// + /// Name of the flavorprofile. Changing this updates the existing + /// flavorprofile. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The provider_name that the flavor_profile will use. + /// Changing this updates the existing flavorprofile. + /// + [Output("providerName")] + public Output ProviderName { get; private set; } = null!; + + [Output("region")] + public Output Region { get; private set; } = null!; + + + /// + /// Create a FlavorprofileV2 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 FlavorprofileV2(string name, FlavorprofileV2Args args, CustomResourceOptions? options = null) + : base("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, args ?? new FlavorprofileV2Args(), MakeResourceOptions(options, "")) + { + } + + private FlavorprofileV2(string name, Input id, FlavorprofileV2State? state = null, CustomResourceOptions? options = null) + : base("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2" }, + }, + }; + 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 FlavorprofileV2 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 FlavorprofileV2 Get(string name, Input id, FlavorprofileV2State? state = null, CustomResourceOptions? options = null) + { + return new FlavorprofileV2(name, id, state, options); + } + } + + public sealed class FlavorprofileV2Args : global::Pulumi.ResourceArgs + { + /// + /// String that passes the flavor_data for the flavorprofile. + /// The data that are allowed depend on the `provider_name` that is passed. jsonencode + /// can be used for readability as shown in the example above. + /// Changing this updates the existing flavorprofile. + /// + [Input("flavorData", required: true)] + public Input FlavorData { get; set; } = null!; + + /// + /// Name of the flavorprofile. Changing this updates the existing + /// flavorprofile. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The provider_name that the flavor_profile will use. + /// Changing this updates the existing flavorprofile. + /// + [Input("providerName", required: true)] + public Input ProviderName { get; set; } = null!; + + [Input("region")] + public Input? Region { get; set; } + + public FlavorprofileV2Args() + { + } + public static new FlavorprofileV2Args Empty => new FlavorprofileV2Args(); + } + + public sealed class FlavorprofileV2State : global::Pulumi.ResourceArgs + { + /// + /// String that passes the flavor_data for the flavorprofile. + /// The data that are allowed depend on the `provider_name` that is passed. jsonencode + /// can be used for readability as shown in the example above. + /// Changing this updates the existing flavorprofile. + /// + [Input("flavorData")] + public Input? FlavorData { get; set; } + + /// + /// Name of the flavorprofile. Changing this updates the existing + /// flavorprofile. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The provider_name that the flavor_profile will use. + /// Changing this updates the existing flavorprofile. + /// + [Input("providerName")] + public Input? ProviderName { get; set; } + + [Input("region")] + public Input? Region { get; set; } + + public FlavorprofileV2State() + { + } + public static new FlavorprofileV2State Empty => new FlavorprofileV2State(); + } +} diff --git a/sdk/dotnet/LoadBalancer/L7PolicyV2.cs b/sdk/dotnet/LoadBalancer/L7PolicyV2.cs index 9a713f6e4..f4519f2b5 100644 --- a/sdk/dotnet/LoadBalancer/L7PolicyV2.cs +++ b/sdk/dotnet/LoadBalancer/L7PolicyV2.cs @@ -36,7 +36,7 @@ namespace Pulumi.OpenStack.LoadBalancer /// NetworkId = network1.Id, /// }); /// - /// var loadbalancer1 = new OpenStack.LbLoadbalancerV2("loadbalancer_1", new() + /// var loadbalancer1 = new OpenStack.LoadBalancer.LoadBalancer("loadbalancer_1", new() /// { /// Name = "loadbalancer_1", /// VipSubnetId = subnet1.Id, diff --git a/sdk/dotnet/LoadBalancer/L7RuleV2.cs b/sdk/dotnet/LoadBalancer/L7RuleV2.cs index 078ed97cd..89778378d 100644 --- a/sdk/dotnet/LoadBalancer/L7RuleV2.cs +++ b/sdk/dotnet/LoadBalancer/L7RuleV2.cs @@ -36,7 +36,7 @@ namespace Pulumi.OpenStack.LoadBalancer /// NetworkId = network1.Id, /// }); /// - /// var loadbalancer1 = new OpenStack.LbLoadbalancerV2("loadbalancer_1", new() + /// var loadbalancer1 = new OpenStack.LoadBalancer.LoadBalancer("loadbalancer_1", new() /// { /// Name = "loadbalancer_1", /// VipSubnetId = subnet1.Id, diff --git a/sdk/dotnet/LoadBalancer/Listener.cs b/sdk/dotnet/LoadBalancer/Listener.cs index b108aac12..b0ab1e7d4 100644 --- a/sdk/dotnet/LoadBalancer/Listener.cs +++ b/sdk/dotnet/LoadBalancer/Listener.cs @@ -79,7 +79,7 @@ namespace Pulumi.OpenStack.LoadBalancer /// Name = "my-subnet", /// }); /// - /// var lb1 = new OpenStack.LbLoadbalancerV2("lb_1", new() + /// var lb1 = new OpenStack.LoadBalancer.LoadBalancer("lb_1", new() /// { /// Name = "loadbalancer", /// VipSubnetId = subnet1.Apply(getSubnetResult => getSubnetResult.Id), diff --git a/sdk/dotnet/LoadBalancer/LoadBalancer.cs b/sdk/dotnet/LoadBalancer/LoadBalancer.cs new file mode 100644 index 000000000..36f4161d6 --- /dev/null +++ b/sdk/dotnet/LoadBalancer/LoadBalancer.cs @@ -0,0 +1,482 @@ +// *** 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.OpenStack.LoadBalancer +{ + /// + /// Manages a V2 loadbalancer resource within OpenStack. + /// + /// > **Note:** This resource has attributes that depend on octavia minor versions. + /// Please ensure your Openstack cloud supports the required minor version. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using OpenStack = Pulumi.OpenStack; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var lb1 = new OpenStack.LoadBalancer.LoadBalancer("lb_1", new() + /// { + /// VipSubnetId = "d9415786-5f1a-428b-b35f-2f1523e146d2", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Load Balancer can be imported using the Load Balancer ID, e.g.: + /// + /// ```sh + /// $ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 + /// ``` + /// + [OpenStackResourceType("openstack:loadbalancer/loadBalancer:LoadBalancer")] + public partial class LoadBalancer : global::Pulumi.CustomResource + { + /// + /// The administrative state of the Loadbalancer. + /// A valid value is true (UP) or false (DOWN). + /// + [Output("adminStateUp")] + public Output AdminStateUp { get; private set; } = null!; + + /// + /// The availability zone of the Loadbalancer. + /// Changing this creates a new loadbalancer. Available only for Octavia + /// **minor version 2.14 or later**. + /// + [Output("availabilityZone")] + public Output AvailabilityZone { get; private set; } = null!; + + /// + /// Human-readable description for the Loadbalancer. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// The UUID of a flavor. Changing this creates a new + /// loadbalancer. + /// + [Output("flavorId")] + public Output FlavorId { get; private set; } = null!; + + /// + /// The name of the provider. Changing this + /// creates a new loadbalancer. + /// + [Output("loadbalancerProvider")] + public Output LoadbalancerProvider { get; private set; } = null!; + + /// + /// Human-readable name for the Loadbalancer. Does not have + /// to be unique. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create an LB member. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// LB member. + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + /// + /// A list of security group IDs to apply to the + /// loadbalancer. The security groups must be specified by ID and not name (as + /// opposed to how they are configured with the Compute Instance). + /// + [Output("securityGroupIds")] + public Output> SecurityGroupIds { get; private set; } = null!; + + /// + /// A list of simple strings assigned to the loadbalancer. + /// Available only for Octavia **minor version 2.5 or later**. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + /// + /// Required for admins. The UUID of the tenant who owns + /// the Loadbalancer. Only administrative users can specify a tenant UUID + /// other than their own. Changing this creates a new loadbalancer. + /// + [Output("tenantId")] + public Output TenantId { get; private set; } = null!; + + /// + /// The ip address of the load balancer. + /// Changing this creates a new loadbalancer. + /// + [Output("vipAddress")] + public Output VipAddress { get; private set; } = null!; + + /// + /// The network on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Output("vipNetworkId")] + public Output VipNetworkId { get; private set; } = null!; + + /// + /// The port UUID that the loadbalancer will use. + /// Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Output("vipPortId")] + public Output VipPortId { get; private set; } = null!; + + /// + /// The ID of the QoS Policy which will + /// be applied to the Virtual IP (VIP). + /// + [Output("vipQosPolicyId")] + public Output VipQosPolicyId { get; private set; } = null!; + + /// + /// The subnet on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Output("vipSubnetId")] + public Output VipSubnetId { get; private set; } = null!; + + + /// + /// Create a LoadBalancer 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 LoadBalancer(string name, LoadBalancerArgs? args = null, CustomResourceOptions? options = null) + : base("openstack:loadbalancer/loadBalancer:LoadBalancer", name, args ?? new LoadBalancerArgs(), MakeResourceOptions(options, "")) + { + } + + private LoadBalancer(string name, Input id, LoadBalancerState? state = null, CustomResourceOptions? options = null) + : base("openstack:loadbalancer/loadBalancer:LoadBalancer", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + Aliases = + { + new global::Pulumi.Alias { Type = "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2" }, + }, + }; + 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 LoadBalancer 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 LoadBalancer Get(string name, Input id, LoadBalancerState? state = null, CustomResourceOptions? options = null) + { + return new LoadBalancer(name, id, state, options); + } + } + + public sealed class LoadBalancerArgs : global::Pulumi.ResourceArgs + { + /// + /// The administrative state of the Loadbalancer. + /// A valid value is true (UP) or false (DOWN). + /// + [Input("adminStateUp")] + public Input? AdminStateUp { get; set; } + + /// + /// The availability zone of the Loadbalancer. + /// Changing this creates a new loadbalancer. Available only for Octavia + /// **minor version 2.14 or later**. + /// + [Input("availabilityZone")] + public Input? AvailabilityZone { get; set; } + + /// + /// Human-readable description for the Loadbalancer. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The UUID of a flavor. Changing this creates a new + /// loadbalancer. + /// + [Input("flavorId")] + public Input? FlavorId { get; set; } + + /// + /// The name of the provider. Changing this + /// creates a new loadbalancer. + /// + [Input("loadbalancerProvider")] + public Input? LoadbalancerProvider { get; set; } + + /// + /// Human-readable name for the Loadbalancer. Does not have + /// to be unique. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create an LB member. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// LB member. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("securityGroupIds")] + private InputList? _securityGroupIds; + + /// + /// A list of security group IDs to apply to the + /// loadbalancer. The security groups must be specified by ID and not name (as + /// opposed to how they are configured with the Compute Instance). + /// + public InputList SecurityGroupIds + { + get => _securityGroupIds ?? (_securityGroupIds = new InputList()); + set => _securityGroupIds = value; + } + + [Input("tags")] + private InputList? _tags; + + /// + /// A list of simple strings assigned to the loadbalancer. + /// Available only for Octavia **minor version 2.5 or later**. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + /// + /// Required for admins. The UUID of the tenant who owns + /// the Loadbalancer. Only administrative users can specify a tenant UUID + /// other than their own. Changing this creates a new loadbalancer. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + /// + /// The ip address of the load balancer. + /// Changing this creates a new loadbalancer. + /// + [Input("vipAddress")] + public Input? VipAddress { get; set; } + + /// + /// The network on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipNetworkId")] + public Input? VipNetworkId { get; set; } + + /// + /// The port UUID that the loadbalancer will use. + /// Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipPortId")] + public Input? VipPortId { get; set; } + + /// + /// The ID of the QoS Policy which will + /// be applied to the Virtual IP (VIP). + /// + [Input("vipQosPolicyId")] + public Input? VipQosPolicyId { get; set; } + + /// + /// The subnet on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipSubnetId")] + public Input? VipSubnetId { get; set; } + + public LoadBalancerArgs() + { + } + public static new LoadBalancerArgs Empty => new LoadBalancerArgs(); + } + + public sealed class LoadBalancerState : global::Pulumi.ResourceArgs + { + /// + /// The administrative state of the Loadbalancer. + /// A valid value is true (UP) or false (DOWN). + /// + [Input("adminStateUp")] + public Input? AdminStateUp { get; set; } + + /// + /// The availability zone of the Loadbalancer. + /// Changing this creates a new loadbalancer. Available only for Octavia + /// **minor version 2.14 or later**. + /// + [Input("availabilityZone")] + public Input? AvailabilityZone { get; set; } + + /// + /// Human-readable description for the Loadbalancer. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The UUID of a flavor. Changing this creates a new + /// loadbalancer. + /// + [Input("flavorId")] + public Input? FlavorId { get; set; } + + /// + /// The name of the provider. Changing this + /// creates a new loadbalancer. + /// + [Input("loadbalancerProvider")] + public Input? LoadbalancerProvider { get; set; } + + /// + /// Human-readable name for the Loadbalancer. Does not have + /// to be unique. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The region in which to obtain the V2 Networking client. + /// A Networking client is needed to create an LB member. If omitted, the + /// `region` argument of the provider is used. Changing this creates a new + /// LB member. + /// + [Input("region")] + public Input? Region { get; set; } + + [Input("securityGroupIds")] + private InputList? _securityGroupIds; + + /// + /// A list of security group IDs to apply to the + /// loadbalancer. The security groups must be specified by ID and not name (as + /// opposed to how they are configured with the Compute Instance). + /// + public InputList SecurityGroupIds + { + get => _securityGroupIds ?? (_securityGroupIds = new InputList()); + set => _securityGroupIds = value; + } + + [Input("tags")] + private InputList? _tags; + + /// + /// A list of simple strings assigned to the loadbalancer. + /// Available only for Octavia **minor version 2.5 or later**. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + /// + /// Required for admins. The UUID of the tenant who owns + /// the Loadbalancer. Only administrative users can specify a tenant UUID + /// other than their own. Changing this creates a new loadbalancer. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + /// + /// The ip address of the load balancer. + /// Changing this creates a new loadbalancer. + /// + [Input("vipAddress")] + public Input? VipAddress { get; set; } + + /// + /// The network on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipNetworkId")] + public Input? VipNetworkId { get; set; } + + /// + /// The port UUID that the loadbalancer will use. + /// Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipPortId")] + public Input? VipPortId { get; set; } + + /// + /// The ID of the QoS Policy which will + /// be applied to the Virtual IP (VIP). + /// + [Input("vipQosPolicyId")] + public Input? VipQosPolicyId { get; set; } + + /// + /// The subnet on which to allocate the + /// Loadbalancer's address. A tenant can only create Loadbalancers on networks + /// authorized by policy (e.g. networks that belong to them or networks that + /// are shared). Changing this creates a new loadbalancer. Exactly one of + /// `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + /// + [Input("vipSubnetId")] + public Input? VipSubnetId { get; set; } + + public LoadBalancerState() + { + } + public static new LoadBalancerState Empty => new LoadBalancerState(); + } +} diff --git a/sdk/go/openstack/bgpvpn/init.go b/sdk/go/openstack/bgpvpn/init.go new file mode 100644 index 000000000..ee944ba8d --- /dev/null +++ b/sdk/go/openstack/bgpvpn/init.go @@ -0,0 +1,65 @@ +// 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 bgpvpn + +import ( + "fmt" + + "github.com/blang/semver" + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +type module struct { + version semver.Version +} + +func (m *module) Version() semver.Version { + return m.version +} + +func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { + switch typ { + case "openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2": + r = &NetworkAssociateV2{} + case "openstack:bgpvpn/portAssociateV2:PortAssociateV2": + r = &PortAssociateV2{} + case "openstack:bgpvpn/routerAssociateV2:RouterAssociateV2": + r = &RouterAssociateV2{} + case "openstack:bgpvpn/v2:V2": + r = &V2{} + default: + return nil, fmt.Errorf("unknown resource type: %s", typ) + } + + err = ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn)) + return +} + +func init() { + version, err := internal.PkgVersion() + if err != nil { + version = semver.Version{Major: 1} + } + pulumi.RegisterResourceModule( + "openstack", + "bgpvpn/networkAssociateV2", + &module{version}, + ) + pulumi.RegisterResourceModule( + "openstack", + "bgpvpn/portAssociateV2", + &module{version}, + ) + pulumi.RegisterResourceModule( + "openstack", + "bgpvpn/routerAssociateV2", + &module{version}, + ) + pulumi.RegisterResourceModule( + "openstack", + "bgpvpn/v2", + &module{version}, + ) +} diff --git a/sdk/go/openstack/bgpvpn/networkAssociateV2.go b/sdk/go/openstack/bgpvpn/networkAssociateV2.go new file mode 100644 index 000000000..7a4eb3a6b --- /dev/null +++ b/sdk/go/openstack/bgpvpn/networkAssociateV2.go @@ -0,0 +1,360 @@ +// 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 bgpvpn + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 BGP VPN network association resource within OpenStack. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := bgpvpn.NewNetworkAssociateV2(ctx, "association_1", &bgpvpn.NetworkAssociateV2Args{ +// BgpvpnId: pulumi.String("e7189337-5684-46ee-bcb1-44f1a57066c9"), +// NetworkId: pulumi.String("de83d56c-4d2f-44f7-ac24-af393252204f"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// # BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN +// +// network association ID separated by a slash, e.g.: +// +// hcl +// +// ```sh +// $ pulumi import openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 +// ``` +type NetworkAssociateV2 struct { + pulumi.CustomResourceState + + // The ID of the BGP VPN to which the network will be + // associated. Changing this creates a new BGP VPN network association + BgpvpnId pulumi.StringOutput `pulumi:"bgpvpnId"` + // The ID of the network to be associated with the BGP + // VPN. Changing this creates a new BGP VPN network association. + NetworkId pulumi.StringOutput `pulumi:"networkId"` + // The ID of the project that owns the BGP VPN network + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN network + // association. + ProjectId pulumi.StringOutput `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN network association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN network association. + Region pulumi.StringOutput `pulumi:"region"` +} + +// NewNetworkAssociateV2 registers a new resource with the given unique name, arguments, and options. +func NewNetworkAssociateV2(ctx *pulumi.Context, + name string, args *NetworkAssociateV2Args, opts ...pulumi.ResourceOption) (*NetworkAssociateV2, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.BgpvpnId == nil { + return nil, errors.New("invalid value for required argument 'BgpvpnId'") + } + if args.NetworkId == nil { + return nil, errors.New("invalid value for required argument 'NetworkId'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource NetworkAssociateV2 + err := ctx.RegisterResource("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetNetworkAssociateV2 gets an existing NetworkAssociateV2 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 GetNetworkAssociateV2(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *NetworkAssociateV2State, opts ...pulumi.ResourceOption) (*NetworkAssociateV2, error) { + var resource NetworkAssociateV2 + err := ctx.ReadResource("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering NetworkAssociateV2 resources. +type networkAssociateV2State struct { + // The ID of the BGP VPN to which the network will be + // associated. Changing this creates a new BGP VPN network association + BgpvpnId *string `pulumi:"bgpvpnId"` + // The ID of the network to be associated with the BGP + // VPN. Changing this creates a new BGP VPN network association. + NetworkId *string `pulumi:"networkId"` + // The ID of the project that owns the BGP VPN network + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN network + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN network association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN network association. + Region *string `pulumi:"region"` +} + +type NetworkAssociateV2State struct { + // The ID of the BGP VPN to which the network will be + // associated. Changing this creates a new BGP VPN network association + BgpvpnId pulumi.StringPtrInput + // The ID of the network to be associated with the BGP + // VPN. Changing this creates a new BGP VPN network association. + NetworkId pulumi.StringPtrInput + // The ID of the project that owns the BGP VPN network + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN network + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN network association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN network association. + Region pulumi.StringPtrInput +} + +func (NetworkAssociateV2State) ElementType() reflect.Type { + return reflect.TypeOf((*networkAssociateV2State)(nil)).Elem() +} + +type networkAssociateV2Args struct { + // The ID of the BGP VPN to which the network will be + // associated. Changing this creates a new BGP VPN network association + BgpvpnId string `pulumi:"bgpvpnId"` + // The ID of the network to be associated with the BGP + // VPN. Changing this creates a new BGP VPN network association. + NetworkId string `pulumi:"networkId"` + // The ID of the project that owns the BGP VPN network + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN network + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN network association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN network association. + Region *string `pulumi:"region"` +} + +// The set of arguments for constructing a NetworkAssociateV2 resource. +type NetworkAssociateV2Args struct { + // The ID of the BGP VPN to which the network will be + // associated. Changing this creates a new BGP VPN network association + BgpvpnId pulumi.StringInput + // The ID of the network to be associated with the BGP + // VPN. Changing this creates a new BGP VPN network association. + NetworkId pulumi.StringInput + // The ID of the project that owns the BGP VPN network + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN network + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN network association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN network association. + Region pulumi.StringPtrInput +} + +func (NetworkAssociateV2Args) ElementType() reflect.Type { + return reflect.TypeOf((*networkAssociateV2Args)(nil)).Elem() +} + +type NetworkAssociateV2Input interface { + pulumi.Input + + ToNetworkAssociateV2Output() NetworkAssociateV2Output + ToNetworkAssociateV2OutputWithContext(ctx context.Context) NetworkAssociateV2Output +} + +func (*NetworkAssociateV2) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkAssociateV2)(nil)).Elem() +} + +func (i *NetworkAssociateV2) ToNetworkAssociateV2Output() NetworkAssociateV2Output { + return i.ToNetworkAssociateV2OutputWithContext(context.Background()) +} + +func (i *NetworkAssociateV2) ToNetworkAssociateV2OutputWithContext(ctx context.Context) NetworkAssociateV2Output { + return pulumi.ToOutputWithContext(ctx, i).(NetworkAssociateV2Output) +} + +// NetworkAssociateV2ArrayInput is an input type that accepts NetworkAssociateV2Array and NetworkAssociateV2ArrayOutput values. +// You can construct a concrete instance of `NetworkAssociateV2ArrayInput` via: +// +// NetworkAssociateV2Array{ NetworkAssociateV2Args{...} } +type NetworkAssociateV2ArrayInput interface { + pulumi.Input + + ToNetworkAssociateV2ArrayOutput() NetworkAssociateV2ArrayOutput + ToNetworkAssociateV2ArrayOutputWithContext(context.Context) NetworkAssociateV2ArrayOutput +} + +type NetworkAssociateV2Array []NetworkAssociateV2Input + +func (NetworkAssociateV2Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]*NetworkAssociateV2)(nil)).Elem() +} + +func (i NetworkAssociateV2Array) ToNetworkAssociateV2ArrayOutput() NetworkAssociateV2ArrayOutput { + return i.ToNetworkAssociateV2ArrayOutputWithContext(context.Background()) +} + +func (i NetworkAssociateV2Array) ToNetworkAssociateV2ArrayOutputWithContext(ctx context.Context) NetworkAssociateV2ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkAssociateV2ArrayOutput) +} + +// NetworkAssociateV2MapInput is an input type that accepts NetworkAssociateV2Map and NetworkAssociateV2MapOutput values. +// You can construct a concrete instance of `NetworkAssociateV2MapInput` via: +// +// NetworkAssociateV2Map{ "key": NetworkAssociateV2Args{...} } +type NetworkAssociateV2MapInput interface { + pulumi.Input + + ToNetworkAssociateV2MapOutput() NetworkAssociateV2MapOutput + ToNetworkAssociateV2MapOutputWithContext(context.Context) NetworkAssociateV2MapOutput +} + +type NetworkAssociateV2Map map[string]NetworkAssociateV2Input + +func (NetworkAssociateV2Map) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*NetworkAssociateV2)(nil)).Elem() +} + +func (i NetworkAssociateV2Map) ToNetworkAssociateV2MapOutput() NetworkAssociateV2MapOutput { + return i.ToNetworkAssociateV2MapOutputWithContext(context.Background()) +} + +func (i NetworkAssociateV2Map) ToNetworkAssociateV2MapOutputWithContext(ctx context.Context) NetworkAssociateV2MapOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkAssociateV2MapOutput) +} + +type NetworkAssociateV2Output struct{ *pulumi.OutputState } + +func (NetworkAssociateV2Output) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkAssociateV2)(nil)).Elem() +} + +func (o NetworkAssociateV2Output) ToNetworkAssociateV2Output() NetworkAssociateV2Output { + return o +} + +func (o NetworkAssociateV2Output) ToNetworkAssociateV2OutputWithContext(ctx context.Context) NetworkAssociateV2Output { + return o +} + +// The ID of the BGP VPN to which the network will be +// associated. Changing this creates a new BGP VPN network association +func (o NetworkAssociateV2Output) BgpvpnId() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkAssociateV2) pulumi.StringOutput { return v.BgpvpnId }).(pulumi.StringOutput) +} + +// The ID of the network to be associated with the BGP +// VPN. Changing this creates a new BGP VPN network association. +func (o NetworkAssociateV2Output) NetworkId() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkAssociateV2) pulumi.StringOutput { return v.NetworkId }).(pulumi.StringOutput) +} + +// The ID of the project that owns the BGP VPN network +// association. Only administrative and users with `advsvc` role can specify a +// project ID other than their own. Changing this creates a new BGP VPN network +// association. +func (o NetworkAssociateV2Output) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkAssociateV2) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) +} + +// The region in which to obtain the V2 Networking client. +// A Networking client is needed to create a BGP VPN network association. If +// omitted, the `region` argument of the provider is used. Changing this creates +// a new BGP VPN network association. +func (o NetworkAssociateV2Output) Region() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkAssociateV2) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +type NetworkAssociateV2ArrayOutput struct{ *pulumi.OutputState } + +func (NetworkAssociateV2ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*NetworkAssociateV2)(nil)).Elem() +} + +func (o NetworkAssociateV2ArrayOutput) ToNetworkAssociateV2ArrayOutput() NetworkAssociateV2ArrayOutput { + return o +} + +func (o NetworkAssociateV2ArrayOutput) ToNetworkAssociateV2ArrayOutputWithContext(ctx context.Context) NetworkAssociateV2ArrayOutput { + return o +} + +func (o NetworkAssociateV2ArrayOutput) Index(i pulumi.IntInput) NetworkAssociateV2Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkAssociateV2 { + return vs[0].([]*NetworkAssociateV2)[vs[1].(int)] + }).(NetworkAssociateV2Output) +} + +type NetworkAssociateV2MapOutput struct{ *pulumi.OutputState } + +func (NetworkAssociateV2MapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*NetworkAssociateV2)(nil)).Elem() +} + +func (o NetworkAssociateV2MapOutput) ToNetworkAssociateV2MapOutput() NetworkAssociateV2MapOutput { + return o +} + +func (o NetworkAssociateV2MapOutput) ToNetworkAssociateV2MapOutputWithContext(ctx context.Context) NetworkAssociateV2MapOutput { + return o +} + +func (o NetworkAssociateV2MapOutput) MapIndex(k pulumi.StringInput) NetworkAssociateV2Output { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkAssociateV2 { + return vs[0].(map[string]*NetworkAssociateV2)[vs[1].(string)] + }).(NetworkAssociateV2Output) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*NetworkAssociateV2Input)(nil)).Elem(), &NetworkAssociateV2{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkAssociateV2ArrayInput)(nil)).Elem(), NetworkAssociateV2Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkAssociateV2MapInput)(nil)).Elem(), NetworkAssociateV2Map{}) + pulumi.RegisterOutputType(NetworkAssociateV2Output{}) + pulumi.RegisterOutputType(NetworkAssociateV2ArrayOutput{}) + pulumi.RegisterOutputType(NetworkAssociateV2MapOutput{}) +} diff --git a/sdk/go/openstack/bgpvpn/portAssociateV2.go b/sdk/go/openstack/bgpvpn/portAssociateV2.go new file mode 100644 index 000000000..4604b122e --- /dev/null +++ b/sdk/go/openstack/bgpvpn/portAssociateV2.go @@ -0,0 +1,406 @@ +// 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 bgpvpn + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 BGP VPN port association resource within OpenStack. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := bgpvpn.NewPortAssociateV2(ctx, "association_1", &bgpvpn.PortAssociateV2Args{ +// BgpvpnId: pulumi.String("19382ec5-8098-47d9-a9c6-6270c91103f4"), +// PortId: pulumi.String("b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f"), +// Routes: bgpvpn.PortAssociateV2RouteArray{ +// &bgpvpn.PortAssociateV2RouteArgs{ +// Type: pulumi.String("prefix"), +// Prefix: pulumi.String("192.168.170.1/32"), +// }, +// &bgpvpn.PortAssociateV2RouteArgs{ +// Type: pulumi.String("bgpvpn"), +// BgpvpnId: pulumi.String("35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c"), +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// # BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port +// +// association ID separated by a slash, e.g.: +// +// hcl +// +// ```sh +// $ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf +// ``` +type PortAssociateV2 struct { + pulumi.CustomResourceState + + // A boolean flag indicating whether fixed + // IPs should be advertised. Defaults to true. + AdvertiseFixedIps pulumi.BoolOutput `pulumi:"advertiseFixedIps"` + // The ID of the BGP VPN to which the port will be + // associated. Changing this creates a new BGP VPN port association. + BgpvpnId pulumi.StringOutput `pulumi:"bgpvpnId"` + // The ID of the port to be associated with the BGP VPN. + // Changing this creates a new BGP VPN port association. + PortId pulumi.StringOutput `pulumi:"portId"` + // The ID of the project that owns the port + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN port + // association. + ProjectId pulumi.StringOutput `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN port association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN port association. + Region pulumi.StringOutput `pulumi:"region"` + // A list of dictionaries containing the following keys: + Routes PortAssociateV2RouteArrayOutput `pulumi:"routes"` +} + +// NewPortAssociateV2 registers a new resource with the given unique name, arguments, and options. +func NewPortAssociateV2(ctx *pulumi.Context, + name string, args *PortAssociateV2Args, opts ...pulumi.ResourceOption) (*PortAssociateV2, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.BgpvpnId == nil { + return nil, errors.New("invalid value for required argument 'BgpvpnId'") + } + if args.PortId == nil { + return nil, errors.New("invalid value for required argument 'PortId'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource PortAssociateV2 + err := ctx.RegisterResource("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetPortAssociateV2 gets an existing PortAssociateV2 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 GetPortAssociateV2(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *PortAssociateV2State, opts ...pulumi.ResourceOption) (*PortAssociateV2, error) { + var resource PortAssociateV2 + err := ctx.ReadResource("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering PortAssociateV2 resources. +type portAssociateV2State struct { + // A boolean flag indicating whether fixed + // IPs should be advertised. Defaults to true. + AdvertiseFixedIps *bool `pulumi:"advertiseFixedIps"` + // The ID of the BGP VPN to which the port will be + // associated. Changing this creates a new BGP VPN port association. + BgpvpnId *string `pulumi:"bgpvpnId"` + // The ID of the port to be associated with the BGP VPN. + // Changing this creates a new BGP VPN port association. + PortId *string `pulumi:"portId"` + // The ID of the project that owns the port + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN port + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN port association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN port association. + Region *string `pulumi:"region"` + // A list of dictionaries containing the following keys: + Routes []PortAssociateV2Route `pulumi:"routes"` +} + +type PortAssociateV2State struct { + // A boolean flag indicating whether fixed + // IPs should be advertised. Defaults to true. + AdvertiseFixedIps pulumi.BoolPtrInput + // The ID of the BGP VPN to which the port will be + // associated. Changing this creates a new BGP VPN port association. + BgpvpnId pulumi.StringPtrInput + // The ID of the port to be associated with the BGP VPN. + // Changing this creates a new BGP VPN port association. + PortId pulumi.StringPtrInput + // The ID of the project that owns the port + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN port + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN port association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN port association. + Region pulumi.StringPtrInput + // A list of dictionaries containing the following keys: + Routes PortAssociateV2RouteArrayInput +} + +func (PortAssociateV2State) ElementType() reflect.Type { + return reflect.TypeOf((*portAssociateV2State)(nil)).Elem() +} + +type portAssociateV2Args struct { + // A boolean flag indicating whether fixed + // IPs should be advertised. Defaults to true. + AdvertiseFixedIps *bool `pulumi:"advertiseFixedIps"` + // The ID of the BGP VPN to which the port will be + // associated. Changing this creates a new BGP VPN port association. + BgpvpnId string `pulumi:"bgpvpnId"` + // The ID of the port to be associated with the BGP VPN. + // Changing this creates a new BGP VPN port association. + PortId string `pulumi:"portId"` + // The ID of the project that owns the port + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN port + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN port association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN port association. + Region *string `pulumi:"region"` + // A list of dictionaries containing the following keys: + Routes []PortAssociateV2Route `pulumi:"routes"` +} + +// The set of arguments for constructing a PortAssociateV2 resource. +type PortAssociateV2Args struct { + // A boolean flag indicating whether fixed + // IPs should be advertised. Defaults to true. + AdvertiseFixedIps pulumi.BoolPtrInput + // The ID of the BGP VPN to which the port will be + // associated. Changing this creates a new BGP VPN port association. + BgpvpnId pulumi.StringInput + // The ID of the port to be associated with the BGP VPN. + // Changing this creates a new BGP VPN port association. + PortId pulumi.StringInput + // The ID of the project that owns the port + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN port + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN port association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN port association. + Region pulumi.StringPtrInput + // A list of dictionaries containing the following keys: + Routes PortAssociateV2RouteArrayInput +} + +func (PortAssociateV2Args) ElementType() reflect.Type { + return reflect.TypeOf((*portAssociateV2Args)(nil)).Elem() +} + +type PortAssociateV2Input interface { + pulumi.Input + + ToPortAssociateV2Output() PortAssociateV2Output + ToPortAssociateV2OutputWithContext(ctx context.Context) PortAssociateV2Output +} + +func (*PortAssociateV2) ElementType() reflect.Type { + return reflect.TypeOf((**PortAssociateV2)(nil)).Elem() +} + +func (i *PortAssociateV2) ToPortAssociateV2Output() PortAssociateV2Output { + return i.ToPortAssociateV2OutputWithContext(context.Background()) +} + +func (i *PortAssociateV2) ToPortAssociateV2OutputWithContext(ctx context.Context) PortAssociateV2Output { + return pulumi.ToOutputWithContext(ctx, i).(PortAssociateV2Output) +} + +// PortAssociateV2ArrayInput is an input type that accepts PortAssociateV2Array and PortAssociateV2ArrayOutput values. +// You can construct a concrete instance of `PortAssociateV2ArrayInput` via: +// +// PortAssociateV2Array{ PortAssociateV2Args{...} } +type PortAssociateV2ArrayInput interface { + pulumi.Input + + ToPortAssociateV2ArrayOutput() PortAssociateV2ArrayOutput + ToPortAssociateV2ArrayOutputWithContext(context.Context) PortAssociateV2ArrayOutput +} + +type PortAssociateV2Array []PortAssociateV2Input + +func (PortAssociateV2Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]*PortAssociateV2)(nil)).Elem() +} + +func (i PortAssociateV2Array) ToPortAssociateV2ArrayOutput() PortAssociateV2ArrayOutput { + return i.ToPortAssociateV2ArrayOutputWithContext(context.Background()) +} + +func (i PortAssociateV2Array) ToPortAssociateV2ArrayOutputWithContext(ctx context.Context) PortAssociateV2ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortAssociateV2ArrayOutput) +} + +// PortAssociateV2MapInput is an input type that accepts PortAssociateV2Map and PortAssociateV2MapOutput values. +// You can construct a concrete instance of `PortAssociateV2MapInput` via: +// +// PortAssociateV2Map{ "key": PortAssociateV2Args{...} } +type PortAssociateV2MapInput interface { + pulumi.Input + + ToPortAssociateV2MapOutput() PortAssociateV2MapOutput + ToPortAssociateV2MapOutputWithContext(context.Context) PortAssociateV2MapOutput +} + +type PortAssociateV2Map map[string]PortAssociateV2Input + +func (PortAssociateV2Map) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*PortAssociateV2)(nil)).Elem() +} + +func (i PortAssociateV2Map) ToPortAssociateV2MapOutput() PortAssociateV2MapOutput { + return i.ToPortAssociateV2MapOutputWithContext(context.Background()) +} + +func (i PortAssociateV2Map) ToPortAssociateV2MapOutputWithContext(ctx context.Context) PortAssociateV2MapOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortAssociateV2MapOutput) +} + +type PortAssociateV2Output struct{ *pulumi.OutputState } + +func (PortAssociateV2Output) ElementType() reflect.Type { + return reflect.TypeOf((**PortAssociateV2)(nil)).Elem() +} + +func (o PortAssociateV2Output) ToPortAssociateV2Output() PortAssociateV2Output { + return o +} + +func (o PortAssociateV2Output) ToPortAssociateV2OutputWithContext(ctx context.Context) PortAssociateV2Output { + return o +} + +// A boolean flag indicating whether fixed +// IPs should be advertised. Defaults to true. +func (o PortAssociateV2Output) AdvertiseFixedIps() pulumi.BoolOutput { + return o.ApplyT(func(v *PortAssociateV2) pulumi.BoolOutput { return v.AdvertiseFixedIps }).(pulumi.BoolOutput) +} + +// The ID of the BGP VPN to which the port will be +// associated. Changing this creates a new BGP VPN port association. +func (o PortAssociateV2Output) BgpvpnId() pulumi.StringOutput { + return o.ApplyT(func(v *PortAssociateV2) pulumi.StringOutput { return v.BgpvpnId }).(pulumi.StringOutput) +} + +// The ID of the port to be associated with the BGP VPN. +// Changing this creates a new BGP VPN port association. +func (o PortAssociateV2Output) PortId() pulumi.StringOutput { + return o.ApplyT(func(v *PortAssociateV2) pulumi.StringOutput { return v.PortId }).(pulumi.StringOutput) +} + +// The ID of the project that owns the port +// association. Only administrative and users with `advsvc` role can specify a +// project ID other than their own. Changing this creates a new BGP VPN port +// association. +func (o PortAssociateV2Output) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v *PortAssociateV2) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) +} + +// The region in which to obtain the V2 Networking client. +// A Networking client is needed to create a BGP VPN port association. If +// omitted, the `region` argument of the provider is used. Changing this creates +// a new BGP VPN port association. +func (o PortAssociateV2Output) Region() pulumi.StringOutput { + return o.ApplyT(func(v *PortAssociateV2) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +// A list of dictionaries containing the following keys: +func (o PortAssociateV2Output) Routes() PortAssociateV2RouteArrayOutput { + return o.ApplyT(func(v *PortAssociateV2) PortAssociateV2RouteArrayOutput { return v.Routes }).(PortAssociateV2RouteArrayOutput) +} + +type PortAssociateV2ArrayOutput struct{ *pulumi.OutputState } + +func (PortAssociateV2ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*PortAssociateV2)(nil)).Elem() +} + +func (o PortAssociateV2ArrayOutput) ToPortAssociateV2ArrayOutput() PortAssociateV2ArrayOutput { + return o +} + +func (o PortAssociateV2ArrayOutput) ToPortAssociateV2ArrayOutputWithContext(ctx context.Context) PortAssociateV2ArrayOutput { + return o +} + +func (o PortAssociateV2ArrayOutput) Index(i pulumi.IntInput) PortAssociateV2Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *PortAssociateV2 { + return vs[0].([]*PortAssociateV2)[vs[1].(int)] + }).(PortAssociateV2Output) +} + +type PortAssociateV2MapOutput struct{ *pulumi.OutputState } + +func (PortAssociateV2MapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*PortAssociateV2)(nil)).Elem() +} + +func (o PortAssociateV2MapOutput) ToPortAssociateV2MapOutput() PortAssociateV2MapOutput { + return o +} + +func (o PortAssociateV2MapOutput) ToPortAssociateV2MapOutputWithContext(ctx context.Context) PortAssociateV2MapOutput { + return o +} + +func (o PortAssociateV2MapOutput) MapIndex(k pulumi.StringInput) PortAssociateV2Output { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *PortAssociateV2 { + return vs[0].(map[string]*PortAssociateV2)[vs[1].(string)] + }).(PortAssociateV2Output) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*PortAssociateV2Input)(nil)).Elem(), &PortAssociateV2{}) + pulumi.RegisterInputType(reflect.TypeOf((*PortAssociateV2ArrayInput)(nil)).Elem(), PortAssociateV2Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*PortAssociateV2MapInput)(nil)).Elem(), PortAssociateV2Map{}) + pulumi.RegisterOutputType(PortAssociateV2Output{}) + pulumi.RegisterOutputType(PortAssociateV2ArrayOutput{}) + pulumi.RegisterOutputType(PortAssociateV2MapOutput{}) +} diff --git a/sdk/go/openstack/bgpvpn/pulumiTypes.go b/sdk/go/openstack/bgpvpn/pulumiTypes.go new file mode 100644 index 000000000..1b7b4a165 --- /dev/null +++ b/sdk/go/openstack/bgpvpn/pulumiTypes.go @@ -0,0 +1,160 @@ +// 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 bgpvpn + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +var _ = internal.GetEnvOrDefault + +type PortAssociateV2Route struct { + // The ID of the BGP VPN to be advertised. Required + // if `type` is `bgpvpn`. Conflicts with `prefix`. + BgpvpnId *string `pulumi:"bgpvpnId"` + // The BGP LOCAL\_PREF value of the routes that will + // be advertised. + LocalPref *int `pulumi:"localPref"` + // The CIDR prefix (v4 or v6) to be advertised. Required + // if `type` is `prefix`. Conflicts with `bgpvpnId`. + Prefix *string `pulumi:"prefix"` + // Can be `prefix` or `bgpvpn`. For the `prefix` type, the + // CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + // `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpnId` key. + Type string `pulumi:"type"` +} + +// PortAssociateV2RouteInput is an input type that accepts PortAssociateV2RouteArgs and PortAssociateV2RouteOutput values. +// You can construct a concrete instance of `PortAssociateV2RouteInput` via: +// +// PortAssociateV2RouteArgs{...} +type PortAssociateV2RouteInput interface { + pulumi.Input + + ToPortAssociateV2RouteOutput() PortAssociateV2RouteOutput + ToPortAssociateV2RouteOutputWithContext(context.Context) PortAssociateV2RouteOutput +} + +type PortAssociateV2RouteArgs struct { + // The ID of the BGP VPN to be advertised. Required + // if `type` is `bgpvpn`. Conflicts with `prefix`. + BgpvpnId pulumi.StringPtrInput `pulumi:"bgpvpnId"` + // The BGP LOCAL\_PREF value of the routes that will + // be advertised. + LocalPref pulumi.IntPtrInput `pulumi:"localPref"` + // The CIDR prefix (v4 or v6) to be advertised. Required + // if `type` is `prefix`. Conflicts with `bgpvpnId`. + Prefix pulumi.StringPtrInput `pulumi:"prefix"` + // Can be `prefix` or `bgpvpn`. For the `prefix` type, the + // CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + // `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpnId` key. + Type pulumi.StringInput `pulumi:"type"` +} + +func (PortAssociateV2RouteArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PortAssociateV2Route)(nil)).Elem() +} + +func (i PortAssociateV2RouteArgs) ToPortAssociateV2RouteOutput() PortAssociateV2RouteOutput { + return i.ToPortAssociateV2RouteOutputWithContext(context.Background()) +} + +func (i PortAssociateV2RouteArgs) ToPortAssociateV2RouteOutputWithContext(ctx context.Context) PortAssociateV2RouteOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortAssociateV2RouteOutput) +} + +// PortAssociateV2RouteArrayInput is an input type that accepts PortAssociateV2RouteArray and PortAssociateV2RouteArrayOutput values. +// You can construct a concrete instance of `PortAssociateV2RouteArrayInput` via: +// +// PortAssociateV2RouteArray{ PortAssociateV2RouteArgs{...} } +type PortAssociateV2RouteArrayInput interface { + pulumi.Input + + ToPortAssociateV2RouteArrayOutput() PortAssociateV2RouteArrayOutput + ToPortAssociateV2RouteArrayOutputWithContext(context.Context) PortAssociateV2RouteArrayOutput +} + +type PortAssociateV2RouteArray []PortAssociateV2RouteInput + +func (PortAssociateV2RouteArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PortAssociateV2Route)(nil)).Elem() +} + +func (i PortAssociateV2RouteArray) ToPortAssociateV2RouteArrayOutput() PortAssociateV2RouteArrayOutput { + return i.ToPortAssociateV2RouteArrayOutputWithContext(context.Background()) +} + +func (i PortAssociateV2RouteArray) ToPortAssociateV2RouteArrayOutputWithContext(ctx context.Context) PortAssociateV2RouteArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortAssociateV2RouteArrayOutput) +} + +type PortAssociateV2RouteOutput struct{ *pulumi.OutputState } + +func (PortAssociateV2RouteOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PortAssociateV2Route)(nil)).Elem() +} + +func (o PortAssociateV2RouteOutput) ToPortAssociateV2RouteOutput() PortAssociateV2RouteOutput { + return o +} + +func (o PortAssociateV2RouteOutput) ToPortAssociateV2RouteOutputWithContext(ctx context.Context) PortAssociateV2RouteOutput { + return o +} + +// The ID of the BGP VPN to be advertised. Required +// if `type` is `bgpvpn`. Conflicts with `prefix`. +func (o PortAssociateV2RouteOutput) BgpvpnId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PortAssociateV2Route) *string { return v.BgpvpnId }).(pulumi.StringPtrOutput) +} + +// The BGP LOCAL\_PREF value of the routes that will +// be advertised. +func (o PortAssociateV2RouteOutput) LocalPref() pulumi.IntPtrOutput { + return o.ApplyT(func(v PortAssociateV2Route) *int { return v.LocalPref }).(pulumi.IntPtrOutput) +} + +// The CIDR prefix (v4 or v6) to be advertised. Required +// if `type` is `prefix`. Conflicts with `bgpvpnId`. +func (o PortAssociateV2RouteOutput) Prefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v PortAssociateV2Route) *string { return v.Prefix }).(pulumi.StringPtrOutput) +} + +// Can be `prefix` or `bgpvpn`. For the `prefix` type, the +// CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the +// `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpnId` key. +func (o PortAssociateV2RouteOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v PortAssociateV2Route) string { return v.Type }).(pulumi.StringOutput) +} + +type PortAssociateV2RouteArrayOutput struct{ *pulumi.OutputState } + +func (PortAssociateV2RouteArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PortAssociateV2Route)(nil)).Elem() +} + +func (o PortAssociateV2RouteArrayOutput) ToPortAssociateV2RouteArrayOutput() PortAssociateV2RouteArrayOutput { + return o +} + +func (o PortAssociateV2RouteArrayOutput) ToPortAssociateV2RouteArrayOutputWithContext(ctx context.Context) PortAssociateV2RouteArrayOutput { + return o +} + +func (o PortAssociateV2RouteArrayOutput) Index(i pulumi.IntInput) PortAssociateV2RouteOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PortAssociateV2Route { + return vs[0].([]PortAssociateV2Route)[vs[1].(int)] + }).(PortAssociateV2RouteOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*PortAssociateV2RouteInput)(nil)).Elem(), PortAssociateV2RouteArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PortAssociateV2RouteArrayInput)(nil)).Elem(), PortAssociateV2RouteArray{}) + pulumi.RegisterOutputType(PortAssociateV2RouteOutput{}) + pulumi.RegisterOutputType(PortAssociateV2RouteArrayOutput{}) +} diff --git a/sdk/go/openstack/bgpvpn/routerAssociateV2.go b/sdk/go/openstack/bgpvpn/routerAssociateV2.go new file mode 100644 index 000000000..8eea35158 --- /dev/null +++ b/sdk/go/openstack/bgpvpn/routerAssociateV2.go @@ -0,0 +1,381 @@ +// 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 bgpvpn + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 BGP VPN router association resource within OpenStack. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := bgpvpn.NewRouterAssociateV2(ctx, "association_1", &bgpvpn.RouterAssociateV2Args{ +// BgpvpnId: pulumi.String("d57d39e1-dc63-44fd-8cbd-a4e1488100c5"), +// RouterId: pulumi.String("423fa80f-e0d7-4d02-a9a5-8b8c05812bf6"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// # BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN +// +// router association ID separated by a slash, e.g.: +// +// hcl +// +// ```sh +// $ pulumi import openstack:bgpvpn/routerAssociateV2:RouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f +// ``` +type RouterAssociateV2 struct { + pulumi.CustomResourceState + + // A boolean flag indicating whether extra + // routes should be advertised. Defaults to true. + AdvertiseExtraRoutes pulumi.BoolOutput `pulumi:"advertiseExtraRoutes"` + // The ID of the BGP VPN to which the router will be + // associated. Changing this creates a new BGP VPN router association. + BgpvpnId pulumi.StringOutput `pulumi:"bgpvpnId"` + // The ID of the project that owns the BGP VPN router + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN router + // association. + ProjectId pulumi.StringOutput `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN router association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN router association. + Region pulumi.StringOutput `pulumi:"region"` + // The ID of the router to be associated with the BGP + // VPN. Changing this creates a new BGP VPN router association. + RouterId pulumi.StringOutput `pulumi:"routerId"` +} + +// NewRouterAssociateV2 registers a new resource with the given unique name, arguments, and options. +func NewRouterAssociateV2(ctx *pulumi.Context, + name string, args *RouterAssociateV2Args, opts ...pulumi.ResourceOption) (*RouterAssociateV2, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.BgpvpnId == nil { + return nil, errors.New("invalid value for required argument 'BgpvpnId'") + } + if args.RouterId == nil { + return nil, errors.New("invalid value for required argument 'RouterId'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource RouterAssociateV2 + err := ctx.RegisterResource("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRouterAssociateV2 gets an existing RouterAssociateV2 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 GetRouterAssociateV2(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RouterAssociateV2State, opts ...pulumi.ResourceOption) (*RouterAssociateV2, error) { + var resource RouterAssociateV2 + err := ctx.ReadResource("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering RouterAssociateV2 resources. +type routerAssociateV2State struct { + // A boolean flag indicating whether extra + // routes should be advertised. Defaults to true. + AdvertiseExtraRoutes *bool `pulumi:"advertiseExtraRoutes"` + // The ID of the BGP VPN to which the router will be + // associated. Changing this creates a new BGP VPN router association. + BgpvpnId *string `pulumi:"bgpvpnId"` + // The ID of the project that owns the BGP VPN router + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN router + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN router association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN router association. + Region *string `pulumi:"region"` + // The ID of the router to be associated with the BGP + // VPN. Changing this creates a new BGP VPN router association. + RouterId *string `pulumi:"routerId"` +} + +type RouterAssociateV2State struct { + // A boolean flag indicating whether extra + // routes should be advertised. Defaults to true. + AdvertiseExtraRoutes pulumi.BoolPtrInput + // The ID of the BGP VPN to which the router will be + // associated. Changing this creates a new BGP VPN router association. + BgpvpnId pulumi.StringPtrInput + // The ID of the project that owns the BGP VPN router + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN router + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN router association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN router association. + Region pulumi.StringPtrInput + // The ID of the router to be associated with the BGP + // VPN. Changing this creates a new BGP VPN router association. + RouterId pulumi.StringPtrInput +} + +func (RouterAssociateV2State) ElementType() reflect.Type { + return reflect.TypeOf((*routerAssociateV2State)(nil)).Elem() +} + +type routerAssociateV2Args struct { + // A boolean flag indicating whether extra + // routes should be advertised. Defaults to true. + AdvertiseExtraRoutes *bool `pulumi:"advertiseExtraRoutes"` + // The ID of the BGP VPN to which the router will be + // associated. Changing this creates a new BGP VPN router association. + BgpvpnId string `pulumi:"bgpvpnId"` + // The ID of the project that owns the BGP VPN router + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN router + // association. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN router association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN router association. + Region *string `pulumi:"region"` + // The ID of the router to be associated with the BGP + // VPN. Changing this creates a new BGP VPN router association. + RouterId string `pulumi:"routerId"` +} + +// The set of arguments for constructing a RouterAssociateV2 resource. +type RouterAssociateV2Args struct { + // A boolean flag indicating whether extra + // routes should be advertised. Defaults to true. + AdvertiseExtraRoutes pulumi.BoolPtrInput + // The ID of the BGP VPN to which the router will be + // associated. Changing this creates a new BGP VPN router association. + BgpvpnId pulumi.StringInput + // The ID of the project that owns the BGP VPN router + // association. Only administrative and users with `advsvc` role can specify a + // project ID other than their own. Changing this creates a new BGP VPN router + // association. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN router association. If + // omitted, the `region` argument of the provider is used. Changing this creates + // a new BGP VPN router association. + Region pulumi.StringPtrInput + // The ID of the router to be associated with the BGP + // VPN. Changing this creates a new BGP VPN router association. + RouterId pulumi.StringInput +} + +func (RouterAssociateV2Args) ElementType() reflect.Type { + return reflect.TypeOf((*routerAssociateV2Args)(nil)).Elem() +} + +type RouterAssociateV2Input interface { + pulumi.Input + + ToRouterAssociateV2Output() RouterAssociateV2Output + ToRouterAssociateV2OutputWithContext(ctx context.Context) RouterAssociateV2Output +} + +func (*RouterAssociateV2) ElementType() reflect.Type { + return reflect.TypeOf((**RouterAssociateV2)(nil)).Elem() +} + +func (i *RouterAssociateV2) ToRouterAssociateV2Output() RouterAssociateV2Output { + return i.ToRouterAssociateV2OutputWithContext(context.Background()) +} + +func (i *RouterAssociateV2) ToRouterAssociateV2OutputWithContext(ctx context.Context) RouterAssociateV2Output { + return pulumi.ToOutputWithContext(ctx, i).(RouterAssociateV2Output) +} + +// RouterAssociateV2ArrayInput is an input type that accepts RouterAssociateV2Array and RouterAssociateV2ArrayOutput values. +// You can construct a concrete instance of `RouterAssociateV2ArrayInput` via: +// +// RouterAssociateV2Array{ RouterAssociateV2Args{...} } +type RouterAssociateV2ArrayInput interface { + pulumi.Input + + ToRouterAssociateV2ArrayOutput() RouterAssociateV2ArrayOutput + ToRouterAssociateV2ArrayOutputWithContext(context.Context) RouterAssociateV2ArrayOutput +} + +type RouterAssociateV2Array []RouterAssociateV2Input + +func (RouterAssociateV2Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouterAssociateV2)(nil)).Elem() +} + +func (i RouterAssociateV2Array) ToRouterAssociateV2ArrayOutput() RouterAssociateV2ArrayOutput { + return i.ToRouterAssociateV2ArrayOutputWithContext(context.Background()) +} + +func (i RouterAssociateV2Array) ToRouterAssociateV2ArrayOutputWithContext(ctx context.Context) RouterAssociateV2ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouterAssociateV2ArrayOutput) +} + +// RouterAssociateV2MapInput is an input type that accepts RouterAssociateV2Map and RouterAssociateV2MapOutput values. +// You can construct a concrete instance of `RouterAssociateV2MapInput` via: +// +// RouterAssociateV2Map{ "key": RouterAssociateV2Args{...} } +type RouterAssociateV2MapInput interface { + pulumi.Input + + ToRouterAssociateV2MapOutput() RouterAssociateV2MapOutput + ToRouterAssociateV2MapOutputWithContext(context.Context) RouterAssociateV2MapOutput +} + +type RouterAssociateV2Map map[string]RouterAssociateV2Input + +func (RouterAssociateV2Map) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouterAssociateV2)(nil)).Elem() +} + +func (i RouterAssociateV2Map) ToRouterAssociateV2MapOutput() RouterAssociateV2MapOutput { + return i.ToRouterAssociateV2MapOutputWithContext(context.Background()) +} + +func (i RouterAssociateV2Map) ToRouterAssociateV2MapOutputWithContext(ctx context.Context) RouterAssociateV2MapOutput { + return pulumi.ToOutputWithContext(ctx, i).(RouterAssociateV2MapOutput) +} + +type RouterAssociateV2Output struct{ *pulumi.OutputState } + +func (RouterAssociateV2Output) ElementType() reflect.Type { + return reflect.TypeOf((**RouterAssociateV2)(nil)).Elem() +} + +func (o RouterAssociateV2Output) ToRouterAssociateV2Output() RouterAssociateV2Output { + return o +} + +func (o RouterAssociateV2Output) ToRouterAssociateV2OutputWithContext(ctx context.Context) RouterAssociateV2Output { + return o +} + +// A boolean flag indicating whether extra +// routes should be advertised. Defaults to true. +func (o RouterAssociateV2Output) AdvertiseExtraRoutes() pulumi.BoolOutput { + return o.ApplyT(func(v *RouterAssociateV2) pulumi.BoolOutput { return v.AdvertiseExtraRoutes }).(pulumi.BoolOutput) +} + +// The ID of the BGP VPN to which the router will be +// associated. Changing this creates a new BGP VPN router association. +func (o RouterAssociateV2Output) BgpvpnId() pulumi.StringOutput { + return o.ApplyT(func(v *RouterAssociateV2) pulumi.StringOutput { return v.BgpvpnId }).(pulumi.StringOutput) +} + +// The ID of the project that owns the BGP VPN router +// association. Only administrative and users with `advsvc` role can specify a +// project ID other than their own. Changing this creates a new BGP VPN router +// association. +func (o RouterAssociateV2Output) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v *RouterAssociateV2) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) +} + +// The region in which to obtain the V2 Networking client. +// A Networking client is needed to create a BGP VPN router association. If +// omitted, the `region` argument of the provider is used. Changing this creates +// a new BGP VPN router association. +func (o RouterAssociateV2Output) Region() pulumi.StringOutput { + return o.ApplyT(func(v *RouterAssociateV2) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +// The ID of the router to be associated with the BGP +// VPN. Changing this creates a new BGP VPN router association. +func (o RouterAssociateV2Output) RouterId() pulumi.StringOutput { + return o.ApplyT(func(v *RouterAssociateV2) pulumi.StringOutput { return v.RouterId }).(pulumi.StringOutput) +} + +type RouterAssociateV2ArrayOutput struct{ *pulumi.OutputState } + +func (RouterAssociateV2ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*RouterAssociateV2)(nil)).Elem() +} + +func (o RouterAssociateV2ArrayOutput) ToRouterAssociateV2ArrayOutput() RouterAssociateV2ArrayOutput { + return o +} + +func (o RouterAssociateV2ArrayOutput) ToRouterAssociateV2ArrayOutputWithContext(ctx context.Context) RouterAssociateV2ArrayOutput { + return o +} + +func (o RouterAssociateV2ArrayOutput) Index(i pulumi.IntInput) RouterAssociateV2Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *RouterAssociateV2 { + return vs[0].([]*RouterAssociateV2)[vs[1].(int)] + }).(RouterAssociateV2Output) +} + +type RouterAssociateV2MapOutput struct{ *pulumi.OutputState } + +func (RouterAssociateV2MapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*RouterAssociateV2)(nil)).Elem() +} + +func (o RouterAssociateV2MapOutput) ToRouterAssociateV2MapOutput() RouterAssociateV2MapOutput { + return o +} + +func (o RouterAssociateV2MapOutput) ToRouterAssociateV2MapOutputWithContext(ctx context.Context) RouterAssociateV2MapOutput { + return o +} + +func (o RouterAssociateV2MapOutput) MapIndex(k pulumi.StringInput) RouterAssociateV2Output { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *RouterAssociateV2 { + return vs[0].(map[string]*RouterAssociateV2)[vs[1].(string)] + }).(RouterAssociateV2Output) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*RouterAssociateV2Input)(nil)).Elem(), &RouterAssociateV2{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouterAssociateV2ArrayInput)(nil)).Elem(), RouterAssociateV2Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*RouterAssociateV2MapInput)(nil)).Elem(), RouterAssociateV2Map{}) + pulumi.RegisterOutputType(RouterAssociateV2Output{}) + pulumi.RegisterOutputType(RouterAssociateV2ArrayOutput{}) + pulumi.RegisterOutputType(RouterAssociateV2MapOutput{}) +} diff --git a/sdk/go/openstack/bgpvpn/v2.go b/sdk/go/openstack/bgpvpn/v2.go new file mode 100644 index 000000000..d7cbce269 --- /dev/null +++ b/sdk/go/openstack/bgpvpn/v2.go @@ -0,0 +1,526 @@ +// 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 bgpvpn + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 BGP VPN service resource within OpenStack. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := bgpvpn.NewV2(ctx, "bgpvpn_1", &bgpvpn.V2Args{ +// Name: pulumi.String("bgpvpn1"), +// RouteDistinguishers: pulumi.StringArray{ +// pulumi.String("64512:1"), +// }, +// RouteTargets: pulumi.StringArray{ +// pulumi.String("64512:1"), +// }, +// ImportTargets: pulumi.StringArray{ +// pulumi.String("64512:2"), +// }, +// ExportTargets: pulumi.StringArray{ +// pulumi.String("64512:3"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// BGP VPNs can be imported using the `id`, e.g. +// +// hcl +// +// ```sh +// $ pulumi import openstack:bgpvpn/v2:V2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c +// ``` +type V2 struct { + pulumi.CustomResourceState + + // A list of additional Route Targets that will be + // used for export. + ExportTargets pulumi.StringArrayOutput `pulumi:"exportTargets"` + // A list of additional Route Targets that will be + // imported. + ImportTargets pulumi.StringArrayOutput `pulumi:"importTargets"` + // The default BGP LOCAL\_PREF of routes that will be + // advertised to the BGP VPN, unless overridden per-route. + LocalPref pulumi.IntPtrOutput `pulumi:"localPref"` + // The name of the BGP VPN. Changing this updates the name of + // the existing BGP VPN. + Name pulumi.StringOutput `pulumi:"name"` + // A list of network IDs that are associated with the BGP VPN. + Networks pulumi.StringArrayOutput `pulumi:"networks"` + // A list of port IDs that are associated with the BGP VPN. + Ports pulumi.StringArrayOutput `pulumi:"ports"` + // The ID of the project that owns the BGPVPN. Only + // administrative and users with `advsvc` role can specify a project ID other + // than their own. Changing this creates a new BGP VPN. + ProjectId pulumi.StringOutput `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN service. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // BGP VPN. + Region pulumi.StringOutput `pulumi:"region"` + // A list of route distinguisher strings. If + // specified, one of these RDs will be used to advertise VPN routes. + RouteDistinguishers pulumi.StringArrayOutput `pulumi:"routeDistinguishers"` + // A list of Route Targets that will be both + // imported and used for export. + RouteTargets pulumi.StringArrayOutput `pulumi:"routeTargets"` + // A list of router IDs that are associated with the BGP VPN. + Routers pulumi.StringArrayOutput `pulumi:"routers"` + // Indicates whether the BGP VPN is shared across projects. + Shared pulumi.BoolOutput `pulumi:"shared"` + // The type of the BGP VPN (either `l2` or `l3`). Changing this + // creates a new BGP VPN. Defaults to `l3`. + Type pulumi.StringOutput `pulumi:"type"` + // The globally-assigned VXLAN VNI for the BGP VPN. Changing + // this creates a new BGP VPN. + Vni pulumi.IntPtrOutput `pulumi:"vni"` +} + +// NewV2 registers a new resource with the given unique name, arguments, and options. +func NewV2(ctx *pulumi.Context, + name string, args *V2Args, opts ...pulumi.ResourceOption) (*V2, error) { + if args == nil { + args = &V2Args{} + } + + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/bgpvpnV2:BgpvpnV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource V2 + err := ctx.RegisterResource("openstack:bgpvpn/v2:V2", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetV2 gets an existing V2 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 GetV2(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *V2State, opts ...pulumi.ResourceOption) (*V2, error) { + var resource V2 + err := ctx.ReadResource("openstack:bgpvpn/v2:V2", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering V2 resources. +type v2State struct { + // A list of additional Route Targets that will be + // used for export. + ExportTargets []string `pulumi:"exportTargets"` + // A list of additional Route Targets that will be + // imported. + ImportTargets []string `pulumi:"importTargets"` + // The default BGP LOCAL\_PREF of routes that will be + // advertised to the BGP VPN, unless overridden per-route. + LocalPref *int `pulumi:"localPref"` + // The name of the BGP VPN. Changing this updates the name of + // the existing BGP VPN. + Name *string `pulumi:"name"` + // A list of network IDs that are associated with the BGP VPN. + Networks []string `pulumi:"networks"` + // A list of port IDs that are associated with the BGP VPN. + Ports []string `pulumi:"ports"` + // The ID of the project that owns the BGPVPN. Only + // administrative and users with `advsvc` role can specify a project ID other + // than their own. Changing this creates a new BGP VPN. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN service. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // BGP VPN. + Region *string `pulumi:"region"` + // A list of route distinguisher strings. If + // specified, one of these RDs will be used to advertise VPN routes. + RouteDistinguishers []string `pulumi:"routeDistinguishers"` + // A list of Route Targets that will be both + // imported and used for export. + RouteTargets []string `pulumi:"routeTargets"` + // A list of router IDs that are associated with the BGP VPN. + Routers []string `pulumi:"routers"` + // Indicates whether the BGP VPN is shared across projects. + Shared *bool `pulumi:"shared"` + // The type of the BGP VPN (either `l2` or `l3`). Changing this + // creates a new BGP VPN. Defaults to `l3`. + Type *string `pulumi:"type"` + // The globally-assigned VXLAN VNI for the BGP VPN. Changing + // this creates a new BGP VPN. + Vni *int `pulumi:"vni"` +} + +type V2State struct { + // A list of additional Route Targets that will be + // used for export. + ExportTargets pulumi.StringArrayInput + // A list of additional Route Targets that will be + // imported. + ImportTargets pulumi.StringArrayInput + // The default BGP LOCAL\_PREF of routes that will be + // advertised to the BGP VPN, unless overridden per-route. + LocalPref pulumi.IntPtrInput + // The name of the BGP VPN. Changing this updates the name of + // the existing BGP VPN. + Name pulumi.StringPtrInput + // A list of network IDs that are associated with the BGP VPN. + Networks pulumi.StringArrayInput + // A list of port IDs that are associated with the BGP VPN. + Ports pulumi.StringArrayInput + // The ID of the project that owns the BGPVPN. Only + // administrative and users with `advsvc` role can specify a project ID other + // than their own. Changing this creates a new BGP VPN. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN service. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // BGP VPN. + Region pulumi.StringPtrInput + // A list of route distinguisher strings. If + // specified, one of these RDs will be used to advertise VPN routes. + RouteDistinguishers pulumi.StringArrayInput + // A list of Route Targets that will be both + // imported and used for export. + RouteTargets pulumi.StringArrayInput + // A list of router IDs that are associated with the BGP VPN. + Routers pulumi.StringArrayInput + // Indicates whether the BGP VPN is shared across projects. + Shared pulumi.BoolPtrInput + // The type of the BGP VPN (either `l2` or `l3`). Changing this + // creates a new BGP VPN. Defaults to `l3`. + Type pulumi.StringPtrInput + // The globally-assigned VXLAN VNI for the BGP VPN. Changing + // this creates a new BGP VPN. + Vni pulumi.IntPtrInput +} + +func (V2State) ElementType() reflect.Type { + return reflect.TypeOf((*v2State)(nil)).Elem() +} + +type v2Args struct { + // A list of additional Route Targets that will be + // used for export. + ExportTargets []string `pulumi:"exportTargets"` + // A list of additional Route Targets that will be + // imported. + ImportTargets []string `pulumi:"importTargets"` + // The default BGP LOCAL\_PREF of routes that will be + // advertised to the BGP VPN, unless overridden per-route. + LocalPref *int `pulumi:"localPref"` + // The name of the BGP VPN. Changing this updates the name of + // the existing BGP VPN. + Name *string `pulumi:"name"` + // The ID of the project that owns the BGPVPN. Only + // administrative and users with `advsvc` role can specify a project ID other + // than their own. Changing this creates a new BGP VPN. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN service. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // BGP VPN. + Region *string `pulumi:"region"` + // A list of route distinguisher strings. If + // specified, one of these RDs will be used to advertise VPN routes. + RouteDistinguishers []string `pulumi:"routeDistinguishers"` + // A list of Route Targets that will be both + // imported and used for export. + RouteTargets []string `pulumi:"routeTargets"` + // The type of the BGP VPN (either `l2` or `l3`). Changing this + // creates a new BGP VPN. Defaults to `l3`. + Type *string `pulumi:"type"` + // The globally-assigned VXLAN VNI for the BGP VPN. Changing + // this creates a new BGP VPN. + Vni *int `pulumi:"vni"` +} + +// The set of arguments for constructing a V2 resource. +type V2Args struct { + // A list of additional Route Targets that will be + // used for export. + ExportTargets pulumi.StringArrayInput + // A list of additional Route Targets that will be + // imported. + ImportTargets pulumi.StringArrayInput + // The default BGP LOCAL\_PREF of routes that will be + // advertised to the BGP VPN, unless overridden per-route. + LocalPref pulumi.IntPtrInput + // The name of the BGP VPN. Changing this updates the name of + // the existing BGP VPN. + Name pulumi.StringPtrInput + // The ID of the project that owns the BGPVPN. Only + // administrative and users with `advsvc` role can specify a project ID other + // than their own. Changing this creates a new BGP VPN. + ProjectId pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create a BGP VPN service. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // BGP VPN. + Region pulumi.StringPtrInput + // A list of route distinguisher strings. If + // specified, one of these RDs will be used to advertise VPN routes. + RouteDistinguishers pulumi.StringArrayInput + // A list of Route Targets that will be both + // imported and used for export. + RouteTargets pulumi.StringArrayInput + // The type of the BGP VPN (either `l2` or `l3`). Changing this + // creates a new BGP VPN. Defaults to `l3`. + Type pulumi.StringPtrInput + // The globally-assigned VXLAN VNI for the BGP VPN. Changing + // this creates a new BGP VPN. + Vni pulumi.IntPtrInput +} + +func (V2Args) ElementType() reflect.Type { + return reflect.TypeOf((*v2Args)(nil)).Elem() +} + +type V2Input interface { + pulumi.Input + + ToV2Output() V2Output + ToV2OutputWithContext(ctx context.Context) V2Output +} + +func (*V2) ElementType() reflect.Type { + return reflect.TypeOf((**V2)(nil)).Elem() +} + +func (i *V2) ToV2Output() V2Output { + return i.ToV2OutputWithContext(context.Background()) +} + +func (i *V2) ToV2OutputWithContext(ctx context.Context) V2Output { + return pulumi.ToOutputWithContext(ctx, i).(V2Output) +} + +// V2ArrayInput is an input type that accepts V2Array and V2ArrayOutput values. +// You can construct a concrete instance of `V2ArrayInput` via: +// +// V2Array{ V2Args{...} } +type V2ArrayInput interface { + pulumi.Input + + ToV2ArrayOutput() V2ArrayOutput + ToV2ArrayOutputWithContext(context.Context) V2ArrayOutput +} + +type V2Array []V2Input + +func (V2Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]*V2)(nil)).Elem() +} + +func (i V2Array) ToV2ArrayOutput() V2ArrayOutput { + return i.ToV2ArrayOutputWithContext(context.Background()) +} + +func (i V2Array) ToV2ArrayOutputWithContext(ctx context.Context) V2ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(V2ArrayOutput) +} + +// V2MapInput is an input type that accepts V2Map and V2MapOutput values. +// You can construct a concrete instance of `V2MapInput` via: +// +// V2Map{ "key": V2Args{...} } +type V2MapInput interface { + pulumi.Input + + ToV2MapOutput() V2MapOutput + ToV2MapOutputWithContext(context.Context) V2MapOutput +} + +type V2Map map[string]V2Input + +func (V2Map) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*V2)(nil)).Elem() +} + +func (i V2Map) ToV2MapOutput() V2MapOutput { + return i.ToV2MapOutputWithContext(context.Background()) +} + +func (i V2Map) ToV2MapOutputWithContext(ctx context.Context) V2MapOutput { + return pulumi.ToOutputWithContext(ctx, i).(V2MapOutput) +} + +type V2Output struct{ *pulumi.OutputState } + +func (V2Output) ElementType() reflect.Type { + return reflect.TypeOf((**V2)(nil)).Elem() +} + +func (o V2Output) ToV2Output() V2Output { + return o +} + +func (o V2Output) ToV2OutputWithContext(ctx context.Context) V2Output { + return o +} + +// A list of additional Route Targets that will be +// used for export. +func (o V2Output) ExportTargets() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.ExportTargets }).(pulumi.StringArrayOutput) +} + +// A list of additional Route Targets that will be +// imported. +func (o V2Output) ImportTargets() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.ImportTargets }).(pulumi.StringArrayOutput) +} + +// The default BGP LOCAL\_PREF of routes that will be +// advertised to the BGP VPN, unless overridden per-route. +func (o V2Output) LocalPref() pulumi.IntPtrOutput { + return o.ApplyT(func(v *V2) pulumi.IntPtrOutput { return v.LocalPref }).(pulumi.IntPtrOutput) +} + +// The name of the BGP VPN. Changing this updates the name of +// the existing BGP VPN. +func (o V2Output) Name() pulumi.StringOutput { + return o.ApplyT(func(v *V2) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// A list of network IDs that are associated with the BGP VPN. +func (o V2Output) Networks() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.Networks }).(pulumi.StringArrayOutput) +} + +// A list of port IDs that are associated with the BGP VPN. +func (o V2Output) Ports() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.Ports }).(pulumi.StringArrayOutput) +} + +// The ID of the project that owns the BGPVPN. Only +// administrative and users with `advsvc` role can specify a project ID other +// than their own. Changing this creates a new BGP VPN. +func (o V2Output) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v *V2) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) +} + +// The region in which to obtain the V2 Networking client. +// A Networking client is needed to create a BGP VPN service. If omitted, the +// `region` argument of the provider is used. Changing this creates a new +// BGP VPN. +func (o V2Output) Region() pulumi.StringOutput { + return o.ApplyT(func(v *V2) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +// A list of route distinguisher strings. If +// specified, one of these RDs will be used to advertise VPN routes. +func (o V2Output) RouteDistinguishers() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.RouteDistinguishers }).(pulumi.StringArrayOutput) +} + +// A list of Route Targets that will be both +// imported and used for export. +func (o V2Output) RouteTargets() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.RouteTargets }).(pulumi.StringArrayOutput) +} + +// A list of router IDs that are associated with the BGP VPN. +func (o V2Output) Routers() pulumi.StringArrayOutput { + return o.ApplyT(func(v *V2) pulumi.StringArrayOutput { return v.Routers }).(pulumi.StringArrayOutput) +} + +// Indicates whether the BGP VPN is shared across projects. +func (o V2Output) Shared() pulumi.BoolOutput { + return o.ApplyT(func(v *V2) pulumi.BoolOutput { return v.Shared }).(pulumi.BoolOutput) +} + +// The type of the BGP VPN (either `l2` or `l3`). Changing this +// creates a new BGP VPN. Defaults to `l3`. +func (o V2Output) Type() pulumi.StringOutput { + return o.ApplyT(func(v *V2) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +// The globally-assigned VXLAN VNI for the BGP VPN. Changing +// this creates a new BGP VPN. +func (o V2Output) Vni() pulumi.IntPtrOutput { + return o.ApplyT(func(v *V2) pulumi.IntPtrOutput { return v.Vni }).(pulumi.IntPtrOutput) +} + +type V2ArrayOutput struct{ *pulumi.OutputState } + +func (V2ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*V2)(nil)).Elem() +} + +func (o V2ArrayOutput) ToV2ArrayOutput() V2ArrayOutput { + return o +} + +func (o V2ArrayOutput) ToV2ArrayOutputWithContext(ctx context.Context) V2ArrayOutput { + return o +} + +func (o V2ArrayOutput) Index(i pulumi.IntInput) V2Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *V2 { + return vs[0].([]*V2)[vs[1].(int)] + }).(V2Output) +} + +type V2MapOutput struct{ *pulumi.OutputState } + +func (V2MapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*V2)(nil)).Elem() +} + +func (o V2MapOutput) ToV2MapOutput() V2MapOutput { + return o +} + +func (o V2MapOutput) ToV2MapOutputWithContext(ctx context.Context) V2MapOutput { + return o +} + +func (o V2MapOutput) MapIndex(k pulumi.StringInput) V2Output { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *V2 { + return vs[0].(map[string]*V2)[vs[1].(string)] + }).(V2Output) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*V2Input)(nil)).Elem(), &V2{}) + pulumi.RegisterInputType(reflect.TypeOf((*V2ArrayInput)(nil)).Elem(), V2Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*V2MapInput)(nil)).Elem(), V2Map{}) + pulumi.RegisterOutputType(V2Output{}) + pulumi.RegisterOutputType(V2ArrayOutput{}) + pulumi.RegisterOutputType(V2MapOutput{}) +} diff --git a/sdk/go/openstack/bgpvpnNetworkAssociateV2.go b/sdk/go/openstack/bgpvpnNetworkAssociateV2.go index bdac5ba2b..1d2aa113f 100644 --- a/sdk/go/openstack/bgpvpnNetworkAssociateV2.go +++ b/sdk/go/openstack/bgpvpnNetworkAssociateV2.go @@ -21,14 +21,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewBgpvpnNetworkAssociateV2(ctx, "association_1", &openstack.BgpvpnNetworkAssociateV2Args{ +// _, err := bgpvpn.NewNetworkAssociateV2(ctx, "association_1", &bgpvpn.NetworkAssociateV2Args{ // BgpvpnId: pulumi.String("e7189337-5684-46ee-bcb1-44f1a57066c9"), // NetworkId: pulumi.String("de83d56c-4d2f-44f7-ac24-af393252204f"), // }) @@ -52,6 +52,8 @@ import ( // ```sh // $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 // ``` +// +// Deprecated: openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 type BgpvpnNetworkAssociateV2 struct { pulumi.CustomResourceState diff --git a/sdk/go/openstack/bgpvpnPortAssociateV2.go b/sdk/go/openstack/bgpvpnPortAssociateV2.go index 27c0ec847..a06a51bee 100644 --- a/sdk/go/openstack/bgpvpnPortAssociateV2.go +++ b/sdk/go/openstack/bgpvpnPortAssociateV2.go @@ -21,22 +21,22 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewBgpvpnPortAssociateV2(ctx, "association_1", &openstack.BgpvpnPortAssociateV2Args{ +// _, err := bgpvpn.NewPortAssociateV2(ctx, "association_1", &bgpvpn.PortAssociateV2Args{ // BgpvpnId: pulumi.String("19382ec5-8098-47d9-a9c6-6270c91103f4"), // PortId: pulumi.String("b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f"), -// Routes: openstack.BgpvpnPortAssociateV2RouteArray{ -// &openstack.BgpvpnPortAssociateV2RouteArgs{ +// Routes: bgpvpn.PortAssociateV2RouteArray{ +// &bgpvpn.PortAssociateV2RouteArgs{ // Type: pulumi.String("prefix"), // Prefix: pulumi.String("192.168.170.1/32"), // }, -// &openstack.BgpvpnPortAssociateV2RouteArgs{ +// &bgpvpn.PortAssociateV2RouteArgs{ // Type: pulumi.String("bgpvpn"), // BgpvpnId: pulumi.String("35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c"), // }, @@ -62,6 +62,8 @@ import ( // ```sh // $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf // ``` +// +// Deprecated: openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 type BgpvpnPortAssociateV2 struct { pulumi.CustomResourceState diff --git a/sdk/go/openstack/bgpvpnRouterAssociateV2.go b/sdk/go/openstack/bgpvpnRouterAssociateV2.go index b6a3f578a..c216b7831 100644 --- a/sdk/go/openstack/bgpvpnRouterAssociateV2.go +++ b/sdk/go/openstack/bgpvpnRouterAssociateV2.go @@ -21,14 +21,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewBgpvpnRouterAssociateV2(ctx, "association_1", &openstack.BgpvpnRouterAssociateV2Args{ +// _, err := bgpvpn.NewRouterAssociateV2(ctx, "association_1", &bgpvpn.RouterAssociateV2Args{ // BgpvpnId: pulumi.String("d57d39e1-dc63-44fd-8cbd-a4e1488100c5"), // RouterId: pulumi.String("423fa80f-e0d7-4d02-a9a5-8b8c05812bf6"), // }) @@ -52,6 +52,8 @@ import ( // ```sh // $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f // ``` +// +// Deprecated: openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 type BgpvpnRouterAssociateV2 struct { pulumi.CustomResourceState diff --git a/sdk/go/openstack/bgpvpnV2.go b/sdk/go/openstack/bgpvpnV2.go index 953f6773f..257b2ab2d 100644 --- a/sdk/go/openstack/bgpvpnV2.go +++ b/sdk/go/openstack/bgpvpnV2.go @@ -20,14 +20,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/bgpvpn" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewBgpvpnV2(ctx, "bgpvpn_1", &openstack.BgpvpnV2Args{ +// _, err := bgpvpn.NewV2(ctx, "bgpvpn_1", &bgpvpn.V2Args{ // Name: pulumi.String("bgpvpn1"), // RouteDistinguishers: pulumi.StringArray{ // pulumi.String("64512:1"), @@ -60,6 +60,8 @@ import ( // ```sh // $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c // ``` +// +// Deprecated: openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 type BgpvpnV2 struct { pulumi.CustomResourceState diff --git a/sdk/go/openstack/firewall/getGroupV2.go b/sdk/go/openstack/firewall/getGroupV2.go new file mode 100644 index 000000000..736f98151 --- /dev/null +++ b/sdk/go/openstack/firewall/getGroupV2.go @@ -0,0 +1,246 @@ +// 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 firewall + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to get information of an available OpenStack firewall group v2. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := firewall.LookupGroupV2(ctx, &firewall.LookupGroupV2Args{ +// Name: pulumi.StringRef("tf_test_group"), +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func LookupGroupV2(ctx *pulumi.Context, args *LookupGroupV2Args, opts ...pulumi.InvokeOption) (*LookupGroupV2Result, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupGroupV2Result + err := ctx.Invoke("openstack:firewall/getGroupV2:getGroupV2", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getGroupV2. +type LookupGroupV2Args struct { + // Administrative up/down status for the firewall group. + AdminStateUp *bool `pulumi:"adminStateUp"` + // Human-readable description of the firewall group. + Description *string `pulumi:"description"` + // The egress policy ID of the firewall group. + EgressFirewallPolicyId *string `pulumi:"egressFirewallPolicyId"` + // The ID of the firewall group. + GroupId *string `pulumi:"groupId"` + // The ingress policy ID of the firewall group. + IngressFirewallPolicyId *string `pulumi:"ingressFirewallPolicyId"` + // The name of the firewall group. + Name *string `pulumi:"name"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall group. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall group ids. If omitted, the + // `region` argument of the provider is used. + Region *string `pulumi:"region"` + // The sharing status of the firewall group. + Shared *bool `pulumi:"shared"` + // Enabled status for the firewall group. + Status *string `pulumi:"status"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall group. + TenantId *string `pulumi:"tenantId"` +} + +// A collection of values returned by getGroupV2. +type LookupGroupV2Result struct { + // See Argument Reference above. + AdminStateUp bool `pulumi:"adminStateUp"` + // See Argument Reference above. + Description *string `pulumi:"description"` + // See Argument Reference above. + EgressFirewallPolicyId *string `pulumi:"egressFirewallPolicyId"` + // See Argument Reference above. + GroupId *string `pulumi:"groupId"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // See Argument Reference above. + IngressFirewallPolicyId *string `pulumi:"ingressFirewallPolicyId"` + // See Argument Reference above. + Name *string `pulumi:"name"` + // Ports associated with the firewall group. + Ports []string `pulumi:"ports"` + // See Argument Reference above. + ProjectId string `pulumi:"projectId"` + // See Argument Reference above. + Region string `pulumi:"region"` + // See Argument Reference above. + Shared bool `pulumi:"shared"` + // See Argument Reference above. + Status string `pulumi:"status"` + // See Argument Reference above. + TenantId string `pulumi:"tenantId"` +} + +func LookupGroupV2Output(ctx *pulumi.Context, args LookupGroupV2OutputArgs, opts ...pulumi.InvokeOption) LookupGroupV2ResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupGroupV2ResultOutput, error) { + args := v.(LookupGroupV2Args) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupGroupV2Result + secret, err := ctx.InvokePackageRaw("openstack:firewall/getGroupV2:getGroupV2", args, &rv, "", opts...) + if err != nil { + return LookupGroupV2ResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupGroupV2ResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGroupV2ResultOutput), nil + } + return output, nil + }).(LookupGroupV2ResultOutput) +} + +// A collection of arguments for invoking getGroupV2. +type LookupGroupV2OutputArgs struct { + // Administrative up/down status for the firewall group. + AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"` + // Human-readable description of the firewall group. + Description pulumi.StringPtrInput `pulumi:"description"` + // The egress policy ID of the firewall group. + EgressFirewallPolicyId pulumi.StringPtrInput `pulumi:"egressFirewallPolicyId"` + // The ID of the firewall group. + GroupId pulumi.StringPtrInput `pulumi:"groupId"` + // The ingress policy ID of the firewall group. + IngressFirewallPolicyId pulumi.StringPtrInput `pulumi:"ingressFirewallPolicyId"` + // The name of the firewall group. + Name pulumi.StringPtrInput `pulumi:"name"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall group. + ProjectId pulumi.StringPtrInput `pulumi:"projectId"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall group ids. If omitted, the + // `region` argument of the provider is used. + Region pulumi.StringPtrInput `pulumi:"region"` + // The sharing status of the firewall group. + Shared pulumi.BoolPtrInput `pulumi:"shared"` + // Enabled status for the firewall group. + Status pulumi.StringPtrInput `pulumi:"status"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall group. + TenantId pulumi.StringPtrInput `pulumi:"tenantId"` +} + +func (LookupGroupV2OutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupGroupV2Args)(nil)).Elem() +} + +// A collection of values returned by getGroupV2. +type LookupGroupV2ResultOutput struct{ *pulumi.OutputState } + +func (LookupGroupV2ResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupGroupV2Result)(nil)).Elem() +} + +func (o LookupGroupV2ResultOutput) ToLookupGroupV2ResultOutput() LookupGroupV2ResultOutput { + return o +} + +func (o LookupGroupV2ResultOutput) ToLookupGroupV2ResultOutputWithContext(ctx context.Context) LookupGroupV2ResultOutput { + return o +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) AdminStateUp() pulumi.BoolOutput { + return o.ApplyT(func(v LookupGroupV2Result) bool { return v.AdminStateUp }).(pulumi.BoolOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGroupV2Result) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) EgressFirewallPolicyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGroupV2Result) *string { return v.EgressFirewallPolicyId }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) GroupId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGroupV2Result) *string { return v.GroupId }).(pulumi.StringPtrOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupGroupV2ResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupGroupV2Result) string { return v.Id }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) IngressFirewallPolicyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGroupV2Result) *string { return v.IngressFirewallPolicyId }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGroupV2Result) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// Ports associated with the firewall group. +func (o LookupGroupV2ResultOutput) Ports() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupGroupV2Result) []string { return v.Ports }).(pulumi.StringArrayOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v LookupGroupV2Result) string { return v.ProjectId }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v LookupGroupV2Result) string { return v.Region }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) Shared() pulumi.BoolOutput { + return o.ApplyT(func(v LookupGroupV2Result) bool { return v.Shared }).(pulumi.BoolOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v LookupGroupV2Result) string { return v.Status }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupGroupV2ResultOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v LookupGroupV2Result) string { return v.TenantId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupGroupV2ResultOutput{}) +} diff --git a/sdk/go/openstack/firewall/getPolicyV2.go b/sdk/go/openstack/firewall/getPolicyV2.go new file mode 100644 index 000000000..2d675f407 --- /dev/null +++ b/sdk/go/openstack/firewall/getPolicyV2.go @@ -0,0 +1,211 @@ +// 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 firewall + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to get information of an available OpenStack firewall policy v2. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := firewall.LookupPolicyV2(ctx, &firewall.LookupPolicyV2Args{ +// Name: pulumi.StringRef("tf_test_policy"), +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func LookupPolicyV2(ctx *pulumi.Context, args *LookupPolicyV2Args, opts ...pulumi.InvokeOption) (*LookupPolicyV2Result, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyV2Result + err := ctx.Invoke("openstack:firewall/getPolicyV2:getPolicyV2", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getPolicyV2. +type LookupPolicyV2Args struct { + // Whether this policy has been audited. + Audited *bool `pulumi:"audited"` + // Human-readable description of the policy. + Description *string `pulumi:"description"` + // The name of the firewall policy. + Name *string `pulumi:"name"` + // The ID of the firewall policy. + PolicyId *string `pulumi:"policyId"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall policy. + ProjectId *string `pulumi:"projectId"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall policy ids. If omitted, the + // `region` argument of the provider is used. + Region *string `pulumi:"region"` + // Whether this policy is shared across all projects. + Shared *bool `pulumi:"shared"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall policy. + TenantId *string `pulumi:"tenantId"` +} + +// A collection of values returned by getPolicyV2. +type LookupPolicyV2Result struct { + // The audit status of the firewall policy. + Audited bool `pulumi:"audited"` + Description *string `pulumi:"description"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // See Argument Reference above. + Name *string `pulumi:"name"` + // See Argument Reference above. + PolicyId *string `pulumi:"policyId"` + // See Argument Reference above. + ProjectId string `pulumi:"projectId"` + // See Argument Reference above. + Region string `pulumi:"region"` + // The array of one or more firewall rules that comprise the policy. + Rules []string `pulumi:"rules"` + // The sharing status of the firewall policy. + Shared bool `pulumi:"shared"` + // See Argument Reference above. + TenantId string `pulumi:"tenantId"` +} + +func LookupPolicyV2Output(ctx *pulumi.Context, args LookupPolicyV2OutputArgs, opts ...pulumi.InvokeOption) LookupPolicyV2ResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupPolicyV2ResultOutput, error) { + args := v.(LookupPolicyV2Args) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyV2Result + secret, err := ctx.InvokePackageRaw("openstack:firewall/getPolicyV2:getPolicyV2", args, &rv, "", opts...) + if err != nil { + return LookupPolicyV2ResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupPolicyV2ResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyV2ResultOutput), nil + } + return output, nil + }).(LookupPolicyV2ResultOutput) +} + +// A collection of arguments for invoking getPolicyV2. +type LookupPolicyV2OutputArgs struct { + // Whether this policy has been audited. + Audited pulumi.BoolPtrInput `pulumi:"audited"` + // Human-readable description of the policy. + Description pulumi.StringPtrInput `pulumi:"description"` + // The name of the firewall policy. + Name pulumi.StringPtrInput `pulumi:"name"` + // The ID of the firewall policy. + PolicyId pulumi.StringPtrInput `pulumi:"policyId"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall policy. + ProjectId pulumi.StringPtrInput `pulumi:"projectId"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall policy ids. If omitted, the + // `region` argument of the provider is used. + Region pulumi.StringPtrInput `pulumi:"region"` + // Whether this policy is shared across all projects. + Shared pulumi.BoolPtrInput `pulumi:"shared"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall policy. + TenantId pulumi.StringPtrInput `pulumi:"tenantId"` +} + +func (LookupPolicyV2OutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupPolicyV2Args)(nil)).Elem() +} + +// A collection of values returned by getPolicyV2. +type LookupPolicyV2ResultOutput struct{ *pulumi.OutputState } + +func (LookupPolicyV2ResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupPolicyV2Result)(nil)).Elem() +} + +func (o LookupPolicyV2ResultOutput) ToLookupPolicyV2ResultOutput() LookupPolicyV2ResultOutput { + return o +} + +func (o LookupPolicyV2ResultOutput) ToLookupPolicyV2ResultOutputWithContext(ctx context.Context) LookupPolicyV2ResultOutput { + return o +} + +// The audit status of the firewall policy. +func (o LookupPolicyV2ResultOutput) Audited() pulumi.BoolOutput { + return o.ApplyT(func(v LookupPolicyV2Result) bool { return v.Audited }).(pulumi.BoolOutput) +} + +func (o LookupPolicyV2ResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPolicyV2Result) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupPolicyV2ResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupPolicyV2Result) string { return v.Id }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupPolicyV2ResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPolicyV2Result) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupPolicyV2ResultOutput) PolicyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPolicyV2Result) *string { return v.PolicyId }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupPolicyV2ResultOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v LookupPolicyV2Result) string { return v.ProjectId }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupPolicyV2ResultOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v LookupPolicyV2Result) string { return v.Region }).(pulumi.StringOutput) +} + +// The array of one or more firewall rules that comprise the policy. +func (o LookupPolicyV2ResultOutput) Rules() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupPolicyV2Result) []string { return v.Rules }).(pulumi.StringArrayOutput) +} + +// The sharing status of the firewall policy. +func (o LookupPolicyV2ResultOutput) Shared() pulumi.BoolOutput { + return o.ApplyT(func(v LookupPolicyV2Result) bool { return v.Shared }).(pulumi.BoolOutput) +} + +// See Argument Reference above. +func (o LookupPolicyV2ResultOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v LookupPolicyV2Result) string { return v.TenantId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupPolicyV2ResultOutput{}) +} diff --git a/sdk/go/openstack/firewall/getRuleV2.go b/sdk/go/openstack/firewall/getRuleV2.go new file mode 100644 index 000000000..698c5079a --- /dev/null +++ b/sdk/go/openstack/firewall/getRuleV2.go @@ -0,0 +1,302 @@ +// 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 firewall + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to get information of an available OpenStack firewall rule v2. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := firewall.LookupRuleV2(ctx, &firewall.LookupRuleV2Args{ +// Name: pulumi.StringRef("tf_test_rule"), +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func LookupRuleV2(ctx *pulumi.Context, args *LookupRuleV2Args, opts ...pulumi.InvokeOption) (*LookupRuleV2Result, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupRuleV2Result + err := ctx.Invoke("openstack:firewall/getRuleV2:getRuleV2", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getRuleV2. +type LookupRuleV2Args struct { + // Action to be taken when the firewall rule matches. + Action *string `pulumi:"action"` + // The description of the firewall rule. + Description *string `pulumi:"description"` + // The destination IP address on which the + // firewall rule operates. + DestinationIpAddress *string `pulumi:"destinationIpAddress"` + // The destination port on which the firewall + // rule operates. + DestinationPort *string `pulumi:"destinationPort"` + // Enabled status for the firewall rule. + Enabled *bool `pulumi:"enabled"` + // The ID of the firewall policy the rule belongs to. + FirewallPolicyIds []string `pulumi:"firewallPolicyIds"` + // IP version, either 4 (default) or 6. + IpVersion *int `pulumi:"ipVersion"` + // The name of the firewall rule. + Name *string `pulumi:"name"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall rule. + ProjectId *string `pulumi:"projectId"` + // The protocol type on which the firewall rule operates. + Protocol *string `pulumi:"protocol"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall policy ids. If omitted, the + // `region` argument of the provider is used. + Region *string `pulumi:"region"` + // The ID of the firewall rule. + RuleId *string `pulumi:"ruleId"` + // The sharing status of the firewall policy. + Shared *bool `pulumi:"shared"` + // The source IP address on which the firewall + // rule operates. + SourceIpAddress *string `pulumi:"sourceIpAddress"` + // The source port on which the firewall + // rule operates. + SourcePort *string `pulumi:"sourcePort"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall rule. + TenantId *string `pulumi:"tenantId"` +} + +// A collection of values returned by getRuleV2. +type LookupRuleV2Result struct { + // See Argument Reference above. + Action *string `pulumi:"action"` + // See Argument Reference above. + Description *string `pulumi:"description"` + // See Argument Reference above. + DestinationIpAddress *string `pulumi:"destinationIpAddress"` + // See Argument Reference above. + DestinationPort *string `pulumi:"destinationPort"` + // See Argument Reference above. + Enabled bool `pulumi:"enabled"` + // The ID of the firewall policy the rule belongs to. + FirewallPolicyIds []string `pulumi:"firewallPolicyIds"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // See Argument Reference above. + IpVersion *int `pulumi:"ipVersion"` + // See Argument Reference above. + Name *string `pulumi:"name"` + // See Argument Reference above. + ProjectId string `pulumi:"projectId"` + // See Argument Reference above. + Protocol *string `pulumi:"protocol"` + // See Argument Reference above. + Region string `pulumi:"region"` + // See Argument Reference above. + RuleId *string `pulumi:"ruleId"` + // See Argument Reference above. + Shared bool `pulumi:"shared"` + // See Argument Reference above. + SourceIpAddress *string `pulumi:"sourceIpAddress"` + // See Argument Reference above. + SourcePort *string `pulumi:"sourcePort"` + // See Argument Reference above. + TenantId string `pulumi:"tenantId"` +} + +func LookupRuleV2Output(ctx *pulumi.Context, args LookupRuleV2OutputArgs, opts ...pulumi.InvokeOption) LookupRuleV2ResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupRuleV2ResultOutput, error) { + args := v.(LookupRuleV2Args) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupRuleV2Result + secret, err := ctx.InvokePackageRaw("openstack:firewall/getRuleV2:getRuleV2", args, &rv, "", opts...) + if err != nil { + return LookupRuleV2ResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupRuleV2ResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRuleV2ResultOutput), nil + } + return output, nil + }).(LookupRuleV2ResultOutput) +} + +// A collection of arguments for invoking getRuleV2. +type LookupRuleV2OutputArgs struct { + // Action to be taken when the firewall rule matches. + Action pulumi.StringPtrInput `pulumi:"action"` + // The description of the firewall rule. + Description pulumi.StringPtrInput `pulumi:"description"` + // The destination IP address on which the + // firewall rule operates. + DestinationIpAddress pulumi.StringPtrInput `pulumi:"destinationIpAddress"` + // The destination port on which the firewall + // rule operates. + DestinationPort pulumi.StringPtrInput `pulumi:"destinationPort"` + // Enabled status for the firewall rule. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // The ID of the firewall policy the rule belongs to. + FirewallPolicyIds pulumi.StringArrayInput `pulumi:"firewallPolicyIds"` + // IP version, either 4 (default) or 6. + IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"` + // The name of the firewall rule. + Name pulumi.StringPtrInput `pulumi:"name"` + // This argument conflicts and is interchangeable + // with `tenantId`. The owner of the firewall rule. + ProjectId pulumi.StringPtrInput `pulumi:"projectId"` + // The protocol type on which the firewall rule operates. + Protocol pulumi.StringPtrInput `pulumi:"protocol"` + // The region in which to obtain the V2 Neutron client. + // A Neutron client is needed to retrieve firewall policy ids. If omitted, the + // `region` argument of the provider is used. + Region pulumi.StringPtrInput `pulumi:"region"` + // The ID of the firewall rule. + RuleId pulumi.StringPtrInput `pulumi:"ruleId"` + // The sharing status of the firewall policy. + Shared pulumi.BoolPtrInput `pulumi:"shared"` + // The source IP address on which the firewall + // rule operates. + SourceIpAddress pulumi.StringPtrInput `pulumi:"sourceIpAddress"` + // The source port on which the firewall + // rule operates. + SourcePort pulumi.StringPtrInput `pulumi:"sourcePort"` + // This argument conflicts and is interchangeable + // with `projectId`. The owner of the firewall rule. + TenantId pulumi.StringPtrInput `pulumi:"tenantId"` +} + +func (LookupRuleV2OutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRuleV2Args)(nil)).Elem() +} + +// A collection of values returned by getRuleV2. +type LookupRuleV2ResultOutput struct{ *pulumi.OutputState } + +func (LookupRuleV2ResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRuleV2Result)(nil)).Elem() +} + +func (o LookupRuleV2ResultOutput) ToLookupRuleV2ResultOutput() LookupRuleV2ResultOutput { + return o +} + +func (o LookupRuleV2ResultOutput) ToLookupRuleV2ResultOutputWithContext(ctx context.Context) LookupRuleV2ResultOutput { + return o +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Action() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.Action }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) DestinationIpAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.DestinationIpAddress }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) DestinationPort() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.DestinationPort }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v LookupRuleV2Result) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +// The ID of the firewall policy the rule belongs to. +func (o LookupRuleV2ResultOutput) FirewallPolicyIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupRuleV2Result) []string { return v.FirewallPolicyIds }).(pulumi.StringArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupRuleV2ResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupRuleV2Result) string { return v.Id }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) IpVersion() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *int { return v.IpVersion }).(pulumi.IntPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v LookupRuleV2Result) string { return v.ProjectId }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.Protocol }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v LookupRuleV2Result) string { return v.Region }).(pulumi.StringOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) RuleId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.RuleId }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) Shared() pulumi.BoolOutput { + return o.ApplyT(func(v LookupRuleV2Result) bool { return v.Shared }).(pulumi.BoolOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) SourceIpAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.SourceIpAddress }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) SourcePort() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRuleV2Result) *string { return v.SourcePort }).(pulumi.StringPtrOutput) +} + +// See Argument Reference above. +func (o LookupRuleV2ResultOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v LookupRuleV2Result) string { return v.TenantId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupRuleV2ResultOutput{}) +} diff --git a/sdk/go/openstack/getFwGroupV2.go b/sdk/go/openstack/getFwGroupV2.go index 670a4924f..a70456dc6 100644 --- a/sdk/go/openstack/getFwGroupV2.go +++ b/sdk/go/openstack/getFwGroupV2.go @@ -20,14 +20,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.GetFwGroupV2(ctx, &openstack.GetFwGroupV2Args{ +// _, err := firewall.LookupGroupV2(ctx, &firewall.LookupGroupV2Args{ // Name: pulumi.StringRef("tf_test_group"), // }, nil) // if err != nil { @@ -38,6 +38,8 @@ import ( // } // // ``` +// +// Deprecated: openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 func GetFwGroupV2(ctx *pulumi.Context, args *GetFwGroupV2Args, opts ...pulumi.InvokeOption) (*GetFwGroupV2Result, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv GetFwGroupV2Result diff --git a/sdk/go/openstack/getFwPolicyV2.go b/sdk/go/openstack/getFwPolicyV2.go index 22cccb9d0..0ae773cdd 100644 --- a/sdk/go/openstack/getFwPolicyV2.go +++ b/sdk/go/openstack/getFwPolicyV2.go @@ -20,14 +20,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.GetFwPolicyV2(ctx, &openstack.GetFwPolicyV2Args{ +// _, err := firewall.LookupPolicyV2(ctx, &firewall.LookupPolicyV2Args{ // Name: pulumi.StringRef("tf_test_policy"), // }, nil) // if err != nil { @@ -38,6 +38,8 @@ import ( // } // // ``` +// +// Deprecated: openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 func GetFwPolicyV2(ctx *pulumi.Context, args *GetFwPolicyV2Args, opts ...pulumi.InvokeOption) (*GetFwPolicyV2Result, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv GetFwPolicyV2Result diff --git a/sdk/go/openstack/getFwRuleV2.go b/sdk/go/openstack/getFwRuleV2.go index 44d57eb15..d86d4a8d7 100644 --- a/sdk/go/openstack/getFwRuleV2.go +++ b/sdk/go/openstack/getFwRuleV2.go @@ -20,14 +20,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/firewall" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.GetFwRuleV2(ctx, &openstack.GetFwRuleV2Args{ +// _, err := firewall.LookupRuleV2(ctx, &firewall.LookupRuleV2Args{ // Name: pulumi.StringRef("tf_test_rule"), // }, nil) // if err != nil { @@ -38,6 +38,8 @@ import ( // } // // ``` +// +// Deprecated: openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 func GetFwRuleV2(ctx *pulumi.Context, args *GetFwRuleV2Args, opts ...pulumi.InvokeOption) (*GetFwRuleV2Result, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv GetFwRuleV2Result diff --git a/sdk/go/openstack/lbFlavorprofileV2.go b/sdk/go/openstack/lbFlavorprofileV2.go index 8501ccf09..59eb4ee30 100644 --- a/sdk/go/openstack/lbFlavorprofileV2.go +++ b/sdk/go/openstack/lbFlavorprofileV2.go @@ -27,7 +27,7 @@ import ( // // "encoding/json" // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) @@ -41,7 +41,7 @@ import ( // return err // } // json0 := string(tmpJSON0) -// _, err = openstack.NewLbFlavorprofileV2(ctx, "flavorprofile_1", &openstack.LbFlavorprofileV2Args{ +// _, err = loadbalancer.NewFlavorprofileV2(ctx, "flavorprofile_1", &loadbalancer.FlavorprofileV2Args{ // Name: pulumi.String("amphora-single-profile"), // ProviderName: pulumi.String("amphora"), // FlavorData: pulumi.String(json0), @@ -62,14 +62,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewLbFlavorprofileV2(ctx, "flavorprofile_1", &openstack.LbFlavorprofileV2Args{ +// _, err := loadbalancer.NewFlavorprofileV2(ctx, "flavorprofile_1", &loadbalancer.FlavorprofileV2Args{ // Name: pulumi.String("amphora-single-profile"), // ProviderName: pulumi.String("amphora"), // FlavorData: pulumi.String("{\"loadbalancer_topology\": \"SINGLE\"}"), @@ -90,6 +90,8 @@ import ( // ```sh // $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b // ``` +// +// Deprecated: openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 type LbFlavorprofileV2 struct { pulumi.CustomResourceState diff --git a/sdk/go/openstack/lbLoadbalancerV2.go b/sdk/go/openstack/lbLoadbalancerV2.go index 9d147da14..219fbe7fa 100644 --- a/sdk/go/openstack/lbLoadbalancerV2.go +++ b/sdk/go/openstack/lbLoadbalancerV2.go @@ -23,14 +23,14 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := openstack.NewLbLoadbalancerV2(ctx, "lb_1", &openstack.LbLoadbalancerV2Args{ +// _, err := loadbalancer.NewLoadBalancer(ctx, "lb_1", &loadbalancer.LoadBalancerArgs{ // VipSubnetId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), // }) // if err != nil { @@ -49,6 +49,8 @@ import ( // ```sh // $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 // ``` +// +// Deprecated: openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer type LbLoadbalancerV2 struct { pulumi.CustomResourceState @@ -117,12 +119,6 @@ func NewLbLoadbalancerV2(ctx *pulumi.Context, args = &LbLoadbalancerV2Args{} } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("openstack:loadbalancer/loadBalancer:LoadBalancer"), - }, - }) - opts = append(opts, aliases) opts = internal.PkgResourceDefaultOpts(opts) var resource LbLoadbalancerV2 err := ctx.RegisterResource("openstack:index/lbLoadbalancerV2:LbLoadbalancerV2", name, args, &resource, opts...) diff --git a/sdk/go/openstack/loadbalancer/flavorprofileV2.go b/sdk/go/openstack/loadbalancer/flavorprofileV2.go new file mode 100644 index 000000000..2cdda83ef --- /dev/null +++ b/sdk/go/openstack/loadbalancer/flavorprofileV2.go @@ -0,0 +1,374 @@ +// 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 loadbalancer + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 load balancer flavorprofile resource within OpenStack. +// +// > **Note:** This usually requires admin privileges. +// +// ## Example Usage +// +// ### Using jsonencode +// +// ```go +// package main +// +// import ( +// +// "encoding/json" +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// tmpJSON0, err := json.Marshal(map[string]interface{}{ +// "loadbalancer_topology": "SINGLE", +// }) +// if err != nil { +// return err +// } +// json0 := string(tmpJSON0) +// _, err = loadbalancer.NewFlavorprofileV2(ctx, "flavorprofile_1", &loadbalancer.FlavorprofileV2Args{ +// Name: pulumi.String("amphora-single-profile"), +// ProviderName: pulumi.String("amphora"), +// FlavorData: pulumi.String(json0), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Using plain string +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := loadbalancer.NewFlavorprofileV2(ctx, "flavorprofile_1", &loadbalancer.FlavorprofileV2Args{ +// Name: pulumi.String("amphora-single-profile"), +// ProviderName: pulumi.String("amphora"), +// FlavorData: pulumi.String("{\"loadbalancer_topology\": \"SINGLE\"}"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// flavorprofiles can be imported using their `id`. Example: +// +// ```sh +// $ pulumi import openstack:loadbalancer/flavorprofileV2:FlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b +// ``` +type FlavorprofileV2 struct { + pulumi.CustomResourceState + + // String that passes the flavorData for the flavorprofile. + // The data that are allowed depend on the `providerName` that is passed. jsonencode + // can be used for readability as shown in the example above. + // Changing this updates the existing flavorprofile. + FlavorData pulumi.StringOutput `pulumi:"flavorData"` + // Name of the flavorprofile. Changing this updates the existing + // flavorprofile. + Name pulumi.StringOutput `pulumi:"name"` + // The providerName that the flavorProfile will use. + // Changing this updates the existing flavorprofile. + ProviderName pulumi.StringOutput `pulumi:"providerName"` + Region pulumi.StringOutput `pulumi:"region"` +} + +// NewFlavorprofileV2 registers a new resource with the given unique name, arguments, and options. +func NewFlavorprofileV2(ctx *pulumi.Context, + name string, args *FlavorprofileV2Args, opts ...pulumi.ResourceOption) (*FlavorprofileV2, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.FlavorData == nil { + return nil, errors.New("invalid value for required argument 'FlavorData'") + } + if args.ProviderName == nil { + return nil, errors.New("invalid value for required argument 'ProviderName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/lbFlavorprofileV2:LbFlavorprofileV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource FlavorprofileV2 + err := ctx.RegisterResource("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetFlavorprofileV2 gets an existing FlavorprofileV2 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 GetFlavorprofileV2(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *FlavorprofileV2State, opts ...pulumi.ResourceOption) (*FlavorprofileV2, error) { + var resource FlavorprofileV2 + err := ctx.ReadResource("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering FlavorprofileV2 resources. +type flavorprofileV2State struct { + // String that passes the flavorData for the flavorprofile. + // The data that are allowed depend on the `providerName` that is passed. jsonencode + // can be used for readability as shown in the example above. + // Changing this updates the existing flavorprofile. + FlavorData *string `pulumi:"flavorData"` + // Name of the flavorprofile. Changing this updates the existing + // flavorprofile. + Name *string `pulumi:"name"` + // The providerName that the flavorProfile will use. + // Changing this updates the existing flavorprofile. + ProviderName *string `pulumi:"providerName"` + Region *string `pulumi:"region"` +} + +type FlavorprofileV2State struct { + // String that passes the flavorData for the flavorprofile. + // The data that are allowed depend on the `providerName` that is passed. jsonencode + // can be used for readability as shown in the example above. + // Changing this updates the existing flavorprofile. + FlavorData pulumi.StringPtrInput + // Name of the flavorprofile. Changing this updates the existing + // flavorprofile. + Name pulumi.StringPtrInput + // The providerName that the flavorProfile will use. + // Changing this updates the existing flavorprofile. + ProviderName pulumi.StringPtrInput + Region pulumi.StringPtrInput +} + +func (FlavorprofileV2State) ElementType() reflect.Type { + return reflect.TypeOf((*flavorprofileV2State)(nil)).Elem() +} + +type flavorprofileV2Args struct { + // String that passes the flavorData for the flavorprofile. + // The data that are allowed depend on the `providerName` that is passed. jsonencode + // can be used for readability as shown in the example above. + // Changing this updates the existing flavorprofile. + FlavorData string `pulumi:"flavorData"` + // Name of the flavorprofile. Changing this updates the existing + // flavorprofile. + Name *string `pulumi:"name"` + // The providerName that the flavorProfile will use. + // Changing this updates the existing flavorprofile. + ProviderName string `pulumi:"providerName"` + Region *string `pulumi:"region"` +} + +// The set of arguments for constructing a FlavorprofileV2 resource. +type FlavorprofileV2Args struct { + // String that passes the flavorData for the flavorprofile. + // The data that are allowed depend on the `providerName` that is passed. jsonencode + // can be used for readability as shown in the example above. + // Changing this updates the existing flavorprofile. + FlavorData pulumi.StringInput + // Name of the flavorprofile. Changing this updates the existing + // flavorprofile. + Name pulumi.StringPtrInput + // The providerName that the flavorProfile will use. + // Changing this updates the existing flavorprofile. + ProviderName pulumi.StringInput + Region pulumi.StringPtrInput +} + +func (FlavorprofileV2Args) ElementType() reflect.Type { + return reflect.TypeOf((*flavorprofileV2Args)(nil)).Elem() +} + +type FlavorprofileV2Input interface { + pulumi.Input + + ToFlavorprofileV2Output() FlavorprofileV2Output + ToFlavorprofileV2OutputWithContext(ctx context.Context) FlavorprofileV2Output +} + +func (*FlavorprofileV2) ElementType() reflect.Type { + return reflect.TypeOf((**FlavorprofileV2)(nil)).Elem() +} + +func (i *FlavorprofileV2) ToFlavorprofileV2Output() FlavorprofileV2Output { + return i.ToFlavorprofileV2OutputWithContext(context.Background()) +} + +func (i *FlavorprofileV2) ToFlavorprofileV2OutputWithContext(ctx context.Context) FlavorprofileV2Output { + return pulumi.ToOutputWithContext(ctx, i).(FlavorprofileV2Output) +} + +// FlavorprofileV2ArrayInput is an input type that accepts FlavorprofileV2Array and FlavorprofileV2ArrayOutput values. +// You can construct a concrete instance of `FlavorprofileV2ArrayInput` via: +// +// FlavorprofileV2Array{ FlavorprofileV2Args{...} } +type FlavorprofileV2ArrayInput interface { + pulumi.Input + + ToFlavorprofileV2ArrayOutput() FlavorprofileV2ArrayOutput + ToFlavorprofileV2ArrayOutputWithContext(context.Context) FlavorprofileV2ArrayOutput +} + +type FlavorprofileV2Array []FlavorprofileV2Input + +func (FlavorprofileV2Array) ElementType() reflect.Type { + return reflect.TypeOf((*[]*FlavorprofileV2)(nil)).Elem() +} + +func (i FlavorprofileV2Array) ToFlavorprofileV2ArrayOutput() FlavorprofileV2ArrayOutput { + return i.ToFlavorprofileV2ArrayOutputWithContext(context.Background()) +} + +func (i FlavorprofileV2Array) ToFlavorprofileV2ArrayOutputWithContext(ctx context.Context) FlavorprofileV2ArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(FlavorprofileV2ArrayOutput) +} + +// FlavorprofileV2MapInput is an input type that accepts FlavorprofileV2Map and FlavorprofileV2MapOutput values. +// You can construct a concrete instance of `FlavorprofileV2MapInput` via: +// +// FlavorprofileV2Map{ "key": FlavorprofileV2Args{...} } +type FlavorprofileV2MapInput interface { + pulumi.Input + + ToFlavorprofileV2MapOutput() FlavorprofileV2MapOutput + ToFlavorprofileV2MapOutputWithContext(context.Context) FlavorprofileV2MapOutput +} + +type FlavorprofileV2Map map[string]FlavorprofileV2Input + +func (FlavorprofileV2Map) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*FlavorprofileV2)(nil)).Elem() +} + +func (i FlavorprofileV2Map) ToFlavorprofileV2MapOutput() FlavorprofileV2MapOutput { + return i.ToFlavorprofileV2MapOutputWithContext(context.Background()) +} + +func (i FlavorprofileV2Map) ToFlavorprofileV2MapOutputWithContext(ctx context.Context) FlavorprofileV2MapOutput { + return pulumi.ToOutputWithContext(ctx, i).(FlavorprofileV2MapOutput) +} + +type FlavorprofileV2Output struct{ *pulumi.OutputState } + +func (FlavorprofileV2Output) ElementType() reflect.Type { + return reflect.TypeOf((**FlavorprofileV2)(nil)).Elem() +} + +func (o FlavorprofileV2Output) ToFlavorprofileV2Output() FlavorprofileV2Output { + return o +} + +func (o FlavorprofileV2Output) ToFlavorprofileV2OutputWithContext(ctx context.Context) FlavorprofileV2Output { + return o +} + +// String that passes the flavorData for the flavorprofile. +// The data that are allowed depend on the `providerName` that is passed. jsonencode +// can be used for readability as shown in the example above. +// Changing this updates the existing flavorprofile. +func (o FlavorprofileV2Output) FlavorData() pulumi.StringOutput { + return o.ApplyT(func(v *FlavorprofileV2) pulumi.StringOutput { return v.FlavorData }).(pulumi.StringOutput) +} + +// Name of the flavorprofile. Changing this updates the existing +// flavorprofile. +func (o FlavorprofileV2Output) Name() pulumi.StringOutput { + return o.ApplyT(func(v *FlavorprofileV2) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The providerName that the flavorProfile will use. +// Changing this updates the existing flavorprofile. +func (o FlavorprofileV2Output) ProviderName() pulumi.StringOutput { + return o.ApplyT(func(v *FlavorprofileV2) pulumi.StringOutput { return v.ProviderName }).(pulumi.StringOutput) +} + +func (o FlavorprofileV2Output) Region() pulumi.StringOutput { + return o.ApplyT(func(v *FlavorprofileV2) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +type FlavorprofileV2ArrayOutput struct{ *pulumi.OutputState } + +func (FlavorprofileV2ArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*FlavorprofileV2)(nil)).Elem() +} + +func (o FlavorprofileV2ArrayOutput) ToFlavorprofileV2ArrayOutput() FlavorprofileV2ArrayOutput { + return o +} + +func (o FlavorprofileV2ArrayOutput) ToFlavorprofileV2ArrayOutputWithContext(ctx context.Context) FlavorprofileV2ArrayOutput { + return o +} + +func (o FlavorprofileV2ArrayOutput) Index(i pulumi.IntInput) FlavorprofileV2Output { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *FlavorprofileV2 { + return vs[0].([]*FlavorprofileV2)[vs[1].(int)] + }).(FlavorprofileV2Output) +} + +type FlavorprofileV2MapOutput struct{ *pulumi.OutputState } + +func (FlavorprofileV2MapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*FlavorprofileV2)(nil)).Elem() +} + +func (o FlavorprofileV2MapOutput) ToFlavorprofileV2MapOutput() FlavorprofileV2MapOutput { + return o +} + +func (o FlavorprofileV2MapOutput) ToFlavorprofileV2MapOutputWithContext(ctx context.Context) FlavorprofileV2MapOutput { + return o +} + +func (o FlavorprofileV2MapOutput) MapIndex(k pulumi.StringInput) FlavorprofileV2Output { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *FlavorprofileV2 { + return vs[0].(map[string]*FlavorprofileV2)[vs[1].(string)] + }).(FlavorprofileV2Output) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*FlavorprofileV2Input)(nil)).Elem(), &FlavorprofileV2{}) + pulumi.RegisterInputType(reflect.TypeOf((*FlavorprofileV2ArrayInput)(nil)).Elem(), FlavorprofileV2Array{}) + pulumi.RegisterInputType(reflect.TypeOf((*FlavorprofileV2MapInput)(nil)).Elem(), FlavorprofileV2Map{}) + pulumi.RegisterOutputType(FlavorprofileV2Output{}) + pulumi.RegisterOutputType(FlavorprofileV2ArrayOutput{}) + pulumi.RegisterOutputType(FlavorprofileV2MapOutput{}) +} diff --git a/sdk/go/openstack/loadbalancer/init.go b/sdk/go/openstack/loadbalancer/init.go index 4ba0a98d1..35118b0db 100644 --- a/sdk/go/openstack/loadbalancer/init.go +++ b/sdk/go/openstack/loadbalancer/init.go @@ -21,12 +21,16 @@ func (m *module) Version() semver.Version { func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { switch typ { + case "openstack:loadbalancer/flavorprofileV2:FlavorprofileV2": + r = &FlavorprofileV2{} case "openstack:loadbalancer/l7PolicyV2:L7PolicyV2": r = &L7PolicyV2{} case "openstack:loadbalancer/l7RuleV2:L7RuleV2": r = &L7RuleV2{} case "openstack:loadbalancer/listener:Listener": r = &Listener{} + case "openstack:loadbalancer/loadBalancer:LoadBalancer": + r = &LoadBalancer{} case "openstack:loadbalancer/member:Member": r = &Member{} case "openstack:loadbalancer/members:Members": @@ -50,6 +54,11 @@ func init() { if err != nil { version = semver.Version{Major: 1} } + pulumi.RegisterResourceModule( + "openstack", + "loadbalancer/flavorprofileV2", + &module{version}, + ) pulumi.RegisterResourceModule( "openstack", "loadbalancer/l7PolicyV2", @@ -65,6 +74,11 @@ func init() { "loadbalancer/listener", &module{version}, ) + pulumi.RegisterResourceModule( + "openstack", + "loadbalancer/loadBalancer", + &module{version}, + ) pulumi.RegisterResourceModule( "openstack", "loadbalancer/member", diff --git a/sdk/go/openstack/loadbalancer/l7policyV2.go b/sdk/go/openstack/loadbalancer/l7policyV2.go index 4421a173d..cd73f79ad 100644 --- a/sdk/go/openstack/loadbalancer/l7policyV2.go +++ b/sdk/go/openstack/loadbalancer/l7policyV2.go @@ -21,7 +21,6 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" @@ -46,7 +45,7 @@ import ( // if err != nil { // return err // } -// loadbalancer1, err := openstack.NewLbLoadbalancerV2(ctx, "loadbalancer_1", &openstack.LbLoadbalancerV2Args{ +// loadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, "loadbalancer_1", &loadbalancer.LoadBalancerArgs{ // Name: pulumi.String("loadbalancer_1"), // VipSubnetId: subnet1.ID(), // }) diff --git a/sdk/go/openstack/loadbalancer/l7ruleV2.go b/sdk/go/openstack/loadbalancer/l7ruleV2.go index cc6e7b7b8..8236c90a3 100644 --- a/sdk/go/openstack/loadbalancer/l7ruleV2.go +++ b/sdk/go/openstack/loadbalancer/l7ruleV2.go @@ -21,7 +21,6 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" @@ -46,7 +45,7 @@ import ( // if err != nil { // return err // } -// loadbalancer1, err := openstack.NewLbLoadbalancerV2(ctx, "loadbalancer_1", &openstack.LbLoadbalancerV2Args{ +// loadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, "loadbalancer_1", &loadbalancer.LoadBalancerArgs{ // Name: pulumi.String("loadbalancer_1"), // VipSubnetId: subnet1.ID(), // }) diff --git a/sdk/go/openstack/loadbalancer/listener.go b/sdk/go/openstack/loadbalancer/listener.go index 86bced0cf..4936cc101 100644 --- a/sdk/go/openstack/loadbalancer/listener.go +++ b/sdk/go/openstack/loadbalancer/listener.go @@ -57,7 +57,6 @@ import ( // // import ( // -// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/keymanager" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" // "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking" @@ -104,7 +103,7 @@ import ( // if err != nil { // return err // } -// lb1, err := openstack.NewLbLoadbalancerV2(ctx, "lb_1", &openstack.LbLoadbalancerV2Args{ +// lb1, err := loadbalancer.NewLoadBalancer(ctx, "lb_1", &loadbalancer.LoadBalancerArgs{ // Name: pulumi.String("loadbalancer"), // VipSubnetId: pulumi.String(subnet1.Id), // }) diff --git a/sdk/go/openstack/loadbalancer/loadBalancer.go b/sdk/go/openstack/loadbalancer/loadBalancer.go new file mode 100644 index 000000000..9f126707c --- /dev/null +++ b/sdk/go/openstack/loadbalancer/loadBalancer.go @@ -0,0 +1,624 @@ +// 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 loadbalancer + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Manages a V2 loadbalancer resource within OpenStack. +// +// > **Note:** This resource has attributes that depend on octavia minor versions. +// Please ensure your Openstack cloud supports the required minor version. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := loadbalancer.NewLoadBalancer(ctx, "lb_1", &loadbalancer.LoadBalancerArgs{ +// VipSubnetId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Load Balancer can be imported using the Load Balancer ID, e.g.: +// +// ```sh +// $ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 +// ``` +type LoadBalancer struct { + pulumi.CustomResourceState + + // The administrative state of the Loadbalancer. + // A valid value is true (UP) or false (DOWN). + AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` + // The availability zone of the Loadbalancer. + // Changing this creates a new loadbalancer. Available only for Octavia + // **minor version 2.14 or later**. + AvailabilityZone pulumi.StringPtrOutput `pulumi:"availabilityZone"` + // Human-readable description for the Loadbalancer. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The UUID of a flavor. Changing this creates a new + // loadbalancer. + FlavorId pulumi.StringOutput `pulumi:"flavorId"` + // The name of the provider. Changing this + // creates a new loadbalancer. + LoadbalancerProvider pulumi.StringOutput `pulumi:"loadbalancerProvider"` + // Human-readable name for the Loadbalancer. Does not have + // to be unique. + Name pulumi.StringOutput `pulumi:"name"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create an LB member. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // LB member. + Region pulumi.StringOutput `pulumi:"region"` + // A list of security group IDs to apply to the + // loadbalancer. The security groups must be specified by ID and not name (as + // opposed to how they are configured with the Compute Instance). + SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` + // A list of simple strings assigned to the loadbalancer. + // Available only for Octavia **minor version 2.5 or later**. + Tags pulumi.StringArrayOutput `pulumi:"tags"` + // Required for admins. The UUID of the tenant who owns + // the Loadbalancer. Only administrative users can specify a tenant UUID + // other than their own. Changing this creates a new loadbalancer. + TenantId pulumi.StringOutput `pulumi:"tenantId"` + // The ip address of the load balancer. + // Changing this creates a new loadbalancer. + VipAddress pulumi.StringOutput `pulumi:"vipAddress"` + // The network on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipNetworkId pulumi.StringOutput `pulumi:"vipNetworkId"` + // The port UUID that the loadbalancer will use. + // Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipPortId pulumi.StringOutput `pulumi:"vipPortId"` + // The ID of the QoS Policy which will + // be applied to the Virtual IP (VIP). + VipQosPolicyId pulumi.StringPtrOutput `pulumi:"vipQosPolicyId"` + // The subnet on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipSubnetId pulumi.StringOutput `pulumi:"vipSubnetId"` +} + +// NewLoadBalancer registers a new resource with the given unique name, arguments, and options. +func NewLoadBalancer(ctx *pulumi.Context, + name string, args *LoadBalancerArgs, opts ...pulumi.ResourceOption) (*LoadBalancer, error) { + if args == nil { + args = &LoadBalancerArgs{} + } + + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("openstack:index/lbLoadbalancerV2:LbLoadbalancerV2"), + }, + }) + opts = append(opts, aliases) + opts = internal.PkgResourceDefaultOpts(opts) + var resource LoadBalancer + err := ctx.RegisterResource("openstack:loadbalancer/loadBalancer:LoadBalancer", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLoadBalancer gets an existing LoadBalancer 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 GetLoadBalancer(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LoadBalancerState, opts ...pulumi.ResourceOption) (*LoadBalancer, error) { + var resource LoadBalancer + err := ctx.ReadResource("openstack:loadbalancer/loadBalancer:LoadBalancer", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LoadBalancer resources. +type loadBalancerState struct { + // The administrative state of the Loadbalancer. + // A valid value is true (UP) or false (DOWN). + AdminStateUp *bool `pulumi:"adminStateUp"` + // The availability zone of the Loadbalancer. + // Changing this creates a new loadbalancer. Available only for Octavia + // **minor version 2.14 or later**. + AvailabilityZone *string `pulumi:"availabilityZone"` + // Human-readable description for the Loadbalancer. + Description *string `pulumi:"description"` + // The UUID of a flavor. Changing this creates a new + // loadbalancer. + FlavorId *string `pulumi:"flavorId"` + // The name of the provider. Changing this + // creates a new loadbalancer. + LoadbalancerProvider *string `pulumi:"loadbalancerProvider"` + // Human-readable name for the Loadbalancer. Does not have + // to be unique. + Name *string `pulumi:"name"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create an LB member. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // LB member. + Region *string `pulumi:"region"` + // A list of security group IDs to apply to the + // loadbalancer. The security groups must be specified by ID and not name (as + // opposed to how they are configured with the Compute Instance). + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // A list of simple strings assigned to the loadbalancer. + // Available only for Octavia **minor version 2.5 or later**. + Tags []string `pulumi:"tags"` + // Required for admins. The UUID of the tenant who owns + // the Loadbalancer. Only administrative users can specify a tenant UUID + // other than their own. Changing this creates a new loadbalancer. + TenantId *string `pulumi:"tenantId"` + // The ip address of the load balancer. + // Changing this creates a new loadbalancer. + VipAddress *string `pulumi:"vipAddress"` + // The network on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipNetworkId *string `pulumi:"vipNetworkId"` + // The port UUID that the loadbalancer will use. + // Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipPortId *string `pulumi:"vipPortId"` + // The ID of the QoS Policy which will + // be applied to the Virtual IP (VIP). + VipQosPolicyId *string `pulumi:"vipQosPolicyId"` + // The subnet on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipSubnetId *string `pulumi:"vipSubnetId"` +} + +type LoadBalancerState struct { + // The administrative state of the Loadbalancer. + // A valid value is true (UP) or false (DOWN). + AdminStateUp pulumi.BoolPtrInput + // The availability zone of the Loadbalancer. + // Changing this creates a new loadbalancer. Available only for Octavia + // **minor version 2.14 or later**. + AvailabilityZone pulumi.StringPtrInput + // Human-readable description for the Loadbalancer. + Description pulumi.StringPtrInput + // The UUID of a flavor. Changing this creates a new + // loadbalancer. + FlavorId pulumi.StringPtrInput + // The name of the provider. Changing this + // creates a new loadbalancer. + LoadbalancerProvider pulumi.StringPtrInput + // Human-readable name for the Loadbalancer. Does not have + // to be unique. + Name pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create an LB member. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // LB member. + Region pulumi.StringPtrInput + // A list of security group IDs to apply to the + // loadbalancer. The security groups must be specified by ID and not name (as + // opposed to how they are configured with the Compute Instance). + SecurityGroupIds pulumi.StringArrayInput + // A list of simple strings assigned to the loadbalancer. + // Available only for Octavia **minor version 2.5 or later**. + Tags pulumi.StringArrayInput + // Required for admins. The UUID of the tenant who owns + // the Loadbalancer. Only administrative users can specify a tenant UUID + // other than their own. Changing this creates a new loadbalancer. + TenantId pulumi.StringPtrInput + // The ip address of the load balancer. + // Changing this creates a new loadbalancer. + VipAddress pulumi.StringPtrInput + // The network on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipNetworkId pulumi.StringPtrInput + // The port UUID that the loadbalancer will use. + // Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipPortId pulumi.StringPtrInput + // The ID of the QoS Policy which will + // be applied to the Virtual IP (VIP). + VipQosPolicyId pulumi.StringPtrInput + // The subnet on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipSubnetId pulumi.StringPtrInput +} + +func (LoadBalancerState) ElementType() reflect.Type { + return reflect.TypeOf((*loadBalancerState)(nil)).Elem() +} + +type loadBalancerArgs struct { + // The administrative state of the Loadbalancer. + // A valid value is true (UP) or false (DOWN). + AdminStateUp *bool `pulumi:"adminStateUp"` + // The availability zone of the Loadbalancer. + // Changing this creates a new loadbalancer. Available only for Octavia + // **minor version 2.14 or later**. + AvailabilityZone *string `pulumi:"availabilityZone"` + // Human-readable description for the Loadbalancer. + Description *string `pulumi:"description"` + // The UUID of a flavor. Changing this creates a new + // loadbalancer. + FlavorId *string `pulumi:"flavorId"` + // The name of the provider. Changing this + // creates a new loadbalancer. + LoadbalancerProvider *string `pulumi:"loadbalancerProvider"` + // Human-readable name for the Loadbalancer. Does not have + // to be unique. + Name *string `pulumi:"name"` + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create an LB member. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // LB member. + Region *string `pulumi:"region"` + // A list of security group IDs to apply to the + // loadbalancer. The security groups must be specified by ID and not name (as + // opposed to how they are configured with the Compute Instance). + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // A list of simple strings assigned to the loadbalancer. + // Available only for Octavia **minor version 2.5 or later**. + Tags []string `pulumi:"tags"` + // Required for admins. The UUID of the tenant who owns + // the Loadbalancer. Only administrative users can specify a tenant UUID + // other than their own. Changing this creates a new loadbalancer. + TenantId *string `pulumi:"tenantId"` + // The ip address of the load balancer. + // Changing this creates a new loadbalancer. + VipAddress *string `pulumi:"vipAddress"` + // The network on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipNetworkId *string `pulumi:"vipNetworkId"` + // The port UUID that the loadbalancer will use. + // Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipPortId *string `pulumi:"vipPortId"` + // The ID of the QoS Policy which will + // be applied to the Virtual IP (VIP). + VipQosPolicyId *string `pulumi:"vipQosPolicyId"` + // The subnet on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipSubnetId *string `pulumi:"vipSubnetId"` +} + +// The set of arguments for constructing a LoadBalancer resource. +type LoadBalancerArgs struct { + // The administrative state of the Loadbalancer. + // A valid value is true (UP) or false (DOWN). + AdminStateUp pulumi.BoolPtrInput + // The availability zone of the Loadbalancer. + // Changing this creates a new loadbalancer. Available only for Octavia + // **minor version 2.14 or later**. + AvailabilityZone pulumi.StringPtrInput + // Human-readable description for the Loadbalancer. + Description pulumi.StringPtrInput + // The UUID of a flavor. Changing this creates a new + // loadbalancer. + FlavorId pulumi.StringPtrInput + // The name of the provider. Changing this + // creates a new loadbalancer. + LoadbalancerProvider pulumi.StringPtrInput + // Human-readable name for the Loadbalancer. Does not have + // to be unique. + Name pulumi.StringPtrInput + // The region in which to obtain the V2 Networking client. + // A Networking client is needed to create an LB member. If omitted, the + // `region` argument of the provider is used. Changing this creates a new + // LB member. + Region pulumi.StringPtrInput + // A list of security group IDs to apply to the + // loadbalancer. The security groups must be specified by ID and not name (as + // opposed to how they are configured with the Compute Instance). + SecurityGroupIds pulumi.StringArrayInput + // A list of simple strings assigned to the loadbalancer. + // Available only for Octavia **minor version 2.5 or later**. + Tags pulumi.StringArrayInput + // Required for admins. The UUID of the tenant who owns + // the Loadbalancer. Only administrative users can specify a tenant UUID + // other than their own. Changing this creates a new loadbalancer. + TenantId pulumi.StringPtrInput + // The ip address of the load balancer. + // Changing this creates a new loadbalancer. + VipAddress pulumi.StringPtrInput + // The network on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipNetworkId pulumi.StringPtrInput + // The port UUID that the loadbalancer will use. + // Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipPortId pulumi.StringPtrInput + // The ID of the QoS Policy which will + // be applied to the Virtual IP (VIP). + VipQosPolicyId pulumi.StringPtrInput + // The subnet on which to allocate the + // Loadbalancer's address. A tenant can only create Loadbalancers on networks + // authorized by policy (e.g. networks that belong to them or networks that + // are shared). Changing this creates a new loadbalancer. Exactly one of + // `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + VipSubnetId pulumi.StringPtrInput +} + +func (LoadBalancerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*loadBalancerArgs)(nil)).Elem() +} + +type LoadBalancerInput interface { + pulumi.Input + + ToLoadBalancerOutput() LoadBalancerOutput + ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput +} + +func (*LoadBalancer) ElementType() reflect.Type { + return reflect.TypeOf((**LoadBalancer)(nil)).Elem() +} + +func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput { + return i.ToLoadBalancerOutputWithContext(context.Background()) +} + +func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput { + return pulumi.ToOutputWithContext(ctx, i).(LoadBalancerOutput) +} + +// LoadBalancerArrayInput is an input type that accepts LoadBalancerArray and LoadBalancerArrayOutput values. +// You can construct a concrete instance of `LoadBalancerArrayInput` via: +// +// LoadBalancerArray{ LoadBalancerArgs{...} } +type LoadBalancerArrayInput interface { + pulumi.Input + + ToLoadBalancerArrayOutput() LoadBalancerArrayOutput + ToLoadBalancerArrayOutputWithContext(context.Context) LoadBalancerArrayOutput +} + +type LoadBalancerArray []LoadBalancerInput + +func (LoadBalancerArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LoadBalancer)(nil)).Elem() +} + +func (i LoadBalancerArray) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput { + return i.ToLoadBalancerArrayOutputWithContext(context.Background()) +} + +func (i LoadBalancerArray) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LoadBalancerArrayOutput) +} + +// LoadBalancerMapInput is an input type that accepts LoadBalancerMap and LoadBalancerMapOutput values. +// You can construct a concrete instance of `LoadBalancerMapInput` via: +// +// LoadBalancerMap{ "key": LoadBalancerArgs{...} } +type LoadBalancerMapInput interface { + pulumi.Input + + ToLoadBalancerMapOutput() LoadBalancerMapOutput + ToLoadBalancerMapOutputWithContext(context.Context) LoadBalancerMapOutput +} + +type LoadBalancerMap map[string]LoadBalancerInput + +func (LoadBalancerMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LoadBalancer)(nil)).Elem() +} + +func (i LoadBalancerMap) ToLoadBalancerMapOutput() LoadBalancerMapOutput { + return i.ToLoadBalancerMapOutputWithContext(context.Background()) +} + +func (i LoadBalancerMap) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LoadBalancerMapOutput) +} + +type LoadBalancerOutput struct{ *pulumi.OutputState } + +func (LoadBalancerOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LoadBalancer)(nil)).Elem() +} + +func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput { + return o +} + +func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput { + return o +} + +// The administrative state of the Loadbalancer. +// A valid value is true (UP) or false (DOWN). +func (o LoadBalancerOutput) AdminStateUp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.BoolPtrOutput { return v.AdminStateUp }).(pulumi.BoolPtrOutput) +} + +// The availability zone of the Loadbalancer. +// Changing this creates a new loadbalancer. Available only for Octavia +// **minor version 2.14 or later**. +func (o LoadBalancerOutput) AvailabilityZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringPtrOutput { return v.AvailabilityZone }).(pulumi.StringPtrOutput) +} + +// Human-readable description for the Loadbalancer. +func (o LoadBalancerOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The UUID of a flavor. Changing this creates a new +// loadbalancer. +func (o LoadBalancerOutput) FlavorId() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.FlavorId }).(pulumi.StringOutput) +} + +// The name of the provider. Changing this +// creates a new loadbalancer. +func (o LoadBalancerOutput) LoadbalancerProvider() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.LoadbalancerProvider }).(pulumi.StringOutput) +} + +// Human-readable name for the Loadbalancer. Does not have +// to be unique. +func (o LoadBalancerOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The region in which to obtain the V2 Networking client. +// A Networking client is needed to create an LB member. If omitted, the +// `region` argument of the provider is used. Changing this creates a new +// LB member. +func (o LoadBalancerOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +// A list of security group IDs to apply to the +// loadbalancer. The security groups must be specified by ID and not name (as +// opposed to how they are configured with the Compute Instance). +func (o LoadBalancerOutput) SecurityGroupIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringArrayOutput { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) +} + +// A list of simple strings assigned to the loadbalancer. +// Available only for Octavia **minor version 2.5 or later**. +func (o LoadBalancerOutput) Tags() pulumi.StringArrayOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringArrayOutput { return v.Tags }).(pulumi.StringArrayOutput) +} + +// Required for admins. The UUID of the tenant who owns +// the Loadbalancer. Only administrative users can specify a tenant UUID +// other than their own. Changing this creates a new loadbalancer. +func (o LoadBalancerOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.TenantId }).(pulumi.StringOutput) +} + +// The ip address of the load balancer. +// Changing this creates a new loadbalancer. +func (o LoadBalancerOutput) VipAddress() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.VipAddress }).(pulumi.StringOutput) +} + +// The network on which to allocate the +// Loadbalancer's address. A tenant can only create Loadbalancers on networks +// authorized by policy (e.g. networks that belong to them or networks that +// are shared). Changing this creates a new loadbalancer. Exactly one of +// `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. +func (o LoadBalancerOutput) VipNetworkId() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.VipNetworkId }).(pulumi.StringOutput) +} + +// The port UUID that the loadbalancer will use. +// Changing this creates a new loadbalancer. Exactly one of +// `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. +func (o LoadBalancerOutput) VipPortId() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.VipPortId }).(pulumi.StringOutput) +} + +// The ID of the QoS Policy which will +// be applied to the Virtual IP (VIP). +func (o LoadBalancerOutput) VipQosPolicyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringPtrOutput { return v.VipQosPolicyId }).(pulumi.StringPtrOutput) +} + +// The subnet on which to allocate the +// Loadbalancer's address. A tenant can only create Loadbalancers on networks +// authorized by policy (e.g. networks that belong to them or networks that +// are shared). Changing this creates a new loadbalancer. Exactly one of +// `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. +func (o LoadBalancerOutput) VipSubnetId() pulumi.StringOutput { + return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.VipSubnetId }).(pulumi.StringOutput) +} + +type LoadBalancerArrayOutput struct{ *pulumi.OutputState } + +func (LoadBalancerArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LoadBalancer)(nil)).Elem() +} + +func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput { + return o +} + +func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput { + return o +} + +func (o LoadBalancerArrayOutput) Index(i pulumi.IntInput) LoadBalancerOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LoadBalancer { + return vs[0].([]*LoadBalancer)[vs[1].(int)] + }).(LoadBalancerOutput) +} + +type LoadBalancerMapOutput struct{ *pulumi.OutputState } + +func (LoadBalancerMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LoadBalancer)(nil)).Elem() +} + +func (o LoadBalancerMapOutput) ToLoadBalancerMapOutput() LoadBalancerMapOutput { + return o +} + +func (o LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput { + return o +} + +func (o LoadBalancerMapOutput) MapIndex(k pulumi.StringInput) LoadBalancerOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LoadBalancer { + return vs[0].(map[string]*LoadBalancer)[vs[1].(string)] + }).(LoadBalancerOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LoadBalancerInput)(nil)).Elem(), &LoadBalancer{}) + pulumi.RegisterInputType(reflect.TypeOf((*LoadBalancerArrayInput)(nil)).Elem(), LoadBalancerArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LoadBalancerMapInput)(nil)).Elem(), LoadBalancerMap{}) + pulumi.RegisterOutputType(LoadBalancerOutput{}) + pulumi.RegisterOutputType(LoadBalancerArrayOutput{}) + pulumi.RegisterOutputType(LoadBalancerMapOutput{}) +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnNetworkAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnNetworkAssociateV2.java index abd5be0b7..79fb9f08a 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnNetworkAssociateV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnNetworkAssociateV2.java @@ -26,8 +26,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.BgpvpnNetworkAssociateV2; - * import com.pulumi.openstack.BgpvpnNetworkAssociateV2Args; + * import com.pulumi.openstack.bgpvpn.NetworkAssociateV2; + * import com.pulumi.openstack.bgpvpn.NetworkAssociateV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -41,7 +41,7 @@ * } * * public static void stack(Context ctx) { - * var association1 = new BgpvpnNetworkAssociateV2("association1", BgpvpnNetworkAssociateV2Args.builder() + * var association1 = new NetworkAssociateV2("association1", NetworkAssociateV2Args.builder() * .bgpvpnId("e7189337-5684-46ee-bcb1-44f1a57066c9") * .networkId("de83d56c-4d2f-44f7-ac24-af393252204f") * .build()); @@ -64,7 +64,11 @@ * $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 * ``` * + * @deprecated + * openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 + * */ +@Deprecated /* openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 */ @ResourceType(type="openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2") public class BgpvpnNetworkAssociateV2 extends com.pulumi.resources.CustomResource { /** diff --git a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnPortAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnPortAssociateV2.java index b29134236..91ec473d4 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnPortAssociateV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnPortAssociateV2.java @@ -30,9 +30,9 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.BgpvpnPortAssociateV2; - * import com.pulumi.openstack.BgpvpnPortAssociateV2Args; - * import com.pulumi.openstack.inputs.BgpvpnPortAssociateV2RouteArgs; + * import com.pulumi.openstack.bgpvpn.PortAssociateV2; + * import com.pulumi.openstack.bgpvpn.PortAssociateV2Args; + * import com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -46,15 +46,15 @@ * } * * public static void stack(Context ctx) { - * var association1 = new BgpvpnPortAssociateV2("association1", BgpvpnPortAssociateV2Args.builder() + * var association1 = new PortAssociateV2("association1", PortAssociateV2Args.builder() * .bgpvpnId("19382ec5-8098-47d9-a9c6-6270c91103f4") * .portId("b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f") * .routes( - * BgpvpnPortAssociateV2RouteArgs.builder() + * PortAssociateV2RouteArgs.builder() * .type("prefix") * .prefix("192.168.170.1/32") * .build(), - * BgpvpnPortAssociateV2RouteArgs.builder() + * PortAssociateV2RouteArgs.builder() * .type("bgpvpn") * .bgpvpnId("35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c") * .build()) @@ -78,7 +78,11 @@ * $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf * ``` * + * @deprecated + * openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 + * */ +@Deprecated /* openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 */ @ResourceType(type="openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2") public class BgpvpnPortAssociateV2 extends com.pulumi.resources.CustomResource { /** diff --git a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnRouterAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnRouterAssociateV2.java index 01f03024e..57bf1f128 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnRouterAssociateV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnRouterAssociateV2.java @@ -27,8 +27,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.BgpvpnRouterAssociateV2; - * import com.pulumi.openstack.BgpvpnRouterAssociateV2Args; + * import com.pulumi.openstack.bgpvpn.RouterAssociateV2; + * import com.pulumi.openstack.bgpvpn.RouterAssociateV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -42,7 +42,7 @@ * } * * public static void stack(Context ctx) { - * var association1 = new BgpvpnRouterAssociateV2("association1", BgpvpnRouterAssociateV2Args.builder() + * var association1 = new RouterAssociateV2("association1", RouterAssociateV2Args.builder() * .bgpvpnId("d57d39e1-dc63-44fd-8cbd-a4e1488100c5") * .routerId("423fa80f-e0d7-4d02-a9a5-8b8c05812bf6") * .build()); @@ -65,7 +65,11 @@ * $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f * ``` * + * @deprecated + * openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 + * */ +@Deprecated /* openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 */ @ResourceType(type="openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2") public class BgpvpnRouterAssociateV2 extends com.pulumi.resources.CustomResource { /** diff --git a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnV2.java b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnV2.java index 8e78a785e..55eeeaa70 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/BgpvpnV2.java @@ -30,8 +30,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.BgpvpnV2; - * import com.pulumi.openstack.BgpvpnV2Args; + * import com.pulumi.openstack.bgpvpn.V2; + * import com.pulumi.openstack.bgpvpn.V2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -45,7 +45,7 @@ * } * * public static void stack(Context ctx) { - * var bgpvpn1 = new BgpvpnV2("bgpvpn1", BgpvpnV2Args.builder() + * var bgpvpn1 = new V2("bgpvpn1", V2Args.builder() * .name("bgpvpn1") * .routeDistinguishers("64512:1") * .routeTargets("64512:1") @@ -69,7 +69,11 @@ * $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c * ``` * + * @deprecated + * openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 + * */ +@Deprecated /* openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ @ResourceType(type="openstack:index/bgpvpnV2:BgpvpnV2") public class BgpvpnV2 extends com.pulumi.resources.CustomResource { /** diff --git a/sdk/java/src/main/java/com/pulumi/openstack/LbFlavorprofileV2.java b/sdk/java/src/main/java/com/pulumi/openstack/LbFlavorprofileV2.java index 70149a8b3..fdb5946c6 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/LbFlavorprofileV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/LbFlavorprofileV2.java @@ -30,8 +30,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.LbFlavorprofileV2; - * import com.pulumi.openstack.LbFlavorprofileV2Args; + * import com.pulumi.openstack.loadbalancer.FlavorprofileV2; + * import com.pulumi.openstack.loadbalancer.FlavorprofileV2Args; * import static com.pulumi.codegen.internal.Serialization.*; * import java.util.List; * import java.util.ArrayList; @@ -46,7 +46,7 @@ * } * * public static void stack(Context ctx) { - * var flavorprofile1 = new LbFlavorprofileV2("flavorprofile1", LbFlavorprofileV2Args.builder() + * var flavorprofile1 = new FlavorprofileV2("flavorprofile1", FlavorprofileV2Args.builder() * .name("amphora-single-profile") * .providerName("amphora") * .flavorData(serializeJson( @@ -71,8 +71,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.LbFlavorprofileV2; - * import com.pulumi.openstack.LbFlavorprofileV2Args; + * import com.pulumi.openstack.loadbalancer.FlavorprofileV2; + * import com.pulumi.openstack.loadbalancer.FlavorprofileV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -86,7 +86,7 @@ * } * * public static void stack(Context ctx) { - * var flavorprofile1 = new LbFlavorprofileV2("flavorprofile1", LbFlavorprofileV2Args.builder() + * var flavorprofile1 = new FlavorprofileV2("flavorprofile1", FlavorprofileV2Args.builder() * .name("amphora-single-profile") * .providerName("amphora") * .flavorData("{\"loadbalancer_topology\": \"SINGLE\"}") @@ -106,7 +106,11 @@ * $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b * ``` * + * @deprecated + * openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 + * */ +@Deprecated /* openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 */ @ResourceType(type="openstack:index/lbFlavorprofileV2:LbFlavorprofileV2") public class LbFlavorprofileV2 extends com.pulumi.resources.CustomResource { /** diff --git a/sdk/java/src/main/java/com/pulumi/openstack/LbLoadbalancerV2.java b/sdk/java/src/main/java/com/pulumi/openstack/LbLoadbalancerV2.java index 00f9e6b86..c8c9edc32 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/LbLoadbalancerV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/LbLoadbalancerV2.java @@ -3,7 +3,6 @@ package com.pulumi.openstack; -import com.pulumi.core.Alias; import com.pulumi.core.Output; import com.pulumi.core.annotations.Export; import com.pulumi.core.annotations.ResourceType; @@ -33,8 +32,8 @@ * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.LbLoadbalancerV2; - * import com.pulumi.openstack.LbLoadbalancerV2Args; + * import com.pulumi.openstack.loadbalancer.LoadBalancer; + * import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -48,7 +47,7 @@ * } * * public static void stack(Context ctx) { - * var lb1 = new LbLoadbalancerV2("lb1", LbLoadbalancerV2Args.builder() + * var lb1 = new LoadBalancer("lb1", LoadBalancerArgs.builder() * .vipSubnetId("d9415786-5f1a-428b-b35f-2f1523e146d2") * .build()); * @@ -66,7 +65,11 @@ * $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 * ``` * + * @deprecated + * openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer + * */ +@Deprecated /* openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer */ @ResourceType(type="openstack:index/lbLoadbalancerV2:LbLoadbalancerV2") public class LbLoadbalancerV2 extends com.pulumi.resources.CustomResource { /** @@ -371,9 +374,6 @@ private static LbLoadbalancerV2Args makeArgs(@Nullable LbLoadbalancerV2Args 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()) - .aliases(List.of( - Output.of(Alias.builder().type("openstack:loadbalancer/loadBalancer:LoadBalancer").build()) - )) .build(); return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); } diff --git a/sdk/java/src/main/java/com/pulumi/openstack/OpenstackFunctions.java b/sdk/java/src/main/java/com/pulumi/openstack/OpenstackFunctions.java index 90b92e0ff..eabff406f 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/OpenstackFunctions.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/OpenstackFunctions.java @@ -33,8 +33,8 @@ public final class OpenstackFunctions { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -48,7 +48,7 @@ public final class OpenstackFunctions { * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -58,7 +58,11 @@ public final class OpenstackFunctions { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static Output getFwGroupV2() { return getFwGroupV2(GetFwGroupV2Args.Empty, InvokeOptions.Empty); } @@ -75,8 +79,8 @@ public static Output getFwGroupV2() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -90,7 +94,7 @@ public static Output getFwGroupV2() { * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -100,7 +104,11 @@ public static Output getFwGroupV2() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static CompletableFuture getFwGroupV2Plain() { return getFwGroupV2Plain(GetFwGroupV2PlainArgs.Empty, InvokeOptions.Empty); } @@ -117,8 +125,8 @@ public static CompletableFuture getFwGroupV2Plain() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -132,7 +140,7 @@ public static CompletableFuture getFwGroupV2Plain() { * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -142,7 +150,11 @@ public static CompletableFuture getFwGroupV2Plain() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static Output getFwGroupV2(GetFwGroupV2Args args) { return getFwGroupV2(args, InvokeOptions.Empty); } @@ -159,8 +171,8 @@ public static Output getFwGroupV2(GetFwGroupV2Args args) { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -174,7 +186,7 @@ public static Output getFwGroupV2(GetFwGroupV2Args args) { * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -184,7 +196,11 @@ public static Output getFwGroupV2(GetFwGroupV2Args args) { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static CompletableFuture getFwGroupV2Plain(GetFwGroupV2PlainArgs args) { return getFwGroupV2Plain(args, InvokeOptions.Empty); } @@ -201,8 +217,8 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -216,7 +232,7 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -226,7 +242,11 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static Output getFwGroupV2(GetFwGroupV2Args args, InvokeOptions options) { return Deployment.getInstance().invoke("openstack:index/getFwGroupV2:getFwGroupV2", TypeShape.of(GetFwGroupV2Result.class), args, Utilities.withVersion(options)); } @@ -243,8 +263,8 @@ public static Output getFwGroupV2(GetFwGroupV2Args args, Inv * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwGroupV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -258,7 +278,7 @@ public static Output getFwGroupV2(GetFwGroupV2Args args, Inv * } * * public static void stack(Context ctx) { - * final var group = OpenstackFunctions.getFwGroupV2(GetFwGroupV2Args.builder() + * final var group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder() * .name("tf_test_group") * .build()); * @@ -268,7 +288,11 @@ public static Output getFwGroupV2(GetFwGroupV2Args args, Inv * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 + * */ + @Deprecated /* openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ public static CompletableFuture getFwGroupV2Plain(GetFwGroupV2PlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("openstack:index/getFwGroupV2:getFwGroupV2", TypeShape.of(GetFwGroupV2Result.class), args, Utilities.withVersion(options)); } @@ -285,8 +309,8 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -300,7 +324,7 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -310,7 +334,11 @@ public static CompletableFuture getFwGroupV2Plain(GetFwGroup * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static Output getFwPolicyV2() { return getFwPolicyV2(GetFwPolicyV2Args.Empty, InvokeOptions.Empty); } @@ -327,8 +355,8 @@ public static Output getFwPolicyV2() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -342,7 +370,7 @@ public static Output getFwPolicyV2() { * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -352,7 +380,11 @@ public static Output getFwPolicyV2() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static CompletableFuture getFwPolicyV2Plain() { return getFwPolicyV2Plain(GetFwPolicyV2PlainArgs.Empty, InvokeOptions.Empty); } @@ -369,8 +401,8 @@ public static CompletableFuture getFwPolicyV2Plain() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -384,7 +416,7 @@ public static CompletableFuture getFwPolicyV2Plain() { * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -394,7 +426,11 @@ public static CompletableFuture getFwPolicyV2Plain() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static Output getFwPolicyV2(GetFwPolicyV2Args args) { return getFwPolicyV2(args, InvokeOptions.Empty); } @@ -411,8 +447,8 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args) * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -426,7 +462,7 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args) * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -436,7 +472,11 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args) * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static CompletableFuture getFwPolicyV2Plain(GetFwPolicyV2PlainArgs args) { return getFwPolicyV2Plain(args, InvokeOptions.Empty); } @@ -453,8 +493,8 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -468,7 +508,7 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -478,7 +518,11 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static Output getFwPolicyV2(GetFwPolicyV2Args args, InvokeOptions options) { return Deployment.getInstance().invoke("openstack:index/getFwPolicyV2:getFwPolicyV2", TypeShape.of(GetFwPolicyV2Result.class), args, Utilities.withVersion(options)); } @@ -495,8 +539,8 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args, * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwPolicyV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -510,7 +554,7 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args, * } * * public static void stack(Context ctx) { - * final var policy = OpenstackFunctions.getFwPolicyV2(GetFwPolicyV2Args.builder() + * final var policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder() * .name("tf_test_policy") * .build()); * @@ -520,7 +564,11 @@ public static Output getFwPolicyV2(GetFwPolicyV2Args args, * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 + * */ + @Deprecated /* openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ public static CompletableFuture getFwPolicyV2Plain(GetFwPolicyV2PlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("openstack:index/getFwPolicyV2:getFwPolicyV2", TypeShape.of(GetFwPolicyV2Result.class), args, Utilities.withVersion(options)); } @@ -537,8 +585,8 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -552,7 +600,7 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -562,7 +610,11 @@ public static CompletableFuture getFwPolicyV2Plain(GetFwPol * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static Output getFwRuleV2() { return getFwRuleV2(GetFwRuleV2Args.Empty, InvokeOptions.Empty); } @@ -579,8 +631,8 @@ public static Output getFwRuleV2() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -594,7 +646,7 @@ public static Output getFwRuleV2() { * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -604,7 +656,11 @@ public static Output getFwRuleV2() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static CompletableFuture getFwRuleV2Plain() { return getFwRuleV2Plain(GetFwRuleV2PlainArgs.Empty, InvokeOptions.Empty); } @@ -621,8 +677,8 @@ public static CompletableFuture getFwRuleV2Plain() { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -636,7 +692,7 @@ public static CompletableFuture getFwRuleV2Plain() { * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -646,7 +702,11 @@ public static CompletableFuture getFwRuleV2Plain() { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static Output getFwRuleV2(GetFwRuleV2Args args) { return getFwRuleV2(args, InvokeOptions.Empty); } @@ -663,8 +723,8 @@ public static Output getFwRuleV2(GetFwRuleV2Args args) { * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -678,7 +738,7 @@ public static Output getFwRuleV2(GetFwRuleV2Args args) { * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -688,7 +748,11 @@ public static Output getFwRuleV2(GetFwRuleV2Args args) { * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static CompletableFuture getFwRuleV2Plain(GetFwRuleV2PlainArgs args) { return getFwRuleV2Plain(args, InvokeOptions.Empty); } @@ -705,8 +769,8 @@ public static CompletableFuture getFwRuleV2Plain(GetFwRuleV2P * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -720,7 +784,7 @@ public static CompletableFuture getFwRuleV2Plain(GetFwRuleV2P * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -730,7 +794,11 @@ public static CompletableFuture getFwRuleV2Plain(GetFwRuleV2P * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static Output getFwRuleV2(GetFwRuleV2Args args, InvokeOptions options) { return Deployment.getInstance().invoke("openstack:index/getFwRuleV2:getFwRuleV2", TypeShape.of(GetFwRuleV2Result.class), args, Utilities.withVersion(options)); } @@ -747,8 +815,8 @@ public static Output getFwRuleV2(GetFwRuleV2Args args, Invoke * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; - * import com.pulumi.openstack.OpenstackFunctions; - * import com.pulumi.openstack.inputs.GetFwRuleV2Args; + * import com.pulumi.openstack.firewall.FirewallFunctions; + * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -762,7 +830,7 @@ public static Output getFwRuleV2(GetFwRuleV2Args args, Invoke * } * * public static void stack(Context ctx) { - * final var rule = OpenstackFunctions.getFwRuleV2(GetFwRuleV2Args.builder() + * final var rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder() * .name("tf_test_rule") * .build()); * @@ -772,7 +840,11 @@ public static Output getFwRuleV2(GetFwRuleV2Args args, Invoke * * <!--End PulumiCodeChooser --> * + * @deprecated + * openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 + * */ + @Deprecated /* openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ public static CompletableFuture getFwRuleV2Plain(GetFwRuleV2PlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("openstack:index/getFwRuleV2:getFwRuleV2", TypeShape.of(GetFwRuleV2Result.class), args, Utilities.withVersion(options)); } diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2.java new file mode 100644 index 000000000..70dc78b87 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2.java @@ -0,0 +1,203 @@ +// *** 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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.bgpvpn.NetworkAssociateV2Args; +import com.pulumi.openstack.bgpvpn.inputs.NetworkAssociateV2State; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Manages a V2 BGP VPN network association resource within OpenStack. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.bgpvpn.NetworkAssociateV2;
+ * import com.pulumi.openstack.bgpvpn.NetworkAssociateV2Args;
+ * 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 association1 = new NetworkAssociateV2("association1", NetworkAssociateV2Args.builder()
+ *             .bgpvpnId("e7189337-5684-46ee-bcb1-44f1a57066c9")
+ *             .networkId("de83d56c-4d2f-44f7-ac24-af393252204f")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN + * + * network association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 + * ``` + * + */ +@ResourceType(type="openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2") +public class NetworkAssociateV2 extends com.pulumi.resources.CustomResource { + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + @Export(name="bgpvpnId", refs={String.class}, tree="[0]") + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + @Export(name="networkId", refs={String.class}, tree="[0]") + private Output networkId; + + /** + * @return The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + public Output networkId() { + return this.networkId; + } + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + @Export(name="projectId", refs={String.class}, tree="[0]") + private Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + public Output projectId() { + return this.projectId; + } + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + public Output region() { + return this.region; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public NetworkAssociateV2(java.lang.String name) { + this(name, NetworkAssociateV2Args.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public NetworkAssociateV2(java.lang.String name, NetworkAssociateV2Args 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 NetworkAssociateV2(java.lang.String name, NetworkAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private NetworkAssociateV2(java.lang.String name, Output id, @Nullable NetworkAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2", name, state, makeResourceOptions(options, id), false); + } + + private static NetworkAssociateV2Args makeArgs(NetworkAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? NetworkAssociateV2Args.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2").build()) + )) + .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 NetworkAssociateV2 get(java.lang.String name, Output id, @Nullable NetworkAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new NetworkAssociateV2(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2Args.java new file mode 100644 index 000000000..f8a0a9bdc --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/NetworkAssociateV2Args.java @@ -0,0 +1,233 @@ +// *** 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.pulumi.openstack.bgpvpn; + +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 NetworkAssociateV2Args extends com.pulumi.resources.ResourceArgs { + + public static final NetworkAssociateV2Args Empty = new NetworkAssociateV2Args(); + + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + @Import(name="bgpvpnId", required=true) + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + @Import(name="networkId", required=true) + private Output networkId; + + /** + * @return The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + public Output networkId() { + return this.networkId; + } + + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + private NetworkAssociateV2Args() {} + + private NetworkAssociateV2Args(NetworkAssociateV2Args $) { + this.bgpvpnId = $.bgpvpnId; + this.networkId = $.networkId; + this.projectId = $.projectId; + this.region = $.region; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NetworkAssociateV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NetworkAssociateV2Args $; + + public Builder() { + $ = new NetworkAssociateV2Args(); + } + + public Builder(NetworkAssociateV2Args defaults) { + $ = new NetworkAssociateV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + * @return builder + * + */ + public Builder bgpvpnId(Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param networkId The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + * @return builder + * + */ + public Builder networkId(Output networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param networkId The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + * @return builder + * + */ + public Builder networkId(String networkId) { + return networkId(Output.of(networkId)); + } + + /** + * @param projectId The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + public NetworkAssociateV2Args build() { + if ($.bgpvpnId == null) { + throw new MissingRequiredPropertyException("NetworkAssociateV2Args", "bgpvpnId"); + } + if ($.networkId == null) { + throw new MissingRequiredPropertyException("NetworkAssociateV2Args", "networkId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2.java new file mode 100644 index 000000000..870e495e2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2.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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.bgpvpn.PortAssociateV2Args; +import com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2State; +import com.pulumi.openstack.bgpvpn.outputs.PortAssociateV2Route; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Manages a V2 BGP VPN port association resource within OpenStack. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.bgpvpn.PortAssociateV2;
+ * import com.pulumi.openstack.bgpvpn.PortAssociateV2Args;
+ * import com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs;
+ * 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 association1 = new PortAssociateV2("association1", PortAssociateV2Args.builder()
+ *             .bgpvpnId("19382ec5-8098-47d9-a9c6-6270c91103f4")
+ *             .portId("b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f")
+ *             .routes(            
+ *                 PortAssociateV2RouteArgs.builder()
+ *                     .type("prefix")
+ *                     .prefix("192.168.170.1/32")
+ *                     .build(),
+ *                 PortAssociateV2RouteArgs.builder()
+ *                     .type("bgpvpn")
+ *                     .bgpvpnId("35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c")
+ *                     .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port + * + * association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf + * ``` + * + */ +@ResourceType(type="openstack:bgpvpn/portAssociateV2:PortAssociateV2") +public class PortAssociateV2 extends com.pulumi.resources.CustomResource { + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + @Export(name="advertiseFixedIps", refs={Boolean.class}, tree="[0]") + private Output advertiseFixedIps; + + /** + * @return A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + public Output advertiseFixedIps() { + return this.advertiseFixedIps; + } + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + @Export(name="bgpvpnId", refs={String.class}, tree="[0]") + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + @Export(name="portId", refs={String.class}, tree="[0]") + private Output portId; + + /** + * @return The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + public Output portId() { + return this.portId; + } + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + @Export(name="projectId", refs={String.class}, tree="[0]") + private Output projectId; + + /** + * @return The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + public Output projectId() { + return this.projectId; + } + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + public Output region() { + return this.region; + } + /** + * A list of dictionaries containing the following keys: + * + */ + @Export(name="routes", refs={List.class,PortAssociateV2Route.class}, tree="[0,1]") + private Output> routes; + + /** + * @return A list of dictionaries containing the following keys: + * + */ + public Output>> routes() { + return Codegen.optional(this.routes); + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public PortAssociateV2(java.lang.String name) { + this(name, PortAssociateV2Args.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public PortAssociateV2(java.lang.String name, PortAssociateV2Args 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 PortAssociateV2(java.lang.String name, PortAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private PortAssociateV2(java.lang.String name, Output id, @Nullable PortAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/portAssociateV2:PortAssociateV2", name, state, makeResourceOptions(options, id), false); + } + + private static PortAssociateV2Args makeArgs(PortAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? PortAssociateV2Args.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2").build()) + )) + .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 PortAssociateV2 get(java.lang.String name, Output id, @Nullable PortAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new PortAssociateV2(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2Args.java new file mode 100644 index 000000000..ae82fb4be --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/PortAssociateV2Args.java @@ -0,0 +1,324 @@ +// *** 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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class PortAssociateV2Args extends com.pulumi.resources.ResourceArgs { + + public static final PortAssociateV2Args Empty = new PortAssociateV2Args(); + + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + @Import(name="advertiseFixedIps") + private @Nullable Output advertiseFixedIps; + + /** + * @return A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + public Optional> advertiseFixedIps() { + return Optional.ofNullable(this.advertiseFixedIps); + } + + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + @Import(name="bgpvpnId", required=true) + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + @Import(name="portId", required=true) + private Output portId; + + /** + * @return The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + public Output portId() { + return this.portId; + } + + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of dictionaries containing the following keys: + * + */ + @Import(name="routes") + private @Nullable Output> routes; + + /** + * @return A list of dictionaries containing the following keys: + * + */ + public Optional>> routes() { + return Optional.ofNullable(this.routes); + } + + private PortAssociateV2Args() {} + + private PortAssociateV2Args(PortAssociateV2Args $) { + this.advertiseFixedIps = $.advertiseFixedIps; + this.bgpvpnId = $.bgpvpnId; + this.portId = $.portId; + this.projectId = $.projectId; + this.region = $.region; + this.routes = $.routes; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(PortAssociateV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private PortAssociateV2Args $; + + public Builder() { + $ = new PortAssociateV2Args(); + } + + public Builder(PortAssociateV2Args defaults) { + $ = new PortAssociateV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param advertiseFixedIps A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseFixedIps(@Nullable Output advertiseFixedIps) { + $.advertiseFixedIps = advertiseFixedIps; + return this; + } + + /** + * @param advertiseFixedIps A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseFixedIps(Boolean advertiseFixedIps) { + return advertiseFixedIps(Output.of(advertiseFixedIps)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder bgpvpnId(Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param portId The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder portId(Output portId) { + $.portId = portId; + return this; + } + + /** + * @param portId The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder portId(String portId) { + return portId(Output.of(portId)); + } + + /** + * @param projectId The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(@Nullable Output> routes) { + $.routes = routes; + return this; + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(List routes) { + return routes(Output.of(routes)); + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(PortAssociateV2RouteArgs... routes) { + return routes(List.of(routes)); + } + + public PortAssociateV2Args build() { + if ($.bgpvpnId == null) { + throw new MissingRequiredPropertyException("PortAssociateV2Args", "bgpvpnId"); + } + if ($.portId == null) { + throw new MissingRequiredPropertyException("PortAssociateV2Args", "portId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2.java new file mode 100644 index 000000000..d0960f55c --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2.java @@ -0,0 +1,220 @@ +// *** 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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.bgpvpn.RouterAssociateV2Args; +import com.pulumi.openstack.bgpvpn.inputs.RouterAssociateV2State; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Manages a V2 BGP VPN router association resource within OpenStack. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.bgpvpn.RouterAssociateV2;
+ * import com.pulumi.openstack.bgpvpn.RouterAssociateV2Args;
+ * 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 association1 = new RouterAssociateV2("association1", RouterAssociateV2Args.builder()
+ *             .bgpvpnId("d57d39e1-dc63-44fd-8cbd-a4e1488100c5")
+ *             .routerId("423fa80f-e0d7-4d02-a9a5-8b8c05812bf6")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN + * + * router association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/routerAssociateV2:RouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f + * ``` + * + */ +@ResourceType(type="openstack:bgpvpn/routerAssociateV2:RouterAssociateV2") +public class RouterAssociateV2 extends com.pulumi.resources.CustomResource { + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + @Export(name="advertiseExtraRoutes", refs={Boolean.class}, tree="[0]") + private Output advertiseExtraRoutes; + + /** + * @return A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + public Output advertiseExtraRoutes() { + return this.advertiseExtraRoutes; + } + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + @Export(name="bgpvpnId", refs={String.class}, tree="[0]") + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + @Export(name="projectId", refs={String.class}, tree="[0]") + private Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + public Output projectId() { + return this.projectId; + } + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + public Output region() { + return this.region; + } + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + @Export(name="routerId", refs={String.class}, tree="[0]") + private Output routerId; + + /** + * @return The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + public Output routerId() { + return this.routerId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public RouterAssociateV2(java.lang.String name) { + this(name, RouterAssociateV2Args.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public RouterAssociateV2(java.lang.String name, RouterAssociateV2Args 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 RouterAssociateV2(java.lang.String name, RouterAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private RouterAssociateV2(java.lang.String name, Output id, @Nullable RouterAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/routerAssociateV2:RouterAssociateV2", name, state, makeResourceOptions(options, id), false); + } + + private static RouterAssociateV2Args makeArgs(RouterAssociateV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? RouterAssociateV2Args.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2").build()) + )) + .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 RouterAssociateV2 get(java.lang.String name, Output id, @Nullable RouterAssociateV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new RouterAssociateV2(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2Args.java new file mode 100644 index 000000000..281423f09 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/RouterAssociateV2Args.java @@ -0,0 +1,275 @@ +// *** 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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouterAssociateV2Args extends com.pulumi.resources.ResourceArgs { + + public static final RouterAssociateV2Args Empty = new RouterAssociateV2Args(); + + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + @Import(name="advertiseExtraRoutes") + private @Nullable Output advertiseExtraRoutes; + + /** + * @return A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + public Optional> advertiseExtraRoutes() { + return Optional.ofNullable(this.advertiseExtraRoutes); + } + + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + @Import(name="bgpvpnId", required=true) + private Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + public Output bgpvpnId() { + return this.bgpvpnId; + } + + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + @Import(name="routerId", required=true) + private Output routerId; + + /** + * @return The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + public Output routerId() { + return this.routerId; + } + + private RouterAssociateV2Args() {} + + private RouterAssociateV2Args(RouterAssociateV2Args $) { + this.advertiseExtraRoutes = $.advertiseExtraRoutes; + this.bgpvpnId = $.bgpvpnId; + this.projectId = $.projectId; + this.region = $.region; + this.routerId = $.routerId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouterAssociateV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouterAssociateV2Args $; + + public Builder() { + $ = new RouterAssociateV2Args(); + } + + public Builder(RouterAssociateV2Args defaults) { + $ = new RouterAssociateV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param advertiseExtraRoutes A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseExtraRoutes(@Nullable Output advertiseExtraRoutes) { + $.advertiseExtraRoutes = advertiseExtraRoutes; + return this; + } + + /** + * @param advertiseExtraRoutes A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseExtraRoutes(Boolean advertiseExtraRoutes) { + return advertiseExtraRoutes(Output.of(advertiseExtraRoutes)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder bgpvpnId(Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param projectId The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routerId The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder routerId(Output routerId) { + $.routerId = routerId; + return this; + } + + /** + * @param routerId The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder routerId(String routerId) { + return routerId(Output.of(routerId)); + } + + public RouterAssociateV2Args build() { + if ($.bgpvpnId == null) { + throw new MissingRequiredPropertyException("RouterAssociateV2Args", "bgpvpnId"); + } + if ($.routerId == null) { + throw new MissingRequiredPropertyException("RouterAssociateV2Args", "routerId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2.java new file mode 100644 index 000000000..fab2da9a6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2.java @@ -0,0 +1,357 @@ +// *** 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.pulumi.openstack.bgpvpn; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.bgpvpn.V2Args; +import com.pulumi.openstack.bgpvpn.inputs.V2State; +import java.lang.Boolean; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Manages a V2 BGP VPN service resource within OpenStack. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.bgpvpn.V2;
+ * import com.pulumi.openstack.bgpvpn.V2Args;
+ * 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 bgpvpn1 = new V2("bgpvpn1", V2Args.builder()
+ *             .name("bgpvpn1")
+ *             .routeDistinguishers("64512:1")
+ *             .routeTargets("64512:1")
+ *             .importTargets("64512:2")
+ *             .exportTargets("64512:3")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * BGP VPNs can be imported using the `id`, e.g. + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/v2:V2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c + * ``` + * + */ +@ResourceType(type="openstack:bgpvpn/v2:V2") +public class V2 extends com.pulumi.resources.CustomResource { + /** + * A list of additional Route Targets that will be + * used for export. + * + */ + @Export(name="exportTargets", refs={List.class,String.class}, tree="[0,1]") + private Output> exportTargets; + + /** + * @return A list of additional Route Targets that will be + * used for export. + * + */ + public Output> exportTargets() { + return this.exportTargets; + } + /** + * A list of additional Route Targets that will be + * imported. + * + */ + @Export(name="importTargets", refs={List.class,String.class}, tree="[0,1]") + private Output> importTargets; + + /** + * @return A list of additional Route Targets that will be + * imported. + * + */ + public Output> importTargets() { + return this.importTargets; + } + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + @Export(name="localPref", refs={Integer.class}, tree="[0]") + private Output localPref; + + /** + * @return The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + public Output> localPref() { + return Codegen.optional(this.localPref); + } + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + public Output name() { + return this.name; + } + /** + * A list of network IDs that are associated with the BGP VPN. + * + */ + @Export(name="networks", refs={List.class,String.class}, tree="[0,1]") + private Output> networks; + + /** + * @return A list of network IDs that are associated with the BGP VPN. + * + */ + public Output> networks() { + return this.networks; + } + /** + * A list of port IDs that are associated with the BGP VPN. + * + */ + @Export(name="ports", refs={List.class,String.class}, tree="[0,1]") + private Output> ports; + + /** + * @return A list of port IDs that are associated with the BGP VPN. + * + */ + public Output> ports() { + return this.ports; + } + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + @Export(name="projectId", refs={String.class}, tree="[0]") + private Output projectId; + + /** + * @return The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + public Output projectId() { + return this.projectId; + } + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + public Output region() { + return this.region; + } + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + @Export(name="routeDistinguishers", refs={List.class,String.class}, tree="[0,1]") + private Output> routeDistinguishers; + + /** + * @return A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + public Output> routeDistinguishers() { + return this.routeDistinguishers; + } + /** + * A list of Route Targets that will be both + * imported and used for export. + * + */ + @Export(name="routeTargets", refs={List.class,String.class}, tree="[0,1]") + private Output> routeTargets; + + /** + * @return A list of Route Targets that will be both + * imported and used for export. + * + */ + public Output> routeTargets() { + return this.routeTargets; + } + /** + * A list of router IDs that are associated with the BGP VPN. + * + */ + @Export(name="routers", refs={List.class,String.class}, tree="[0,1]") + private Output> routers; + + /** + * @return A list of router IDs that are associated with the BGP VPN. + * + */ + public Output> routers() { + return this.routers; + } + /** + * Indicates whether the BGP VPN is shared across projects. + * + */ + @Export(name="shared", refs={Boolean.class}, tree="[0]") + private Output shared; + + /** + * @return Indicates whether the BGP VPN is shared across projects. + * + */ + public Output shared() { + return this.shared; + } + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + public Output type() { + return this.type; + } + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + @Export(name="vni", refs={Integer.class}, tree="[0]") + private Output vni; + + /** + * @return The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + public Output> vni() { + return Codegen.optional(this.vni); + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public V2(java.lang.String name) { + this(name, V2Args.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public V2(java.lang.String name, @Nullable V2Args 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 V2(java.lang.String name, @Nullable V2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/v2:V2", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private V2(java.lang.String name, Output id, @Nullable V2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:bgpvpn/v2:V2", name, state, makeResourceOptions(options, id), false); + } + + private static V2Args makeArgs(@Nullable V2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? V2Args.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/bgpvpnV2:BgpvpnV2").build()) + )) + .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 V2 get(java.lang.String name, Output id, @Nullable V2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new V2(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2Args.java new file mode 100644 index 000000000..07bb43050 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/V2Args.java @@ -0,0 +1,514 @@ +// *** 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.pulumi.openstack.bgpvpn; + +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 V2Args extends com.pulumi.resources.ResourceArgs { + + public static final V2Args Empty = new V2Args(); + + /** + * A list of additional Route Targets that will be + * used for export. + * + */ + @Import(name="exportTargets") + private @Nullable Output> exportTargets; + + /** + * @return A list of additional Route Targets that will be + * used for export. + * + */ + public Optional>> exportTargets() { + return Optional.ofNullable(this.exportTargets); + } + + /** + * A list of additional Route Targets that will be + * imported. + * + */ + @Import(name="importTargets") + private @Nullable Output> importTargets; + + /** + * @return A list of additional Route Targets that will be + * imported. + * + */ + public Optional>> importTargets() { + return Optional.ofNullable(this.importTargets); + } + + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + @Import(name="localPref") + private @Nullable Output localPref; + + /** + * @return The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + public Optional> localPref() { + return Optional.ofNullable(this.localPref); + } + + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + @Import(name="routeDistinguishers") + private @Nullable Output> routeDistinguishers; + + /** + * @return A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + public Optional>> routeDistinguishers() { + return Optional.ofNullable(this.routeDistinguishers); + } + + /** + * A list of Route Targets that will be both + * imported and used for export. + * + */ + @Import(name="routeTargets") + private @Nullable Output> routeTargets; + + /** + * @return A list of Route Targets that will be both + * imported and used for export. + * + */ + public Optional>> routeTargets() { + return Optional.ofNullable(this.routeTargets); + } + + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + @Import(name="vni") + private @Nullable Output vni; + + /** + * @return The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + public Optional> vni() { + return Optional.ofNullable(this.vni); + } + + private V2Args() {} + + private V2Args(V2Args $) { + this.exportTargets = $.exportTargets; + this.importTargets = $.importTargets; + this.localPref = $.localPref; + this.name = $.name; + this.projectId = $.projectId; + this.region = $.region; + this.routeDistinguishers = $.routeDistinguishers; + this.routeTargets = $.routeTargets; + this.type = $.type; + this.vni = $.vni; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(V2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private V2Args $; + + public Builder() { + $ = new V2Args(); + } + + public Builder(V2Args defaults) { + $ = new V2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(@Nullable Output> exportTargets) { + $.exportTargets = exportTargets; + return this; + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(List exportTargets) { + return exportTargets(Output.of(exportTargets)); + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(String... exportTargets) { + return exportTargets(List.of(exportTargets)); + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(@Nullable Output> importTargets) { + $.importTargets = importTargets; + return this; + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(List importTargets) { + return importTargets(Output.of(importTargets)); + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(String... importTargets) { + return importTargets(List.of(importTargets)); + } + + /** + * @param localPref The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + * @return builder + * + */ + public Builder localPref(@Nullable Output localPref) { + $.localPref = localPref; + return this; + } + + /** + * @param localPref The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + * @return builder + * + */ + public Builder localPref(Integer localPref) { + return localPref(Output.of(localPref)); + } + + /** + * @param name The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param projectId The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(@Nullable Output> routeDistinguishers) { + $.routeDistinguishers = routeDistinguishers; + return this; + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(List routeDistinguishers) { + return routeDistinguishers(Output.of(routeDistinguishers)); + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(String... routeDistinguishers) { + return routeDistinguishers(List.of(routeDistinguishers)); + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(@Nullable Output> routeTargets) { + $.routeTargets = routeTargets; + return this; + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(List routeTargets) { + return routeTargets(Output.of(routeTargets)); + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(String... routeTargets) { + return routeTargets(List.of(routeTargets)); + } + + /** + * @param type The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param vni The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder vni(@Nullable Output vni) { + $.vni = vni; + return this; + } + + /** + * @param vni The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder vni(Integer vni) { + return vni(Output.of(vni)); + } + + public V2Args build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/NetworkAssociateV2State.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/NetworkAssociateV2State.java new file mode 100644 index 000000000..8485e5596 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/NetworkAssociateV2State.java @@ -0,0 +1,226 @@ +// *** 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.pulumi.openstack.bgpvpn.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 NetworkAssociateV2State extends com.pulumi.resources.ResourceArgs { + + public static final NetworkAssociateV2State Empty = new NetworkAssociateV2State(); + + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + @Import(name="bgpvpnId") + private @Nullable Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + */ + public Optional> bgpvpnId() { + return Optional.ofNullable(this.bgpvpnId); + } + + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + @Import(name="networkId") + private @Nullable Output networkId; + + /** + * @return The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + */ + public Optional> networkId() { + return Optional.ofNullable(this.networkId); + } + + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + private NetworkAssociateV2State() {} + + private NetworkAssociateV2State(NetworkAssociateV2State $) { + this.bgpvpnId = $.bgpvpnId; + this.networkId = $.networkId; + this.projectId = $.projectId; + this.region = $.region; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NetworkAssociateV2State defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NetworkAssociateV2State $; + + public Builder() { + $ = new NetworkAssociateV2State(); + } + + public Builder(NetworkAssociateV2State defaults) { + $ = new NetworkAssociateV2State(Objects.requireNonNull(defaults)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + * @return builder + * + */ + public Builder bgpvpnId(@Nullable Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param networkId The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + * @return builder + * + */ + public Builder networkId(@Nullable Output networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param networkId The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + * + * @return builder + * + */ + public Builder networkId(String networkId) { + return networkId(Output.of(networkId)); + } + + /** + * @param projectId The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + public NetworkAssociateV2State build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2RouteArgs.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2RouteArgs.java new file mode 100644 index 000000000..6b304cff6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2RouteArgs.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.pulumi.openstack.bgpvpn.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 PortAssociateV2RouteArgs extends com.pulumi.resources.ResourceArgs { + + public static final PortAssociateV2RouteArgs Empty = new PortAssociateV2RouteArgs(); + + /** + * The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + */ + @Import(name="bgpvpnId") + private @Nullable Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + */ + public Optional> bgpvpnId() { + return Optional.ofNullable(this.bgpvpnId); + } + + /** + * The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + */ + @Import(name="localPref") + private @Nullable Output localPref; + + /** + * @return The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + */ + public Optional> localPref() { + return Optional.ofNullable(this.localPref); + } + + /** + * The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + */ + @Import(name="prefix") + private @Nullable Output prefix; + + /** + * @return The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + */ + public Optional> prefix() { + return Optional.ofNullable(this.prefix); + } + + /** + * Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + */ + @Import(name="type", required=true) + private Output type; + + /** + * @return Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + */ + public Output type() { + return this.type; + } + + private PortAssociateV2RouteArgs() {} + + private PortAssociateV2RouteArgs(PortAssociateV2RouteArgs $) { + this.bgpvpnId = $.bgpvpnId; + this.localPref = $.localPref; + this.prefix = $.prefix; + this.type = $.type; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(PortAssociateV2RouteArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private PortAssociateV2RouteArgs $; + + public Builder() { + $ = new PortAssociateV2RouteArgs(); + } + + public Builder(PortAssociateV2RouteArgs defaults) { + $ = new PortAssociateV2RouteArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + * @return builder + * + */ + public Builder bgpvpnId(@Nullable Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param localPref The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + * @return builder + * + */ + public Builder localPref(@Nullable Output localPref) { + $.localPref = localPref; + return this; + } + + /** + * @param localPref The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + * @return builder + * + */ + public Builder localPref(Integer localPref) { + return localPref(Output.of(localPref)); + } + + /** + * @param prefix The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + * @return builder + * + */ + public Builder prefix(@Nullable Output prefix) { + $.prefix = prefix; + return this; + } + + /** + * @param prefix The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + * @return builder + * + */ + public Builder prefix(String prefix) { + return prefix(Output.of(prefix)); + } + + /** + * @param type Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + * @return builder + * + */ + public Builder type(Output type) { + $.type = type; + return this; + } + + /** + * @param type Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + public PortAssociateV2RouteArgs build() { + if ($.type == null) { + throw new MissingRequiredPropertyException("PortAssociateV2RouteArgs", "type"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2State.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2State.java new file mode 100644 index 000000000..2fdf407a1 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/PortAssociateV2State.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.pulumi.openstack.bgpvpn.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.openstack.bgpvpn.inputs.PortAssociateV2RouteArgs; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class PortAssociateV2State extends com.pulumi.resources.ResourceArgs { + + public static final PortAssociateV2State Empty = new PortAssociateV2State(); + + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + @Import(name="advertiseFixedIps") + private @Nullable Output advertiseFixedIps; + + /** + * @return A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + */ + public Optional> advertiseFixedIps() { + return Optional.ofNullable(this.advertiseFixedIps); + } + + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + @Import(name="bgpvpnId") + private @Nullable Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + */ + public Optional> bgpvpnId() { + return Optional.ofNullable(this.bgpvpnId); + } + + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + @Import(name="portId") + private @Nullable Output portId; + + /** + * @return The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + */ + public Optional> portId() { + return Optional.ofNullable(this.portId); + } + + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of dictionaries containing the following keys: + * + */ + @Import(name="routes") + private @Nullable Output> routes; + + /** + * @return A list of dictionaries containing the following keys: + * + */ + public Optional>> routes() { + return Optional.ofNullable(this.routes); + } + + private PortAssociateV2State() {} + + private PortAssociateV2State(PortAssociateV2State $) { + this.advertiseFixedIps = $.advertiseFixedIps; + this.bgpvpnId = $.bgpvpnId; + this.portId = $.portId; + this.projectId = $.projectId; + this.region = $.region; + this.routes = $.routes; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(PortAssociateV2State defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private PortAssociateV2State $; + + public Builder() { + $ = new PortAssociateV2State(); + } + + public Builder(PortAssociateV2State defaults) { + $ = new PortAssociateV2State(Objects.requireNonNull(defaults)); + } + + /** + * @param advertiseFixedIps A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseFixedIps(@Nullable Output advertiseFixedIps) { + $.advertiseFixedIps = advertiseFixedIps; + return this; + } + + /** + * @param advertiseFixedIps A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseFixedIps(Boolean advertiseFixedIps) { + return advertiseFixedIps(Output.of(advertiseFixedIps)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder bgpvpnId(@Nullable Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param portId The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder portId(@Nullable Output portId) { + $.portId = portId; + return this; + } + + /** + * @param portId The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + * + * @return builder + * + */ + public Builder portId(String portId) { + return portId(Output.of(portId)); + } + + /** + * @param projectId The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(@Nullable Output> routes) { + $.routes = routes; + return this; + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(List routes) { + return routes(Output.of(routes)); + } + + /** + * @param routes A list of dictionaries containing the following keys: + * + * @return builder + * + */ + public Builder routes(PortAssociateV2RouteArgs... routes) { + return routes(List.of(routes)); + } + + public PortAssociateV2State build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/RouterAssociateV2State.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/RouterAssociateV2State.java new file mode 100644 index 000000000..613f62d86 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/RouterAssociateV2State.java @@ -0,0 +1,268 @@ +// *** 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.pulumi.openstack.bgpvpn.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class RouterAssociateV2State extends com.pulumi.resources.ResourceArgs { + + public static final RouterAssociateV2State Empty = new RouterAssociateV2State(); + + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + @Import(name="advertiseExtraRoutes") + private @Nullable Output advertiseExtraRoutes; + + /** + * @return A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + */ + public Optional> advertiseExtraRoutes() { + return Optional.ofNullable(this.advertiseExtraRoutes); + } + + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + @Import(name="bgpvpnId") + private @Nullable Output bgpvpnId; + + /** + * @return The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + */ + public Optional> bgpvpnId() { + return Optional.ofNullable(this.bgpvpnId); + } + + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + @Import(name="routerId") + private @Nullable Output routerId; + + /** + * @return The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + */ + public Optional> routerId() { + return Optional.ofNullable(this.routerId); + } + + private RouterAssociateV2State() {} + + private RouterAssociateV2State(RouterAssociateV2State $) { + this.advertiseExtraRoutes = $.advertiseExtraRoutes; + this.bgpvpnId = $.bgpvpnId; + this.projectId = $.projectId; + this.region = $.region; + this.routerId = $.routerId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RouterAssociateV2State defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RouterAssociateV2State $; + + public Builder() { + $ = new RouterAssociateV2State(); + } + + public Builder(RouterAssociateV2State defaults) { + $ = new RouterAssociateV2State(Objects.requireNonNull(defaults)); + } + + /** + * @param advertiseExtraRoutes A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseExtraRoutes(@Nullable Output advertiseExtraRoutes) { + $.advertiseExtraRoutes = advertiseExtraRoutes; + return this; + } + + /** + * @param advertiseExtraRoutes A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + * + * @return builder + * + */ + public Builder advertiseExtraRoutes(Boolean advertiseExtraRoutes) { + return advertiseExtraRoutes(Output.of(advertiseExtraRoutes)); + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder bgpvpnId(@Nullable Output bgpvpnId) { + $.bgpvpnId = bgpvpnId; + return this; + } + + /** + * @param bgpvpnId The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder bgpvpnId(String bgpvpnId) { + return bgpvpnId(Output.of(bgpvpnId)); + } + + /** + * @param projectId The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routerId The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder routerId(@Nullable Output routerId) { + $.routerId = routerId; + return this; + } + + /** + * @param routerId The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + * + * @return builder + * + */ + public Builder routerId(String routerId) { + return routerId(Output.of(routerId)); + } + + public RouterAssociateV2State build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/V2State.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/V2State.java new file mode 100644 index 000000000..e063df74f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/inputs/V2State.java @@ -0,0 +1,693 @@ +// *** 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.pulumi.openstack.bgpvpn.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +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 V2State extends com.pulumi.resources.ResourceArgs { + + public static final V2State Empty = new V2State(); + + /** + * A list of additional Route Targets that will be + * used for export. + * + */ + @Import(name="exportTargets") + private @Nullable Output> exportTargets; + + /** + * @return A list of additional Route Targets that will be + * used for export. + * + */ + public Optional>> exportTargets() { + return Optional.ofNullable(this.exportTargets); + } + + /** + * A list of additional Route Targets that will be + * imported. + * + */ + @Import(name="importTargets") + private @Nullable Output> importTargets; + + /** + * @return A list of additional Route Targets that will be + * imported. + * + */ + public Optional>> importTargets() { + return Optional.ofNullable(this.importTargets); + } + + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + @Import(name="localPref") + private @Nullable Output localPref; + + /** + * @return The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + */ + public Optional> localPref() { + return Optional.ofNullable(this.localPref); + } + + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * A list of network IDs that are associated with the BGP VPN. + * + */ + @Import(name="networks") + private @Nullable Output> networks; + + /** + * @return A list of network IDs that are associated with the BGP VPN. + * + */ + public Optional>> networks() { + return Optional.ofNullable(this.networks); + } + + /** + * A list of port IDs that are associated with the BGP VPN. + * + */ + @Import(name="ports") + private @Nullable Output> ports; + + /** + * @return A list of port IDs that are associated with the BGP VPN. + * + */ + public Optional>> ports() { + return Optional.ofNullable(this.ports); + } + + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + @Import(name="routeDistinguishers") + private @Nullable Output> routeDistinguishers; + + /** + * @return A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + */ + public Optional>> routeDistinguishers() { + return Optional.ofNullable(this.routeDistinguishers); + } + + /** + * A list of Route Targets that will be both + * imported and used for export. + * + */ + @Import(name="routeTargets") + private @Nullable Output> routeTargets; + + /** + * @return A list of Route Targets that will be both + * imported and used for export. + * + */ + public Optional>> routeTargets() { + return Optional.ofNullable(this.routeTargets); + } + + /** + * A list of router IDs that are associated with the BGP VPN. + * + */ + @Import(name="routers") + private @Nullable Output> routers; + + /** + * @return A list of router IDs that are associated with the BGP VPN. + * + */ + public Optional>> routers() { + return Optional.ofNullable(this.routers); + } + + /** + * Indicates whether the BGP VPN is shared across projects. + * + */ + @Import(name="shared") + private @Nullable Output shared; + + /** + * @return Indicates whether the BGP VPN is shared across projects. + * + */ + public Optional> shared() { + return Optional.ofNullable(this.shared); + } + + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + @Import(name="vni") + private @Nullable Output vni; + + /** + * @return The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + */ + public Optional> vni() { + return Optional.ofNullable(this.vni); + } + + private V2State() {} + + private V2State(V2State $) { + this.exportTargets = $.exportTargets; + this.importTargets = $.importTargets; + this.localPref = $.localPref; + this.name = $.name; + this.networks = $.networks; + this.ports = $.ports; + this.projectId = $.projectId; + this.region = $.region; + this.routeDistinguishers = $.routeDistinguishers; + this.routeTargets = $.routeTargets; + this.routers = $.routers; + this.shared = $.shared; + this.type = $.type; + this.vni = $.vni; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(V2State defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private V2State $; + + public Builder() { + $ = new V2State(); + } + + public Builder(V2State defaults) { + $ = new V2State(Objects.requireNonNull(defaults)); + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(@Nullable Output> exportTargets) { + $.exportTargets = exportTargets; + return this; + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(List exportTargets) { + return exportTargets(Output.of(exportTargets)); + } + + /** + * @param exportTargets A list of additional Route Targets that will be + * used for export. + * + * @return builder + * + */ + public Builder exportTargets(String... exportTargets) { + return exportTargets(List.of(exportTargets)); + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(@Nullable Output> importTargets) { + $.importTargets = importTargets; + return this; + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(List importTargets) { + return importTargets(Output.of(importTargets)); + } + + /** + * @param importTargets A list of additional Route Targets that will be + * imported. + * + * @return builder + * + */ + public Builder importTargets(String... importTargets) { + return importTargets(List.of(importTargets)); + } + + /** + * @param localPref The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + * @return builder + * + */ + public Builder localPref(@Nullable Output localPref) { + $.localPref = localPref; + return this; + } + + /** + * @param localPref The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + * + * @return builder + * + */ + public Builder localPref(Integer localPref) { + return localPref(Output.of(localPref)); + } + + /** + * @param name The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param networks A list of network IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder networks(@Nullable Output> networks) { + $.networks = networks; + return this; + } + + /** + * @param networks A list of network IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder networks(List networks) { + return networks(Output.of(networks)); + } + + /** + * @param networks A list of network IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder networks(String... networks) { + return networks(List.of(networks)); + } + + /** + * @param ports A list of port IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder ports(@Nullable Output> ports) { + $.ports = ports; + return this; + } + + /** + * @param ports A list of port IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder ports(List ports) { + return ports(Output.of(ports)); + } + + /** + * @param ports A list of port IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder ports(String... ports) { + return ports(List.of(ports)); + } + + /** + * @param projectId The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(@Nullable Output> routeDistinguishers) { + $.routeDistinguishers = routeDistinguishers; + return this; + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(List routeDistinguishers) { + return routeDistinguishers(Output.of(routeDistinguishers)); + } + + /** + * @param routeDistinguishers A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + * + * @return builder + * + */ + public Builder routeDistinguishers(String... routeDistinguishers) { + return routeDistinguishers(List.of(routeDistinguishers)); + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(@Nullable Output> routeTargets) { + $.routeTargets = routeTargets; + return this; + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(List routeTargets) { + return routeTargets(Output.of(routeTargets)); + } + + /** + * @param routeTargets A list of Route Targets that will be both + * imported and used for export. + * + * @return builder + * + */ + public Builder routeTargets(String... routeTargets) { + return routeTargets(List.of(routeTargets)); + } + + /** + * @param routers A list of router IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder routers(@Nullable Output> routers) { + $.routers = routers; + return this; + } + + /** + * @param routers A list of router IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder routers(List routers) { + return routers(Output.of(routers)); + } + + /** + * @param routers A list of router IDs that are associated with the BGP VPN. + * + * @return builder + * + */ + public Builder routers(String... routers) { + return routers(List.of(routers)); + } + + /** + * @param shared Indicates whether the BGP VPN is shared across projects. + * + * @return builder + * + */ + public Builder shared(@Nullable Output shared) { + $.shared = shared; + return this; + } + + /** + * @param shared Indicates whether the BGP VPN is shared across projects. + * + * @return builder + * + */ + public Builder shared(Boolean shared) { + return shared(Output.of(shared)); + } + + /** + * @param type The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + /** + * @param vni The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder vni(@Nullable Output vni) { + $.vni = vni; + return this; + } + + /** + * @param vni The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + * + * @return builder + * + */ + public Builder vni(Integer vni) { + return vni(Output.of(vni)); + } + + public V2State build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/outputs/PortAssociateV2Route.java b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/outputs/PortAssociateV2Route.java new file mode 100644 index 000000000..58c02b103 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/bgpvpn/outputs/PortAssociateV2Route.java @@ -0,0 +1,134 @@ +// *** 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.pulumi.openstack.bgpvpn.outputs; + +import com.pulumi.core.annotations.CustomType; +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; + +@CustomType +public final class PortAssociateV2Route { + /** + * @return The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + */ + private @Nullable String bgpvpnId; + /** + * @return The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + */ + private @Nullable Integer localPref; + /** + * @return The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + */ + private @Nullable String prefix; + /** + * @return Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + */ + private String type; + + private PortAssociateV2Route() {} + /** + * @return The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + * + */ + public Optional bgpvpnId() { + return Optional.ofNullable(this.bgpvpnId); + } + /** + * @return The BGP LOCAL\_PREF value of the routes that will + * be advertised. + * + */ + public Optional localPref() { + return Optional.ofNullable(this.localPref); + } + /** + * @return The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpn_id`. + * + */ + public Optional prefix() { + return Optional.ofNullable(this.prefix); + } + /** + * @return Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. + * + */ + public String type() { + return this.type; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(PortAssociateV2Route defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String bgpvpnId; + private @Nullable Integer localPref; + private @Nullable String prefix; + private String type; + public Builder() {} + public Builder(PortAssociateV2Route defaults) { + Objects.requireNonNull(defaults); + this.bgpvpnId = defaults.bgpvpnId; + this.localPref = defaults.localPref; + this.prefix = defaults.prefix; + this.type = defaults.type; + } + + @CustomType.Setter + public Builder bgpvpnId(@Nullable String bgpvpnId) { + + this.bgpvpnId = bgpvpnId; + return this; + } + @CustomType.Setter + public Builder localPref(@Nullable Integer localPref) { + + this.localPref = localPref; + return this; + } + @CustomType.Setter + public Builder prefix(@Nullable String prefix) { + + this.prefix = prefix; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("PortAssociateV2Route", "type"); + } + this.type = type; + return this; + } + public PortAssociateV2Route build() { + final var _resultValue = new PortAssociateV2Route(); + _resultValue.bgpvpnId = bgpvpnId; + _resultValue.localPref = localPref; + _resultValue.prefix = prefix; + _resultValue.type = type; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/FirewallFunctions.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/FirewallFunctions.java new file mode 100644 index 000000000..04bb1b846 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/FirewallFunctions.java @@ -0,0 +1,779 @@ +// *** 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.pulumi.openstack.firewall; + +import com.pulumi.core.Output; +import com.pulumi.core.TypeShape; +import com.pulumi.deployment.Deployment; +import com.pulumi.deployment.InvokeOptions; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.firewall.inputs.GetGroupV2Args; +import com.pulumi.openstack.firewall.inputs.GetGroupV2PlainArgs; +import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args; +import com.pulumi.openstack.firewall.inputs.GetPolicyV2PlainArgs; +import com.pulumi.openstack.firewall.inputs.GetRuleV2Args; +import com.pulumi.openstack.firewall.inputs.GetRuleV2PlainArgs; +import com.pulumi.openstack.firewall.outputs.GetGroupV2Result; +import com.pulumi.openstack.firewall.outputs.GetPolicyV2Result; +import com.pulumi.openstack.firewall.outputs.GetRuleV2Result; +import java.util.concurrent.CompletableFuture; + +public final class FirewallFunctions { + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getGroupV2() { + return getGroupV2(GetGroupV2Args.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getGroupV2Plain() { + return getGroupV2Plain(GetGroupV2PlainArgs.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getGroupV2(GetGroupV2Args args) { + return getGroupV2(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getGroupV2Plain(GetGroupV2PlainArgs args) { + return getGroupV2Plain(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getGroupV2(GetGroupV2Args args, InvokeOptions options) { + return Deployment.getInstance().invoke("openstack:firewall/getGroupV2:getGroupV2", TypeShape.of(GetGroupV2Result.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetGroupV2Args;
+     * 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 group = FirewallFunctions.getGroupV2(GetGroupV2Args.builder()
+     *             .name("tf_test_group")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getGroupV2Plain(GetGroupV2PlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("openstack:firewall/getGroupV2:getGroupV2", TypeShape.of(GetGroupV2Result.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getPolicyV2() { + return getPolicyV2(GetPolicyV2Args.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getPolicyV2Plain() { + return getPolicyV2Plain(GetPolicyV2PlainArgs.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getPolicyV2(GetPolicyV2Args args) { + return getPolicyV2(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getPolicyV2Plain(GetPolicyV2PlainArgs args) { + return getPolicyV2Plain(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getPolicyV2(GetPolicyV2Args args, InvokeOptions options) { + return Deployment.getInstance().invoke("openstack:firewall/getPolicyV2:getPolicyV2", TypeShape.of(GetPolicyV2Result.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetPolicyV2Args;
+     * 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 policy = FirewallFunctions.getPolicyV2(GetPolicyV2Args.builder()
+     *             .name("tf_test_policy")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getPolicyV2Plain(GetPolicyV2PlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("openstack:firewall/getPolicyV2:getPolicyV2", TypeShape.of(GetPolicyV2Result.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRuleV2() { + return getRuleV2(GetRuleV2Args.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRuleV2Plain() { + return getRuleV2Plain(GetRuleV2PlainArgs.Empty, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRuleV2(GetRuleV2Args args) { + return getRuleV2(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRuleV2Plain(GetRuleV2PlainArgs args) { + return getRuleV2Plain(args, InvokeOptions.Empty); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRuleV2(GetRuleV2Args args, InvokeOptions options) { + return Deployment.getInstance().invoke("openstack:firewall/getRuleV2:getRuleV2", TypeShape.of(GetRuleV2Result.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.openstack.firewall.FirewallFunctions;
+     * import com.pulumi.openstack.firewall.inputs.GetRuleV2Args;
+     * 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 rule = FirewallFunctions.getRuleV2(GetRuleV2Args.builder()
+     *             .name("tf_test_rule")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRuleV2Plain(GetRuleV2PlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("openstack:firewall/getRuleV2:getRuleV2", TypeShape.of(GetRuleV2Result.class), args, Utilities.withVersion(options)); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2Args.java new file mode 100644 index 000000000..12207b2e6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2Args.java @@ -0,0 +1,470 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetGroupV2Args extends com.pulumi.resources.InvokeArgs { + + public static final GetGroupV2Args Empty = new GetGroupV2Args(); + + /** + * Administrative up/down status for the firewall group. + * + */ + @Import(name="adminStateUp") + private @Nullable Output adminStateUp; + + /** + * @return Administrative up/down status for the firewall group. + * + */ + public Optional> adminStateUp() { + return Optional.ofNullable(this.adminStateUp); + } + + /** + * Human-readable description of the firewall group. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Human-readable description of the firewall group. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * The egress policy ID of the firewall group. + * + */ + @Import(name="egressFirewallPolicyId") + private @Nullable Output egressFirewallPolicyId; + + /** + * @return The egress policy ID of the firewall group. + * + */ + public Optional> egressFirewallPolicyId() { + return Optional.ofNullable(this.egressFirewallPolicyId); + } + + /** + * The ID of the firewall group. + * + */ + @Import(name="groupId") + private @Nullable Output groupId; + + /** + * @return The ID of the firewall group. + * + */ + public Optional> groupId() { + return Optional.ofNullable(this.groupId); + } + + /** + * The ingress policy ID of the firewall group. + * + */ + @Import(name="ingressFirewallPolicyId") + private @Nullable Output ingressFirewallPolicyId; + + /** + * @return The ingress policy ID of the firewall group. + * + */ + public Optional> ingressFirewallPolicyId() { + return Optional.ofNullable(this.ingressFirewallPolicyId); + } + + /** + * The name of the firewall group. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name of the firewall group. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * The sharing status of the firewall group. + * + */ + @Import(name="shared") + private @Nullable Output shared; + + /** + * @return The sharing status of the firewall group. + * + */ + public Optional> shared() { + return Optional.ofNullable(this.shared); + } + + /** + * Enabled status for the firewall group. + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return Enabled status for the firewall group. + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + */ + @Import(name="tenantId") + private @Nullable Output tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + */ + public Optional> tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetGroupV2Args() {} + + private GetGroupV2Args(GetGroupV2Args $) { + this.adminStateUp = $.adminStateUp; + this.description = $.description; + this.egressFirewallPolicyId = $.egressFirewallPolicyId; + this.groupId = $.groupId; + this.ingressFirewallPolicyId = $.ingressFirewallPolicyId; + this.name = $.name; + this.projectId = $.projectId; + this.region = $.region; + this.shared = $.shared; + this.status = $.status; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetGroupV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetGroupV2Args $; + + public Builder() { + $ = new GetGroupV2Args(); + } + + public Builder(GetGroupV2Args defaults) { + $ = new GetGroupV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param adminStateUp Administrative up/down status for the firewall group. + * + * @return builder + * + */ + public Builder adminStateUp(@Nullable Output adminStateUp) { + $.adminStateUp = adminStateUp; + return this; + } + + /** + * @param adminStateUp Administrative up/down status for the firewall group. + * + * @return builder + * + */ + public Builder adminStateUp(Boolean adminStateUp) { + return adminStateUp(Output.of(adminStateUp)); + } + + /** + * @param description Human-readable description of the firewall group. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Human-readable description of the firewall group. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param egressFirewallPolicyId The egress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder egressFirewallPolicyId(@Nullable Output egressFirewallPolicyId) { + $.egressFirewallPolicyId = egressFirewallPolicyId; + return this; + } + + /** + * @param egressFirewallPolicyId The egress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder egressFirewallPolicyId(String egressFirewallPolicyId) { + return egressFirewallPolicyId(Output.of(egressFirewallPolicyId)); + } + + /** + * @param groupId The ID of the firewall group. + * + * @return builder + * + */ + public Builder groupId(@Nullable Output groupId) { + $.groupId = groupId; + return this; + } + + /** + * @param groupId The ID of the firewall group. + * + * @return builder + * + */ + public Builder groupId(String groupId) { + return groupId(Output.of(groupId)); + } + + /** + * @param ingressFirewallPolicyId The ingress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder ingressFirewallPolicyId(@Nullable Output ingressFirewallPolicyId) { + $.ingressFirewallPolicyId = ingressFirewallPolicyId; + return this; + } + + /** + * @param ingressFirewallPolicyId The ingress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder ingressFirewallPolicyId(String ingressFirewallPolicyId) { + return ingressFirewallPolicyId(Output.of(ingressFirewallPolicyId)); + } + + /** + * @param name The name of the firewall group. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name of the firewall group. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param shared The sharing status of the firewall group. + * + * @return builder + * + */ + public Builder shared(@Nullable Output shared) { + $.shared = shared; + return this; + } + + /** + * @param shared The sharing status of the firewall group. + * + * @return builder + * + */ + public Builder shared(Boolean shared) { + return shared(Output.of(shared)); + } + + /** + * @param status Enabled status for the firewall group. + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status Enabled status for the firewall group. + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder tenantId(@Nullable Output tenantId) { + $.tenantId = tenantId; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder tenantId(String tenantId) { + return tenantId(Output.of(tenantId)); + } + + public GetGroupV2Args build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2PlainArgs.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2PlainArgs.java new file mode 100644 index 000000000..e91598290 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetGroupV2PlainArgs.java @@ -0,0 +1,355 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetGroupV2PlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetGroupV2PlainArgs Empty = new GetGroupV2PlainArgs(); + + /** + * Administrative up/down status for the firewall group. + * + */ + @Import(name="adminStateUp") + private @Nullable Boolean adminStateUp; + + /** + * @return Administrative up/down status for the firewall group. + * + */ + public Optional adminStateUp() { + return Optional.ofNullable(this.adminStateUp); + } + + /** + * Human-readable description of the firewall group. + * + */ + @Import(name="description") + private @Nullable String description; + + /** + * @return Human-readable description of the firewall group. + * + */ + public Optional description() { + return Optional.ofNullable(this.description); + } + + /** + * The egress policy ID of the firewall group. + * + */ + @Import(name="egressFirewallPolicyId") + private @Nullable String egressFirewallPolicyId; + + /** + * @return The egress policy ID of the firewall group. + * + */ + public Optional egressFirewallPolicyId() { + return Optional.ofNullable(this.egressFirewallPolicyId); + } + + /** + * The ID of the firewall group. + * + */ + @Import(name="groupId") + private @Nullable String groupId; + + /** + * @return The ID of the firewall group. + * + */ + public Optional groupId() { + return Optional.ofNullable(this.groupId); + } + + /** + * The ingress policy ID of the firewall group. + * + */ + @Import(name="ingressFirewallPolicyId") + private @Nullable String ingressFirewallPolicyId; + + /** + * @return The ingress policy ID of the firewall group. + * + */ + public Optional ingressFirewallPolicyId() { + return Optional.ofNullable(this.ingressFirewallPolicyId); + } + + /** + * The name of the firewall group. + * + */ + @Import(name="name") + private @Nullable String name; + + /** + * @return The name of the firewall group. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + */ + @Import(name="projectId") + private @Nullable String projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + */ + public Optional projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable String region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } + + /** + * The sharing status of the firewall group. + * + */ + @Import(name="shared") + private @Nullable Boolean shared; + + /** + * @return The sharing status of the firewall group. + * + */ + public Optional shared() { + return Optional.ofNullable(this.shared); + } + + /** + * Enabled status for the firewall group. + * + */ + @Import(name="status") + private @Nullable String status; + + /** + * @return Enabled status for the firewall group. + * + */ + public Optional status() { + return Optional.ofNullable(this.status); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + */ + @Import(name="tenantId") + private @Nullable String tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + */ + public Optional tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetGroupV2PlainArgs() {} + + private GetGroupV2PlainArgs(GetGroupV2PlainArgs $) { + this.adminStateUp = $.adminStateUp; + this.description = $.description; + this.egressFirewallPolicyId = $.egressFirewallPolicyId; + this.groupId = $.groupId; + this.ingressFirewallPolicyId = $.ingressFirewallPolicyId; + this.name = $.name; + this.projectId = $.projectId; + this.region = $.region; + this.shared = $.shared; + this.status = $.status; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetGroupV2PlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetGroupV2PlainArgs $; + + public Builder() { + $ = new GetGroupV2PlainArgs(); + } + + public Builder(GetGroupV2PlainArgs defaults) { + $ = new GetGroupV2PlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param adminStateUp Administrative up/down status for the firewall group. + * + * @return builder + * + */ + public Builder adminStateUp(@Nullable Boolean adminStateUp) { + $.adminStateUp = adminStateUp; + return this; + } + + /** + * @param description Human-readable description of the firewall group. + * + * @return builder + * + */ + public Builder description(@Nullable String description) { + $.description = description; + return this; + } + + /** + * @param egressFirewallPolicyId The egress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder egressFirewallPolicyId(@Nullable String egressFirewallPolicyId) { + $.egressFirewallPolicyId = egressFirewallPolicyId; + return this; + } + + /** + * @param groupId The ID of the firewall group. + * + * @return builder + * + */ + public Builder groupId(@Nullable String groupId) { + $.groupId = groupId; + return this; + } + + /** + * @param ingressFirewallPolicyId The ingress policy ID of the firewall group. + * + * @return builder + * + */ + public Builder ingressFirewallPolicyId(@Nullable String ingressFirewallPolicyId) { + $.ingressFirewallPolicyId = ingressFirewallPolicyId; + return this; + } + + /** + * @param name The name of the firewall group. + * + * @return builder + * + */ + public Builder name(@Nullable String name) { + $.name = name; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder projectId(@Nullable String projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable String region) { + $.region = region; + return this; + } + + /** + * @param shared The sharing status of the firewall group. + * + * @return builder + * + */ + public Builder shared(@Nullable Boolean shared) { + $.shared = shared; + return this; + } + + /** + * @param status Enabled status for the firewall group. + * + * @return builder + * + */ + public Builder status(@Nullable String status) { + $.status = status; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall group. + * + * @return builder + * + */ + public Builder tenantId(@Nullable String tenantId) { + $.tenantId = tenantId; + return this; + } + + public GetGroupV2PlainArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2Args.java new file mode 100644 index 000000000..621d45dd4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2Args.java @@ -0,0 +1,359 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetPolicyV2Args extends com.pulumi.resources.InvokeArgs { + + public static final GetPolicyV2Args Empty = new GetPolicyV2Args(); + + /** + * Whether this policy has been audited. + * + */ + @Import(name="audited") + private @Nullable Output audited; + + /** + * @return Whether this policy has been audited. + * + */ + public Optional> audited() { + return Optional.ofNullable(this.audited); + } + + /** + * Human-readable description of the policy. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Human-readable description of the policy. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * The name of the firewall policy. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name of the firewall policy. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The ID of the firewall policy. + * + */ + @Import(name="policyId") + private @Nullable Output policyId; + + /** + * @return The ID of the firewall policy. + * + */ + public Optional> policyId() { + return Optional.ofNullable(this.policyId); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * Whether this policy is shared across all projects. + * + */ + @Import(name="shared") + private @Nullable Output shared; + + /** + * @return Whether this policy is shared across all projects. + * + */ + public Optional> shared() { + return Optional.ofNullable(this.shared); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + */ + @Import(name="tenantId") + private @Nullable Output tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + */ + public Optional> tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetPolicyV2Args() {} + + private GetPolicyV2Args(GetPolicyV2Args $) { + this.audited = $.audited; + this.description = $.description; + this.name = $.name; + this.policyId = $.policyId; + this.projectId = $.projectId; + this.region = $.region; + this.shared = $.shared; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetPolicyV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetPolicyV2Args $; + + public Builder() { + $ = new GetPolicyV2Args(); + } + + public Builder(GetPolicyV2Args defaults) { + $ = new GetPolicyV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param audited Whether this policy has been audited. + * + * @return builder + * + */ + public Builder audited(@Nullable Output audited) { + $.audited = audited; + return this; + } + + /** + * @param audited Whether this policy has been audited. + * + * @return builder + * + */ + public Builder audited(Boolean audited) { + return audited(Output.of(audited)); + } + + /** + * @param description Human-readable description of the policy. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Human-readable description of the policy. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param name The name of the firewall policy. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name of the firewall policy. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param policyId The ID of the firewall policy. + * + * @return builder + * + */ + public Builder policyId(@Nullable Output policyId) { + $.policyId = policyId; + return this; + } + + /** + * @param policyId The ID of the firewall policy. + * + * @return builder + * + */ + public Builder policyId(String policyId) { + return policyId(Output.of(policyId)); + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param shared Whether this policy is shared across all projects. + * + * @return builder + * + */ + public Builder shared(@Nullable Output shared) { + $.shared = shared; + return this; + } + + /** + * @param shared Whether this policy is shared across all projects. + * + * @return builder + * + */ + public Builder shared(Boolean shared) { + return shared(Output.of(shared)); + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder tenantId(@Nullable Output tenantId) { + $.tenantId = tenantId; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder tenantId(String tenantId) { + return tenantId(Output.of(tenantId)); + } + + public GetPolicyV2Args build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2PlainArgs.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2PlainArgs.java new file mode 100644 index 000000000..bab3da989 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetPolicyV2PlainArgs.java @@ -0,0 +1,274 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetPolicyV2PlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetPolicyV2PlainArgs Empty = new GetPolicyV2PlainArgs(); + + /** + * Whether this policy has been audited. + * + */ + @Import(name="audited") + private @Nullable Boolean audited; + + /** + * @return Whether this policy has been audited. + * + */ + public Optional audited() { + return Optional.ofNullable(this.audited); + } + + /** + * Human-readable description of the policy. + * + */ + @Import(name="description") + private @Nullable String description; + + /** + * @return Human-readable description of the policy. + * + */ + public Optional description() { + return Optional.ofNullable(this.description); + } + + /** + * The name of the firewall policy. + * + */ + @Import(name="name") + private @Nullable String name; + + /** + * @return The name of the firewall policy. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + + /** + * The ID of the firewall policy. + * + */ + @Import(name="policyId") + private @Nullable String policyId; + + /** + * @return The ID of the firewall policy. + * + */ + public Optional policyId() { + return Optional.ofNullable(this.policyId); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + */ + @Import(name="projectId") + private @Nullable String projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + */ + public Optional projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable String region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } + + /** + * Whether this policy is shared across all projects. + * + */ + @Import(name="shared") + private @Nullable Boolean shared; + + /** + * @return Whether this policy is shared across all projects. + * + */ + public Optional shared() { + return Optional.ofNullable(this.shared); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + */ + @Import(name="tenantId") + private @Nullable String tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + */ + public Optional tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetPolicyV2PlainArgs() {} + + private GetPolicyV2PlainArgs(GetPolicyV2PlainArgs $) { + this.audited = $.audited; + this.description = $.description; + this.name = $.name; + this.policyId = $.policyId; + this.projectId = $.projectId; + this.region = $.region; + this.shared = $.shared; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetPolicyV2PlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetPolicyV2PlainArgs $; + + public Builder() { + $ = new GetPolicyV2PlainArgs(); + } + + public Builder(GetPolicyV2PlainArgs defaults) { + $ = new GetPolicyV2PlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param audited Whether this policy has been audited. + * + * @return builder + * + */ + public Builder audited(@Nullable Boolean audited) { + $.audited = audited; + return this; + } + + /** + * @param description Human-readable description of the policy. + * + * @return builder + * + */ + public Builder description(@Nullable String description) { + $.description = description; + return this; + } + + /** + * @param name The name of the firewall policy. + * + * @return builder + * + */ + public Builder name(@Nullable String name) { + $.name = name; + return this; + } + + /** + * @param policyId The ID of the firewall policy. + * + * @return builder + * + */ + public Builder policyId(@Nullable String policyId) { + $.policyId = policyId; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder projectId(@Nullable String projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable String region) { + $.region = region; + return this; + } + + /** + * @param shared Whether this policy is shared across all projects. + * + * @return builder + * + */ + public Builder shared(@Nullable Boolean shared) { + $.shared = shared; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall policy. + * + * @return builder + * + */ + public Builder tenantId(@Nullable String tenantId) { + $.tenantId = tenantId; + return this; + } + + public GetPolicyV2PlainArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2Args.java new file mode 100644 index 000000000..7cc9fef26 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2Args.java @@ -0,0 +1,683 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +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 GetRuleV2Args extends com.pulumi.resources.InvokeArgs { + + public static final GetRuleV2Args Empty = new GetRuleV2Args(); + + /** + * Action to be taken when the firewall rule matches. + * + */ + @Import(name="action") + private @Nullable Output action; + + /** + * @return Action to be taken when the firewall rule matches. + * + */ + public Optional> action() { + return Optional.ofNullable(this.action); + } + + /** + * The description of the firewall rule. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return The description of the firewall rule. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * The destination IP address on which the + * firewall rule operates. + * + */ + @Import(name="destinationIpAddress") + private @Nullable Output destinationIpAddress; + + /** + * @return The destination IP address on which the + * firewall rule operates. + * + */ + public Optional> destinationIpAddress() { + return Optional.ofNullable(this.destinationIpAddress); + } + + /** + * The destination port on which the firewall + * rule operates. + * + */ + @Import(name="destinationPort") + private @Nullable Output destinationPort; + + /** + * @return The destination port on which the firewall + * rule operates. + * + */ + public Optional> destinationPort() { + return Optional.ofNullable(this.destinationPort); + } + + /** + * Enabled status for the firewall rule. + * + */ + @Import(name="enabled") + private @Nullable Output enabled; + + /** + * @return Enabled status for the firewall rule. + * + */ + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + /** + * The ID of the firewall policy the rule belongs to. + * + */ + @Import(name="firewallPolicyIds") + private @Nullable Output> firewallPolicyIds; + + /** + * @return The ID of the firewall policy the rule belongs to. + * + */ + public Optional>> firewallPolicyIds() { + return Optional.ofNullable(this.firewallPolicyIds); + } + + /** + * IP version, either 4 (default) or 6. + * + */ + @Import(name="ipVersion") + private @Nullable Output ipVersion; + + /** + * @return IP version, either 4 (default) or 6. + * + */ + public Optional> ipVersion() { + return Optional.ofNullable(this.ipVersion); + } + + /** + * The name of the firewall rule. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name of the firewall rule. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + */ + @Import(name="projectId") + private @Nullable Output projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + */ + public Optional> projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The protocol type on which the firewall rule operates. + * + */ + @Import(name="protocol") + private @Nullable Output protocol; + + /** + * @return The protocol type on which the firewall rule operates. + * + */ + public Optional> protocol() { + return Optional.ofNullable(this.protocol); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * The ID of the firewall rule. + * + */ + @Import(name="ruleId") + private @Nullable Output ruleId; + + /** + * @return The ID of the firewall rule. + * + */ + public Optional> ruleId() { + return Optional.ofNullable(this.ruleId); + } + + /** + * The sharing status of the firewall policy. + * + */ + @Import(name="shared") + private @Nullable Output shared; + + /** + * @return The sharing status of the firewall policy. + * + */ + public Optional> shared() { + return Optional.ofNullable(this.shared); + } + + /** + * The source IP address on which the firewall + * rule operates. + * + */ + @Import(name="sourceIpAddress") + private @Nullable Output sourceIpAddress; + + /** + * @return The source IP address on which the firewall + * rule operates. + * + */ + public Optional> sourceIpAddress() { + return Optional.ofNullable(this.sourceIpAddress); + } + + /** + * The source port on which the firewall + * rule operates. + * + */ + @Import(name="sourcePort") + private @Nullable Output sourcePort; + + /** + * @return The source port on which the firewall + * rule operates. + * + */ + public Optional> sourcePort() { + return Optional.ofNullable(this.sourcePort); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + */ + @Import(name="tenantId") + private @Nullable Output tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + */ + public Optional> tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetRuleV2Args() {} + + private GetRuleV2Args(GetRuleV2Args $) { + this.action = $.action; + this.description = $.description; + this.destinationIpAddress = $.destinationIpAddress; + this.destinationPort = $.destinationPort; + this.enabled = $.enabled; + this.firewallPolicyIds = $.firewallPolicyIds; + this.ipVersion = $.ipVersion; + this.name = $.name; + this.projectId = $.projectId; + this.protocol = $.protocol; + this.region = $.region; + this.ruleId = $.ruleId; + this.shared = $.shared; + this.sourceIpAddress = $.sourceIpAddress; + this.sourcePort = $.sourcePort; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRuleV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRuleV2Args $; + + public Builder() { + $ = new GetRuleV2Args(); + } + + public Builder(GetRuleV2Args defaults) { + $ = new GetRuleV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param action Action to be taken when the firewall rule matches. + * + * @return builder + * + */ + public Builder action(@Nullable Output action) { + $.action = action; + return this; + } + + /** + * @param action Action to be taken when the firewall rule matches. + * + * @return builder + * + */ + public Builder action(String action) { + return action(Output.of(action)); + } + + /** + * @param description The description of the firewall rule. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description The description of the firewall rule. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param destinationIpAddress The destination IP address on which the + * firewall rule operates. + * + * @return builder + * + */ + public Builder destinationIpAddress(@Nullable Output destinationIpAddress) { + $.destinationIpAddress = destinationIpAddress; + return this; + } + + /** + * @param destinationIpAddress The destination IP address on which the + * firewall rule operates. + * + * @return builder + * + */ + public Builder destinationIpAddress(String destinationIpAddress) { + return destinationIpAddress(Output.of(destinationIpAddress)); + } + + /** + * @param destinationPort The destination port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder destinationPort(@Nullable Output destinationPort) { + $.destinationPort = destinationPort; + return this; + } + + /** + * @param destinationPort The destination port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder destinationPort(String destinationPort) { + return destinationPort(Output.of(destinationPort)); + } + + /** + * @param enabled Enabled status for the firewall rule. + * + * @return builder + * + */ + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled Enabled status for the firewall rule. + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + /** + * @param firewallPolicyIds The ID of the firewall policy the rule belongs to. + * + * @return builder + * + */ + public Builder firewallPolicyIds(@Nullable Output> firewallPolicyIds) { + $.firewallPolicyIds = firewallPolicyIds; + return this; + } + + /** + * @param firewallPolicyIds The ID of the firewall policy the rule belongs to. + * + * @return builder + * + */ + public Builder firewallPolicyIds(List firewallPolicyIds) { + return firewallPolicyIds(Output.of(firewallPolicyIds)); + } + + /** + * @param firewallPolicyIds The ID of the firewall policy the rule belongs to. + * + * @return builder + * + */ + public Builder firewallPolicyIds(String... firewallPolicyIds) { + return firewallPolicyIds(List.of(firewallPolicyIds)); + } + + /** + * @param ipVersion IP version, either 4 (default) or 6. + * + * @return builder + * + */ + public Builder ipVersion(@Nullable Output ipVersion) { + $.ipVersion = ipVersion; + return this; + } + + /** + * @param ipVersion IP version, either 4 (default) or 6. + * + * @return builder + * + */ + public Builder ipVersion(Integer ipVersion) { + return ipVersion(Output.of(ipVersion)); + } + + /** + * @param name The name of the firewall rule. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name of the firewall rule. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder projectId(@Nullable Output projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder projectId(String projectId) { + return projectId(Output.of(projectId)); + } + + /** + * @param protocol The protocol type on which the firewall rule operates. + * + * @return builder + * + */ + public Builder protocol(@Nullable Output protocol) { + $.protocol = protocol; + return this; + } + + /** + * @param protocol The protocol type on which the firewall rule operates. + * + * @return builder + * + */ + public Builder protocol(String protocol) { + return protocol(Output.of(protocol)); + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param ruleId The ID of the firewall rule. + * + * @return builder + * + */ + public Builder ruleId(@Nullable Output ruleId) { + $.ruleId = ruleId; + return this; + } + + /** + * @param ruleId The ID of the firewall rule. + * + * @return builder + * + */ + public Builder ruleId(String ruleId) { + return ruleId(Output.of(ruleId)); + } + + /** + * @param shared The sharing status of the firewall policy. + * + * @return builder + * + */ + public Builder shared(@Nullable Output shared) { + $.shared = shared; + return this; + } + + /** + * @param shared The sharing status of the firewall policy. + * + * @return builder + * + */ + public Builder shared(Boolean shared) { + return shared(Output.of(shared)); + } + + /** + * @param sourceIpAddress The source IP address on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourceIpAddress(@Nullable Output sourceIpAddress) { + $.sourceIpAddress = sourceIpAddress; + return this; + } + + /** + * @param sourceIpAddress The source IP address on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourceIpAddress(String sourceIpAddress) { + return sourceIpAddress(Output.of(sourceIpAddress)); + } + + /** + * @param sourcePort The source port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourcePort(@Nullable Output sourcePort) { + $.sourcePort = sourcePort; + return this; + } + + /** + * @param sourcePort The source port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourcePort(String sourcePort) { + return sourcePort(Output.of(sourcePort)); + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder tenantId(@Nullable Output tenantId) { + $.tenantId = tenantId; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder tenantId(String tenantId) { + return tenantId(Output.of(tenantId)); + } + + public GetRuleV2Args build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2PlainArgs.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2PlainArgs.java new file mode 100644 index 000000000..53f03f4ea --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/inputs/GetRuleV2PlainArgs.java @@ -0,0 +1,514 @@ +// *** 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.pulumi.openstack.firewall.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +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 GetRuleV2PlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRuleV2PlainArgs Empty = new GetRuleV2PlainArgs(); + + /** + * Action to be taken when the firewall rule matches. + * + */ + @Import(name="action") + private @Nullable String action; + + /** + * @return Action to be taken when the firewall rule matches. + * + */ + public Optional action() { + return Optional.ofNullable(this.action); + } + + /** + * The description of the firewall rule. + * + */ + @Import(name="description") + private @Nullable String description; + + /** + * @return The description of the firewall rule. + * + */ + public Optional description() { + return Optional.ofNullable(this.description); + } + + /** + * The destination IP address on which the + * firewall rule operates. + * + */ + @Import(name="destinationIpAddress") + private @Nullable String destinationIpAddress; + + /** + * @return The destination IP address on which the + * firewall rule operates. + * + */ + public Optional destinationIpAddress() { + return Optional.ofNullable(this.destinationIpAddress); + } + + /** + * The destination port on which the firewall + * rule operates. + * + */ + @Import(name="destinationPort") + private @Nullable String destinationPort; + + /** + * @return The destination port on which the firewall + * rule operates. + * + */ + public Optional destinationPort() { + return Optional.ofNullable(this.destinationPort); + } + + /** + * Enabled status for the firewall rule. + * + */ + @Import(name="enabled") + private @Nullable Boolean enabled; + + /** + * @return Enabled status for the firewall rule. + * + */ + public Optional enabled() { + return Optional.ofNullable(this.enabled); + } + + /** + * The ID of the firewall policy the rule belongs to. + * + */ + @Import(name="firewallPolicyIds") + private @Nullable List firewallPolicyIds; + + /** + * @return The ID of the firewall policy the rule belongs to. + * + */ + public Optional> firewallPolicyIds() { + return Optional.ofNullable(this.firewallPolicyIds); + } + + /** + * IP version, either 4 (default) or 6. + * + */ + @Import(name="ipVersion") + private @Nullable Integer ipVersion; + + /** + * @return IP version, either 4 (default) or 6. + * + */ + public Optional ipVersion() { + return Optional.ofNullable(this.ipVersion); + } + + /** + * The name of the firewall rule. + * + */ + @Import(name="name") + private @Nullable String name; + + /** + * @return The name of the firewall rule. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + + /** + * This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + */ + @Import(name="projectId") + private @Nullable String projectId; + + /** + * @return This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + */ + public Optional projectId() { + return Optional.ofNullable(this.projectId); + } + + /** + * The protocol type on which the firewall rule operates. + * + */ + @Import(name="protocol") + private @Nullable String protocol; + + /** + * @return The protocol type on which the firewall rule operates. + * + */ + public Optional protocol() { + return Optional.ofNullable(this.protocol); + } + + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + @Import(name="region") + private @Nullable String region; + + /** + * @return The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } + + /** + * The ID of the firewall rule. + * + */ + @Import(name="ruleId") + private @Nullable String ruleId; + + /** + * @return The ID of the firewall rule. + * + */ + public Optional ruleId() { + return Optional.ofNullable(this.ruleId); + } + + /** + * The sharing status of the firewall policy. + * + */ + @Import(name="shared") + private @Nullable Boolean shared; + + /** + * @return The sharing status of the firewall policy. + * + */ + public Optional shared() { + return Optional.ofNullable(this.shared); + } + + /** + * The source IP address on which the firewall + * rule operates. + * + */ + @Import(name="sourceIpAddress") + private @Nullable String sourceIpAddress; + + /** + * @return The source IP address on which the firewall + * rule operates. + * + */ + public Optional sourceIpAddress() { + return Optional.ofNullable(this.sourceIpAddress); + } + + /** + * The source port on which the firewall + * rule operates. + * + */ + @Import(name="sourcePort") + private @Nullable String sourcePort; + + /** + * @return The source port on which the firewall + * rule operates. + * + */ + public Optional sourcePort() { + return Optional.ofNullable(this.sourcePort); + } + + /** + * This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + */ + @Import(name="tenantId") + private @Nullable String tenantId; + + /** + * @return This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + */ + public Optional tenantId() { + return Optional.ofNullable(this.tenantId); + } + + private GetRuleV2PlainArgs() {} + + private GetRuleV2PlainArgs(GetRuleV2PlainArgs $) { + this.action = $.action; + this.description = $.description; + this.destinationIpAddress = $.destinationIpAddress; + this.destinationPort = $.destinationPort; + this.enabled = $.enabled; + this.firewallPolicyIds = $.firewallPolicyIds; + this.ipVersion = $.ipVersion; + this.name = $.name; + this.projectId = $.projectId; + this.protocol = $.protocol; + this.region = $.region; + this.ruleId = $.ruleId; + this.shared = $.shared; + this.sourceIpAddress = $.sourceIpAddress; + this.sourcePort = $.sourcePort; + this.tenantId = $.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRuleV2PlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRuleV2PlainArgs $; + + public Builder() { + $ = new GetRuleV2PlainArgs(); + } + + public Builder(GetRuleV2PlainArgs defaults) { + $ = new GetRuleV2PlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param action Action to be taken when the firewall rule matches. + * + * @return builder + * + */ + public Builder action(@Nullable String action) { + $.action = action; + return this; + } + + /** + * @param description The description of the firewall rule. + * + * @return builder + * + */ + public Builder description(@Nullable String description) { + $.description = description; + return this; + } + + /** + * @param destinationIpAddress The destination IP address on which the + * firewall rule operates. + * + * @return builder + * + */ + public Builder destinationIpAddress(@Nullable String destinationIpAddress) { + $.destinationIpAddress = destinationIpAddress; + return this; + } + + /** + * @param destinationPort The destination port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder destinationPort(@Nullable String destinationPort) { + $.destinationPort = destinationPort; + return this; + } + + /** + * @param enabled Enabled status for the firewall rule. + * + * @return builder + * + */ + public Builder enabled(@Nullable Boolean enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param firewallPolicyIds The ID of the firewall policy the rule belongs to. + * + * @return builder + * + */ + public Builder firewallPolicyIds(@Nullable List firewallPolicyIds) { + $.firewallPolicyIds = firewallPolicyIds; + return this; + } + + /** + * @param firewallPolicyIds The ID of the firewall policy the rule belongs to. + * + * @return builder + * + */ + public Builder firewallPolicyIds(String... firewallPolicyIds) { + return firewallPolicyIds(List.of(firewallPolicyIds)); + } + + /** + * @param ipVersion IP version, either 4 (default) or 6. + * + * @return builder + * + */ + public Builder ipVersion(@Nullable Integer ipVersion) { + $.ipVersion = ipVersion; + return this; + } + + /** + * @param name The name of the firewall rule. + * + * @return builder + * + */ + public Builder name(@Nullable String name) { + $.name = name; + return this; + } + + /** + * @param projectId This argument conflicts and is interchangeable + * with `tenant_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder projectId(@Nullable String projectId) { + $.projectId = projectId; + return this; + } + + /** + * @param protocol The protocol type on which the firewall rule operates. + * + * @return builder + * + */ + public Builder protocol(@Nullable String protocol) { + $.protocol = protocol; + return this; + } + + /** + * @param region The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + * + * @return builder + * + */ + public Builder region(@Nullable String region) { + $.region = region; + return this; + } + + /** + * @param ruleId The ID of the firewall rule. + * + * @return builder + * + */ + public Builder ruleId(@Nullable String ruleId) { + $.ruleId = ruleId; + return this; + } + + /** + * @param shared The sharing status of the firewall policy. + * + * @return builder + * + */ + public Builder shared(@Nullable Boolean shared) { + $.shared = shared; + return this; + } + + /** + * @param sourceIpAddress The source IP address on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourceIpAddress(@Nullable String sourceIpAddress) { + $.sourceIpAddress = sourceIpAddress; + return this; + } + + /** + * @param sourcePort The source port on which the firewall + * rule operates. + * + * @return builder + * + */ + public Builder sourcePort(@Nullable String sourcePort) { + $.sourcePort = sourcePort; + return this; + } + + /** + * @param tenantId This argument conflicts and is interchangeable + * with `project_id`. The owner of the firewall rule. + * + * @return builder + * + */ + public Builder tenantId(@Nullable String tenantId) { + $.tenantId = tenantId; + return this; + } + + public GetRuleV2PlainArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetGroupV2Result.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetGroupV2Result.java new file mode 100644 index 000000000..ef6e628f4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetGroupV2Result.java @@ -0,0 +1,331 @@ +// *** 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.pulumi.openstack.firewall.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetGroupV2Result { + /** + * @return See Argument Reference above. + * + */ + private Boolean adminStateUp; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String description; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String egressFirewallPolicyId; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String groupId; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String ingressFirewallPolicyId; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String name; + /** + * @return Ports associated with the firewall group. + * + */ + private List ports; + /** + * @return See Argument Reference above. + * + */ + private String projectId; + /** + * @return See Argument Reference above. + * + */ + private String region; + /** + * @return See Argument Reference above. + * + */ + private Boolean shared; + /** + * @return See Argument Reference above. + * + */ + private String status; + /** + * @return See Argument Reference above. + * + */ + private String tenantId; + + private GetGroupV2Result() {} + /** + * @return See Argument Reference above. + * + */ + public Boolean adminStateUp() { + return this.adminStateUp; + } + /** + * @return See Argument Reference above. + * + */ + public Optional description() { + return Optional.ofNullable(this.description); + } + /** + * @return See Argument Reference above. + * + */ + public Optional egressFirewallPolicyId() { + return Optional.ofNullable(this.egressFirewallPolicyId); + } + /** + * @return See Argument Reference above. + * + */ + public Optional groupId() { + return Optional.ofNullable(this.groupId); + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return See Argument Reference above. + * + */ + public Optional ingressFirewallPolicyId() { + return Optional.ofNullable(this.ingressFirewallPolicyId); + } + /** + * @return See Argument Reference above. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + /** + * @return Ports associated with the firewall group. + * + */ + public List ports() { + return this.ports; + } + /** + * @return See Argument Reference above. + * + */ + public String projectId() { + return this.projectId; + } + /** + * @return See Argument Reference above. + * + */ + public String region() { + return this.region; + } + /** + * @return See Argument Reference above. + * + */ + public Boolean shared() { + return this.shared; + } + /** + * @return See Argument Reference above. + * + */ + public String status() { + return this.status; + } + /** + * @return See Argument Reference above. + * + */ + public String tenantId() { + return this.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetGroupV2Result defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Boolean adminStateUp; + private @Nullable String description; + private @Nullable String egressFirewallPolicyId; + private @Nullable String groupId; + private String id; + private @Nullable String ingressFirewallPolicyId; + private @Nullable String name; + private List ports; + private String projectId; + private String region; + private Boolean shared; + private String status; + private String tenantId; + public Builder() {} + public Builder(GetGroupV2Result defaults) { + Objects.requireNonNull(defaults); + this.adminStateUp = defaults.adminStateUp; + this.description = defaults.description; + this.egressFirewallPolicyId = defaults.egressFirewallPolicyId; + this.groupId = defaults.groupId; + this.id = defaults.id; + this.ingressFirewallPolicyId = defaults.ingressFirewallPolicyId; + this.name = defaults.name; + this.ports = defaults.ports; + this.projectId = defaults.projectId; + this.region = defaults.region; + this.shared = defaults.shared; + this.status = defaults.status; + this.tenantId = defaults.tenantId; + } + + @CustomType.Setter + public Builder adminStateUp(Boolean adminStateUp) { + if (adminStateUp == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "adminStateUp"); + } + this.adminStateUp = adminStateUp; + return this; + } + @CustomType.Setter + public Builder description(@Nullable String description) { + + this.description = description; + return this; + } + @CustomType.Setter + public Builder egressFirewallPolicyId(@Nullable String egressFirewallPolicyId) { + + this.egressFirewallPolicyId = egressFirewallPolicyId; + return this; + } + @CustomType.Setter + public Builder groupId(@Nullable String groupId) { + + this.groupId = groupId; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder ingressFirewallPolicyId(@Nullable String ingressFirewallPolicyId) { + + this.ingressFirewallPolicyId = ingressFirewallPolicyId; + return this; + } + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder ports(List ports) { + if (ports == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "ports"); + } + this.ports = ports; + return this; + } + public Builder ports(String... ports) { + return ports(List.of(ports)); + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "projectId"); + } + this.projectId = projectId; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder shared(Boolean shared) { + if (shared == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "shared"); + } + this.shared = shared; + return this; + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "status"); + } + this.status = status; + return this; + } + @CustomType.Setter + public Builder tenantId(String tenantId) { + if (tenantId == null) { + throw new MissingRequiredPropertyException("GetGroupV2Result", "tenantId"); + } + this.tenantId = tenantId; + return this; + } + public GetGroupV2Result build() { + final var _resultValue = new GetGroupV2Result(); + _resultValue.adminStateUp = adminStateUp; + _resultValue.description = description; + _resultValue.egressFirewallPolicyId = egressFirewallPolicyId; + _resultValue.groupId = groupId; + _resultValue.id = id; + _resultValue.ingressFirewallPolicyId = ingressFirewallPolicyId; + _resultValue.name = name; + _resultValue.ports = ports; + _resultValue.projectId = projectId; + _resultValue.region = region; + _resultValue.shared = shared; + _resultValue.status = status; + _resultValue.tenantId = tenantId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetPolicyV2Result.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetPolicyV2Result.java new file mode 100644 index 000000000..434758d64 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetPolicyV2Result.java @@ -0,0 +1,258 @@ +// *** 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.pulumi.openstack.firewall.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetPolicyV2Result { + /** + * @return The audit status of the firewall policy. + * + */ + private Boolean audited; + private @Nullable String description; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String name; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String policyId; + /** + * @return See Argument Reference above. + * + */ + private String projectId; + /** + * @return See Argument Reference above. + * + */ + private String region; + /** + * @return The array of one or more firewall rules that comprise the policy. + * + */ + private List rules; + /** + * @return The sharing status of the firewall policy. + * + */ + private Boolean shared; + /** + * @return See Argument Reference above. + * + */ + private String tenantId; + + private GetPolicyV2Result() {} + /** + * @return The audit status of the firewall policy. + * + */ + public Boolean audited() { + return this.audited; + } + public Optional description() { + return Optional.ofNullable(this.description); + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return See Argument Reference above. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + /** + * @return See Argument Reference above. + * + */ + public Optional policyId() { + return Optional.ofNullable(this.policyId); + } + /** + * @return See Argument Reference above. + * + */ + public String projectId() { + return this.projectId; + } + /** + * @return See Argument Reference above. + * + */ + public String region() { + return this.region; + } + /** + * @return The array of one or more firewall rules that comprise the policy. + * + */ + public List rules() { + return this.rules; + } + /** + * @return The sharing status of the firewall policy. + * + */ + public Boolean shared() { + return this.shared; + } + /** + * @return See Argument Reference above. + * + */ + public String tenantId() { + return this.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetPolicyV2Result defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Boolean audited; + private @Nullable String description; + private String id; + private @Nullable String name; + private @Nullable String policyId; + private String projectId; + private String region; + private List rules; + private Boolean shared; + private String tenantId; + public Builder() {} + public Builder(GetPolicyV2Result defaults) { + Objects.requireNonNull(defaults); + this.audited = defaults.audited; + this.description = defaults.description; + this.id = defaults.id; + this.name = defaults.name; + this.policyId = defaults.policyId; + this.projectId = defaults.projectId; + this.region = defaults.region; + this.rules = defaults.rules; + this.shared = defaults.shared; + this.tenantId = defaults.tenantId; + } + + @CustomType.Setter + public Builder audited(Boolean audited) { + if (audited == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "audited"); + } + this.audited = audited; + return this; + } + @CustomType.Setter + public Builder description(@Nullable String description) { + + this.description = description; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder policyId(@Nullable String policyId) { + + this.policyId = policyId; + return this; + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "projectId"); + } + this.projectId = projectId; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder rules(List rules) { + if (rules == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "rules"); + } + this.rules = rules; + return this; + } + public Builder rules(String... rules) { + return rules(List.of(rules)); + } + @CustomType.Setter + public Builder shared(Boolean shared) { + if (shared == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "shared"); + } + this.shared = shared; + return this; + } + @CustomType.Setter + public Builder tenantId(String tenantId) { + if (tenantId == null) { + throw new MissingRequiredPropertyException("GetPolicyV2Result", "tenantId"); + } + this.tenantId = tenantId; + return this; + } + public GetPolicyV2Result build() { + final var _resultValue = new GetPolicyV2Result(); + _resultValue.audited = audited; + _resultValue.description = description; + _resultValue.id = id; + _resultValue.name = name; + _resultValue.policyId = policyId; + _resultValue.projectId = projectId; + _resultValue.region = region; + _resultValue.rules = rules; + _resultValue.shared = shared; + _resultValue.tenantId = tenantId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetRuleV2Result.java b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetRuleV2Result.java new file mode 100644 index 000000000..0302e2fcf --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/firewall/outputs/GetRuleV2Result.java @@ -0,0 +1,414 @@ +// *** 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.pulumi.openstack.firewall.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +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 GetRuleV2Result { + /** + * @return See Argument Reference above. + * + */ + private @Nullable String action; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String description; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String destinationIpAddress; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String destinationPort; + /** + * @return See Argument Reference above. + * + */ + private Boolean enabled; + /** + * @return The ID of the firewall policy the rule belongs to. + * + */ + private List firewallPolicyIds; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return See Argument Reference above. + * + */ + private @Nullable Integer ipVersion; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String name; + /** + * @return See Argument Reference above. + * + */ + private String projectId; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String protocol; + /** + * @return See Argument Reference above. + * + */ + private String region; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String ruleId; + /** + * @return See Argument Reference above. + * + */ + private Boolean shared; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String sourceIpAddress; + /** + * @return See Argument Reference above. + * + */ + private @Nullable String sourcePort; + /** + * @return See Argument Reference above. + * + */ + private String tenantId; + + private GetRuleV2Result() {} + /** + * @return See Argument Reference above. + * + */ + public Optional action() { + return Optional.ofNullable(this.action); + } + /** + * @return See Argument Reference above. + * + */ + public Optional description() { + return Optional.ofNullable(this.description); + } + /** + * @return See Argument Reference above. + * + */ + public Optional destinationIpAddress() { + return Optional.ofNullable(this.destinationIpAddress); + } + /** + * @return See Argument Reference above. + * + */ + public Optional destinationPort() { + return Optional.ofNullable(this.destinationPort); + } + /** + * @return See Argument Reference above. + * + */ + public Boolean enabled() { + return this.enabled; + } + /** + * @return The ID of the firewall policy the rule belongs to. + * + */ + public List firewallPolicyIds() { + return this.firewallPolicyIds; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return See Argument Reference above. + * + */ + public Optional ipVersion() { + return Optional.ofNullable(this.ipVersion); + } + /** + * @return See Argument Reference above. + * + */ + public Optional name() { + return Optional.ofNullable(this.name); + } + /** + * @return See Argument Reference above. + * + */ + public String projectId() { + return this.projectId; + } + /** + * @return See Argument Reference above. + * + */ + public Optional protocol() { + return Optional.ofNullable(this.protocol); + } + /** + * @return See Argument Reference above. + * + */ + public String region() { + return this.region; + } + /** + * @return See Argument Reference above. + * + */ + public Optional ruleId() { + return Optional.ofNullable(this.ruleId); + } + /** + * @return See Argument Reference above. + * + */ + public Boolean shared() { + return this.shared; + } + /** + * @return See Argument Reference above. + * + */ + public Optional sourceIpAddress() { + return Optional.ofNullable(this.sourceIpAddress); + } + /** + * @return See Argument Reference above. + * + */ + public Optional sourcePort() { + return Optional.ofNullable(this.sourcePort); + } + /** + * @return See Argument Reference above. + * + */ + public String tenantId() { + return this.tenantId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRuleV2Result defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String action; + private @Nullable String description; + private @Nullable String destinationIpAddress; + private @Nullable String destinationPort; + private Boolean enabled; + private List firewallPolicyIds; + private String id; + private @Nullable Integer ipVersion; + private @Nullable String name; + private String projectId; + private @Nullable String protocol; + private String region; + private @Nullable String ruleId; + private Boolean shared; + private @Nullable String sourceIpAddress; + private @Nullable String sourcePort; + private String tenantId; + public Builder() {} + public Builder(GetRuleV2Result defaults) { + Objects.requireNonNull(defaults); + this.action = defaults.action; + this.description = defaults.description; + this.destinationIpAddress = defaults.destinationIpAddress; + this.destinationPort = defaults.destinationPort; + this.enabled = defaults.enabled; + this.firewallPolicyIds = defaults.firewallPolicyIds; + this.id = defaults.id; + this.ipVersion = defaults.ipVersion; + this.name = defaults.name; + this.projectId = defaults.projectId; + this.protocol = defaults.protocol; + this.region = defaults.region; + this.ruleId = defaults.ruleId; + this.shared = defaults.shared; + this.sourceIpAddress = defaults.sourceIpAddress; + this.sourcePort = defaults.sourcePort; + this.tenantId = defaults.tenantId; + } + + @CustomType.Setter + public Builder action(@Nullable String action) { + + this.action = action; + return this; + } + @CustomType.Setter + public Builder description(@Nullable String description) { + + this.description = description; + return this; + } + @CustomType.Setter + public Builder destinationIpAddress(@Nullable String destinationIpAddress) { + + this.destinationIpAddress = destinationIpAddress; + return this; + } + @CustomType.Setter + public Builder destinationPort(@Nullable String destinationPort) { + + this.destinationPort = destinationPort; + return this; + } + @CustomType.Setter + public Builder enabled(Boolean enabled) { + if (enabled == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "enabled"); + } + this.enabled = enabled; + return this; + } + @CustomType.Setter + public Builder firewallPolicyIds(List firewallPolicyIds) { + if (firewallPolicyIds == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "firewallPolicyIds"); + } + this.firewallPolicyIds = firewallPolicyIds; + return this; + } + public Builder firewallPolicyIds(String... firewallPolicyIds) { + return firewallPolicyIds(List.of(firewallPolicyIds)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder ipVersion(@Nullable Integer ipVersion) { + + this.ipVersion = ipVersion; + return this; + } + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder projectId(String projectId) { + if (projectId == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "projectId"); + } + this.projectId = projectId; + return this; + } + @CustomType.Setter + public Builder protocol(@Nullable String protocol) { + + this.protocol = protocol; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder ruleId(@Nullable String ruleId) { + + this.ruleId = ruleId; + return this; + } + @CustomType.Setter + public Builder shared(Boolean shared) { + if (shared == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "shared"); + } + this.shared = shared; + return this; + } + @CustomType.Setter + public Builder sourceIpAddress(@Nullable String sourceIpAddress) { + + this.sourceIpAddress = sourceIpAddress; + return this; + } + @CustomType.Setter + public Builder sourcePort(@Nullable String sourcePort) { + + this.sourcePort = sourcePort; + return this; + } + @CustomType.Setter + public Builder tenantId(String tenantId) { + if (tenantId == null) { + throw new MissingRequiredPropertyException("GetRuleV2Result", "tenantId"); + } + this.tenantId = tenantId; + return this; + } + public GetRuleV2Result build() { + final var _resultValue = new GetRuleV2Result(); + _resultValue.action = action; + _resultValue.description = description; + _resultValue.destinationIpAddress = destinationIpAddress; + _resultValue.destinationPort = destinationPort; + _resultValue.enabled = enabled; + _resultValue.firewallPolicyIds = firewallPolicyIds; + _resultValue.id = id; + _resultValue.ipVersion = ipVersion; + _resultValue.name = name; + _resultValue.projectId = projectId; + _resultValue.protocol = protocol; + _resultValue.region = region; + _resultValue.ruleId = ruleId; + _resultValue.shared = shared; + _resultValue.sourceIpAddress = sourceIpAddress; + _resultValue.sourcePort = sourcePort; + _resultValue.tenantId = tenantId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2.java new file mode 100644 index 000000000..18ae46830 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2.java @@ -0,0 +1,231 @@ +// *** 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.pulumi.openstack.loadbalancer; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.loadbalancer.FlavorprofileV2Args; +import com.pulumi.openstack.loadbalancer.inputs.FlavorprofileV2State; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Manages a V2 load balancer flavorprofile resource within OpenStack. + * + * > **Note:** This usually requires admin privileges. + * + * ## Example Usage + * + * ### Using jsonencode + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.loadbalancer.FlavorprofileV2;
+ * import com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;
+ * import static com.pulumi.codegen.internal.Serialization.*;
+ * 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 flavorprofile1 = new FlavorprofileV2("flavorprofile1", FlavorprofileV2Args.builder()
+ *             .name("amphora-single-profile")
+ *             .providerName("amphora")
+ *             .flavorData(serializeJson(
+ *                 jsonObject(
+ *                     jsonProperty("loadbalancer_topology", "SINGLE")
+ *                 )))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### Using plain string + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.loadbalancer.FlavorprofileV2;
+ * import com.pulumi.openstack.loadbalancer.FlavorprofileV2Args;
+ * 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 flavorprofile1 = new FlavorprofileV2("flavorprofile1", FlavorprofileV2Args.builder()
+ *             .name("amphora-single-profile")
+ *             .providerName("amphora")
+ *             .flavorData("{\"loadbalancer_topology\": \"SINGLE\"}")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * flavorprofiles can be imported using their `id`. Example: + * + * ```sh + * $ pulumi import openstack:loadbalancer/flavorprofileV2:FlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b + * ``` + * + */ +@ResourceType(type="openstack:loadbalancer/flavorprofileV2:FlavorprofileV2") +public class FlavorprofileV2 extends com.pulumi.resources.CustomResource { + /** + * String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + @Export(name="flavorData", refs={String.class}, tree="[0]") + private Output flavorData; + + /** + * @return String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + public Output flavorData() { + return this.flavorData; + } + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + public Output name() { + return this.name; + } + /** + * The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + @Export(name="providerName", refs={String.class}, tree="[0]") + private Output providerName; + + /** + * @return The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + public Output providerName() { + return this.providerName; + } + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + public Output region() { + return this.region; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public FlavorprofileV2(java.lang.String name) { + this(name, FlavorprofileV2Args.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public FlavorprofileV2(java.lang.String name, FlavorprofileV2Args 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 FlavorprofileV2(java.lang.String name, FlavorprofileV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private FlavorprofileV2(java.lang.String name, Output id, @Nullable FlavorprofileV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:loadbalancer/flavorprofileV2:FlavorprofileV2", name, state, makeResourceOptions(options, id), false); + } + + private static FlavorprofileV2Args makeArgs(FlavorprofileV2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? FlavorprofileV2Args.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/lbFlavorprofileV2:LbFlavorprofileV2").build()) + )) + .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 FlavorprofileV2 get(java.lang.String name, Output id, @Nullable FlavorprofileV2State state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new FlavorprofileV2(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2Args.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2Args.java new file mode 100644 index 000000000..61abb90a0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/FlavorprofileV2Args.java @@ -0,0 +1,201 @@ +// *** 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.pulumi.openstack.loadbalancer; + +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 FlavorprofileV2Args extends com.pulumi.resources.ResourceArgs { + + public static final FlavorprofileV2Args Empty = new FlavorprofileV2Args(); + + /** + * String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + @Import(name="flavorData", required=true) + private Output flavorData; + + /** + * @return String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + public Output flavorData() { + return this.flavorData; + } + + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + @Import(name="providerName", required=true) + private Output providerName; + + /** + * @return The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + public Output providerName() { + return this.providerName; + } + + @Import(name="region") + private @Nullable Output region; + + public Optional> region() { + return Optional.ofNullable(this.region); + } + + private FlavorprofileV2Args() {} + + private FlavorprofileV2Args(FlavorprofileV2Args $) { + this.flavorData = $.flavorData; + this.name = $.name; + this.providerName = $.providerName; + this.region = $.region; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(FlavorprofileV2Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private FlavorprofileV2Args $; + + public Builder() { + $ = new FlavorprofileV2Args(); + } + + public Builder(FlavorprofileV2Args defaults) { + $ = new FlavorprofileV2Args(Objects.requireNonNull(defaults)); + } + + /** + * @param flavorData String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder flavorData(Output flavorData) { + $.flavorData = flavorData; + return this; + } + + /** + * @param flavorData String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder flavorData(String flavorData) { + return flavorData(Output.of(flavorData)); + } + + /** + * @param name Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param providerName The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder providerName(Output providerName) { + $.providerName = providerName; + return this; + } + + /** + * @param providerName The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder providerName(String providerName) { + return providerName(Output.of(providerName)); + } + + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + public Builder region(String region) { + return region(Output.of(region)); + } + + public FlavorprofileV2Args build() { + if ($.flavorData == null) { + throw new MissingRequiredPropertyException("FlavorprofileV2Args", "flavorData"); + } + if ($.providerName == null) { + throw new MissingRequiredPropertyException("FlavorprofileV2Args", "providerName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7PolicyV2.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7PolicyV2.java index 1c462aecc..cdcb33a63 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7PolicyV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7PolicyV2.java @@ -33,8 +33,8 @@ * import com.pulumi.openstack.networking.NetworkArgs; * import com.pulumi.openstack.networking.Subnet; * import com.pulumi.openstack.networking.SubnetArgs; - * import com.pulumi.openstack.LbLoadbalancerV2; - * import com.pulumi.openstack.LbLoadbalancerV2Args; + * import com.pulumi.openstack.loadbalancer.LoadBalancer; + * import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; * import com.pulumi.openstack.loadbalancer.Listener; * import com.pulumi.openstack.loadbalancer.ListenerArgs; * import com.pulumi.openstack.loadbalancer.Pool; @@ -66,7 +66,7 @@ * .networkId(network1.id()) * .build()); * - * var loadbalancer1 = new LbLoadbalancerV2("loadbalancer1", LbLoadbalancerV2Args.builder() + * var loadbalancer1 = new LoadBalancer("loadbalancer1", LoadBalancerArgs.builder() * .name("loadbalancer_1") * .vipSubnetId(subnet1.id()) * .build()); diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7RuleV2.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7RuleV2.java index 60ac61bd1..6bf4ce55c 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7RuleV2.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/L7RuleV2.java @@ -32,8 +32,8 @@ * import com.pulumi.openstack.networking.NetworkArgs; * import com.pulumi.openstack.networking.Subnet; * import com.pulumi.openstack.networking.SubnetArgs; - * import com.pulumi.openstack.LbLoadbalancerV2; - * import com.pulumi.openstack.LbLoadbalancerV2Args; + * import com.pulumi.openstack.loadbalancer.LoadBalancer; + * import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; * import com.pulumi.openstack.loadbalancer.Listener; * import com.pulumi.openstack.loadbalancer.ListenerArgs; * import com.pulumi.openstack.loadbalancer.Pool; @@ -67,7 +67,7 @@ * .networkId(network1.id()) * .build()); * - * var loadbalancer1 = new LbLoadbalancerV2("loadbalancer1", LbLoadbalancerV2Args.builder() + * var loadbalancer1 = new LoadBalancer("loadbalancer1", LoadBalancerArgs.builder() * .name("loadbalancer_1") * .vipSubnetId(subnet1.id()) * .build()); diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/Listener.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/Listener.java index 176051bb0..106485003 100644 --- a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/Listener.java +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/Listener.java @@ -78,8 +78,8 @@ * import com.pulumi.openstack.keymanager.SecretV1Args; * import com.pulumi.openstack.networking.NetworkingFunctions; * import com.pulumi.openstack.networking.inputs.GetSubnetArgs; - * import com.pulumi.openstack.LbLoadbalancerV2; - * import com.pulumi.openstack.LbLoadbalancerV2Args; + * import com.pulumi.openstack.loadbalancer.LoadBalancer; + * import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; * import com.pulumi.openstack.loadbalancer.Listener; * import com.pulumi.openstack.loadbalancer.ListenerArgs; * import java.util.List; @@ -117,7 +117,7 @@ * .name("my-subnet") * .build()); * - * var lb1 = new LbLoadbalancerV2("lb1", LbLoadbalancerV2Args.builder() + * var lb1 = new LoadBalancer("lb1", LoadBalancerArgs.builder() * .name("loadbalancer") * .vipSubnetId(subnet1.applyValue(getSubnetResult -> getSubnetResult.id())) * .build()); diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancer.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancer.java new file mode 100644 index 000000000..25c1e4e26 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancer.java @@ -0,0 +1,393 @@ +// *** 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.pulumi.openstack.loadbalancer; + +import com.pulumi.core.Alias; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.openstack.Utilities; +import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; +import com.pulumi.openstack.loadbalancer.inputs.LoadBalancerState; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Manages a V2 loadbalancer resource within OpenStack. + * + * > **Note:** This resource has attributes that depend on octavia minor versions. + * Please ensure your Openstack cloud supports the required minor version. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.openstack.loadbalancer.LoadBalancer;
+ * import com.pulumi.openstack.loadbalancer.LoadBalancerArgs;
+ * 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 lb1 = new LoadBalancer("lb1", LoadBalancerArgs.builder()
+ *             .vipSubnetId("d9415786-5f1a-428b-b35f-2f1523e146d2")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Load Balancer can be imported using the Load Balancer ID, e.g.: + * + * ```sh + * $ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 + * ``` + * + */ +@ResourceType(type="openstack:loadbalancer/loadBalancer:LoadBalancer") +public class LoadBalancer extends com.pulumi.resources.CustomResource { + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + @Export(name="adminStateUp", refs={Boolean.class}, tree="[0]") + private Output adminStateUp; + + /** + * @return The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + public Output> adminStateUp() { + return Codegen.optional(this.adminStateUp); + } + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + @Export(name="availabilityZone", refs={String.class}, tree="[0]") + private Output availabilityZone; + + /** + * @return The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + public Output> availabilityZone() { + return Codegen.optional(this.availabilityZone); + } + /** + * Human-readable description for the Loadbalancer. + * + */ + @Export(name="description", refs={String.class}, tree="[0]") + private Output description; + + /** + * @return Human-readable description for the Loadbalancer. + * + */ + public Output> description() { + return Codegen.optional(this.description); + } + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + @Export(name="flavorId", refs={String.class}, tree="[0]") + private Output flavorId; + + /** + * @return The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + public Output flavorId() { + return this.flavorId; + } + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + @Export(name="loadbalancerProvider", refs={String.class}, tree="[0]") + private Output loadbalancerProvider; + + /** + * @return The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + public Output loadbalancerProvider() { + return this.loadbalancerProvider; + } + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + public Output name() { + return this.name; + } + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + public Output region() { + return this.region; + } + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + @Export(name="securityGroupIds", refs={List.class,String.class}, tree="[0,1]") + private Output> securityGroupIds; + + /** + * @return A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + public Output> securityGroupIds() { + return this.securityGroupIds; + } + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + @Export(name="tags", refs={List.class,String.class}, tree="[0,1]") + private Output> tags; + + /** + * @return A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + @Export(name="tenantId", refs={String.class}, tree="[0]") + private Output tenantId; + + /** + * @return Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + public Output tenantId() { + return this.tenantId; + } + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + @Export(name="vipAddress", refs={String.class}, tree="[0]") + private Output vipAddress; + + /** + * @return The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + public Output vipAddress() { + return this.vipAddress; + } + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Export(name="vipNetworkId", refs={String.class}, tree="[0]") + private Output vipNetworkId; + + /** + * @return The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Output vipNetworkId() { + return this.vipNetworkId; + } + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Export(name="vipPortId", refs={String.class}, tree="[0]") + private Output vipPortId; + + /** + * @return The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Output vipPortId() { + return this.vipPortId; + } + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + @Export(name="vipQosPolicyId", refs={String.class}, tree="[0]") + private Output vipQosPolicyId; + + /** + * @return The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + public Output> vipQosPolicyId() { + return Codegen.optional(this.vipQosPolicyId); + } + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Export(name="vipSubnetId", refs={String.class}, tree="[0]") + private Output vipSubnetId; + + /** + * @return The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Output vipSubnetId() { + return this.vipSubnetId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LoadBalancer(java.lang.String name) { + this(name, LoadBalancerArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LoadBalancer(java.lang.String name, @Nullable LoadBalancerArgs 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 LoadBalancer(java.lang.String name, @Nullable LoadBalancerArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:loadbalancer/loadBalancer:LoadBalancer", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LoadBalancer(java.lang.String name, Output id, @Nullable LoadBalancerState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("openstack:loadbalancer/loadBalancer:LoadBalancer", name, state, makeResourceOptions(options, id), false); + } + + private static LoadBalancerArgs makeArgs(@Nullable LoadBalancerArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LoadBalancerArgs.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()) + .aliases(List.of( + Output.of(Alias.builder().type("openstack:index/lbLoadbalancerV2:LbLoadbalancerV2").build()) + )) + .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 LoadBalancer get(java.lang.String name, Output id, @Nullable LoadBalancerState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LoadBalancer(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancerArgs.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancerArgs.java new file mode 100644 index 000000000..41941b751 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/LoadBalancerArgs.java @@ -0,0 +1,730 @@ +// *** 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.pulumi.openstack.loadbalancer; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LoadBalancerArgs extends com.pulumi.resources.ResourceArgs { + + public static final LoadBalancerArgs Empty = new LoadBalancerArgs(); + + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + @Import(name="adminStateUp") + private @Nullable Output adminStateUp; + + /** + * @return The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + public Optional> adminStateUp() { + return Optional.ofNullable(this.adminStateUp); + } + + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + @Import(name="availabilityZone") + private @Nullable Output availabilityZone; + + /** + * @return The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + public Optional> availabilityZone() { + return Optional.ofNullable(this.availabilityZone); + } + + /** + * Human-readable description for the Loadbalancer. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Human-readable description for the Loadbalancer. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + @Import(name="flavorId") + private @Nullable Output flavorId; + + /** + * @return The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + public Optional> flavorId() { + return Optional.ofNullable(this.flavorId); + } + + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + @Import(name="loadbalancerProvider") + private @Nullable Output loadbalancerProvider; + + /** + * @return The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + public Optional> loadbalancerProvider() { + return Optional.ofNullable(this.loadbalancerProvider); + } + + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + @Import(name="securityGroupIds") + private @Nullable Output> securityGroupIds; + + /** + * @return A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + public Optional>> securityGroupIds() { + return Optional.ofNullable(this.securityGroupIds); + } + + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + @Import(name="tenantId") + private @Nullable Output tenantId; + + /** + * @return Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + public Optional> tenantId() { + return Optional.ofNullable(this.tenantId); + } + + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + @Import(name="vipAddress") + private @Nullable Output vipAddress; + + /** + * @return The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + public Optional> vipAddress() { + return Optional.ofNullable(this.vipAddress); + } + + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipNetworkId") + private @Nullable Output vipNetworkId; + + /** + * @return The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipNetworkId() { + return Optional.ofNullable(this.vipNetworkId); + } + + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipPortId") + private @Nullable Output vipPortId; + + /** + * @return The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipPortId() { + return Optional.ofNullable(this.vipPortId); + } + + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + @Import(name="vipQosPolicyId") + private @Nullable Output vipQosPolicyId; + + /** + * @return The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + public Optional> vipQosPolicyId() { + return Optional.ofNullable(this.vipQosPolicyId); + } + + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipSubnetId") + private @Nullable Output vipSubnetId; + + /** + * @return The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipSubnetId() { + return Optional.ofNullable(this.vipSubnetId); + } + + private LoadBalancerArgs() {} + + private LoadBalancerArgs(LoadBalancerArgs $) { + this.adminStateUp = $.adminStateUp; + this.availabilityZone = $.availabilityZone; + this.description = $.description; + this.flavorId = $.flavorId; + this.loadbalancerProvider = $.loadbalancerProvider; + this.name = $.name; + this.region = $.region; + this.securityGroupIds = $.securityGroupIds; + this.tags = $.tags; + this.tenantId = $.tenantId; + this.vipAddress = $.vipAddress; + this.vipNetworkId = $.vipNetworkId; + this.vipPortId = $.vipPortId; + this.vipQosPolicyId = $.vipQosPolicyId; + this.vipSubnetId = $.vipSubnetId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LoadBalancerArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LoadBalancerArgs $; + + public Builder() { + $ = new LoadBalancerArgs(); + } + + public Builder(LoadBalancerArgs defaults) { + $ = new LoadBalancerArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param adminStateUp The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + * @return builder + * + */ + public Builder adminStateUp(@Nullable Output adminStateUp) { + $.adminStateUp = adminStateUp; + return this; + } + + /** + * @param adminStateUp The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + * @return builder + * + */ + public Builder adminStateUp(Boolean adminStateUp) { + return adminStateUp(Output.of(adminStateUp)); + } + + /** + * @param availabilityZone The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + * @return builder + * + */ + public Builder availabilityZone(@Nullable Output availabilityZone) { + $.availabilityZone = availabilityZone; + return this; + } + + /** + * @param availabilityZone The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + * @return builder + * + */ + public Builder availabilityZone(String availabilityZone) { + return availabilityZone(Output.of(availabilityZone)); + } + + /** + * @param description Human-readable description for the Loadbalancer. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Human-readable description for the Loadbalancer. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param flavorId The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + * @return builder + * + */ + public Builder flavorId(@Nullable Output flavorId) { + $.flavorId = flavorId; + return this; + } + + /** + * @param flavorId The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + * @return builder + * + */ + public Builder flavorId(String flavorId) { + return flavorId(Output.of(flavorId)); + } + + /** + * @param loadbalancerProvider The name of the provider. Changing this + * creates a new loadbalancer. + * + * @return builder + * + */ + public Builder loadbalancerProvider(@Nullable Output loadbalancerProvider) { + $.loadbalancerProvider = loadbalancerProvider; + return this; + } + + /** + * @param loadbalancerProvider The name of the provider. Changing this + * creates a new loadbalancer. + * + * @return builder + * + */ + public Builder loadbalancerProvider(String loadbalancerProvider) { + return loadbalancerProvider(Output.of(loadbalancerProvider)); + } + + /** + * @param name Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(@Nullable Output> securityGroupIds) { + $.securityGroupIds = securityGroupIds; + return this; + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(List securityGroupIds) { + return securityGroupIds(Output.of(securityGroupIds)); + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(String... securityGroupIds) { + return securityGroupIds(List.of(securityGroupIds)); + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(List tags) { + return tags(Output.of(tags)); + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(String... tags) { + return tags(List.of(tags)); + } + + /** + * @param tenantId Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder tenantId(@Nullable Output tenantId) { + $.tenantId = tenantId; + return this; + } + + /** + * @param tenantId Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder tenantId(String tenantId) { + return tenantId(Output.of(tenantId)); + } + + /** + * @param vipAddress The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder vipAddress(@Nullable Output vipAddress) { + $.vipAddress = vipAddress; + return this; + } + + /** + * @param vipAddress The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder vipAddress(String vipAddress) { + return vipAddress(Output.of(vipAddress)); + } + + /** + * @param vipNetworkId The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipNetworkId(@Nullable Output vipNetworkId) { + $.vipNetworkId = vipNetworkId; + return this; + } + + /** + * @param vipNetworkId The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipNetworkId(String vipNetworkId) { + return vipNetworkId(Output.of(vipNetworkId)); + } + + /** + * @param vipPortId The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipPortId(@Nullable Output vipPortId) { + $.vipPortId = vipPortId; + return this; + } + + /** + * @param vipPortId The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipPortId(String vipPortId) { + return vipPortId(Output.of(vipPortId)); + } + + /** + * @param vipQosPolicyId The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + * @return builder + * + */ + public Builder vipQosPolicyId(@Nullable Output vipQosPolicyId) { + $.vipQosPolicyId = vipQosPolicyId; + return this; + } + + /** + * @param vipQosPolicyId The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + * @return builder + * + */ + public Builder vipQosPolicyId(String vipQosPolicyId) { + return vipQosPolicyId(Output.of(vipQosPolicyId)); + } + + /** + * @param vipSubnetId The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipSubnetId(@Nullable Output vipSubnetId) { + $.vipSubnetId = vipSubnetId; + return this; + } + + /** + * @param vipSubnetId The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipSubnetId(String vipSubnetId) { + return vipSubnetId(Output.of(vipSubnetId)); + } + + public LoadBalancerArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/FlavorprofileV2State.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/FlavorprofileV2State.java new file mode 100644 index 000000000..7c2cb5232 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/FlavorprofileV2State.java @@ -0,0 +1,194 @@ +// *** 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.pulumi.openstack.loadbalancer.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 FlavorprofileV2State extends com.pulumi.resources.ResourceArgs { + + public static final FlavorprofileV2State Empty = new FlavorprofileV2State(); + + /** + * String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + @Import(name="flavorData") + private @Nullable Output flavorData; + + /** + * @return String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + */ + public Optional> flavorData() { + return Optional.ofNullable(this.flavorData); + } + + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + @Import(name="providerName") + private @Nullable Output providerName; + + /** + * @return The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + */ + public Optional> providerName() { + return Optional.ofNullable(this.providerName); + } + + @Import(name="region") + private @Nullable Output region; + + public Optional> region() { + return Optional.ofNullable(this.region); + } + + private FlavorprofileV2State() {} + + private FlavorprofileV2State(FlavorprofileV2State $) { + this.flavorData = $.flavorData; + this.name = $.name; + this.providerName = $.providerName; + this.region = $.region; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(FlavorprofileV2State defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private FlavorprofileV2State $; + + public Builder() { + $ = new FlavorprofileV2State(); + } + + public Builder(FlavorprofileV2State defaults) { + $ = new FlavorprofileV2State(Objects.requireNonNull(defaults)); + } + + /** + * @param flavorData String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder flavorData(@Nullable Output flavorData) { + $.flavorData = flavorData; + return this; + } + + /** + * @param flavorData String that passes the flavor_data for the flavorprofile. + * The data that are allowed depend on the `provider_name` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder flavorData(String flavorData) { + return flavorData(Output.of(flavorData)); + } + + /** + * @param name Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param providerName The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder providerName(@Nullable Output providerName) { + $.providerName = providerName; + return this; + } + + /** + * @param providerName The provider_name that the flavor_profile will use. + * Changing this updates the existing flavorprofile. + * + * @return builder + * + */ + public Builder providerName(String providerName) { + return providerName(Output.of(providerName)); + } + + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + public Builder region(String region) { + return region(Output.of(region)); + } + + public FlavorprofileV2State build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/LoadBalancerState.java b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/LoadBalancerState.java new file mode 100644 index 000000000..998078f9a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/openstack/loadbalancer/inputs/LoadBalancerState.java @@ -0,0 +1,730 @@ +// *** 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.pulumi.openstack.loadbalancer.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LoadBalancerState extends com.pulumi.resources.ResourceArgs { + + public static final LoadBalancerState Empty = new LoadBalancerState(); + + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + @Import(name="adminStateUp") + private @Nullable Output adminStateUp; + + /** + * @return The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + */ + public Optional> adminStateUp() { + return Optional.ofNullable(this.adminStateUp); + } + + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + @Import(name="availabilityZone") + private @Nullable Output availabilityZone; + + /** + * @return The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + */ + public Optional> availabilityZone() { + return Optional.ofNullable(this.availabilityZone); + } + + /** + * Human-readable description for the Loadbalancer. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Human-readable description for the Loadbalancer. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + @Import(name="flavorId") + private @Nullable Output flavorId; + + /** + * @return The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + */ + public Optional> flavorId() { + return Optional.ofNullable(this.flavorId); + } + + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + @Import(name="loadbalancerProvider") + private @Nullable Output loadbalancerProvider; + + /** + * @return The name of the provider. Changing this + * creates a new loadbalancer. + * + */ + public Optional> loadbalancerProvider() { + return Optional.ofNullable(this.loadbalancerProvider); + } + + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + @Import(name="securityGroupIds") + private @Nullable Output> securityGroupIds; + + /** + * @return A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + */ + public Optional>> securityGroupIds() { + return Optional.ofNullable(this.securityGroupIds); + } + + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + @Import(name="tenantId") + private @Nullable Output tenantId; + + /** + * @return Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + */ + public Optional> tenantId() { + return Optional.ofNullable(this.tenantId); + } + + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + @Import(name="vipAddress") + private @Nullable Output vipAddress; + + /** + * @return The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + */ + public Optional> vipAddress() { + return Optional.ofNullable(this.vipAddress); + } + + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipNetworkId") + private @Nullable Output vipNetworkId; + + /** + * @return The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipNetworkId() { + return Optional.ofNullable(this.vipNetworkId); + } + + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipPortId") + private @Nullable Output vipPortId; + + /** + * @return The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipPortId() { + return Optional.ofNullable(this.vipPortId); + } + + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + @Import(name="vipQosPolicyId") + private @Nullable Output vipQosPolicyId; + + /** + * @return The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + */ + public Optional> vipQosPolicyId() { + return Optional.ofNullable(this.vipQosPolicyId); + } + + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + @Import(name="vipSubnetId") + private @Nullable Output vipSubnetId; + + /** + * @return The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + */ + public Optional> vipSubnetId() { + return Optional.ofNullable(this.vipSubnetId); + } + + private LoadBalancerState() {} + + private LoadBalancerState(LoadBalancerState $) { + this.adminStateUp = $.adminStateUp; + this.availabilityZone = $.availabilityZone; + this.description = $.description; + this.flavorId = $.flavorId; + this.loadbalancerProvider = $.loadbalancerProvider; + this.name = $.name; + this.region = $.region; + this.securityGroupIds = $.securityGroupIds; + this.tags = $.tags; + this.tenantId = $.tenantId; + this.vipAddress = $.vipAddress; + this.vipNetworkId = $.vipNetworkId; + this.vipPortId = $.vipPortId; + this.vipQosPolicyId = $.vipQosPolicyId; + this.vipSubnetId = $.vipSubnetId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LoadBalancerState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LoadBalancerState $; + + public Builder() { + $ = new LoadBalancerState(); + } + + public Builder(LoadBalancerState defaults) { + $ = new LoadBalancerState(Objects.requireNonNull(defaults)); + } + + /** + * @param adminStateUp The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + * @return builder + * + */ + public Builder adminStateUp(@Nullable Output adminStateUp) { + $.adminStateUp = adminStateUp; + return this; + } + + /** + * @param adminStateUp The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + * + * @return builder + * + */ + public Builder adminStateUp(Boolean adminStateUp) { + return adminStateUp(Output.of(adminStateUp)); + } + + /** + * @param availabilityZone The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + * @return builder + * + */ + public Builder availabilityZone(@Nullable Output availabilityZone) { + $.availabilityZone = availabilityZone; + return this; + } + + /** + * @param availabilityZone The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + * + * @return builder + * + */ + public Builder availabilityZone(String availabilityZone) { + return availabilityZone(Output.of(availabilityZone)); + } + + /** + * @param description Human-readable description for the Loadbalancer. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Human-readable description for the Loadbalancer. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param flavorId The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + * @return builder + * + */ + public Builder flavorId(@Nullable Output flavorId) { + $.flavorId = flavorId; + return this; + } + + /** + * @param flavorId The UUID of a flavor. Changing this creates a new + * loadbalancer. + * + * @return builder + * + */ + public Builder flavorId(String flavorId) { + return flavorId(Output.of(flavorId)); + } + + /** + * @param loadbalancerProvider The name of the provider. Changing this + * creates a new loadbalancer. + * + * @return builder + * + */ + public Builder loadbalancerProvider(@Nullable Output loadbalancerProvider) { + $.loadbalancerProvider = loadbalancerProvider; + return this; + } + + /** + * @param loadbalancerProvider The name of the provider. Changing this + * creates a new loadbalancer. + * + * @return builder + * + */ + public Builder loadbalancerProvider(String loadbalancerProvider) { + return loadbalancerProvider(Output.of(loadbalancerProvider)); + } + + /** + * @param name Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Human-readable name for the Loadbalancer. Does not have + * to be unique. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(@Nullable Output> securityGroupIds) { + $.securityGroupIds = securityGroupIds; + return this; + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(List securityGroupIds) { + return securityGroupIds(Output.of(securityGroupIds)); + } + + /** + * @param securityGroupIds A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + * + * @return builder + * + */ + public Builder securityGroupIds(String... securityGroupIds) { + return securityGroupIds(List.of(securityGroupIds)); + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(List tags) { + return tags(Output.of(tags)); + } + + /** + * @param tags A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + * + * @return builder + * + */ + public Builder tags(String... tags) { + return tags(List.of(tags)); + } + + /** + * @param tenantId Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder tenantId(@Nullable Output tenantId) { + $.tenantId = tenantId; + return this; + } + + /** + * @param tenantId Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder tenantId(String tenantId) { + return tenantId(Output.of(tenantId)); + } + + /** + * @param vipAddress The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder vipAddress(@Nullable Output vipAddress) { + $.vipAddress = vipAddress; + return this; + } + + /** + * @param vipAddress The ip address of the load balancer. + * Changing this creates a new loadbalancer. + * + * @return builder + * + */ + public Builder vipAddress(String vipAddress) { + return vipAddress(Output.of(vipAddress)); + } + + /** + * @param vipNetworkId The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipNetworkId(@Nullable Output vipNetworkId) { + $.vipNetworkId = vipNetworkId; + return this; + } + + /** + * @param vipNetworkId The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipNetworkId(String vipNetworkId) { + return vipNetworkId(Output.of(vipNetworkId)); + } + + /** + * @param vipPortId The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipPortId(@Nullable Output vipPortId) { + $.vipPortId = vipPortId; + return this; + } + + /** + * @param vipPortId The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipPortId(String vipPortId) { + return vipPortId(Output.of(vipPortId)); + } + + /** + * @param vipQosPolicyId The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + * @return builder + * + */ + public Builder vipQosPolicyId(@Nullable Output vipQosPolicyId) { + $.vipQosPolicyId = vipQosPolicyId; + return this; + } + + /** + * @param vipQosPolicyId The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + * + * @return builder + * + */ + public Builder vipQosPolicyId(String vipQosPolicyId) { + return vipQosPolicyId(Output.of(vipQosPolicyId)); + } + + /** + * @param vipSubnetId The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipSubnetId(@Nullable Output vipSubnetId) { + $.vipSubnetId = vipSubnetId; + return this; + } + + /** + * @param vipSubnetId The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. + * + * @return builder + * + */ + public Builder vipSubnetId(String vipSubnetId) { + return vipSubnetId(Output.of(vipSubnetId)); + } + + public LoadBalancerState build() { + return $; + } + } + +} diff --git a/sdk/nodejs/bgpvpn/index.ts b/sdk/nodejs/bgpvpn/index.ts new file mode 100644 index 000000000..cf15ac28c --- /dev/null +++ b/sdk/nodejs/bgpvpn/index.ts @@ -0,0 +1,49 @@ +// *** 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"; + +// Export members: +export { NetworkAssociateV2Args, NetworkAssociateV2State } from "./networkAssociateV2"; +export type NetworkAssociateV2 = import("./networkAssociateV2").NetworkAssociateV2; +export const NetworkAssociateV2: typeof import("./networkAssociateV2").NetworkAssociateV2 = null as any; +utilities.lazyLoad(exports, ["NetworkAssociateV2"], () => require("./networkAssociateV2")); + +export { PortAssociateV2Args, PortAssociateV2State } from "./portAssociateV2"; +export type PortAssociateV2 = import("./portAssociateV2").PortAssociateV2; +export const PortAssociateV2: typeof import("./portAssociateV2").PortAssociateV2 = null as any; +utilities.lazyLoad(exports, ["PortAssociateV2"], () => require("./portAssociateV2")); + +export { RouterAssociateV2Args, RouterAssociateV2State } from "./routerAssociateV2"; +export type RouterAssociateV2 = import("./routerAssociateV2").RouterAssociateV2; +export const RouterAssociateV2: typeof import("./routerAssociateV2").RouterAssociateV2 = null as any; +utilities.lazyLoad(exports, ["RouterAssociateV2"], () => require("./routerAssociateV2")); + +export { V2Args, V2State } from "./v2"; +export type V2 = import("./v2").V2; +export const V2: typeof import("./v2").V2 = null as any; +utilities.lazyLoad(exports, ["V2"], () => require("./v2")); + + +const _module = { + version: utilities.getVersion(), + construct: (name: string, type: string, urn: string): pulumi.Resource => { + switch (type) { + case "openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2": + return new NetworkAssociateV2(name, undefined, { urn }) + case "openstack:bgpvpn/portAssociateV2:PortAssociateV2": + return new PortAssociateV2(name, undefined, { urn }) + case "openstack:bgpvpn/routerAssociateV2:RouterAssociateV2": + return new RouterAssociateV2(name, undefined, { urn }) + case "openstack:bgpvpn/v2:V2": + return new V2(name, undefined, { urn }) + default: + throw new Error(`unknown resource type ${type}`); + } + }, +}; +pulumi.runtime.registerResourceModule("openstack", "bgpvpn/networkAssociateV2", _module) +pulumi.runtime.registerResourceModule("openstack", "bgpvpn/portAssociateV2", _module) +pulumi.runtime.registerResourceModule("openstack", "bgpvpn/routerAssociateV2", _module) +pulumi.runtime.registerResourceModule("openstack", "bgpvpn/v2", _module) diff --git a/sdk/nodejs/bgpvpn/networkAssociateV2.ts b/sdk/nodejs/bgpvpn/networkAssociateV2.ts new file mode 100644 index 000000000..500f0ec44 --- /dev/null +++ b/sdk/nodejs/bgpvpn/networkAssociateV2.ts @@ -0,0 +1,182 @@ +// *** 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"; + +/** + * Manages a V2 BGP VPN network association resource within OpenStack. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const association1 = new openstack.bgpvpn.NetworkAssociateV2("association_1", { + * bgpvpnId: "e7189337-5684-46ee-bcb1-44f1a57066c9", + * networkId: "de83d56c-4d2f-44f7-ac24-af393252204f", + * }); + * ``` + * + * ## Import + * + * BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN + * + * network association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 + * ``` + */ +export class NetworkAssociateV2 extends pulumi.CustomResource { + /** + * Get an existing NetworkAssociateV2 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?: NetworkAssociateV2State, opts?: pulumi.CustomResourceOptions): NetworkAssociateV2 { + return new NetworkAssociateV2(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2'; + + /** + * Returns true if the given object is an instance of NetworkAssociateV2. 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 NetworkAssociateV2 { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === NetworkAssociateV2.__pulumiType; + } + + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + */ + public readonly bgpvpnId!: pulumi.Output; + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + */ + public readonly networkId!: pulumi.Output; + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + */ + public readonly projectId!: pulumi.Output; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + */ + public readonly region!: pulumi.Output; + + /** + * Create a NetworkAssociateV2 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: NetworkAssociateV2Args, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: NetworkAssociateV2Args | NetworkAssociateV2State, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as NetworkAssociateV2State | undefined; + resourceInputs["bgpvpnId"] = state ? state.bgpvpnId : undefined; + resourceInputs["networkId"] = state ? state.networkId : undefined; + resourceInputs["projectId"] = state ? state.projectId : undefined; + resourceInputs["region"] = state ? state.region : undefined; + } else { + const args = argsOrState as NetworkAssociateV2Args | undefined; + if ((!args || args.bgpvpnId === undefined) && !opts.urn) { + throw new Error("Missing required property 'bgpvpnId'"); + } + if ((!args || args.networkId === undefined) && !opts.urn) { + throw new Error("Missing required property 'networkId'"); + } + resourceInputs["bgpvpnId"] = args ? args.bgpvpnId : undefined; + resourceInputs["networkId"] = args ? args.networkId : undefined; + resourceInputs["projectId"] = args ? args.projectId : undefined; + resourceInputs["region"] = args ? args.region : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(NetworkAssociateV2.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering NetworkAssociateV2 resources. + */ +export interface NetworkAssociateV2State { + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + */ + bgpvpnId?: pulumi.Input; + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + */ + networkId?: pulumi.Input; + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + */ + region?: pulumi.Input; +} + +/** + * The set of arguments for constructing a NetworkAssociateV2 resource. + */ +export interface NetworkAssociateV2Args { + /** + * The ID of the BGP VPN to which the network will be + * associated. Changing this creates a new BGP VPN network association + */ + bgpvpnId: pulumi.Input; + /** + * The ID of the network to be associated with the BGP + * VPN. Changing this creates a new BGP VPN network association. + */ + networkId: pulumi.Input; + /** + * The ID of the project that owns the BGP VPN network + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN network + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN network association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN network association. + */ + region?: pulumi.Input; +} diff --git a/sdk/nodejs/bgpvpn/portAssociateV2.ts b/sdk/nodejs/bgpvpn/portAssociateV2.ts new file mode 100644 index 000000000..940e6057a --- /dev/null +++ b/sdk/nodejs/bgpvpn/portAssociateV2.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * Manages a V2 BGP VPN port association resource within OpenStack. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const association1 = new openstack.bgpvpn.PortAssociateV2("association_1", { + * bgpvpnId: "19382ec5-8098-47d9-a9c6-6270c91103f4", + * portId: "b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", + * routes: [ + * { + * type: "prefix", + * prefix: "192.168.170.1/32", + * }, + * { + * type: "bgpvpn", + * bgpvpnId: "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", + * }, + * ], + * }); + * ``` + * + * ## Import + * + * BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port + * + * association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf + * ``` + */ +export class PortAssociateV2 extends pulumi.CustomResource { + /** + * Get an existing PortAssociateV2 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?: PortAssociateV2State, opts?: pulumi.CustomResourceOptions): PortAssociateV2 { + return new PortAssociateV2(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:bgpvpn/portAssociateV2:PortAssociateV2'; + + /** + * Returns true if the given object is an instance of PortAssociateV2. 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 PortAssociateV2 { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === PortAssociateV2.__pulumiType; + } + + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + */ + public readonly advertiseFixedIps!: pulumi.Output; + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + */ + public readonly bgpvpnId!: pulumi.Output; + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + */ + public readonly portId!: pulumi.Output; + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + */ + public readonly projectId!: pulumi.Output; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + */ + public readonly region!: pulumi.Output; + /** + * A list of dictionaries containing the following keys: + */ + public readonly routes!: pulumi.Output; + + /** + * Create a PortAssociateV2 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: PortAssociateV2Args, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: PortAssociateV2Args | PortAssociateV2State, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as PortAssociateV2State | undefined; + resourceInputs["advertiseFixedIps"] = state ? state.advertiseFixedIps : undefined; + resourceInputs["bgpvpnId"] = state ? state.bgpvpnId : undefined; + resourceInputs["portId"] = state ? state.portId : undefined; + resourceInputs["projectId"] = state ? state.projectId : undefined; + resourceInputs["region"] = state ? state.region : undefined; + resourceInputs["routes"] = state ? state.routes : undefined; + } else { + const args = argsOrState as PortAssociateV2Args | undefined; + if ((!args || args.bgpvpnId === undefined) && !opts.urn) { + throw new Error("Missing required property 'bgpvpnId'"); + } + if ((!args || args.portId === undefined) && !opts.urn) { + throw new Error("Missing required property 'portId'"); + } + resourceInputs["advertiseFixedIps"] = args ? args.advertiseFixedIps : undefined; + resourceInputs["bgpvpnId"] = args ? args.bgpvpnId : undefined; + resourceInputs["portId"] = args ? args.portId : undefined; + resourceInputs["projectId"] = args ? args.projectId : undefined; + resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["routes"] = args ? args.routes : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(PortAssociateV2.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering PortAssociateV2 resources. + */ +export interface PortAssociateV2State { + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + */ + advertiseFixedIps?: pulumi.Input; + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + */ + bgpvpnId?: pulumi.Input; + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + */ + portId?: pulumi.Input; + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + */ + region?: pulumi.Input; + /** + * A list of dictionaries containing the following keys: + */ + routes?: pulumi.Input[]>; +} + +/** + * The set of arguments for constructing a PortAssociateV2 resource. + */ +export interface PortAssociateV2Args { + /** + * A boolean flag indicating whether fixed + * IPs should be advertised. Defaults to true. + */ + advertiseFixedIps?: pulumi.Input; + /** + * The ID of the BGP VPN to which the port will be + * associated. Changing this creates a new BGP VPN port association. + */ + bgpvpnId: pulumi.Input; + /** + * The ID of the port to be associated with the BGP VPN. + * Changing this creates a new BGP VPN port association. + */ + portId: pulumi.Input; + /** + * The ID of the project that owns the port + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN port + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN port association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN port association. + */ + region?: pulumi.Input; + /** + * A list of dictionaries containing the following keys: + */ + routes?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/bgpvpn/routerAssociateV2.ts b/sdk/nodejs/bgpvpn/routerAssociateV2.ts new file mode 100644 index 000000000..4725e5051 --- /dev/null +++ b/sdk/nodejs/bgpvpn/routerAssociateV2.ts @@ -0,0 +1,199 @@ +// *** 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"; + +/** + * Manages a V2 BGP VPN router association resource within OpenStack. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const association1 = new openstack.bgpvpn.RouterAssociateV2("association_1", { + * bgpvpnId: "d57d39e1-dc63-44fd-8cbd-a4e1488100c5", + * routerId: "423fa80f-e0d7-4d02-a9a5-8b8c05812bf6", + * }); + * ``` + * + * ## Import + * + * BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN + * + * router association ID separated by a slash, e.g.: + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/routerAssociateV2:RouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f + * ``` + */ +export class RouterAssociateV2 extends pulumi.CustomResource { + /** + * Get an existing RouterAssociateV2 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?: RouterAssociateV2State, opts?: pulumi.CustomResourceOptions): RouterAssociateV2 { + return new RouterAssociateV2(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:bgpvpn/routerAssociateV2:RouterAssociateV2'; + + /** + * Returns true if the given object is an instance of RouterAssociateV2. 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 RouterAssociateV2 { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === RouterAssociateV2.__pulumiType; + } + + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + */ + public readonly advertiseExtraRoutes!: pulumi.Output; + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + */ + public readonly bgpvpnId!: pulumi.Output; + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + */ + public readonly projectId!: pulumi.Output; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + */ + public readonly region!: pulumi.Output; + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + */ + public readonly routerId!: pulumi.Output; + + /** + * Create a RouterAssociateV2 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: RouterAssociateV2Args, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: RouterAssociateV2Args | RouterAssociateV2State, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as RouterAssociateV2State | undefined; + resourceInputs["advertiseExtraRoutes"] = state ? state.advertiseExtraRoutes : undefined; + resourceInputs["bgpvpnId"] = state ? state.bgpvpnId : undefined; + resourceInputs["projectId"] = state ? state.projectId : undefined; + resourceInputs["region"] = state ? state.region : undefined; + resourceInputs["routerId"] = state ? state.routerId : undefined; + } else { + const args = argsOrState as RouterAssociateV2Args | undefined; + if ((!args || args.bgpvpnId === undefined) && !opts.urn) { + throw new Error("Missing required property 'bgpvpnId'"); + } + if ((!args || args.routerId === undefined) && !opts.urn) { + throw new Error("Missing required property 'routerId'"); + } + resourceInputs["advertiseExtraRoutes"] = args ? args.advertiseExtraRoutes : undefined; + resourceInputs["bgpvpnId"] = args ? args.bgpvpnId : undefined; + resourceInputs["projectId"] = args ? args.projectId : undefined; + resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["routerId"] = args ? args.routerId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(RouterAssociateV2.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering RouterAssociateV2 resources. + */ +export interface RouterAssociateV2State { + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + */ + advertiseExtraRoutes?: pulumi.Input; + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + */ + bgpvpnId?: pulumi.Input; + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + */ + region?: pulumi.Input; + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + */ + routerId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a RouterAssociateV2 resource. + */ +export interface RouterAssociateV2Args { + /** + * A boolean flag indicating whether extra + * routes should be advertised. Defaults to true. + */ + advertiseExtraRoutes?: pulumi.Input; + /** + * The ID of the BGP VPN to which the router will be + * associated. Changing this creates a new BGP VPN router association. + */ + bgpvpnId: pulumi.Input; + /** + * The ID of the project that owns the BGP VPN router + * association. Only administrative and users with `advsvc` role can specify a + * project ID other than their own. Changing this creates a new BGP VPN router + * association. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN router association. If + * omitted, the `region` argument of the provider is used. Changing this creates + * a new BGP VPN router association. + */ + region?: pulumi.Input; + /** + * The ID of the router to be associated with the BGP + * VPN. Changing this creates a new BGP VPN router association. + */ + routerId: pulumi.Input; +} diff --git a/sdk/nodejs/bgpvpn/v2.ts b/sdk/nodejs/bgpvpn/v2.ts new file mode 100644 index 000000000..fef279437 --- /dev/null +++ b/sdk/nodejs/bgpvpn/v2.ts @@ -0,0 +1,316 @@ +// *** 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"; + +/** + * Manages a V2 BGP VPN service resource within OpenStack. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const bgpvpn1 = new openstack.bgpvpn.V2("bgpvpn_1", { + * name: "bgpvpn1", + * routeDistinguishers: ["64512:1"], + * routeTargets: ["64512:1"], + * importTargets: ["64512:2"], + * exportTargets: ["64512:3"], + * }); + * ``` + * + * ## Import + * + * BGP VPNs can be imported using the `id`, e.g. + * + * hcl + * + * ```sh + * $ pulumi import openstack:bgpvpn/v2:V2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c + * ``` + */ +export class V2 extends pulumi.CustomResource { + /** + * Get an existing V2 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?: V2State, opts?: pulumi.CustomResourceOptions): V2 { + return new V2(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:bgpvpn/v2:V2'; + + /** + * Returns true if the given object is an instance of V2. 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 V2 { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === V2.__pulumiType; + } + + /** + * A list of additional Route Targets that will be + * used for export. + */ + public readonly exportTargets!: pulumi.Output; + /** + * A list of additional Route Targets that will be + * imported. + */ + public readonly importTargets!: pulumi.Output; + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + */ + public readonly localPref!: pulumi.Output; + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + */ + public readonly name!: pulumi.Output; + /** + * A list of network IDs that are associated with the BGP VPN. + */ + public /*out*/ readonly networks!: pulumi.Output; + /** + * A list of port IDs that are associated with the BGP VPN. + */ + public /*out*/ readonly ports!: pulumi.Output; + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + */ + public readonly projectId!: pulumi.Output; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + */ + public readonly region!: pulumi.Output; + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + */ + public readonly routeDistinguishers!: pulumi.Output; + /** + * A list of Route Targets that will be both + * imported and used for export. + */ + public readonly routeTargets!: pulumi.Output; + /** + * A list of router IDs that are associated with the BGP VPN. + */ + public /*out*/ readonly routers!: pulumi.Output; + /** + * Indicates whether the BGP VPN is shared across projects. + */ + public /*out*/ readonly shared!: pulumi.Output; + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + */ + public readonly type!: pulumi.Output; + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + */ + public readonly vni!: pulumi.Output; + + /** + * Create a V2 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?: V2Args, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: V2Args | V2State, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as V2State | undefined; + resourceInputs["exportTargets"] = state ? state.exportTargets : undefined; + resourceInputs["importTargets"] = state ? state.importTargets : undefined; + resourceInputs["localPref"] = state ? state.localPref : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["networks"] = state ? state.networks : undefined; + resourceInputs["ports"] = state ? state.ports : undefined; + resourceInputs["projectId"] = state ? state.projectId : undefined; + resourceInputs["region"] = state ? state.region : undefined; + resourceInputs["routeDistinguishers"] = state ? state.routeDistinguishers : undefined; + resourceInputs["routeTargets"] = state ? state.routeTargets : undefined; + resourceInputs["routers"] = state ? state.routers : undefined; + resourceInputs["shared"] = state ? state.shared : undefined; + resourceInputs["type"] = state ? state.type : undefined; + resourceInputs["vni"] = state ? state.vni : undefined; + } else { + const args = argsOrState as V2Args | undefined; + resourceInputs["exportTargets"] = args ? args.exportTargets : undefined; + resourceInputs["importTargets"] = args ? args.importTargets : undefined; + resourceInputs["localPref"] = args ? args.localPref : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["projectId"] = args ? args.projectId : undefined; + resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["routeDistinguishers"] = args ? args.routeDistinguishers : undefined; + resourceInputs["routeTargets"] = args ? args.routeTargets : undefined; + resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["vni"] = args ? args.vni : undefined; + resourceInputs["networks"] = undefined /*out*/; + resourceInputs["ports"] = undefined /*out*/; + resourceInputs["routers"] = undefined /*out*/; + resourceInputs["shared"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/bgpvpnV2:BgpvpnV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(V2.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering V2 resources. + */ +export interface V2State { + /** + * A list of additional Route Targets that will be + * used for export. + */ + exportTargets?: pulumi.Input[]>; + /** + * A list of additional Route Targets that will be + * imported. + */ + importTargets?: pulumi.Input[]>; + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + */ + localPref?: pulumi.Input; + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + */ + name?: pulumi.Input; + /** + * A list of network IDs that are associated with the BGP VPN. + */ + networks?: pulumi.Input[]>; + /** + * A list of port IDs that are associated with the BGP VPN. + */ + ports?: pulumi.Input[]>; + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + */ + region?: pulumi.Input; + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + */ + routeDistinguishers?: pulumi.Input[]>; + /** + * A list of Route Targets that will be both + * imported and used for export. + */ + routeTargets?: pulumi.Input[]>; + /** + * A list of router IDs that are associated with the BGP VPN. + */ + routers?: pulumi.Input[]>; + /** + * Indicates whether the BGP VPN is shared across projects. + */ + shared?: pulumi.Input; + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + */ + type?: pulumi.Input; + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + */ + vni?: pulumi.Input; +} + +/** + * The set of arguments for constructing a V2 resource. + */ +export interface V2Args { + /** + * A list of additional Route Targets that will be + * used for export. + */ + exportTargets?: pulumi.Input[]>; + /** + * A list of additional Route Targets that will be + * imported. + */ + importTargets?: pulumi.Input[]>; + /** + * The default BGP LOCAL\_PREF of routes that will be + * advertised to the BGP VPN, unless overridden per-route. + */ + localPref?: pulumi.Input; + /** + * The name of the BGP VPN. Changing this updates the name of + * the existing BGP VPN. + */ + name?: pulumi.Input; + /** + * The ID of the project that owns the BGPVPN. Only + * administrative and users with `advsvc` role can specify a project ID other + * than their own. Changing this creates a new BGP VPN. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create a BGP VPN service. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * BGP VPN. + */ + region?: pulumi.Input; + /** + * A list of route distinguisher strings. If + * specified, one of these RDs will be used to advertise VPN routes. + */ + routeDistinguishers?: pulumi.Input[]>; + /** + * A list of Route Targets that will be both + * imported and used for export. + */ + routeTargets?: pulumi.Input[]>; + /** + * The type of the BGP VPN (either `l2` or `l3`). Changing this + * creates a new BGP VPN. Defaults to `l3`. + */ + type?: pulumi.Input; + /** + * The globally-assigned VXLAN VNI for the BGP VPN. Changing + * this creates a new BGP VPN. + */ + vni?: pulumi.Input; +} diff --git a/sdk/nodejs/bgpvpnNetworkAssociateV2.ts b/sdk/nodejs/bgpvpnNetworkAssociateV2.ts index 897945d55..d135c89c1 100644 --- a/sdk/nodejs/bgpvpnNetworkAssociateV2.ts +++ b/sdk/nodejs/bgpvpnNetworkAssociateV2.ts @@ -13,7 +13,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const association1 = new openstack.BgpvpnNetworkAssociateV2("association_1", { + * const association1 = new openstack.bgpvpn.NetworkAssociateV2("association_1", { * bgpvpnId: "e7189337-5684-46ee-bcb1-44f1a57066c9", * networkId: "de83d56c-4d2f-44f7-ac24-af393252204f", * }); @@ -30,6 +30,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 * ``` + * + * @deprecated openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 */ export class BgpvpnNetworkAssociateV2 extends pulumi.CustomResource { /** @@ -42,6 +44,7 @@ export class BgpvpnNetworkAssociateV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: BgpvpnNetworkAssociateV2State, opts?: pulumi.CustomResourceOptions): BgpvpnNetworkAssociateV2 { + pulumi.log.warn("BgpvpnNetworkAssociateV2 is deprecated: openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2") return new BgpvpnNetworkAssociateV2(name, state, { ...opts, id: id }); } @@ -91,8 +94,11 @@ export class BgpvpnNetworkAssociateV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 */ constructor(name: string, args: BgpvpnNetworkAssociateV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2 */ constructor(name: string, argsOrState?: BgpvpnNetworkAssociateV2Args | BgpvpnNetworkAssociateV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("BgpvpnNetworkAssociateV2 is deprecated: openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { diff --git a/sdk/nodejs/bgpvpnPortAssociateV2.ts b/sdk/nodejs/bgpvpnPortAssociateV2.ts index 89cb75b31..a0fe11592 100644 --- a/sdk/nodejs/bgpvpnPortAssociateV2.ts +++ b/sdk/nodejs/bgpvpnPortAssociateV2.ts @@ -15,7 +15,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const association1 = new openstack.BgpvpnPortAssociateV2("association_1", { + * const association1 = new openstack.bgpvpn.PortAssociateV2("association_1", { * bgpvpnId: "19382ec5-8098-47d9-a9c6-6270c91103f4", * portId: "b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", * routes: [ @@ -42,6 +42,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf * ``` + * + * @deprecated openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 */ export class BgpvpnPortAssociateV2 extends pulumi.CustomResource { /** @@ -54,6 +56,7 @@ export class BgpvpnPortAssociateV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: BgpvpnPortAssociateV2State, opts?: pulumi.CustomResourceOptions): BgpvpnPortAssociateV2 { + pulumi.log.warn("BgpvpnPortAssociateV2 is deprecated: openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2") return new BgpvpnPortAssociateV2(name, state, { ...opts, id: id }); } @@ -112,8 +115,11 @@ export class BgpvpnPortAssociateV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 */ constructor(name: string, args: BgpvpnPortAssociateV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2 */ constructor(name: string, argsOrState?: BgpvpnPortAssociateV2Args | BgpvpnPortAssociateV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("BgpvpnPortAssociateV2 is deprecated: openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { diff --git a/sdk/nodejs/bgpvpnRouterAssociateV2.ts b/sdk/nodejs/bgpvpnRouterAssociateV2.ts index c12fe1f11..9666ecb37 100644 --- a/sdk/nodejs/bgpvpnRouterAssociateV2.ts +++ b/sdk/nodejs/bgpvpnRouterAssociateV2.ts @@ -13,7 +13,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const association1 = new openstack.BgpvpnRouterAssociateV2("association_1", { + * const association1 = new openstack.bgpvpn.RouterAssociateV2("association_1", { * bgpvpnId: "d57d39e1-dc63-44fd-8cbd-a4e1488100c5", * routerId: "423fa80f-e0d7-4d02-a9a5-8b8c05812bf6", * }); @@ -30,6 +30,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f * ``` + * + * @deprecated openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 */ export class BgpvpnRouterAssociateV2 extends pulumi.CustomResource { /** @@ -42,6 +44,7 @@ export class BgpvpnRouterAssociateV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: BgpvpnRouterAssociateV2State, opts?: pulumi.CustomResourceOptions): BgpvpnRouterAssociateV2 { + pulumi.log.warn("BgpvpnRouterAssociateV2 is deprecated: openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2") return new BgpvpnRouterAssociateV2(name, state, { ...opts, id: id }); } @@ -96,8 +99,11 @@ export class BgpvpnRouterAssociateV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 */ constructor(name: string, args: BgpvpnRouterAssociateV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2 */ constructor(name: string, argsOrState?: BgpvpnRouterAssociateV2Args | BgpvpnRouterAssociateV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("BgpvpnRouterAssociateV2 is deprecated: openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { diff --git a/sdk/nodejs/bgpvpnV2.ts b/sdk/nodejs/bgpvpnV2.ts index 7435a02a1..120bead20 100644 --- a/sdk/nodejs/bgpvpnV2.ts +++ b/sdk/nodejs/bgpvpnV2.ts @@ -13,7 +13,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const bgpvpn1 = new openstack.BgpvpnV2("bgpvpn_1", { + * const bgpvpn1 = new openstack.bgpvpn.V2("bgpvpn_1", { * name: "bgpvpn1", * routeDistinguishers: ["64512:1"], * routeTargets: ["64512:1"], @@ -31,6 +31,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c * ``` + * + * @deprecated openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ export class BgpvpnV2 extends pulumi.CustomResource { /** @@ -43,6 +45,7 @@ export class BgpvpnV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: BgpvpnV2State, opts?: pulumi.CustomResourceOptions): BgpvpnV2 { + pulumi.log.warn("BgpvpnV2 is deprecated: openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2") return new BgpvpnV2(name, state, { ...opts, id: id }); } @@ -137,8 +140,11 @@ export class BgpvpnV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ constructor(name: string, args?: BgpvpnV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ constructor(name: string, argsOrState?: BgpvpnV2Args | BgpvpnV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("BgpvpnV2 is deprecated: openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { diff --git a/sdk/nodejs/firewall/getGroupV2.ts b/sdk/nodejs/firewall/getGroupV2.ts new file mode 100644 index 000000000..afed2bf61 --- /dev/null +++ b/sdk/nodejs/firewall/getGroupV2.ts @@ -0,0 +1,234 @@ +// *** 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"; + +/** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const group = openstack.firewall.getGroupV2({ + * name: "tf_test_group", + * }); + * ``` + */ +export function getGroupV2(args?: GetGroupV2Args, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("openstack:firewall/getGroupV2:getGroupV2", { + "adminStateUp": args.adminStateUp, + "description": args.description, + "egressFirewallPolicyId": args.egressFirewallPolicyId, + "groupId": args.groupId, + "ingressFirewallPolicyId": args.ingressFirewallPolicyId, + "name": args.name, + "projectId": args.projectId, + "region": args.region, + "shared": args.shared, + "status": args.status, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getGroupV2. + */ +export interface GetGroupV2Args { + /** + * Administrative up/down status for the firewall group. + */ + adminStateUp?: boolean; + /** + * Human-readable description of the firewall group. + */ + description?: string; + /** + * The egress policy ID of the firewall group. + */ + egressFirewallPolicyId?: string; + /** + * The ID of the firewall group. + */ + groupId?: string; + /** + * The ingress policy ID of the firewall group. + */ + ingressFirewallPolicyId?: string; + /** + * The name of the firewall group. + */ + name?: string; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall group. + */ + projectId?: string; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: string; + /** + * The sharing status of the firewall group. + */ + shared?: boolean; + /** + * Enabled status for the firewall group. + */ + status?: string; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall group. + */ + tenantId?: string; +} + +/** + * A collection of values returned by getGroupV2. + */ +export interface GetGroupV2Result { + /** + * See Argument Reference above. + */ + readonly adminStateUp: boolean; + /** + * See Argument Reference above. + */ + readonly description?: string; + /** + * See Argument Reference above. + */ + readonly egressFirewallPolicyId?: string; + /** + * See Argument Reference above. + */ + readonly groupId?: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * See Argument Reference above. + */ + readonly ingressFirewallPolicyId?: string; + /** + * See Argument Reference above. + */ + readonly name?: string; + /** + * Ports associated with the firewall group. + */ + readonly ports: string[]; + /** + * See Argument Reference above. + */ + readonly projectId: string; + /** + * See Argument Reference above. + */ + readonly region: string; + /** + * See Argument Reference above. + */ + readonly shared: boolean; + /** + * See Argument Reference above. + */ + readonly status: string; + /** + * See Argument Reference above. + */ + readonly tenantId: string; +} +/** + * Use this data source to get information of an available OpenStack firewall group v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const group = openstack.firewall.getGroupV2({ + * name: "tf_test_group", + * }); + * ``` + */ +export function getGroupV2Output(args?: GetGroupV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("openstack:firewall/getGroupV2:getGroupV2", { + "adminStateUp": args.adminStateUp, + "description": args.description, + "egressFirewallPolicyId": args.egressFirewallPolicyId, + "groupId": args.groupId, + "ingressFirewallPolicyId": args.ingressFirewallPolicyId, + "name": args.name, + "projectId": args.projectId, + "region": args.region, + "shared": args.shared, + "status": args.status, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getGroupV2. + */ +export interface GetGroupV2OutputArgs { + /** + * Administrative up/down status for the firewall group. + */ + adminStateUp?: pulumi.Input; + /** + * Human-readable description of the firewall group. + */ + description?: pulumi.Input; + /** + * The egress policy ID of the firewall group. + */ + egressFirewallPolicyId?: pulumi.Input; + /** + * The ID of the firewall group. + */ + groupId?: pulumi.Input; + /** + * The ingress policy ID of the firewall group. + */ + ingressFirewallPolicyId?: pulumi.Input; + /** + * The name of the firewall group. + */ + name?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall group. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall group ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: pulumi.Input; + /** + * The sharing status of the firewall group. + */ + shared?: pulumi.Input; + /** + * Enabled status for the firewall group. + */ + status?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall group. + */ + tenantId?: pulumi.Input; +} diff --git a/sdk/nodejs/firewall/getPolicyV2.ts b/sdk/nodejs/firewall/getPolicyV2.ts new file mode 100644 index 000000000..bb80b0013 --- /dev/null +++ b/sdk/nodejs/firewall/getPolicyV2.ts @@ -0,0 +1,189 @@ +// *** 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"; + +/** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const policy = openstack.firewall.getPolicyV2({ + * name: "tf_test_policy", + * }); + * ``` + */ +export function getPolicyV2(args?: GetPolicyV2Args, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("openstack:firewall/getPolicyV2:getPolicyV2", { + "audited": args.audited, + "description": args.description, + "name": args.name, + "policyId": args.policyId, + "projectId": args.projectId, + "region": args.region, + "shared": args.shared, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getPolicyV2. + */ +export interface GetPolicyV2Args { + /** + * Whether this policy has been audited. + */ + audited?: boolean; + /** + * Human-readable description of the policy. + */ + description?: string; + /** + * The name of the firewall policy. + */ + name?: string; + /** + * The ID of the firewall policy. + */ + policyId?: string; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall policy. + */ + projectId?: string; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: string; + /** + * Whether this policy is shared across all projects. + */ + shared?: boolean; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall policy. + */ + tenantId?: string; +} + +/** + * A collection of values returned by getPolicyV2. + */ +export interface GetPolicyV2Result { + /** + * The audit status of the firewall policy. + */ + readonly audited: boolean; + readonly description?: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * See Argument Reference above. + */ + readonly name?: string; + /** + * See Argument Reference above. + */ + readonly policyId?: string; + /** + * See Argument Reference above. + */ + readonly projectId: string; + /** + * See Argument Reference above. + */ + readonly region: string; + /** + * The array of one or more firewall rules that comprise the policy. + */ + readonly rules: string[]; + /** + * The sharing status of the firewall policy. + */ + readonly shared: boolean; + /** + * See Argument Reference above. + */ + readonly tenantId: string; +} +/** + * Use this data source to get information of an available OpenStack firewall policy v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const policy = openstack.firewall.getPolicyV2({ + * name: "tf_test_policy", + * }); + * ``` + */ +export function getPolicyV2Output(args?: GetPolicyV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("openstack:firewall/getPolicyV2:getPolicyV2", { + "audited": args.audited, + "description": args.description, + "name": args.name, + "policyId": args.policyId, + "projectId": args.projectId, + "region": args.region, + "shared": args.shared, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getPolicyV2. + */ +export interface GetPolicyV2OutputArgs { + /** + * Whether this policy has been audited. + */ + audited?: pulumi.Input; + /** + * Human-readable description of the policy. + */ + description?: pulumi.Input; + /** + * The name of the firewall policy. + */ + name?: pulumi.Input; + /** + * The ID of the firewall policy. + */ + policyId?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall policy. + */ + projectId?: pulumi.Input; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: pulumi.Input; + /** + * Whether this policy is shared across all projects. + */ + shared?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall policy. + */ + tenantId?: pulumi.Input; +} diff --git a/sdk/nodejs/firewall/getRuleV2.ts b/sdk/nodejs/firewall/getRuleV2.ts new file mode 100644 index 000000000..3044378fa --- /dev/null +++ b/sdk/nodejs/firewall/getRuleV2.ts @@ -0,0 +1,308 @@ +// *** 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"; + +/** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const rule = openstack.firewall.getRuleV2({ + * name: "tf_test_rule", + * }); + * ``` + */ +export function getRuleV2(args?: GetRuleV2Args, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("openstack:firewall/getRuleV2:getRuleV2", { + "action": args.action, + "description": args.description, + "destinationIpAddress": args.destinationIpAddress, + "destinationPort": args.destinationPort, + "enabled": args.enabled, + "firewallPolicyIds": args.firewallPolicyIds, + "ipVersion": args.ipVersion, + "name": args.name, + "projectId": args.projectId, + "protocol": args.protocol, + "region": args.region, + "ruleId": args.ruleId, + "shared": args.shared, + "sourceIpAddress": args.sourceIpAddress, + "sourcePort": args.sourcePort, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getRuleV2. + */ +export interface GetRuleV2Args { + /** + * Action to be taken when the firewall rule matches. + */ + action?: string; + /** + * The description of the firewall rule. + */ + description?: string; + /** + * The destination IP address on which the + * firewall rule operates. + */ + destinationIpAddress?: string; + /** + * The destination port on which the firewall + * rule operates. + */ + destinationPort?: string; + /** + * Enabled status for the firewall rule. + */ + enabled?: boolean; + /** + * The ID of the firewall policy the rule belongs to. + */ + firewallPolicyIds?: string[]; + /** + * IP version, either 4 (default) or 6. + */ + ipVersion?: number; + /** + * The name of the firewall rule. + */ + name?: string; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall rule. + */ + projectId?: string; + /** + * The protocol type on which the firewall rule operates. + */ + protocol?: string; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: string; + /** + * The ID of the firewall rule. + */ + ruleId?: string; + /** + * The sharing status of the firewall policy. + */ + shared?: boolean; + /** + * The source IP address on which the firewall + * rule operates. + */ + sourceIpAddress?: string; + /** + * The source port on which the firewall + * rule operates. + */ + sourcePort?: string; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall rule. + */ + tenantId?: string; +} + +/** + * A collection of values returned by getRuleV2. + */ +export interface GetRuleV2Result { + /** + * See Argument Reference above. + */ + readonly action?: string; + /** + * See Argument Reference above. + */ + readonly description?: string; + /** + * See Argument Reference above. + */ + readonly destinationIpAddress?: string; + /** + * See Argument Reference above. + */ + readonly destinationPort?: string; + /** + * See Argument Reference above. + */ + readonly enabled: boolean; + /** + * The ID of the firewall policy the rule belongs to. + */ + readonly firewallPolicyIds: string[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * See Argument Reference above. + */ + readonly ipVersion?: number; + /** + * See Argument Reference above. + */ + readonly name?: string; + /** + * See Argument Reference above. + */ + readonly projectId: string; + /** + * See Argument Reference above. + */ + readonly protocol?: string; + /** + * See Argument Reference above. + */ + readonly region: string; + /** + * See Argument Reference above. + */ + readonly ruleId?: string; + /** + * See Argument Reference above. + */ + readonly shared: boolean; + /** + * See Argument Reference above. + */ + readonly sourceIpAddress?: string; + /** + * See Argument Reference above. + */ + readonly sourcePort?: string; + /** + * See Argument Reference above. + */ + readonly tenantId: string; +} +/** + * Use this data source to get information of an available OpenStack firewall rule v2. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const rule = openstack.firewall.getRuleV2({ + * name: "tf_test_rule", + * }); + * ``` + */ +export function getRuleV2Output(args?: GetRuleV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("openstack:firewall/getRuleV2:getRuleV2", { + "action": args.action, + "description": args.description, + "destinationIpAddress": args.destinationIpAddress, + "destinationPort": args.destinationPort, + "enabled": args.enabled, + "firewallPolicyIds": args.firewallPolicyIds, + "ipVersion": args.ipVersion, + "name": args.name, + "projectId": args.projectId, + "protocol": args.protocol, + "region": args.region, + "ruleId": args.ruleId, + "shared": args.shared, + "sourceIpAddress": args.sourceIpAddress, + "sourcePort": args.sourcePort, + "tenantId": args.tenantId, + }, opts); +} + +/** + * A collection of arguments for invoking getRuleV2. + */ +export interface GetRuleV2OutputArgs { + /** + * Action to be taken when the firewall rule matches. + */ + action?: pulumi.Input; + /** + * The description of the firewall rule. + */ + description?: pulumi.Input; + /** + * The destination IP address on which the + * firewall rule operates. + */ + destinationIpAddress?: pulumi.Input; + /** + * The destination port on which the firewall + * rule operates. + */ + destinationPort?: pulumi.Input; + /** + * Enabled status for the firewall rule. + */ + enabled?: pulumi.Input; + /** + * The ID of the firewall policy the rule belongs to. + */ + firewallPolicyIds?: pulumi.Input[]>; + /** + * IP version, either 4 (default) or 6. + */ + ipVersion?: pulumi.Input; + /** + * The name of the firewall rule. + */ + name?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `tenantId`. The owner of the firewall rule. + */ + projectId?: pulumi.Input; + /** + * The protocol type on which the firewall rule operates. + */ + protocol?: pulumi.Input; + /** + * The region in which to obtain the V2 Neutron client. + * A Neutron client is needed to retrieve firewall policy ids. If omitted, the + * `region` argument of the provider is used. + */ + region?: pulumi.Input; + /** + * The ID of the firewall rule. + */ + ruleId?: pulumi.Input; + /** + * The sharing status of the firewall policy. + */ + shared?: pulumi.Input; + /** + * The source IP address on which the firewall + * rule operates. + */ + sourceIpAddress?: pulumi.Input; + /** + * The source port on which the firewall + * rule operates. + */ + sourcePort?: pulumi.Input; + /** + * This argument conflicts and is interchangeable + * with `projectId`. The owner of the firewall rule. + */ + tenantId?: pulumi.Input; +} diff --git a/sdk/nodejs/firewall/index.ts b/sdk/nodejs/firewall/index.ts index 95dfcbbe1..957d06e6d 100644 --- a/sdk/nodejs/firewall/index.ts +++ b/sdk/nodejs/firewall/index.ts @@ -5,6 +5,21 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; // Export members: +export { GetGroupV2Args, GetGroupV2Result, GetGroupV2OutputArgs } from "./getGroupV2"; +export const getGroupV2: typeof import("./getGroupV2").getGroupV2 = null as any; +export const getGroupV2Output: typeof import("./getGroupV2").getGroupV2Output = null as any; +utilities.lazyLoad(exports, ["getGroupV2","getGroupV2Output"], () => require("./getGroupV2")); + +export { GetPolicyV2Args, GetPolicyV2Result, GetPolicyV2OutputArgs } from "./getPolicyV2"; +export const getPolicyV2: typeof import("./getPolicyV2").getPolicyV2 = null as any; +export const getPolicyV2Output: typeof import("./getPolicyV2").getPolicyV2Output = null as any; +utilities.lazyLoad(exports, ["getPolicyV2","getPolicyV2Output"], () => require("./getPolicyV2")); + +export { GetRuleV2Args, GetRuleV2Result, GetRuleV2OutputArgs } from "./getRuleV2"; +export const getRuleV2: typeof import("./getRuleV2").getRuleV2 = null as any; +export const getRuleV2Output: typeof import("./getRuleV2").getRuleV2Output = null as any; +utilities.lazyLoad(exports, ["getRuleV2","getRuleV2Output"], () => require("./getRuleV2")); + export { GroupV2Args, GroupV2State } from "./groupV2"; export type GroupV2 = import("./groupV2").GroupV2; export const GroupV2: typeof import("./groupV2").GroupV2 = null as any; diff --git a/sdk/nodejs/getFwGroupV2.ts b/sdk/nodejs/getFwGroupV2.ts index 9ec284e0a..9a1e735fc 100644 --- a/sdk/nodejs/getFwGroupV2.ts +++ b/sdk/nodejs/getFwGroupV2.ts @@ -13,12 +13,14 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const group = openstack.getFwGroupV2({ + * const group = openstack.firewall.getGroupV2({ * name: "tf_test_group", * }); * ``` */ +/** @deprecated openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ export function getFwGroupV2(args?: GetFwGroupV2Args, opts?: pulumi.InvokeOptions): Promise { + pulumi.log.warn("getFwGroupV2 is deprecated: openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("openstack:index/getFwGroupV2:getFwGroupV2", { @@ -156,12 +158,14 @@ export interface GetFwGroupV2Result { * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const group = openstack.getFwGroupV2({ + * const group = openstack.firewall.getGroupV2({ * name: "tf_test_group", * }); * ``` */ +/** @deprecated openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2 */ export function getFwGroupV2Output(args?: GetFwGroupV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + pulumi.log.warn("getFwGroupV2 is deprecated: openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("openstack:index/getFwGroupV2:getFwGroupV2", { diff --git a/sdk/nodejs/getFwPolicyV2.ts b/sdk/nodejs/getFwPolicyV2.ts index 537199ac2..a5c47b628 100644 --- a/sdk/nodejs/getFwPolicyV2.ts +++ b/sdk/nodejs/getFwPolicyV2.ts @@ -13,12 +13,14 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const policy = openstack.getFwPolicyV2({ + * const policy = openstack.firewall.getPolicyV2({ * name: "tf_test_policy", * }); * ``` */ +/** @deprecated openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ export function getFwPolicyV2(args?: GetFwPolicyV2Args, opts?: pulumi.InvokeOptions): Promise { + pulumi.log.warn("getFwPolicyV2 is deprecated: openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("openstack:index/getFwPolicyV2:getFwPolicyV2", { @@ -126,12 +128,14 @@ export interface GetFwPolicyV2Result { * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const policy = openstack.getFwPolicyV2({ + * const policy = openstack.firewall.getPolicyV2({ * name: "tf_test_policy", * }); * ``` */ +/** @deprecated openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2 */ export function getFwPolicyV2Output(args?: GetFwPolicyV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + pulumi.log.warn("getFwPolicyV2 is deprecated: openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("openstack:index/getFwPolicyV2:getFwPolicyV2", { diff --git a/sdk/nodejs/getFwRuleV2.ts b/sdk/nodejs/getFwRuleV2.ts index 80a3f367b..6976d187a 100644 --- a/sdk/nodejs/getFwRuleV2.ts +++ b/sdk/nodejs/getFwRuleV2.ts @@ -13,12 +13,14 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const rule = openstack.getFwRuleV2({ + * const rule = openstack.firewall.getRuleV2({ * name: "tf_test_rule", * }); * ``` */ +/** @deprecated openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ export function getFwRuleV2(args?: GetFwRuleV2Args, opts?: pulumi.InvokeOptions): Promise { + pulumi.log.warn("getFwRuleV2 is deprecated: openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("openstack:index/getFwRuleV2:getFwRuleV2", { @@ -201,12 +203,14 @@ export interface GetFwRuleV2Result { * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const rule = openstack.getFwRuleV2({ + * const rule = openstack.firewall.getRuleV2({ * name: "tf_test_rule", * }); * ``` */ +/** @deprecated openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2 */ export function getFwRuleV2Output(args?: GetFwRuleV2OutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + pulumi.log.warn("getFwRuleV2 is deprecated: openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2") args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("openstack:index/getFwRuleV2:getFwRuleV2", { diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index da84bd0ee..b8925ed4d 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -57,6 +57,7 @@ utilities.lazyLoad(exports, ["Provider"], () => require("./provider")); // Export sub-modules: +import * as bgpvpn from "./bgpvpn"; import * as blockstorage from "./blockstorage"; import * as compute from "./compute"; import * as config from "./config"; @@ -76,6 +77,7 @@ import * as types from "./types"; import * as vpnaas from "./vpnaas"; export { + bgpvpn, blockstorage, compute, config, diff --git a/sdk/nodejs/lbFlavorprofileV2.ts b/sdk/nodejs/lbFlavorprofileV2.ts index 8e2d424e6..172a7a0cf 100644 --- a/sdk/nodejs/lbFlavorprofileV2.ts +++ b/sdk/nodejs/lbFlavorprofileV2.ts @@ -17,7 +17,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const flavorprofile1 = new openstack.LbFlavorprofileV2("flavorprofile_1", { + * const flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2("flavorprofile_1", { * name: "amphora-single-profile", * providerName: "amphora", * flavorData: JSON.stringify({ @@ -32,7 +32,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const flavorprofile1 = new openstack.LbFlavorprofileV2("flavorprofile_1", { + * const flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2("flavorprofile_1", { * name: "amphora-single-profile", * providerName: "amphora", * flavorData: "{\"loadbalancer_topology\": \"SINGLE\"}", @@ -46,6 +46,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b * ``` + * + * @deprecated openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 */ export class LbFlavorprofileV2 extends pulumi.CustomResource { /** @@ -58,6 +60,7 @@ export class LbFlavorprofileV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: LbFlavorprofileV2State, opts?: pulumi.CustomResourceOptions): LbFlavorprofileV2 { + pulumi.log.warn("LbFlavorprofileV2 is deprecated: openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2") return new LbFlavorprofileV2(name, state, { ...opts, id: id }); } @@ -101,8 +104,11 @@ export class LbFlavorprofileV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 */ constructor(name: string, args: LbFlavorprofileV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2 */ constructor(name: string, argsOrState?: LbFlavorprofileV2Args | LbFlavorprofileV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("LbFlavorprofileV2 is deprecated: openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { diff --git a/sdk/nodejs/lbLoadbalancerV2.ts b/sdk/nodejs/lbLoadbalancerV2.ts index fae667486..ed0585403 100644 --- a/sdk/nodejs/lbLoadbalancerV2.ts +++ b/sdk/nodejs/lbLoadbalancerV2.ts @@ -16,7 +16,7 @@ import * as utilities from "./utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * - * const lb1 = new openstack.LbLoadbalancerV2("lb_1", {vipSubnetId: "d9415786-5f1a-428b-b35f-2f1523e146d2"}); + * const lb1 = new openstack.loadbalancer.LoadBalancer("lb_1", {vipSubnetId: "d9415786-5f1a-428b-b35f-2f1523e146d2"}); * ``` * * ## Import @@ -26,6 +26,8 @@ import * as utilities from "./utilities"; * ```sh * $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 * ``` + * + * @deprecated openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer */ export class LbLoadbalancerV2 extends pulumi.CustomResource { /** @@ -38,6 +40,7 @@ export class LbLoadbalancerV2 extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, state?: LbLoadbalancerV2State, opts?: pulumi.CustomResourceOptions): LbLoadbalancerV2 { + pulumi.log.warn("LbLoadbalancerV2 is deprecated: openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer") return new LbLoadbalancerV2(name, state, { ...opts, id: id }); } @@ -149,8 +152,11 @@ export class LbLoadbalancerV2 extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ + /** @deprecated openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer */ constructor(name: string, args?: LbLoadbalancerV2Args, opts?: pulumi.CustomResourceOptions) + /** @deprecated openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer */ constructor(name: string, argsOrState?: LbLoadbalancerV2Args | LbLoadbalancerV2State, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("LbLoadbalancerV2 is deprecated: openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (opts.id) { @@ -189,8 +195,6 @@ export class LbLoadbalancerV2 extends pulumi.CustomResource { resourceInputs["vipSubnetId"] = args ? args.vipSubnetId : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const aliasOpts = { aliases: [{ type: "openstack:loadbalancer/loadBalancer:LoadBalancer" }] }; - opts = pulumi.mergeOptions(opts, aliasOpts); super(LbLoadbalancerV2.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/loadbalancer/flavorprofileV2.ts b/sdk/nodejs/loadbalancer/flavorprofileV2.ts new file mode 100644 index 000000000..fe3a30fd3 --- /dev/null +++ b/sdk/nodejs/loadbalancer/flavorprofileV2.ts @@ -0,0 +1,180 @@ +// *** 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"; + +/** + * Manages a V2 load balancer flavorprofile resource within OpenStack. + * + * > **Note:** This usually requires admin privileges. + * + * ## Example Usage + * + * ### Using jsonencode + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2("flavorprofile_1", { + * name: "amphora-single-profile", + * providerName: "amphora", + * flavorData: JSON.stringify({ + * loadbalancer_topology: "SINGLE", + * }), + * }); + * ``` + * + * ### Using plain string + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const flavorprofile1 = new openstack.loadbalancer.FlavorprofileV2("flavorprofile_1", { + * name: "amphora-single-profile", + * providerName: "amphora", + * flavorData: "{\"loadbalancer_topology\": \"SINGLE\"}", + * }); + * ``` + * + * ## Import + * + * flavorprofiles can be imported using their `id`. Example: + * + * ```sh + * $ pulumi import openstack:loadbalancer/flavorprofileV2:FlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b + * ``` + */ +export class FlavorprofileV2 extends pulumi.CustomResource { + /** + * Get an existing FlavorprofileV2 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?: FlavorprofileV2State, opts?: pulumi.CustomResourceOptions): FlavorprofileV2 { + return new FlavorprofileV2(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:loadbalancer/flavorprofileV2:FlavorprofileV2'; + + /** + * Returns true if the given object is an instance of FlavorprofileV2. 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 FlavorprofileV2 { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === FlavorprofileV2.__pulumiType; + } + + /** + * String that passes the flavorData for the flavorprofile. + * The data that are allowed depend on the `providerName` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + */ + public readonly flavorData!: pulumi.Output; + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + */ + public readonly name!: pulumi.Output; + /** + * The providerName that the flavorProfile will use. + * Changing this updates the existing flavorprofile. + */ + public readonly providerName!: pulumi.Output; + public readonly region!: pulumi.Output; + + /** + * Create a FlavorprofileV2 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: FlavorprofileV2Args, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: FlavorprofileV2Args | FlavorprofileV2State, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as FlavorprofileV2State | undefined; + resourceInputs["flavorData"] = state ? state.flavorData : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["providerName"] = state ? state.providerName : undefined; + resourceInputs["region"] = state ? state.region : undefined; + } else { + const args = argsOrState as FlavorprofileV2Args | undefined; + if ((!args || args.flavorData === undefined) && !opts.urn) { + throw new Error("Missing required property 'flavorData'"); + } + if ((!args || args.providerName === undefined) && !opts.urn) { + throw new Error("Missing required property 'providerName'"); + } + resourceInputs["flavorData"] = args ? args.flavorData : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["providerName"] = args ? args.providerName : undefined; + resourceInputs["region"] = args ? args.region : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/lbFlavorprofileV2:LbFlavorprofileV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(FlavorprofileV2.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering FlavorprofileV2 resources. + */ +export interface FlavorprofileV2State { + /** + * String that passes the flavorData for the flavorprofile. + * The data that are allowed depend on the `providerName` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + */ + flavorData?: pulumi.Input; + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + */ + name?: pulumi.Input; + /** + * The providerName that the flavorProfile will use. + * Changing this updates the existing flavorprofile. + */ + providerName?: pulumi.Input; + region?: pulumi.Input; +} + +/** + * The set of arguments for constructing a FlavorprofileV2 resource. + */ +export interface FlavorprofileV2Args { + /** + * String that passes the flavorData for the flavorprofile. + * The data that are allowed depend on the `providerName` that is passed. jsonencode + * can be used for readability as shown in the example above. + * Changing this updates the existing flavorprofile. + */ + flavorData: pulumi.Input; + /** + * Name of the flavorprofile. Changing this updates the existing + * flavorprofile. + */ + name?: pulumi.Input; + /** + * The providerName that the flavorProfile will use. + * Changing this updates the existing flavorprofile. + */ + providerName: pulumi.Input; + region?: pulumi.Input; +} diff --git a/sdk/nodejs/loadbalancer/index.ts b/sdk/nodejs/loadbalancer/index.ts index 8890b0996..e7e043ba1 100644 --- a/sdk/nodejs/loadbalancer/index.ts +++ b/sdk/nodejs/loadbalancer/index.ts @@ -5,6 +5,11 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; // Export members: +export { FlavorprofileV2Args, FlavorprofileV2State } from "./flavorprofileV2"; +export type FlavorprofileV2 = import("./flavorprofileV2").FlavorprofileV2; +export const FlavorprofileV2: typeof import("./flavorprofileV2").FlavorprofileV2 = null as any; +utilities.lazyLoad(exports, ["FlavorprofileV2"], () => require("./flavorprofileV2")); + export { GetFlavorV2Args, GetFlavorV2Result, GetFlavorV2OutputArgs } from "./getFlavorV2"; export const getFlavorV2: typeof import("./getFlavorV2").getFlavorV2 = null as any; export const getFlavorV2Output: typeof import("./getFlavorV2").getFlavorV2Output = null as any; @@ -25,6 +30,11 @@ export type Listener = import("./listener").Listener; export const Listener: typeof import("./listener").Listener = null as any; utilities.lazyLoad(exports, ["Listener"], () => require("./listener")); +export { LoadBalancerArgs, LoadBalancerState } from "./loadBalancer"; +export type LoadBalancer = import("./loadBalancer").LoadBalancer; +export const LoadBalancer: typeof import("./loadBalancer").LoadBalancer = null as any; +utilities.lazyLoad(exports, ["LoadBalancer"], () => require("./loadBalancer")); + export { MemberArgs, MemberState } from "./member"; export type Member = import("./member").Member; export const Member: typeof import("./member").Member = null as any; @@ -55,12 +65,16 @@ const _module = { version: utilities.getVersion(), construct: (name: string, type: string, urn: string): pulumi.Resource => { switch (type) { + case "openstack:loadbalancer/flavorprofileV2:FlavorprofileV2": + return new FlavorprofileV2(name, undefined, { urn }) case "openstack:loadbalancer/l7PolicyV2:L7PolicyV2": return new L7PolicyV2(name, undefined, { urn }) case "openstack:loadbalancer/l7RuleV2:L7RuleV2": return new L7RuleV2(name, undefined, { urn }) case "openstack:loadbalancer/listener:Listener": return new Listener(name, undefined, { urn }) + case "openstack:loadbalancer/loadBalancer:LoadBalancer": + return new LoadBalancer(name, undefined, { urn }) case "openstack:loadbalancer/member:Member": return new Member(name, undefined, { urn }) case "openstack:loadbalancer/members:Members": @@ -76,9 +90,11 @@ const _module = { } }, }; +pulumi.runtime.registerResourceModule("openstack", "loadbalancer/flavorprofileV2", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/l7PolicyV2", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/l7RuleV2", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/listener", _module) +pulumi.runtime.registerResourceModule("openstack", "loadbalancer/loadBalancer", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/member", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/members", _module) pulumi.runtime.registerResourceModule("openstack", "loadbalancer/monitor", _module) diff --git a/sdk/nodejs/loadbalancer/l7policyV2.ts b/sdk/nodejs/loadbalancer/l7policyV2.ts index 1dc99ccec..98b80e1bc 100644 --- a/sdk/nodejs/loadbalancer/l7policyV2.ts +++ b/sdk/nodejs/loadbalancer/l7policyV2.ts @@ -23,7 +23,7 @@ import * as utilities from "../utilities"; * ipVersion: 4, * networkId: network1.id, * }); - * const loadbalancer1 = new openstack.LbLoadbalancerV2("loadbalancer_1", { + * const loadbalancer1 = new openstack.loadbalancer.LoadBalancer("loadbalancer_1", { * name: "loadbalancer_1", * vipSubnetId: subnet1.id, * }); diff --git a/sdk/nodejs/loadbalancer/l7ruleV2.ts b/sdk/nodejs/loadbalancer/l7ruleV2.ts index f274beda6..47db6d169 100644 --- a/sdk/nodejs/loadbalancer/l7ruleV2.ts +++ b/sdk/nodejs/loadbalancer/l7ruleV2.ts @@ -23,7 +23,7 @@ import * as utilities from "../utilities"; * ipVersion: 4, * networkId: network1.id, * }); - * const loadbalancer1 = new openstack.LbLoadbalancerV2("loadbalancer_1", { + * const loadbalancer1 = new openstack.loadbalancer.LoadBalancer("loadbalancer_1", { * name: "loadbalancer_1", * vipSubnetId: subnet1.id, * }); diff --git a/sdk/nodejs/loadbalancer/listener.ts b/sdk/nodejs/loadbalancer/listener.ts index d50e5e6d2..86668e404 100644 --- a/sdk/nodejs/loadbalancer/listener.ts +++ b/sdk/nodejs/loadbalancer/listener.ts @@ -54,7 +54,7 @@ import * as utilities from "../utilities"; * const subnet1 = openstack.networking.getSubnet({ * name: "my-subnet", * }); - * const lb1 = new openstack.LbLoadbalancerV2("lb_1", { + * const lb1 = new openstack.loadbalancer.LoadBalancer("lb_1", { * name: "loadbalancer", * vipSubnetId: subnet1.then(subnet1 => subnet1.id), * }); diff --git a/sdk/nodejs/loadbalancer/loadBalancer.ts b/sdk/nodejs/loadbalancer/loadBalancer.ts new file mode 100644 index 000000000..6d89f2314 --- /dev/null +++ b/sdk/nodejs/loadbalancer/loadBalancer.ts @@ -0,0 +1,380 @@ +// *** 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"; + +/** + * Manages a V2 loadbalancer resource within OpenStack. + * + * > **Note:** This resource has attributes that depend on octavia minor versions. + * Please ensure your Openstack cloud supports the required minor version. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as openstack from "@pulumi/openstack"; + * + * const lb1 = new openstack.loadbalancer.LoadBalancer("lb_1", {vipSubnetId: "d9415786-5f1a-428b-b35f-2f1523e146d2"}); + * ``` + * + * ## Import + * + * Load Balancer can be imported using the Load Balancer ID, e.g.: + * + * ```sh + * $ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 + * ``` + */ +export class LoadBalancer extends pulumi.CustomResource { + /** + * Get an existing LoadBalancer 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?: LoadBalancerState, opts?: pulumi.CustomResourceOptions): LoadBalancer { + return new LoadBalancer(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'openstack:loadbalancer/loadBalancer:LoadBalancer'; + + /** + * Returns true if the given object is an instance of LoadBalancer. 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 LoadBalancer { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LoadBalancer.__pulumiType; + } + + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + */ + public readonly adminStateUp!: pulumi.Output; + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + */ + public readonly availabilityZone!: pulumi.Output; + /** + * Human-readable description for the Loadbalancer. + */ + public readonly description!: pulumi.Output; + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + */ + public readonly flavorId!: pulumi.Output; + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + */ + public readonly loadbalancerProvider!: pulumi.Output; + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + */ + public readonly name!: pulumi.Output; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + */ + public readonly region!: pulumi.Output; + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + */ + public readonly securityGroupIds!: pulumi.Output; + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + */ + public readonly tags!: pulumi.Output; + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + */ + public readonly tenantId!: pulumi.Output; + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + */ + public readonly vipAddress!: pulumi.Output; + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + public readonly vipNetworkId!: pulumi.Output; + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + public readonly vipPortId!: pulumi.Output; + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + */ + public readonly vipQosPolicyId!: pulumi.Output; + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + public readonly vipSubnetId!: pulumi.Output; + + /** + * Create a LoadBalancer 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?: LoadBalancerArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LoadBalancerArgs | LoadBalancerState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LoadBalancerState | undefined; + resourceInputs["adminStateUp"] = state ? state.adminStateUp : undefined; + resourceInputs["availabilityZone"] = state ? state.availabilityZone : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["flavorId"] = state ? state.flavorId : undefined; + resourceInputs["loadbalancerProvider"] = state ? state.loadbalancerProvider : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["region"] = state ? state.region : undefined; + resourceInputs["securityGroupIds"] = state ? state.securityGroupIds : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tenantId"] = state ? state.tenantId : undefined; + resourceInputs["vipAddress"] = state ? state.vipAddress : undefined; + resourceInputs["vipNetworkId"] = state ? state.vipNetworkId : undefined; + resourceInputs["vipPortId"] = state ? state.vipPortId : undefined; + resourceInputs["vipQosPolicyId"] = state ? state.vipQosPolicyId : undefined; + resourceInputs["vipSubnetId"] = state ? state.vipSubnetId : undefined; + } else { + const args = argsOrState as LoadBalancerArgs | undefined; + resourceInputs["adminStateUp"] = args ? args.adminStateUp : undefined; + resourceInputs["availabilityZone"] = args ? args.availabilityZone : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["flavorId"] = args ? args.flavorId : undefined; + resourceInputs["loadbalancerProvider"] = args ? args.loadbalancerProvider : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["tenantId"] = args ? args.tenantId : undefined; + resourceInputs["vipAddress"] = args ? args.vipAddress : undefined; + resourceInputs["vipNetworkId"] = args ? args.vipNetworkId : undefined; + resourceInputs["vipPortId"] = args ? args.vipPortId : undefined; + resourceInputs["vipQosPolicyId"] = args ? args.vipQosPolicyId : undefined; + resourceInputs["vipSubnetId"] = args ? args.vipSubnetId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const aliasOpts = { aliases: [{ type: "openstack:index/lbLoadbalancerV2:LbLoadbalancerV2" }] }; + opts = pulumi.mergeOptions(opts, aliasOpts); + super(LoadBalancer.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LoadBalancer resources. + */ +export interface LoadBalancerState { + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + */ + adminStateUp?: pulumi.Input; + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + */ + availabilityZone?: pulumi.Input; + /** + * Human-readable description for the Loadbalancer. + */ + description?: pulumi.Input; + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + */ + flavorId?: pulumi.Input; + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + */ + loadbalancerProvider?: pulumi.Input; + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + */ + name?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + */ + region?: pulumi.Input; + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + */ + securityGroupIds?: pulumi.Input[]>; + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + */ + tags?: pulumi.Input[]>; + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + */ + tenantId?: pulumi.Input; + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + */ + vipAddress?: pulumi.Input; + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipNetworkId?: pulumi.Input; + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipPortId?: pulumi.Input; + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + */ + vipQosPolicyId?: pulumi.Input; + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipSubnetId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a LoadBalancer resource. + */ +export interface LoadBalancerArgs { + /** + * The administrative state of the Loadbalancer. + * A valid value is true (UP) or false (DOWN). + */ + adminStateUp?: pulumi.Input; + /** + * The availability zone of the Loadbalancer. + * Changing this creates a new loadbalancer. Available only for Octavia + * **minor version 2.14 or later**. + */ + availabilityZone?: pulumi.Input; + /** + * Human-readable description for the Loadbalancer. + */ + description?: pulumi.Input; + /** + * The UUID of a flavor. Changing this creates a new + * loadbalancer. + */ + flavorId?: pulumi.Input; + /** + * The name of the provider. Changing this + * creates a new loadbalancer. + */ + loadbalancerProvider?: pulumi.Input; + /** + * Human-readable name for the Loadbalancer. Does not have + * to be unique. + */ + name?: pulumi.Input; + /** + * The region in which to obtain the V2 Networking client. + * A Networking client is needed to create an LB member. If omitted, the + * `region` argument of the provider is used. Changing this creates a new + * LB member. + */ + region?: pulumi.Input; + /** + * A list of security group IDs to apply to the + * loadbalancer. The security groups must be specified by ID and not name (as + * opposed to how they are configured with the Compute Instance). + */ + securityGroupIds?: pulumi.Input[]>; + /** + * A list of simple strings assigned to the loadbalancer. + * Available only for Octavia **minor version 2.5 or later**. + */ + tags?: pulumi.Input[]>; + /** + * Required for admins. The UUID of the tenant who owns + * the Loadbalancer. Only administrative users can specify a tenant UUID + * other than their own. Changing this creates a new loadbalancer. + */ + tenantId?: pulumi.Input; + /** + * The ip address of the load balancer. + * Changing this creates a new loadbalancer. + */ + vipAddress?: pulumi.Input; + /** + * The network on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipNetworkId?: pulumi.Input; + /** + * The port UUID that the loadbalancer will use. + * Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipPortId?: pulumi.Input; + /** + * The ID of the QoS Policy which will + * be applied to the Virtual IP (VIP). + */ + vipQosPolicyId?: pulumi.Input; + /** + * The subnet on which to allocate the + * Loadbalancer's address. A tenant can only create Loadbalancers on networks + * authorized by policy (e.g. networks that belong to them or networks that + * are shared). Changing this creates a new loadbalancer. Exactly one of + * `vipSubnetId`, `vipNetworkId` or `vipPortId` has to be defined. + */ + vipSubnetId?: pulumi.Input; +} diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index da95fee98..129116bf0 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -13,6 +13,11 @@ "strict": true }, "files": [ + "bgpvpn/index.ts", + "bgpvpn/networkAssociateV2.ts", + "bgpvpn/portAssociateV2.ts", + "bgpvpn/routerAssociateV2.ts", + "bgpvpn/v2.ts", "bgpvpnNetworkAssociateV2.ts", "bgpvpnPortAssociateV2.ts", "bgpvpnRouterAssociateV2.ts", @@ -67,6 +72,9 @@ "dns/transferAccept.ts", "dns/transferRequest.ts", "dns/zone.ts", + "firewall/getGroupV2.ts", + "firewall/getPolicyV2.ts", + "firewall/getRuleV2.ts", "firewall/groupV2.ts", "firewall/index.ts", "firewall/policyV2.ts", @@ -109,11 +117,13 @@ "keymanager/secretV1.ts", "lbFlavorprofileV2.ts", "lbLoadbalancerV2.ts", + "loadbalancer/flavorprofileV2.ts", "loadbalancer/getFlavorV2.ts", "loadbalancer/index.ts", "loadbalancer/l7policyV2.ts", "loadbalancer/l7ruleV2.ts", "loadbalancer/listener.ts", + "loadbalancer/loadBalancer.ts", "loadbalancer/member.ts", "loadbalancer/members.ts", "loadbalancer/monitor.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 9e3c9d3e9..dfb534ec3 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -28,6 +28,32 @@ export interface BgpvpnPortAssociateV2Route { */ type: pulumi.Input; } +export namespace bgpvpn { + export interface PortAssociateV2Route { + /** + * The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + */ + bgpvpnId?: pulumi.Input; + /** + * The BGP LOCAL\_PREF value of the routes that will + * be advertised. + */ + localPref?: pulumi.Input; + /** + * The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpnId`. + */ + prefix?: pulumi.Input; + /** + * Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpnId` key. + */ + type: pulumi.Input; + } +} + export namespace blockstorage { export interface VolumeAttachment { device?: pulumi.Input; diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index a86c9a5f5..2c5915a66 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -29,6 +29,33 @@ export interface BgpvpnPortAssociateV2Route { type: string; } +export namespace bgpvpn { + export interface PortAssociateV2Route { + /** + * The ID of the BGP VPN to be advertised. Required + * if `type` is `bgpvpn`. Conflicts with `prefix`. + */ + bgpvpnId?: string; + /** + * The BGP LOCAL\_PREF value of the routes that will + * be advertised. + */ + localPref?: number; + /** + * The CIDR prefix (v4 or v6) to be advertised. Required + * if `type` is `prefix`. Conflicts with `bgpvpnId`. + */ + prefix?: string; + /** + * Can be `prefix` or `bgpvpn`. For the `prefix` type, the + * CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the + * `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpnId` key. + */ + type: string; + } + +} + export namespace blockstorage { export interface GetVolumeV3Attachment { device: string; diff --git a/sdk/python/pulumi_openstack/__init__.py b/sdk/python/pulumi_openstack/__init__.py index 371f33cb9..c283215ed 100644 --- a/sdk/python/pulumi_openstack/__init__.py +++ b/sdk/python/pulumi_openstack/__init__.py @@ -20,6 +20,8 @@ # Make subpackages available: if typing.TYPE_CHECKING: + import pulumi_openstack.bgpvpn as __bgpvpn + bgpvpn = __bgpvpn import pulumi_openstack.blockstorage as __blockstorage blockstorage = __blockstorage import pulumi_openstack.compute as __compute @@ -53,6 +55,7 @@ import pulumi_openstack.vpnaas as __vpnaas vpnaas = __vpnaas else: + bgpvpn = _utilities.lazy_import('pulumi_openstack.bgpvpn') blockstorage = _utilities.lazy_import('pulumi_openstack.blockstorage') compute = _utilities.lazy_import('pulumi_openstack.compute') config = _utilities.lazy_import('pulumi_openstack.config') @@ -73,6 +76,38 @@ _utilities.register( resource_modules=""" [ + { + "pkg": "openstack", + "mod": "bgpvpn/networkAssociateV2", + "fqn": "pulumi_openstack.bgpvpn", + "classes": { + "openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2": "NetworkAssociateV2" + } + }, + { + "pkg": "openstack", + "mod": "bgpvpn/portAssociateV2", + "fqn": "pulumi_openstack.bgpvpn", + "classes": { + "openstack:bgpvpn/portAssociateV2:PortAssociateV2": "PortAssociateV2" + } + }, + { + "pkg": "openstack", + "mod": "bgpvpn/routerAssociateV2", + "fqn": "pulumi_openstack.bgpvpn", + "classes": { + "openstack:bgpvpn/routerAssociateV2:RouterAssociateV2": "RouterAssociateV2" + } + }, + { + "pkg": "openstack", + "mod": "bgpvpn/v2", + "fqn": "pulumi_openstack.bgpvpn", + "classes": { + "openstack:bgpvpn/v2:V2": "V2" + } + }, { "pkg": "openstack", "mod": "blockstorage/qosAssociationV3", @@ -497,6 +532,14 @@ "openstack:keymanager/secretV1:SecretV1": "SecretV1" } }, + { + "pkg": "openstack", + "mod": "loadbalancer/flavorprofileV2", + "fqn": "pulumi_openstack.loadbalancer", + "classes": { + "openstack:loadbalancer/flavorprofileV2:FlavorprofileV2": "FlavorprofileV2" + } + }, { "pkg": "openstack", "mod": "loadbalancer/l7PolicyV2", @@ -521,6 +564,14 @@ "openstack:loadbalancer/listener:Listener": "Listener" } }, + { + "pkg": "openstack", + "mod": "loadbalancer/loadBalancer", + "fqn": "pulumi_openstack.loadbalancer", + "classes": { + "openstack:loadbalancer/loadBalancer:LoadBalancer": "LoadBalancer" + } + }, { "pkg": "openstack", "mod": "loadbalancer/member", diff --git a/sdk/python/pulumi_openstack/_inputs.py b/sdk/python/pulumi_openstack/_inputs.py index 3b4f12c5c..be16ce329 100644 --- a/sdk/python/pulumi_openstack/_inputs.py +++ b/sdk/python/pulumi_openstack/_inputs.py @@ -20,17 +20,6 @@ def __init__(__self__, *, bgpvpn_id: Optional[pulumi.Input[str]] = None, local_pref: Optional[pulumi.Input[int]] = None, prefix: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] type: Can be `prefix` or `bgpvpn`. For the `prefix` type, the - CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the - `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to be advertised. Required - if `type` is `bgpvpn`. Conflicts with `prefix`. - :param pulumi.Input[int] local_pref: The BGP LOCAL\\_PREF value of the routes that will - be advertised. - :param pulumi.Input[str] prefix: The CIDR prefix (v4 or v6) to be advertised. Required - if `type` is `prefix`. Conflicts with `bgpvpn_id`. - """ pulumi.set(__self__, "type", type) if bgpvpn_id is not None: pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) @@ -42,11 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - Can be `prefix` or `bgpvpn`. For the `prefix` type, the - CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the - `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. - """ return pulumi.get(self, "type") @type.setter @@ -56,10 +40,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the BGP VPN to be advertised. Required - if `type` is `bgpvpn`. Conflicts with `prefix`. - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -69,10 +49,6 @@ def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localPref") def local_pref(self) -> Optional[pulumi.Input[int]]: - """ - The BGP LOCAL\\_PREF value of the routes that will - be advertised. - """ return pulumi.get(self, "local_pref") @local_pref.setter @@ -82,10 +58,6 @@ def local_pref(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def prefix(self) -> Optional[pulumi.Input[str]]: - """ - The CIDR prefix (v4 or v6) to be advertised. Required - if `type` is `prefix`. Conflicts with `bgpvpn_id`. - """ return pulumi.get(self, "prefix") @prefix.setter diff --git a/sdk/python/pulumi_openstack/bgpvpn/__init__.py b/sdk/python/pulumi_openstack/bgpvpn/__init__.py new file mode 100644 index 000000000..c0a6132b3 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/__init__.py @@ -0,0 +1,13 @@ +# 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! *** + +from .. import _utilities +import typing +# Export this package's modules as members: +from .network_associate_v2 import * +from .port_associate_v2 import * +from .router_associate_v2 import * +from .v2 import * +from ._inputs import * +from . import outputs diff --git a/sdk/python/pulumi_openstack/bgpvpn/_inputs.py b/sdk/python/pulumi_openstack/bgpvpn/_inputs.py new file mode 100644 index 000000000..9bb353b23 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/_inputs.py @@ -0,0 +1,67 @@ +# 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__ = [ + 'PortAssociateV2RouteArgs', +] + +@pulumi.input_type +class PortAssociateV2RouteArgs: + def __init__(__self__, *, + type: pulumi.Input[str], + bgpvpn_id: Optional[pulumi.Input[str]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + prefix: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "type", type) + if bgpvpn_id is not None: + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + if local_pref is not None: + pulumi.set(__self__, "local_pref", local_pref) + if prefix is not None: + pulumi.set(__self__, "prefix", prefix) + + @property + @pulumi.getter + def type(self) -> pulumi.Input[str]: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input[str]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="localPref") + def local_pref(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "local_pref") + + @local_pref.setter + def local_pref(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "local_pref", value) + + @property + @pulumi.getter + def prefix(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "prefix") + + @prefix.setter + def prefix(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "prefix", value) + + diff --git a/sdk/python/pulumi_openstack/bgpvpn/network_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn/network_associate_v2.py new file mode 100644 index 000000000..2552b7184 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/network_associate_v2.py @@ -0,0 +1,236 @@ +# 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__ = ['NetworkAssociateV2Args', 'NetworkAssociateV2'] + +@pulumi.input_type +class NetworkAssociateV2Args: + def __init__(__self__, *, + bgpvpn_id: pulumi.Input[str], + network_id: pulumi.Input[str], + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a NetworkAssociateV2 resource. + """ + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + pulumi.set(__self__, "network_id", network_id) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: pulumi.Input[str]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="networkId") + def network_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "network_id") + + @network_id.setter + def network_id(self, value: pulumi.Input[str]): + pulumi.set(self, "network_id", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + +@pulumi.input_type +class _NetworkAssociateV2State: + def __init__(__self__, *, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + network_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering NetworkAssociateV2 resources. + """ + if bgpvpn_id is not None: + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + if network_id is not None: + pulumi.set(__self__, "network_id", network_id) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="networkId") + def network_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "network_id") + + @network_id.setter + def network_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "network_id", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + +class NetworkAssociateV2(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + network_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Create a NetworkAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: NetworkAssociateV2Args, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a NetworkAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param NetworkAssociateV2Args 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(NetworkAssociateV2Args, 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, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + network_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: 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__ = NetworkAssociateV2Args.__new__(NetworkAssociateV2Args) + + if bgpvpn_id is None and not opts.urn: + raise TypeError("Missing required property 'bgpvpn_id'") + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + if network_id is None and not opts.urn: + raise TypeError("Missing required property 'network_id'") + __props__.__dict__["network_id"] = network_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(NetworkAssociateV2, __self__).__init__( + 'openstack:bgpvpn/networkAssociateV2:NetworkAssociateV2', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + network_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None) -> 'NetworkAssociateV2': + """ + Get an existing NetworkAssociateV2 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _NetworkAssociateV2State.__new__(_NetworkAssociateV2State) + + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + __props__.__dict__["network_id"] = network_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + return NetworkAssociateV2(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "bgpvpn_id") + + @property + @pulumi.getter(name="networkId") + def network_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "network_id") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + diff --git a/sdk/python/pulumi_openstack/bgpvpn/outputs.py b/sdk/python/pulumi_openstack/bgpvpn/outputs.py new file mode 100644 index 000000000..0b0f347d5 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/outputs.py @@ -0,0 +1,70 @@ +# 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__ = [ + 'PortAssociateV2Route', +] + +@pulumi.output_type +class PortAssociateV2Route(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "bgpvpnId": + suggest = "bgpvpn_id" + elif key == "localPref": + suggest = "local_pref" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PortAssociateV2Route. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PortAssociateV2Route.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PortAssociateV2Route.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + type: str, + bgpvpn_id: Optional[str] = None, + local_pref: Optional[int] = None, + prefix: Optional[str] = None): + pulumi.set(__self__, "type", type) + if bgpvpn_id is not None: + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + if local_pref is not None: + pulumi.set(__self__, "local_pref", local_pref) + if prefix is not None: + pulumi.set(__self__, "prefix", prefix) + + @property + @pulumi.getter + def type(self) -> str: + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> Optional[str]: + return pulumi.get(self, "bgpvpn_id") + + @property + @pulumi.getter(name="localPref") + def local_pref(self) -> Optional[int]: + return pulumi.get(self, "local_pref") + + @property + @pulumi.getter + def prefix(self) -> Optional[str]: + return pulumi.get(self, "prefix") + + diff --git a/sdk/python/pulumi_openstack/bgpvpn/port_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn/port_associate_v2.py new file mode 100644 index 000000000..c49c228fa --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/port_associate_v2.py @@ -0,0 +1,306 @@ +# 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__ = ['PortAssociateV2Args', 'PortAssociateV2'] + +@pulumi.input_type +class PortAssociateV2Args: + def __init__(__self__, *, + bgpvpn_id: pulumi.Input[str], + port_id: pulumi.Input[str], + advertise_fixed_ips: Optional[pulumi.Input[bool]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + routes: Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]] = None): + """ + The set of arguments for constructing a PortAssociateV2 resource. + """ + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + pulumi.set(__self__, "port_id", port_id) + if advertise_fixed_ips is not None: + pulumi.set(__self__, "advertise_fixed_ips", advertise_fixed_ips) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + if routes is not None: + pulumi.set(__self__, "routes", routes) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: pulumi.Input[str]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="portId") + def port_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "port_id") + + @port_id.setter + def port_id(self, value: pulumi.Input[str]): + pulumi.set(self, "port_id", value) + + @property + @pulumi.getter(name="advertiseFixedIps") + def advertise_fixed_ips(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "advertise_fixed_ips") + + @advertise_fixed_ips.setter + def advertise_fixed_ips(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "advertise_fixed_ips", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter + def routes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]]: + return pulumi.get(self, "routes") + + @routes.setter + def routes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]]): + pulumi.set(self, "routes", value) + + +@pulumi.input_type +class _PortAssociateV2State: + def __init__(__self__, *, + advertise_fixed_ips: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + port_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + routes: Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]] = None): + """ + Input properties used for looking up and filtering PortAssociateV2 resources. + """ + if advertise_fixed_ips is not None: + pulumi.set(__self__, "advertise_fixed_ips", advertise_fixed_ips) + if bgpvpn_id is not None: + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + if port_id is not None: + pulumi.set(__self__, "port_id", port_id) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + if routes is not None: + pulumi.set(__self__, "routes", routes) + + @property + @pulumi.getter(name="advertiseFixedIps") + def advertise_fixed_ips(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "advertise_fixed_ips") + + @advertise_fixed_ips.setter + def advertise_fixed_ips(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "advertise_fixed_ips", value) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="portId") + def port_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "port_id") + + @port_id.setter + def port_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "port_id", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter + def routes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]]: + return pulumi.get(self, "routes") + + @routes.setter + def routes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PortAssociateV2RouteArgs']]]]): + pulumi.set(self, "routes", value) + + +class PortAssociateV2(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + advertise_fixed_ips: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + port_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PortAssociateV2RouteArgs', 'PortAssociateV2RouteArgsDict']]]]] = None, + __props__=None): + """ + Create a PortAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: PortAssociateV2Args, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a PortAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param PortAssociateV2Args 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(PortAssociateV2Args, 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, + advertise_fixed_ips: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + port_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PortAssociateV2RouteArgs', 'PortAssociateV2RouteArgsDict']]]]] = 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__ = PortAssociateV2Args.__new__(PortAssociateV2Args) + + __props__.__dict__["advertise_fixed_ips"] = advertise_fixed_ips + if bgpvpn_id is None and not opts.urn: + raise TypeError("Missing required property 'bgpvpn_id'") + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + if port_id is None and not opts.urn: + raise TypeError("Missing required property 'port_id'") + __props__.__dict__["port_id"] = port_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + __props__.__dict__["routes"] = routes + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(PortAssociateV2, __self__).__init__( + 'openstack:bgpvpn/portAssociateV2:PortAssociateV2', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + advertise_fixed_ips: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + port_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PortAssociateV2RouteArgs', 'PortAssociateV2RouteArgsDict']]]]] = None) -> 'PortAssociateV2': + """ + Get an existing PortAssociateV2 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _PortAssociateV2State.__new__(_PortAssociateV2State) + + __props__.__dict__["advertise_fixed_ips"] = advertise_fixed_ips + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + __props__.__dict__["port_id"] = port_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + __props__.__dict__["routes"] = routes + return PortAssociateV2(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="advertiseFixedIps") + def advertise_fixed_ips(self) -> pulumi.Output[bool]: + return pulumi.get(self, "advertise_fixed_ips") + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "bgpvpn_id") + + @property + @pulumi.getter(name="portId") + def port_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "port_id") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + + @property + @pulumi.getter + def routes(self) -> pulumi.Output[Optional[Sequence['outputs.PortAssociateV2Route']]]: + return pulumi.get(self, "routes") + diff --git a/sdk/python/pulumi_openstack/bgpvpn/router_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn/router_associate_v2.py new file mode 100644 index 000000000..604fc27c6 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/router_associate_v2.py @@ -0,0 +1,270 @@ +# 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__ = ['RouterAssociateV2Args', 'RouterAssociateV2'] + +@pulumi.input_type +class RouterAssociateV2Args: + def __init__(__self__, *, + bgpvpn_id: pulumi.Input[str], + router_id: pulumi.Input[str], + advertise_extra_routes: Optional[pulumi.Input[bool]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a RouterAssociateV2 resource. + """ + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + pulumi.set(__self__, "router_id", router_id) + if advertise_extra_routes is not None: + pulumi.set(__self__, "advertise_extra_routes", advertise_extra_routes) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: pulumi.Input[str]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="routerId") + def router_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "router_id") + + @router_id.setter + def router_id(self, value: pulumi.Input[str]): + pulumi.set(self, "router_id", value) + + @property + @pulumi.getter(name="advertiseExtraRoutes") + def advertise_extra_routes(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "advertise_extra_routes") + + @advertise_extra_routes.setter + def advertise_extra_routes(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "advertise_extra_routes", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + +@pulumi.input_type +class _RouterAssociateV2State: + def __init__(__self__, *, + advertise_extra_routes: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + router_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering RouterAssociateV2 resources. + """ + if advertise_extra_routes is not None: + pulumi.set(__self__, "advertise_extra_routes", advertise_extra_routes) + if bgpvpn_id is not None: + pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + if router_id is not None: + pulumi.set(__self__, "router_id", router_id) + + @property + @pulumi.getter(name="advertiseExtraRoutes") + def advertise_extra_routes(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "advertise_extra_routes") + + @advertise_extra_routes.setter + def advertise_extra_routes(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "advertise_extra_routes", value) + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "bgpvpn_id") + + @bgpvpn_id.setter + def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "bgpvpn_id", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="routerId") + def router_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "router_id") + + @router_id.setter + def router_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "router_id", value) + + +class RouterAssociateV2(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + advertise_extra_routes: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + router_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Create a RouterAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: RouterAssociateV2Args, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a RouterAssociateV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param RouterAssociateV2Args 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(RouterAssociateV2Args, 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, + advertise_extra_routes: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + router_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__ = RouterAssociateV2Args.__new__(RouterAssociateV2Args) + + __props__.__dict__["advertise_extra_routes"] = advertise_extra_routes + if bgpvpn_id is None and not opts.urn: + raise TypeError("Missing required property 'bgpvpn_id'") + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + if router_id is None and not opts.urn: + raise TypeError("Missing required property 'router_id'") + __props__.__dict__["router_id"] = router_id + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(RouterAssociateV2, __self__).__init__( + 'openstack:bgpvpn/routerAssociateV2:RouterAssociateV2', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + advertise_extra_routes: Optional[pulumi.Input[bool]] = None, + bgpvpn_id: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + router_id: Optional[pulumi.Input[str]] = None) -> 'RouterAssociateV2': + """ + Get an existing RouterAssociateV2 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _RouterAssociateV2State.__new__(_RouterAssociateV2State) + + __props__.__dict__["advertise_extra_routes"] = advertise_extra_routes + __props__.__dict__["bgpvpn_id"] = bgpvpn_id + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + __props__.__dict__["router_id"] = router_id + return RouterAssociateV2(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="advertiseExtraRoutes") + def advertise_extra_routes(self) -> pulumi.Output[bool]: + return pulumi.get(self, "advertise_extra_routes") + + @property + @pulumi.getter(name="bgpvpnId") + def bgpvpn_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "bgpvpn_id") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="routerId") + def router_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "router_id") + diff --git a/sdk/python/pulumi_openstack/bgpvpn/v2.py b/sdk/python/pulumi_openstack/bgpvpn/v2.py new file mode 100644 index 000000000..1768ff822 --- /dev/null +++ b/sdk/python/pulumi_openstack/bgpvpn/v2.py @@ -0,0 +1,518 @@ +# 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__ = ['V2Args', 'V2'] + +@pulumi.input_type +class V2Args: + def __init__(__self__, *, + export_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + import_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + route_distinguishers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + route_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + type: Optional[pulumi.Input[str]] = None, + vni: Optional[pulumi.Input[int]] = None): + """ + The set of arguments for constructing a V2 resource. + """ + if export_targets is not None: + pulumi.set(__self__, "export_targets", export_targets) + if import_targets is not None: + pulumi.set(__self__, "import_targets", import_targets) + if local_pref is not None: + pulumi.set(__self__, "local_pref", local_pref) + if name is not None: + pulumi.set(__self__, "name", name) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + if route_distinguishers is not None: + pulumi.set(__self__, "route_distinguishers", route_distinguishers) + if route_targets is not None: + pulumi.set(__self__, "route_targets", route_targets) + if type is not None: + pulumi.set(__self__, "type", type) + if vni is not None: + pulumi.set(__self__, "vni", vni) + + @property + @pulumi.getter(name="exportTargets") + def export_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "export_targets") + + @export_targets.setter + def export_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "export_targets", value) + + @property + @pulumi.getter(name="importTargets") + def import_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "import_targets") + + @import_targets.setter + def import_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "import_targets", value) + + @property + @pulumi.getter(name="localPref") + def local_pref(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "local_pref") + + @local_pref.setter + def local_pref(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "local_pref", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="routeDistinguishers") + def route_distinguishers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "route_distinguishers") + + @route_distinguishers.setter + def route_distinguishers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "route_distinguishers", value) + + @property + @pulumi.getter(name="routeTargets") + def route_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "route_targets") + + @route_targets.setter + def route_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "route_targets", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def vni(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "vni") + + @vni.setter + def vni(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "vni", value) + + +@pulumi.input_type +class _V2State: + def __init__(__self__, *, + export_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + import_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + route_distinguishers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + route_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + routers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + shared: Optional[pulumi.Input[bool]] = None, + type: Optional[pulumi.Input[str]] = None, + vni: Optional[pulumi.Input[int]] = None): + """ + Input properties used for looking up and filtering V2 resources. + """ + if export_targets is not None: + pulumi.set(__self__, "export_targets", export_targets) + if import_targets is not None: + pulumi.set(__self__, "import_targets", import_targets) + if local_pref is not None: + pulumi.set(__self__, "local_pref", local_pref) + if name is not None: + pulumi.set(__self__, "name", name) + if networks is not None: + pulumi.set(__self__, "networks", networks) + if ports is not None: + pulumi.set(__self__, "ports", ports) + if project_id is not None: + pulumi.set(__self__, "project_id", project_id) + if region is not None: + pulumi.set(__self__, "region", region) + if route_distinguishers is not None: + pulumi.set(__self__, "route_distinguishers", route_distinguishers) + if route_targets is not None: + pulumi.set(__self__, "route_targets", route_targets) + if routers is not None: + pulumi.set(__self__, "routers", routers) + if shared is not None: + pulumi.set(__self__, "shared", shared) + if type is not None: + pulumi.set(__self__, "type", type) + if vni is not None: + pulumi.set(__self__, "vni", vni) + + @property + @pulumi.getter(name="exportTargets") + def export_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "export_targets") + + @export_targets.setter + def export_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "export_targets", value) + + @property + @pulumi.getter(name="importTargets") + def import_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "import_targets") + + @import_targets.setter + def import_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "import_targets", value) + + @property + @pulumi.getter(name="localPref") + def local_pref(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "local_pref") + + @local_pref.setter + def local_pref(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "local_pref", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "networks") + + @networks.setter + def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "networks", value) + + @property + @pulumi.getter + def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "ports") + + @ports.setter + def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "ports", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="routeDistinguishers") + def route_distinguishers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "route_distinguishers") + + @route_distinguishers.setter + def route_distinguishers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "route_distinguishers", value) + + @property + @pulumi.getter(name="routeTargets") + def route_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "route_targets") + + @route_targets.setter + def route_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "route_targets", value) + + @property + @pulumi.getter + def routers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "routers") + + @routers.setter + def routers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "routers", value) + + @property + @pulumi.getter + def shared(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "shared") + + @shared.setter + def shared(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "shared", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def vni(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "vni") + + @vni.setter + def vni(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "vni", value) + + +class V2(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + export_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + import_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + route_distinguishers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + route_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + type: Optional[pulumi.Input[str]] = None, + vni: Optional[pulumi.Input[int]] = None, + __props__=None): + """ + Create a V2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[V2Args] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a V2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param V2Args 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(V2Args, 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, + export_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + import_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + route_distinguishers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + route_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + type: Optional[pulumi.Input[str]] = None, + vni: Optional[pulumi.Input[int]] = 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__ = V2Args.__new__(V2Args) + + __props__.__dict__["export_targets"] = export_targets + __props__.__dict__["import_targets"] = import_targets + __props__.__dict__["local_pref"] = local_pref + __props__.__dict__["name"] = name + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + __props__.__dict__["route_distinguishers"] = route_distinguishers + __props__.__dict__["route_targets"] = route_targets + __props__.__dict__["type"] = type + __props__.__dict__["vni"] = vni + __props__.__dict__["networks"] = None + __props__.__dict__["ports"] = None + __props__.__dict__["routers"] = None + __props__.__dict__["shared"] = None + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/bgpvpnV2:BgpvpnV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(V2, __self__).__init__( + 'openstack:bgpvpn/v2:V2', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + export_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + import_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + local_pref: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + project_id: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + route_distinguishers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + route_targets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + routers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + shared: Optional[pulumi.Input[bool]] = None, + type: Optional[pulumi.Input[str]] = None, + vni: Optional[pulumi.Input[int]] = None) -> 'V2': + """ + Get an existing V2 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _V2State.__new__(_V2State) + + __props__.__dict__["export_targets"] = export_targets + __props__.__dict__["import_targets"] = import_targets + __props__.__dict__["local_pref"] = local_pref + __props__.__dict__["name"] = name + __props__.__dict__["networks"] = networks + __props__.__dict__["ports"] = ports + __props__.__dict__["project_id"] = project_id + __props__.__dict__["region"] = region + __props__.__dict__["route_distinguishers"] = route_distinguishers + __props__.__dict__["route_targets"] = route_targets + __props__.__dict__["routers"] = routers + __props__.__dict__["shared"] = shared + __props__.__dict__["type"] = type + __props__.__dict__["vni"] = vni + return V2(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="exportTargets") + def export_targets(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "export_targets") + + @property + @pulumi.getter(name="importTargets") + def import_targets(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "import_targets") + + @property + @pulumi.getter(name="localPref") + def local_pref(self) -> pulumi.Output[Optional[int]]: + return pulumi.get(self, "local_pref") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def networks(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "networks") + + @property + @pulumi.getter + def ports(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "ports") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="routeDistinguishers") + def route_distinguishers(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "route_distinguishers") + + @property + @pulumi.getter(name="routeTargets") + def route_targets(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "route_targets") + + @property + @pulumi.getter + def routers(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "routers") + + @property + @pulumi.getter + def shared(self) -> pulumi.Output[bool]: + return pulumi.get(self, "shared") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + return pulumi.get(self, "type") + + @property + @pulumi.getter + def vni(self) -> pulumi.Output[Optional[int]]: + return pulumi.get(self, "vni") + diff --git a/sdk/python/pulumi_openstack/bgpvpn_network_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn_network_associate_v2.py index 275668281..169d417b9 100644 --- a/sdk/python/pulumi_openstack/bgpvpn_network_associate_v2.py +++ b/sdk/python/pulumi_openstack/bgpvpn_network_associate_v2.py @@ -20,18 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a BgpvpnNetworkAssociateV2 resource. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - :param pulumi.Input[str] network_id: The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. """ pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) pulumi.set(__self__, "network_id", network_id) @@ -43,10 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Input[str]: - """ - The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -56,10 +40,6 @@ def bgpvpn_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Input[str]: - """ - The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -69,12 +49,6 @@ def network_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -84,12 +58,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. - """ return pulumi.get(self, "region") @region.setter @@ -106,18 +74,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering BgpvpnNetworkAssociateV2 resources. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - :param pulumi.Input[str] network_id: The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. """ if bgpvpn_id is not None: pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) @@ -131,10 +87,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -144,10 +96,6 @@ def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -157,12 +105,6 @@ def network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -172,12 +114,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. - """ return pulumi.get(self, "region") @region.setter @@ -185,7 +121,12 @@ def region(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "region", value) +warnings.warn("""openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2""", DeprecationWarning) + + class BgpvpnNetworkAssociateV2(pulumi.CustomResource): + warnings.warn("""openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -196,45 +137,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 BGP VPN network association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnNetworkAssociateV2("association_1", - bgpvpn_id="e7189337-5684-46ee-bcb1-44f1a57066c9", - network_id="de83d56c-4d2f-44f7-ac24-af393252204f") - ``` - - ## Import - - BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN - - network association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 - ``` - + Create a BgpvpnNetworkAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - :param pulumi.Input[str] network_id: The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. """ ... @overload @@ -243,31 +148,7 @@ def __init__(__self__, args: BgpvpnNetworkAssociateV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 BGP VPN network association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnNetworkAssociateV2("association_1", - bgpvpn_id="e7189337-5684-46ee-bcb1-44f1a57066c9", - network_id="de83d56c-4d2f-44f7-ac24-af393252204f") - ``` - - ## Import - - BGP VPN network associations can be imported using the BGP VPN ID and BGP VPN - - network association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnNetworkAssociateV2:BgpvpnNetworkAssociateV2 association_1 2145aaa9-edaa-44fb-9815-e47a96677a72/67bb952a-f9d1-4fc8-ae84-082253a879d4 - ``` - + Create a BgpvpnNetworkAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param BgpvpnNetworkAssociateV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -288,6 +169,7 @@ def _internal_init(__self__, project_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, __props__=None): + pulumi.log.warn("""BgpvpnNetworkAssociateV2 is deprecated: openstack.index/bgpvpnnetworkassociatev2.BgpvpnNetworkAssociateV2 has been deprecated in favor of openstack.bgpvpn/networkassociatev2.NetworkAssociateV2""") 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') @@ -325,18 +207,6 @@ def get(resource_name: str, :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] bgpvpn_id: The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - :param pulumi.Input[str] network_id: The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -351,40 +221,20 @@ def get(resource_name: str, @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Output[str]: - """ - The ID of the BGP VPN to which the network will be - associated. Changing this creates a new BGP VPN network association - """ return pulumi.get(self, "bgpvpn_id") @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Output[str]: - """ - The ID of the network to be associated with the BGP - VPN. Changing this creates a new BGP VPN network association. - """ return pulumi.get(self, "network_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project that owns the BGP VPN network - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN network - association. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN network association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN network association. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/bgpvpn_port_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn_port_associate_v2.py index 7da3ac9ce..f4557cc40 100644 --- a/sdk/python/pulumi_openstack/bgpvpn_port_associate_v2.py +++ b/sdk/python/pulumi_openstack/bgpvpn_port_associate_v2.py @@ -24,21 +24,6 @@ def __init__(__self__, *, routes: Optional[pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]]] = None): """ The set of arguments for constructing a BgpvpnPortAssociateV2 resource. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] port_id: The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - :param pulumi.Input[bool] advertise_fixed_ips: A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - :param pulumi.Input[str] project_id: The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - :param pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]] routes: A list of dictionaries containing the following keys: """ pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) pulumi.set(__self__, "port_id", port_id) @@ -54,10 +39,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Input[str]: - """ - The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -67,10 +48,6 @@ def bgpvpn_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Input[str]: - """ - The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -80,10 +57,6 @@ def port_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="advertiseFixedIps") def advertise_fixed_ips(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_fixed_ips") @advertise_fixed_ips.setter @@ -93,12 +66,6 @@ def advertise_fixed_ips(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -108,12 +75,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - """ return pulumi.get(self, "region") @region.setter @@ -123,9 +84,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def routes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]]]: - """ - A list of dictionaries containing the following keys: - """ return pulumi.get(self, "routes") @routes.setter @@ -144,21 +102,6 @@ def __init__(__self__, *, routes: Optional[pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]]] = None): """ Input properties used for looking up and filtering BgpvpnPortAssociateV2 resources. - :param pulumi.Input[bool] advertise_fixed_ips: A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] port_id: The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] project_id: The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - :param pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]] routes: A list of dictionaries containing the following keys: """ if advertise_fixed_ips is not None: pulumi.set(__self__, "advertise_fixed_ips", advertise_fixed_ips) @@ -176,10 +119,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="advertiseFixedIps") def advertise_fixed_ips(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_fixed_ips") @advertise_fixed_ips.setter @@ -189,10 +128,6 @@ def advertise_fixed_ips(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -202,10 +137,6 @@ def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -215,12 +146,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -230,12 +155,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - """ return pulumi.get(self, "region") @region.setter @@ -245,9 +164,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def routes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BgpvpnPortAssociateV2RouteArgs']]]]: - """ - A list of dictionaries containing the following keys: - """ return pulumi.get(self, "routes") @routes.setter @@ -255,7 +171,12 @@ def routes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['BgpvpnPortA pulumi.set(self, "routes", value) +warnings.warn("""openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2""", DeprecationWarning) + + class BgpvpnPortAssociateV2(pulumi.CustomResource): + warnings.warn("""openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -268,58 +189,9 @@ def __init__(__self__, routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BgpvpnPortAssociateV2RouteArgs', 'BgpvpnPortAssociateV2RouteArgsDict']]]]] = None, __props__=None): """ - Manages a V2 BGP VPN port association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnPortAssociateV2("association_1", - bgpvpn_id="19382ec5-8098-47d9-a9c6-6270c91103f4", - port_id="b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", - routes=[ - { - "type": "prefix", - "prefix": "192.168.170.1/32", - }, - { - "type": "bgpvpn", - "bgpvpn_id": "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", - }, - ]) - ``` - - ## Import - - BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port - - association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf - ``` - + Create a BgpvpnPortAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] advertise_fixed_ips: A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] port_id: The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] project_id: The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - :param pulumi.Input[Sequence[pulumi.Input[Union['BgpvpnPortAssociateV2RouteArgs', 'BgpvpnPortAssociateV2RouteArgsDict']]]] routes: A list of dictionaries containing the following keys: """ ... @overload @@ -328,41 +200,7 @@ def __init__(__self__, args: BgpvpnPortAssociateV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 BGP VPN port association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnPortAssociateV2("association_1", - bgpvpn_id="19382ec5-8098-47d9-a9c6-6270c91103f4", - port_id="b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", - routes=[ - { - "type": "prefix", - "prefix": "192.168.170.1/32", - }, - { - "type": "bgpvpn", - "bgpvpn_id": "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", - }, - ]) - ``` - - ## Import - - BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port - - association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnPortAssociateV2:BgpvpnPortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf - ``` - + Create a BgpvpnPortAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param BgpvpnPortAssociateV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -385,6 +223,7 @@ def _internal_init(__self__, region: Optional[pulumi.Input[str]] = None, routes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BgpvpnPortAssociateV2RouteArgs', 'BgpvpnPortAssociateV2RouteArgsDict']]]]] = None, __props__=None): + pulumi.log.warn("""BgpvpnPortAssociateV2 is deprecated: openstack.index/bgpvpnportassociatev2.BgpvpnPortAssociateV2 has been deprecated in favor of openstack.bgpvpn/portassociatev2.PortAssociateV2""") 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') @@ -426,21 +265,6 @@ def get(resource_name: str, :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[bool] advertise_fixed_ips: A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] port_id: The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - :param pulumi.Input[str] project_id: The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - :param pulumi.Input[Sequence[pulumi.Input[Union['BgpvpnPortAssociateV2RouteArgs', 'BgpvpnPortAssociateV2RouteArgsDict']]]] routes: A list of dictionaries containing the following keys: """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -457,57 +281,30 @@ def get(resource_name: str, @property @pulumi.getter(name="advertiseFixedIps") def advertise_fixed_ips(self) -> pulumi.Output[bool]: - """ - A boolean flag indicating whether fixed - IPs should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_fixed_ips") @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Output[str]: - """ - The ID of the BGP VPN to which the port will be - associated. Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "bgpvpn_id") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - The ID of the port to be associated with the BGP VPN. - Changing this creates a new BGP VPN port association. - """ return pulumi.get(self, "port_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project that owns the port - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN port - association. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN port association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN port association. - """ return pulumi.get(self, "region") @property @pulumi.getter def routes(self) -> pulumi.Output[Optional[Sequence['outputs.BgpvpnPortAssociateV2Route']]]: - """ - A list of dictionaries containing the following keys: - """ return pulumi.get(self, "routes") diff --git a/sdk/python/pulumi_openstack/bgpvpn_router_associate_v2.py b/sdk/python/pulumi_openstack/bgpvpn_router_associate_v2.py index 70a7bb442..a34c2e542 100644 --- a/sdk/python/pulumi_openstack/bgpvpn_router_associate_v2.py +++ b/sdk/python/pulumi_openstack/bgpvpn_router_associate_v2.py @@ -21,20 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a BgpvpnRouterAssociateV2 resource. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - :param pulumi.Input[str] router_id: The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. - :param pulumi.Input[bool] advertise_extra_routes: A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. """ pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) pulumi.set(__self__, "router_id", router_id) @@ -48,10 +34,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Input[str]: - """ - The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -61,10 +43,6 @@ def bgpvpn_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Input[str]: - """ - The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -74,10 +52,6 @@ def router_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="advertiseExtraRoutes") def advertise_extra_routes(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_extra_routes") @advertise_extra_routes.setter @@ -87,12 +61,6 @@ def advertise_extra_routes(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -102,12 +70,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - """ return pulumi.get(self, "region") @region.setter @@ -125,20 +87,6 @@ def __init__(__self__, *, router_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering BgpvpnRouterAssociateV2 resources. - :param pulumi.Input[bool] advertise_extra_routes: A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - :param pulumi.Input[str] router_id: The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. """ if advertise_extra_routes is not None: pulumi.set(__self__, "advertise_extra_routes", advertise_extra_routes) @@ -154,10 +102,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="advertiseExtraRoutes") def advertise_extra_routes(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_extra_routes") @advertise_extra_routes.setter @@ -167,10 +111,6 @@ def advertise_extra_routes(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "bgpvpn_id") @bgpvpn_id.setter @@ -180,12 +120,6 @@ def bgpvpn_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -195,12 +129,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - """ return pulumi.get(self, "region") @region.setter @@ -210,10 +138,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routerId") def router_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -221,7 +145,12 @@ def router_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "router_id", value) +warnings.warn("""openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2""", DeprecationWarning) + + class BgpvpnRouterAssociateV2(pulumi.CustomResource): + warnings.warn("""openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -233,47 +162,9 @@ def __init__(__self__, router_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 BGP VPN router association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnRouterAssociateV2("association_1", - bgpvpn_id="d57d39e1-dc63-44fd-8cbd-a4e1488100c5", - router_id="423fa80f-e0d7-4d02-a9a5-8b8c05812bf6") - ``` - - ## Import - - BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN - - router association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f - ``` - + Create a BgpvpnRouterAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] advertise_extra_routes: A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - :param pulumi.Input[str] router_id: The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. """ ... @overload @@ -282,31 +173,7 @@ def __init__(__self__, args: BgpvpnRouterAssociateV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 BGP VPN router association resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - association1 = openstack.BgpvpnRouterAssociateV2("association_1", - bgpvpn_id="d57d39e1-dc63-44fd-8cbd-a4e1488100c5", - router_id="423fa80f-e0d7-4d02-a9a5-8b8c05812bf6") - ``` - - ## Import - - BGP VPN router associations can be imported using the BGP VPN ID and BGP VPN - - router association ID separated by a slash, e.g.: - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnRouterAssociateV2:BgpvpnRouterAssociateV2 association_1 e26d509e-fc2d-4fb5-8562-619911a9a6bc/3cc9df2d-80db-4536-8ba6-295d1d0f723f - ``` - + Create a BgpvpnRouterAssociateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param BgpvpnRouterAssociateV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -328,6 +195,7 @@ def _internal_init(__self__, region: Optional[pulumi.Input[str]] = None, router_id: Optional[pulumi.Input[str]] = None, __props__=None): + pulumi.log.warn("""BgpvpnRouterAssociateV2 is deprecated: openstack.index/bgpvpnrouterassociatev2.BgpvpnRouterAssociateV2 has been deprecated in favor of openstack.bgpvpn/routerassociatev2.RouterAssociateV2""") 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') @@ -367,20 +235,6 @@ def get(resource_name: str, :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[bool] advertise_extra_routes: A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - :param pulumi.Input[str] bgpvpn_id: The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - :param pulumi.Input[str] router_id: The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -396,49 +250,25 @@ def get(resource_name: str, @property @pulumi.getter(name="advertiseExtraRoutes") def advertise_extra_routes(self) -> pulumi.Output[bool]: - """ - A boolean flag indicating whether extra - routes should be advertised. Defaults to true. - """ return pulumi.get(self, "advertise_extra_routes") @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> pulumi.Output[str]: - """ - The ID of the BGP VPN to which the router will be - associated. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "bgpvpn_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project that owns the BGP VPN router - association. Only administrative and users with `advsvc` role can specify a - project ID other than their own. Changing this creates a new BGP VPN router - association. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN router association. If - omitted, the `region` argument of the provider is used. Changing this creates - a new BGP VPN router association. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Output[str]: - """ - The ID of the router to be associated with the BGP - VPN. Changing this creates a new BGP VPN router association. - """ return pulumi.get(self, "router_id") diff --git a/sdk/python/pulumi_openstack/bgpvpn_v2.py b/sdk/python/pulumi_openstack/bgpvpn_v2.py index 279273319..5faacaea9 100644 --- a/sdk/python/pulumi_openstack/bgpvpn_v2.py +++ b/sdk/python/pulumi_openstack/bgpvpn_v2.py @@ -26,29 +26,6 @@ def __init__(__self__, *, vni: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a BgpvpnV2 resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] export_targets: A list of additional Route Targets that will be - used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] import_targets: A list of additional Route Targets that will be - imported. - :param pulumi.Input[int] local_pref: The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - :param pulumi.Input[str] name: The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_distinguishers: A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_targets: A list of Route Targets that will be both - imported and used for export. - :param pulumi.Input[str] type: The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - :param pulumi.Input[int] vni: The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. """ if export_targets is not None: pulumi.set(__self__, "export_targets", export_targets) @@ -74,10 +51,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="exportTargets") def export_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of additional Route Targets that will be - used for export. - """ return pulumi.get(self, "export_targets") @export_targets.setter @@ -87,10 +60,6 @@ def export_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="importTargets") def import_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of additional Route Targets that will be - imported. - """ return pulumi.get(self, "import_targets") @import_targets.setter @@ -100,10 +69,6 @@ def import_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="localPref") def local_pref(self) -> Optional[pulumi.Input[int]]: - """ - The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - """ return pulumi.get(self, "local_pref") @local_pref.setter @@ -113,10 +78,6 @@ def local_pref(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - """ return pulumi.get(self, "name") @name.setter @@ -126,11 +87,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -140,12 +96,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - """ return pulumi.get(self, "region") @region.setter @@ -155,10 +105,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routeDistinguishers") def route_distinguishers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - """ return pulumi.get(self, "route_distinguishers") @route_distinguishers.setter @@ -168,10 +114,6 @@ def route_distinguishers(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu @property @pulumi.getter(name="routeTargets") def route_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of Route Targets that will be both - imported and used for export. - """ return pulumi.get(self, "route_targets") @route_targets.setter @@ -181,10 +123,6 @@ def route_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - """ return pulumi.get(self, "type") @type.setter @@ -194,10 +132,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def vni(self) -> Optional[pulumi.Input[int]]: - """ - The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. - """ return pulumi.get(self, "vni") @vni.setter @@ -224,33 +158,6 @@ def __init__(__self__, *, vni: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering BgpvpnV2 resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] export_targets: A list of additional Route Targets that will be - used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] import_targets: A list of additional Route Targets that will be - imported. - :param pulumi.Input[int] local_pref: The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - :param pulumi.Input[str] name: The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: A list of network IDs that are associated with the BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: A list of port IDs that are associated with the BGP VPN. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_distinguishers: A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_targets: A list of Route Targets that will be both - imported and used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] routers: A list of router IDs that are associated with the BGP VPN. - :param pulumi.Input[bool] shared: Indicates whether the BGP VPN is shared across projects. - :param pulumi.Input[str] type: The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - :param pulumi.Input[int] vni: The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. """ if export_targets is not None: pulumi.set(__self__, "export_targets", export_targets) @@ -284,10 +191,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="exportTargets") def export_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of additional Route Targets that will be - used for export. - """ return pulumi.get(self, "export_targets") @export_targets.setter @@ -297,10 +200,6 @@ def export_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="importTargets") def import_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of additional Route Targets that will be - imported. - """ return pulumi.get(self, "import_targets") @import_targets.setter @@ -310,10 +209,6 @@ def import_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="localPref") def local_pref(self) -> Optional[pulumi.Input[int]]: - """ - The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - """ return pulumi.get(self, "local_pref") @local_pref.setter @@ -323,10 +218,6 @@ def local_pref(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - """ return pulumi.get(self, "name") @name.setter @@ -336,9 +227,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of network IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "networks") @networks.setter @@ -348,9 +236,6 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of port IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "ports") @ports.setter @@ -360,11 +245,6 @@ def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -374,12 +254,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - """ return pulumi.get(self, "region") @region.setter @@ -389,10 +263,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routeDistinguishers") def route_distinguishers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - """ return pulumi.get(self, "route_distinguishers") @route_distinguishers.setter @@ -402,10 +272,6 @@ def route_distinguishers(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu @property @pulumi.getter(name="routeTargets") def route_targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of Route Targets that will be both - imported and used for export. - """ return pulumi.get(self, "route_targets") @route_targets.setter @@ -415,9 +281,6 @@ def route_targets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter def routers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of router IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "routers") @routers.setter @@ -427,9 +290,6 @@ def routers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the BGP VPN is shared across projects. - """ return pulumi.get(self, "shared") @shared.setter @@ -439,10 +299,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - """ return pulumi.get(self, "type") @type.setter @@ -452,10 +308,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def vni(self) -> Optional[pulumi.Input[int]]: - """ - The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. - """ return pulumi.get(self, "vni") @vni.setter @@ -463,7 +315,12 @@ def vni(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "vni", value) +warnings.warn("""openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2""", DeprecationWarning) + + class BgpvpnV2(pulumi.CustomResource): + warnings.warn("""openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -480,57 +337,9 @@ def __init__(__self__, vni: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V2 BGP VPN service resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - bgpvpn1 = openstack.BgpvpnV2("bgpvpn_1", - name="bgpvpn1", - route_distinguishers=["64512:1"], - route_targets=["64512:1"], - import_targets=["64512:2"], - export_targets=["64512:3"]) - ``` - - ## Import - - BGP VPNs can be imported using the `id`, e.g. - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c - ``` - + Create a BgpvpnV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] export_targets: A list of additional Route Targets that will be - used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] import_targets: A list of additional Route Targets that will be - imported. - :param pulumi.Input[int] local_pref: The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - :param pulumi.Input[str] name: The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_distinguishers: A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_targets: A list of Route Targets that will be both - imported and used for export. - :param pulumi.Input[str] type: The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - :param pulumi.Input[int] vni: The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. """ ... @overload @@ -539,32 +348,7 @@ def __init__(__self__, args: Optional[BgpvpnV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 BGP VPN service resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - bgpvpn1 = openstack.BgpvpnV2("bgpvpn_1", - name="bgpvpn1", - route_distinguishers=["64512:1"], - route_targets=["64512:1"], - import_targets=["64512:2"], - export_targets=["64512:3"]) - ``` - - ## Import - - BGP VPNs can be imported using the `id`, e.g. - - hcl - - ```sh - $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c - ``` - + Create a BgpvpnV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param BgpvpnV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -591,6 +375,7 @@ def _internal_init(__self__, type: Optional[pulumi.Input[str]] = None, vni: Optional[pulumi.Input[int]] = None, __props__=None): + pulumi.log.warn("""BgpvpnV2 is deprecated: openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2""") 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') @@ -644,33 +429,6 @@ def get(resource_name: str, :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[str]]] export_targets: A list of additional Route Targets that will be - used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] import_targets: A list of additional Route Targets that will be - imported. - :param pulumi.Input[int] local_pref: The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - :param pulumi.Input[str] name: The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: A list of network IDs that are associated with the BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: A list of port IDs that are associated with the BGP VPN. - :param pulumi.Input[str] project_id: The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_distinguishers: A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - :param pulumi.Input[Sequence[pulumi.Input[str]]] route_targets: A list of Route Targets that will be both - imported and used for export. - :param pulumi.Input[Sequence[pulumi.Input[str]]] routers: A list of router IDs that are associated with the BGP VPN. - :param pulumi.Input[bool] shared: Indicates whether the BGP VPN is shared across projects. - :param pulumi.Input[str] type: The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - :param pulumi.Input[int] vni: The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -695,125 +453,70 @@ def get(resource_name: str, @property @pulumi.getter(name="exportTargets") def export_targets(self) -> pulumi.Output[Sequence[str]]: - """ - A list of additional Route Targets that will be - used for export. - """ return pulumi.get(self, "export_targets") @property @pulumi.getter(name="importTargets") def import_targets(self) -> pulumi.Output[Sequence[str]]: - """ - A list of additional Route Targets that will be - imported. - """ return pulumi.get(self, "import_targets") @property @pulumi.getter(name="localPref") def local_pref(self) -> pulumi.Output[Optional[int]]: - """ - The default BGP LOCAL\\_PREF of routes that will be - advertised to the BGP VPN, unless overridden per-route. - """ return pulumi.get(self, "local_pref") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the BGP VPN. Changing this updates the name of - the existing BGP VPN. - """ return pulumi.get(self, "name") @property @pulumi.getter def networks(self) -> pulumi.Output[Sequence[str]]: - """ - A list of network IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "networks") @property @pulumi.getter def ports(self) -> pulumi.Output[Sequence[str]]: - """ - A list of port IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "ports") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project that owns the BGPVPN. Only - administrative and users with `advsvc` role can specify a project ID other - than their own. Changing this creates a new BGP VPN. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a BGP VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - BGP VPN. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="routeDistinguishers") def route_distinguishers(self) -> pulumi.Output[Sequence[str]]: - """ - A list of route distinguisher strings. If - specified, one of these RDs will be used to advertise VPN routes. - """ return pulumi.get(self, "route_distinguishers") @property @pulumi.getter(name="routeTargets") def route_targets(self) -> pulumi.Output[Sequence[str]]: - """ - A list of Route Targets that will be both - imported and used for export. - """ return pulumi.get(self, "route_targets") @property @pulumi.getter def routers(self) -> pulumi.Output[Sequence[str]]: - """ - A list of router IDs that are associated with the BGP VPN. - """ return pulumi.get(self, "routers") @property @pulumi.getter def shared(self) -> pulumi.Output[bool]: - """ - Indicates whether the BGP VPN is shared across projects. - """ return pulumi.get(self, "shared") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of the BGP VPN (either `l2` or `l3`). Changing this - creates a new BGP VPN. Defaults to `l3`. - """ return pulumi.get(self, "type") @property @pulumi.getter def vni(self) -> pulumi.Output[Optional[int]]: - """ - The globally-assigned VXLAN VNI for the BGP VPN. Changing - this creates a new BGP VPN. - """ return pulumi.get(self, "vni") diff --git a/sdk/python/pulumi_openstack/blockstorage/_inputs.py b/sdk/python/pulumi_openstack/blockstorage/_inputs.py index e16f869ec..ff767918b 100644 --- a/sdk/python/pulumi_openstack/blockstorage/_inputs.py +++ b/sdk/python/pulumi_openstack/blockstorage/_inputs.py @@ -63,26 +63,6 @@ def __init__(__self__, *, local_to_instance: Optional[pulumi.Input[str]] = None, query: Optional[pulumi.Input[str]] = None, same_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): - """ - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_properties: Arbitrary key/value pairs of additional - properties to pass to the scheduler. - :param pulumi.Input[Sequence[pulumi.Input[str]]] different_hosts: The volume should be scheduled on a - different host from the set of volumes specified in the list provided. - :param pulumi.Input[str] local_to_instance: An instance UUID. The volume should be - scheduled on the same host as the instance. - :param pulumi.Input[str] query: A conditional query that a back-end must pass in - order to host a volume. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/cinder/latest/configuration/block-storage/scheduler-filters.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [“=”, “$backend_id”, “rbd:vol@ceph#cloud”] - ``` - :param pulumi.Input[Sequence[pulumi.Input[str]]] same_hosts: A list of volume UUIDs. The volume should be - scheduled on the same host as another volume specified in the list provided. - """ if additional_properties is not None: pulumi.set(__self__, "additional_properties", additional_properties) if different_hosts is not None: @@ -97,10 +77,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="additionalProperties") def additional_properties(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Arbitrary key/value pairs of additional - properties to pass to the scheduler. - """ return pulumi.get(self, "additional_properties") @additional_properties.setter @@ -110,10 +86,6 @@ def additional_properties(self, value: Optional[pulumi.Input[Mapping[str, pulumi @property @pulumi.getter(name="differentHosts") def different_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The volume should be scheduled on a - different host from the set of volumes specified in the list provided. - """ return pulumi.get(self, "different_hosts") @different_hosts.setter @@ -123,10 +95,6 @@ def different_hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="localToInstance") def local_to_instance(self) -> Optional[pulumi.Input[str]]: - """ - An instance UUID. The volume should be - scheduled on the same host as the instance. - """ return pulumi.get(self, "local_to_instance") @local_to_instance.setter @@ -136,18 +104,6 @@ def local_to_instance(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def query(self) -> Optional[pulumi.Input[str]]: - """ - A conditional query that a back-end must pass in - order to host a volume. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/cinder/latest/configuration/block-storage/scheduler-filters.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [“=”, “$backend_id”, “rbd:vol@ceph#cloud”] - ``` - """ return pulumi.get(self, "query") @query.setter @@ -157,10 +113,6 @@ def query(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sameHosts") def same_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of volume UUIDs. The volume should be - scheduled on the same host as another volume specified in the list provided. - """ return pulumi.get(self, "same_hosts") @same_hosts.setter diff --git a/sdk/python/pulumi_openstack/blockstorage/get_availability_zones_v3.py b/sdk/python/pulumi_openstack/blockstorage/get_availability_zones_v3.py index bdb0b5861..aecf672fb 100644 --- a/sdk/python/pulumi_openstack/blockstorage/get_availability_zones_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/get_availability_zones_v3.py @@ -46,26 +46,16 @@ def id(self) -> str: @property @pulumi.getter def names(self) -> Sequence[str]: - """ - The names of the availability zones, ordered alphanumerically, that - match the queried `state`. - """ return pulumi.get(self, "names") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def state(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "state") @@ -85,22 +75,7 @@ def get_availability_zones_v3(region: Optional[str] = None, state: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAvailabilityZonesV3Result: """ - Use this data source to get a list of Block Storage availability zones from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.blockstorage.get_availability_zones_v3() - ``` - - - :param str region: The region in which to obtain the Block Storage client. - If omitted, the `region` argument of the provider is used. - :param str state: The `state` of the availability zones to match. Can - either be `available` or `unavailable`. Default is `available`. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['region'] = region @@ -120,21 +95,6 @@ def get_availability_zones_v3_output(region: Optional[pulumi.Input[Optional[str] state: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAvailabilityZonesV3Result]: """ - Use this data source to get a list of Block Storage availability zones from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.blockstorage.get_availability_zones_v3() - ``` - - - :param str region: The region in which to obtain the Block Storage client. - If omitted, the `region` argument of the provider is used. - :param str state: The `state` of the availability zones to match. Can - either be `available` or `unavailable`. Default is `available`. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/blockstorage/get_quotaset_v3.py b/sdk/python/pulumi_openstack/blockstorage/get_quotaset_v3.py index c08857387..d2be580c1 100644 --- a/sdk/python/pulumi_openstack/blockstorage/get_quotaset_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/get_quotaset_v3.py @@ -59,33 +59,21 @@ def __init__(__self__, backup_gigabytes=None, backups=None, gigabytes=None, grou @property @pulumi.getter(name="backupGigabytes") def backup_gigabytes(self) -> int: - """ - The size (GB) of backups that are allowed. - """ return pulumi.get(self, "backup_gigabytes") @property @pulumi.getter def backups(self) -> int: - """ - The number of backups that are allowed. - """ return pulumi.get(self, "backups") @property @pulumi.getter def gigabytes(self) -> int: - """ - The size (GB) of volumes and snapshots that are allowed. - """ return pulumi.get(self, "gigabytes") @property @pulumi.getter def groups(self) -> int: - """ - The number of groups that are allowed. - """ return pulumi.get(self, "groups") @property @@ -99,49 +87,31 @@ def id(self) -> str: @property @pulumi.getter(name="perVolumeGigabytes") def per_volume_gigabytes(self) -> int: - """ - The size (GB) of volumes that are allowed for each volume. - """ return pulumi.get(self, "per_volume_gigabytes") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def snapshots(self) -> int: - """ - The number of snapshots that are allowed. - """ return pulumi.get(self, "snapshots") @property @pulumi.getter(name="volumeTypeQuota") def volume_type_quota(self) -> Mapping[str, str]: - """ - Map with gigabytes_{volume_type}, snapshots_{volume_type}, volumes_{volume_type} for each volume type. - """ return pulumi.get(self, "volume_type_quota") @property @pulumi.getter def volumes(self) -> int: - """ - The number of volumes that are allowed. - """ return pulumi.get(self, "volumes") @@ -168,21 +138,7 @@ def get_quotaset_v3(project_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQuotasetV3Result: """ - Use this data source to get the blockstorage quotaset v3 of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.blockstorage.get_quotaset_v3(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quotaset. - :param str region: The region in which to obtain the V3 Blockstorage client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['projectId'] = project_id @@ -209,20 +165,6 @@ def get_quotaset_v3_output(project_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQuotasetV3Result]: """ - Use this data source to get the blockstorage quotaset v3 of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.blockstorage.get_quotaset_v3(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quotaset. - :param str region: The region in which to obtain the V3 Blockstorage client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/blockstorage/get_snapshot_v3.py b/sdk/python/pulumi_openstack/blockstorage/get_snapshot_v3.py index 46b498452..1176345e5 100644 --- a/sdk/python/pulumi_openstack/blockstorage/get_snapshot_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/get_snapshot_v3.py @@ -53,9 +53,6 @@ def __init__(__self__, description=None, id=None, metadata=None, most_recent=Non @property @pulumi.getter def description(self) -> str: - """ - The snapshot's description. - """ return pulumi.get(self, "description") @property @@ -69,9 +66,6 @@ def id(self) -> str: @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - The snapshot's metadata. - """ return pulumi.get(self, "metadata") @property @@ -82,41 +76,26 @@ def most_recent(self) -> Optional[bool]: @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def size(self) -> int: - """ - The size of the snapshot. - """ return pulumi.get(self, "size") @property @pulumi.getter def status(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="volumeId") def volume_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "volume_id") @@ -144,26 +123,7 @@ def get_snapshot_v3(most_recent: Optional[bool] = None, volume_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSnapshotV3Result: """ - Use this data source to get information about an existing snapshot. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - snapshot1 = openstack.blockstorage.get_snapshot_v3(name="snapshot_1", - most_recent=True) - ``` - - - :param bool most_recent: Pick the most recently created snapshot if there - are multiple results. - :param str name: The name of the snapshot. - :param str region: The region in which to obtain the V3 Block Storage - client. If omitted, the `region` argument of the provider is used. - :param str status: The status of the snapshot. - :param str volume_id: The ID of the snapshot's volume. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['mostRecent'] = most_recent @@ -194,25 +154,6 @@ def get_snapshot_v3_output(most_recent: Optional[pulumi.Input[Optional[bool]]] = volume_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSnapshotV3Result]: """ - Use this data source to get information about an existing snapshot. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - snapshot1 = openstack.blockstorage.get_snapshot_v3(name="snapshot_1", - most_recent=True) - ``` - - - :param bool most_recent: Pick the most recently created snapshot if there - are multiple results. - :param str name: The name of the snapshot. - :param str region: The region in which to obtain the V3 Block Storage - client. If omitted, the `region` argument of the provider is used. - :param str status: The status of the snapshot. - :param str volume_id: The ID of the snapshot's volume. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/blockstorage/get_volume_v3.py b/sdk/python/pulumi_openstack/blockstorage/get_volume_v3.py index e1deb8212..2aeceb4de 100644 --- a/sdk/python/pulumi_openstack/blockstorage/get_volume_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/get_volume_v3.py @@ -60,27 +60,16 @@ def __init__(__self__, attachments=None, bootable=None, host=None, id=None, meta @property @pulumi.getter def attachments(self) -> Sequence['outputs.GetVolumeV3AttachmentResult']: - """ - If a volume is attached to an instance, this attribute will - display the Attachment ID, Instance ID, and the Device as the Instance - sees it. - """ return pulumi.get(self, "attachments") @property @pulumi.getter def bootable(self) -> str: - """ - Indicates if the volume is bootable. - """ return pulumi.get(self, "bootable") @property @pulumi.getter def host(self) -> str: - """ - The OpenStack host on which the volume is located. - """ return pulumi.get(self, "host") @property @@ -94,57 +83,36 @@ def id(self) -> str: @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def size(self) -> int: - """ - The size of the volume in GBs. - """ return pulumi.get(self, "size") @property @pulumi.getter(name="sourceVolumeId") def source_volume_id(self) -> str: - """ - The ID of the volume from which the current volume was created. - """ return pulumi.get(self, "source_volume_id") @property @pulumi.getter def status(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="volumeType") def volume_type(self) -> str: - """ - The type of the volume. - """ return pulumi.get(self, "volume_type") @@ -176,26 +144,7 @@ def get_volume_v3(bootable: Optional[str] = None, volume_type: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVolumeV3Result: """ - Use this data source to get information about an existing volume. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.get_volume_v3(name="volume_1") - ``` - - - :param str bootable: Indicates if the volume is bootable. - :param str host: The OpenStack host on which the volume is located. - :param Mapping[str, str] metadata: Metadata key/value pairs associated with the volume. - :param str name: The name of the volume. - :param str region: The region in which to obtain the V3 Block Storage - client. If omitted, the `region` argument of the provider is used. - :param str status: The status of the volume. - :param str volume_type: The type of the volume. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['bootable'] = bootable @@ -232,25 +181,6 @@ def get_volume_v3_output(bootable: Optional[pulumi.Input[Optional[str]]] = None, volume_type: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVolumeV3Result]: """ - Use this data source to get information about an existing volume. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.get_volume_v3(name="volume_1") - ``` - - - :param str bootable: Indicates if the volume is bootable. - :param str host: The OpenStack host on which the volume is located. - :param Mapping[str, str] metadata: Metadata key/value pairs associated with the volume. - :param str name: The name of the volume. - :param str region: The region in which to obtain the V3 Block Storage - client. If omitted, the `region` argument of the provider is used. - :param str status: The status of the volume. - :param str volume_type: The type of the volume. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/blockstorage/outputs.py b/sdk/python/pulumi_openstack/blockstorage/outputs.py index 1beb63b25..111a8cad4 100644 --- a/sdk/python/pulumi_openstack/blockstorage/outputs.py +++ b/sdk/python/pulumi_openstack/blockstorage/outputs.py @@ -92,26 +92,6 @@ def __init__(__self__, *, local_to_instance: Optional[str] = None, query: Optional[str] = None, same_hosts: Optional[Sequence[str]] = None): - """ - :param Mapping[str, str] additional_properties: Arbitrary key/value pairs of additional - properties to pass to the scheduler. - :param Sequence[str] different_hosts: The volume should be scheduled on a - different host from the set of volumes specified in the list provided. - :param str local_to_instance: An instance UUID. The volume should be - scheduled on the same host as the instance. - :param str query: A conditional query that a back-end must pass in - order to host a volume. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/cinder/latest/configuration/block-storage/scheduler-filters.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [“=”, “$backend_id”, “rbd:vol@ceph#cloud”] - ``` - :param Sequence[str] same_hosts: A list of volume UUIDs. The volume should be - scheduled on the same host as another volume specified in the list provided. - """ if additional_properties is not None: pulumi.set(__self__, "additional_properties", additional_properties) if different_hosts is not None: @@ -126,54 +106,26 @@ def __init__(__self__, *, @property @pulumi.getter(name="additionalProperties") def additional_properties(self) -> Optional[Mapping[str, str]]: - """ - Arbitrary key/value pairs of additional - properties to pass to the scheduler. - """ return pulumi.get(self, "additional_properties") @property @pulumi.getter(name="differentHosts") def different_hosts(self) -> Optional[Sequence[str]]: - """ - The volume should be scheduled on a - different host from the set of volumes specified in the list provided. - """ return pulumi.get(self, "different_hosts") @property @pulumi.getter(name="localToInstance") def local_to_instance(self) -> Optional[str]: - """ - An instance UUID. The volume should be - scheduled on the same host as the instance. - """ return pulumi.get(self, "local_to_instance") @property @pulumi.getter def query(self) -> Optional[str]: - """ - A conditional query that a back-end must pass in - order to host a volume. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/cinder/latest/configuration/block-storage/scheduler-filters.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [“=”, “$backend_id”, “rbd:vol@ceph#cloud”] - ``` - """ return pulumi.get(self, "query") @property @pulumi.getter(name="sameHosts") def same_hosts(self) -> Optional[Sequence[str]]: - """ - A list of volume UUIDs. The volume should be - scheduled on the same host as another volume specified in the list provided. - """ return pulumi.get(self, "same_hosts") diff --git a/sdk/python/pulumi_openstack/blockstorage/qos_association_v3.py b/sdk/python/pulumi_openstack/blockstorage/qos_association_v3.py index 2ae2aac51..b593cba44 100644 --- a/sdk/python/pulumi_openstack/blockstorage/qos_association_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/qos_association_v3.py @@ -19,13 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a QosAssociationV3 resource. - :param pulumi.Input[str] qos_id: ID of the qos to associate. Changing this creates - a new qos association. - :param pulumi.Input[str] volume_type_id: ID of the volume_type to associate. - Changing this creates a new qos association. - :param pulumi.Input[str] region: The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. """ pulumi.set(__self__, "qos_id", qos_id) pulumi.set(__self__, "volume_type_id", volume_type_id) @@ -35,10 +28,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="qosId") def qos_id(self) -> pulumi.Input[str]: - """ - ID of the qos to associate. Changing this creates - a new qos association. - """ return pulumi.get(self, "qos_id") @qos_id.setter @@ -48,10 +37,6 @@ def qos_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> pulumi.Input[str]: - """ - ID of the volume_type to associate. - Changing this creates a new qos association. - """ return pulumi.get(self, "volume_type_id") @volume_type_id.setter @@ -61,11 +46,6 @@ def volume_type_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - """ return pulumi.get(self, "region") @region.setter @@ -81,13 +61,6 @@ def __init__(__self__, *, volume_type_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering QosAssociationV3 resources. - :param pulumi.Input[str] qos_id: ID of the qos to associate. Changing this creates - a new qos association. - :param pulumi.Input[str] region: The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - :param pulumi.Input[str] volume_type_id: ID of the volume_type to associate. - Changing this creates a new qos association. """ if qos_id is not None: pulumi.set(__self__, "qos_id", qos_id) @@ -99,10 +72,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="qosId") def qos_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the qos to associate. Changing this creates - a new qos association. - """ return pulumi.get(self, "qos_id") @qos_id.setter @@ -112,11 +81,6 @@ def qos_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - """ return pulumi.get(self, "region") @region.setter @@ -126,10 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the volume_type to associate. - Changing this creates a new qos association. - """ return pulumi.get(self, "volume_type_id") @volume_type_id.setter @@ -147,45 +107,9 @@ def __init__(__self__, volume_type_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 block storage Qos Association resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos = openstack.blockstorage.QosV3("qos", - name="%s", - consumer="front-end", - specs={ - "read_iops_sec": "20000", - }) - volume_type = openstack.blockstorage.VolumeTypeV3("volume_type", name="%s") - qos_association = openstack.blockstorage.QosAssociationV3("qos_association", - qos_id=qos.id, - volume_type_id=volume_type.id) - ``` - - ## Import - - Qos association can be imported using the `qos_id/volume_type_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/qosAssociationV3:QosAssociationV3 qos_association 941793f0-0a34-4bc4-b72e-a6326ae58283/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a QosAssociationV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] qos_id: ID of the qos to associate. Changing this creates - a new qos association. - :param pulumi.Input[str] region: The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - :param pulumi.Input[str] volume_type_id: ID of the volume_type to associate. - Changing this creates a new qos association. """ ... @overload @@ -194,36 +118,7 @@ def __init__(__self__, args: QosAssociationV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 block storage Qos Association resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos = openstack.blockstorage.QosV3("qos", - name="%s", - consumer="front-end", - specs={ - "read_iops_sec": "20000", - }) - volume_type = openstack.blockstorage.VolumeTypeV3("volume_type", name="%s") - qos_association = openstack.blockstorage.QosAssociationV3("qos_association", - qos_id=qos.id, - volume_type_id=volume_type.id) - ``` - - ## Import - - Qos association can be imported using the `qos_id/volume_type_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/qosAssociationV3:QosAssociationV3 qos_association 941793f0-0a34-4bc4-b72e-a6326ae58283/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a QosAssociationV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosAssociationV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -278,13 +173,6 @@ def get(resource_name: str, :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] qos_id: ID of the qos to associate. Changing this creates - a new qos association. - :param pulumi.Input[str] region: The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - :param pulumi.Input[str] volume_type_id: ID of the volume_type to associate. - Changing this creates a new qos association. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -298,28 +186,15 @@ def get(resource_name: str, @property @pulumi.getter(name="qosId") def qos_id(self) -> pulumi.Output[str]: - """ - ID of the qos to associate. Changing this creates - a new qos association. - """ return pulumi.get(self, "qos_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the qos association. - If omitted, the `region` argument of the provider is used. Changing - this creates a new qos association. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> pulumi.Output[str]: - """ - ID of the volume_type to associate. - Changing this creates a new qos association. - """ return pulumi.get(self, "volume_type_id") diff --git a/sdk/python/pulumi_openstack/blockstorage/qos_v3.py b/sdk/python/pulumi_openstack/blockstorage/qos_v3.py index 544ed9a3d..5d243e7b1 100644 --- a/sdk/python/pulumi_openstack/blockstorage/qos_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/qos_v3.py @@ -20,14 +20,6 @@ def __init__(__self__, *, specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a QosV3 resource. - :param pulumi.Input[str] consumer: The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - :param pulumi.Input[str] name: Name of the qos. Changing this creates a new qos. - :param pulumi.Input[str] region: The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] specs: Key/Value pairs of specs for the qos. """ if consumer is not None: pulumi.set(__self__, "consumer", consumer) @@ -41,11 +33,6 @@ def __init__(__self__, *, @property @pulumi.getter def consumer(self) -> Optional[pulumi.Input[str]]: - """ - The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - """ return pulumi.get(self, "consumer") @consumer.setter @@ -55,9 +42,6 @@ def consumer(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the qos. Changing this creates a new qos. - """ return pulumi.get(self, "name") @name.setter @@ -67,11 +51,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - """ return pulumi.get(self, "region") @region.setter @@ -81,9 +60,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of specs for the qos. - """ return pulumi.get(self, "specs") @specs.setter @@ -100,14 +76,6 @@ def __init__(__self__, *, specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering QosV3 resources. - :param pulumi.Input[str] consumer: The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - :param pulumi.Input[str] name: Name of the qos. Changing this creates a new qos. - :param pulumi.Input[str] region: The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] specs: Key/Value pairs of specs for the qos. """ if consumer is not None: pulumi.set(__self__, "consumer", consumer) @@ -121,11 +89,6 @@ def __init__(__self__, *, @property @pulumi.getter def consumer(self) -> Optional[pulumi.Input[str]]: - """ - The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - """ return pulumi.get(self, "consumer") @consumer.setter @@ -135,9 +98,6 @@ def consumer(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the qos. Changing this creates a new qos. - """ return pulumi.get(self, "name") @name.setter @@ -147,11 +107,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - """ return pulumi.get(self, "region") @region.setter @@ -161,9 +116,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of specs for the qos. - """ return pulumi.get(self, "specs") @specs.setter @@ -182,43 +134,9 @@ def __init__(__self__, specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V3 block storage Quality-Of-Servirce (qos) resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos = openstack.blockstorage.QosV3("qos", - name="foo", - consumer="back-end", - specs={ - "read_iops_sec": "40000", - "write_iops_sec": "40000", - }) - ``` - - ## Import - - Qos can be imported using the `qos_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/qosV3:QosV3 qos 941793f0-0a34-4bc4-b72e-a6326ae58283 - ``` - + Create a QosV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] consumer: The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - :param pulumi.Input[str] name: Name of the qos. Changing this creates a new qos. - :param pulumi.Input[str] region: The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] specs: Key/Value pairs of specs for the qos. """ ... @overload @@ -227,33 +145,7 @@ def __init__(__self__, args: Optional[QosV3Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 block storage Quality-Of-Servirce (qos) resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos = openstack.blockstorage.QosV3("qos", - name="foo", - consumer="back-end", - specs={ - "read_iops_sec": "40000", - "write_iops_sec": "40000", - }) - ``` - - ## Import - - Qos can be imported using the `qos_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/qosV3:QosV3 qos 941793f0-0a34-4bc4-b72e-a6326ae58283 - ``` - + Create a QosV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -307,14 +199,6 @@ def get(resource_name: str, :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] consumer: The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - :param pulumi.Input[str] name: Name of the qos. Changing this creates a new qos. - :param pulumi.Input[str] region: The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] specs: Key/Value pairs of specs for the qos. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -329,36 +213,20 @@ def get(resource_name: str, @property @pulumi.getter def consumer(self) -> pulumi.Output[Optional[str]]: - """ - The consumer of qos. Can be one of `front-end`, - `back-end` or `both`. Changing this updates the `consumer` of an - existing qos. - """ return pulumi.get(self, "consumer") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Name of the qos. Changing this creates a new qos. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the qos. If omitted, - the `region` argument of the provider is used. Changing this creates - a new qos. - """ return pulumi.get(self, "region") @property @pulumi.getter def specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Key/Value pairs of specs for the qos. - """ return pulumi.get(self, "specs") diff --git a/sdk/python/pulumi_openstack/blockstorage/quote_set_v3.py b/sdk/python/pulumi_openstack/blockstorage/quote_set_v3.py index fe26f9961..b806b019a 100644 --- a/sdk/python/pulumi_openstack/blockstorage/quote_set_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/quote_set_v3.py @@ -26,28 +26,6 @@ def __init__(__self__, *, volumes: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a QuoteSetV3 resource. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quotaset. - :param pulumi.Input[int] backup_gigabytes: Quota value for backup gigabytes. Changing - this updates the existing quotaset. - :param pulumi.Input[int] backups: Quota value for backups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] gigabytes: Quota value for gigabytes. Changing this updates the - existing quotaset. - :param pulumi.Input[int] groups: Quota value for groups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] per_volume_gigabytes: Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] snapshots: Quota value for snapshots. Changing this updates the - existing quotaset. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] volume_type_quota: Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - :param pulumi.Input[int] volumes: Quota value for volumes. Changing this updates the - existing quotaset. """ pulumi.set(__self__, "project_id", project_id) if backup_gigabytes is not None: @@ -72,10 +50,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: - """ - ID of the project to manage quotas. Changing this - creates a new quotaset. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -85,10 +59,6 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="backupGigabytes") def backup_gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for backup gigabytes. Changing - this updates the existing quotaset. - """ return pulumi.get(self, "backup_gigabytes") @backup_gigabytes.setter @@ -98,10 +68,6 @@ def backup_gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def backups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for backups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "backups") @backups.setter @@ -111,10 +77,6 @@ def backups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for gigabytes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "gigabytes") @gigabytes.setter @@ -124,10 +86,6 @@ def gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for groups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "groups") @groups.setter @@ -137,10 +95,6 @@ def groups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="perVolumeGigabytes") def per_volume_gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - """ return pulumi.get(self, "per_volume_gigabytes") @per_volume_gigabytes.setter @@ -150,11 +104,6 @@ def per_volume_gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -164,10 +113,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def snapshots(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for snapshots. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "snapshots") @snapshots.setter @@ -177,11 +122,6 @@ def snapshots(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="volumeTypeQuota") def volume_type_quota(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - """ return pulumi.get(self, "volume_type_quota") @volume_type_quota.setter @@ -191,10 +131,6 @@ def volume_type_quota(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inp @property @pulumi.getter def volumes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for volumes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "volumes") @volumes.setter @@ -217,28 +153,6 @@ def __init__(__self__, *, volumes: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering QuoteSetV3 resources. - :param pulumi.Input[int] backup_gigabytes: Quota value for backup gigabytes. Changing - this updates the existing quotaset. - :param pulumi.Input[int] backups: Quota value for backups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] gigabytes: Quota value for gigabytes. Changing this updates the - existing quotaset. - :param pulumi.Input[int] groups: Quota value for groups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] per_volume_gigabytes: Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] snapshots: Quota value for snapshots. Changing this updates the - existing quotaset. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] volume_type_quota: Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - :param pulumi.Input[int] volumes: Quota value for volumes. Changing this updates the - existing quotaset. """ if backup_gigabytes is not None: pulumi.set(__self__, "backup_gigabytes", backup_gigabytes) @@ -264,10 +178,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="backupGigabytes") def backup_gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for backup gigabytes. Changing - this updates the existing quotaset. - """ return pulumi.get(self, "backup_gigabytes") @backup_gigabytes.setter @@ -277,10 +187,6 @@ def backup_gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def backups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for backups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "backups") @backups.setter @@ -290,10 +196,6 @@ def backups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for gigabytes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "gigabytes") @gigabytes.setter @@ -303,10 +205,6 @@ def gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for groups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "groups") @groups.setter @@ -316,10 +214,6 @@ def groups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="perVolumeGigabytes") def per_volume_gigabytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - """ return pulumi.get(self, "per_volume_gigabytes") @per_volume_gigabytes.setter @@ -329,10 +223,6 @@ def per_volume_gigabytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the project to manage quotas. Changing this - creates a new quotaset. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -342,11 +232,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -356,10 +241,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def snapshots(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for snapshots. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "snapshots") @snapshots.setter @@ -369,11 +250,6 @@ def snapshots(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="volumeTypeQuota") def volume_type_quota(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - """ return pulumi.get(self, "volume_type_quota") @volume_type_quota.setter @@ -383,10 +259,6 @@ def volume_type_quota(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inp @property @pulumi.getter def volumes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for volumes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "volumes") @volumes.setter @@ -411,48 +283,9 @@ def __init__(__self__, volumes: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V3 block storage quotaset resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. This excludes volume type quota. - - ## Import - - Quotasets can be imported using the `project_id/region`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/quoteSetV3:QuoteSetV3 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuoteSetV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] backup_gigabytes: Quota value for backup gigabytes. Changing - this updates the existing quotaset. - :param pulumi.Input[int] backups: Quota value for backups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] gigabytes: Quota value for gigabytes. Changing this updates the - existing quotaset. - :param pulumi.Input[int] groups: Quota value for groups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] per_volume_gigabytes: Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] snapshots: Quota value for snapshots. Changing this updates the - existing quotaset. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] volume_type_quota: Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - :param pulumi.Input[int] volumes: Quota value for volumes. Changing this updates the - existing quotaset. """ ... @overload @@ -461,24 +294,7 @@ def __init__(__self__, args: QuoteSetV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 block storage quotaset resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. This excludes volume type quota. - - ## Import - - Quotasets can be imported using the `project_id/region`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/quoteSetV3:QuoteSetV3 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuoteSetV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QuoteSetV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -552,28 +368,6 @@ def get(resource_name: str, :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[int] backup_gigabytes: Quota value for backup gigabytes. Changing - this updates the existing quotaset. - :param pulumi.Input[int] backups: Quota value for backups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] gigabytes: Quota value for gigabytes. Changing this updates the - existing quotaset. - :param pulumi.Input[int] groups: Quota value for groups. Changing this updates the - existing quotaset. - :param pulumi.Input[int] per_volume_gigabytes: Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] snapshots: Quota value for snapshots. Changing this updates the - existing quotaset. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] volume_type_quota: Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - :param pulumi.Input[int] volumes: Quota value for volumes. Changing this updates the - existing quotaset. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -594,92 +388,50 @@ def get(resource_name: str, @property @pulumi.getter(name="backupGigabytes") def backup_gigabytes(self) -> pulumi.Output[int]: - """ - Quota value for backup gigabytes. Changing - this updates the existing quotaset. - """ return pulumi.get(self, "backup_gigabytes") @property @pulumi.getter def backups(self) -> pulumi.Output[int]: - """ - Quota value for backups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "backups") @property @pulumi.getter def gigabytes(self) -> pulumi.Output[int]: - """ - Quota value for gigabytes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "gigabytes") @property @pulumi.getter def groups(self) -> pulumi.Output[int]: - """ - Quota value for groups. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "groups") @property @pulumi.getter(name="perVolumeGigabytes") def per_volume_gigabytes(self) -> pulumi.Output[int]: - """ - Quota value for gigabytes per volume . - Changing this updates the existing quotaset. - """ return pulumi.get(self, "per_volume_gigabytes") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - ID of the project to manage quotas. Changing this - creates a new quotaset. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @property @pulumi.getter def snapshots(self) -> pulumi.Output[int]: - """ - Quota value for snapshots. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "snapshots") @property @pulumi.getter(name="volumeTypeQuota") def volume_type_quota(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Key/Value pairs for setting quota for - volumes types. Possible keys are `snapshots_`, - `volumes_` and `gigabytes_`. - """ return pulumi.get(self, "volume_type_quota") @property @pulumi.getter def volumes(self) -> pulumi.Output[int]: - """ - Quota value for volumes. Changing this updates the - existing quotaset. - """ return pulumi.get(self, "volumes") diff --git a/sdk/python/pulumi_openstack/blockstorage/volume.py b/sdk/python/pulumi_openstack/blockstorage/volume.py index 1f46a1f3d..2e0e99617 100644 --- a/sdk/python/pulumi_openstack/blockstorage/volume.py +++ b/sdk/python/pulumi_openstack/blockstorage/volume.py @@ -33,40 +33,6 @@ def __init__(__self__, *, volume_type: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Volume resource. - :param pulumi.Input[int] size: The size of the volume to create (in gigabytes). - :param pulumi.Input[str] availability_zone: The availability zone for the volume. - Changing this creates a new volume. - :param pulumi.Input[str] backup_id: The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - :param pulumi.Input[str] consistency_group_id: The consistency group to place the volume - in. - :param pulumi.Input[str] description: A description of the volume. Changing this updates - the volume's description. - :param pulumi.Input[bool] enable_online_resize: When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - :param pulumi.Input[str] image_id: The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - :param pulumi.Input[str] name: A unique name for the volume. Changing this updates the - volume's name. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - :param pulumi.Input[Sequence[pulumi.Input['VolumeSchedulerHintArgs']]] scheduler_hints: Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - :param pulumi.Input[str] snapshot_id: The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] source_replica: The volume ID to replicate with. - :param pulumi.Input[str] source_vol_id: The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] volume_type: The type of volume to create. - Changing this creates a new volume. """ pulumi.set(__self__, "size", size) if availability_zone is not None: @@ -101,9 +67,6 @@ def __init__(__self__, *, @property @pulumi.getter def size(self) -> pulumi.Input[int]: - """ - The size of the volume to create (in gigabytes). - """ return pulumi.get(self, "size") @size.setter @@ -113,10 +76,6 @@ def size(self, value: pulumi.Input[int]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone for the volume. - Changing this creates a new volume. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -126,11 +85,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="backupId") def backup_id(self) -> Optional[pulumi.Input[str]]: - """ - The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - """ return pulumi.get(self, "backup_id") @backup_id.setter @@ -140,10 +94,6 @@ def backup_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="consistencyGroupId") def consistency_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The consistency group to place the volume - in. - """ return pulumi.get(self, "consistency_group_id") @consistency_group_id.setter @@ -153,10 +103,6 @@ def consistency_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the volume. Changing this updates - the volume's description. - """ return pulumi.get(self, "description") @description.setter @@ -166,11 +112,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="enableOnlineResize") def enable_online_resize(self) -> Optional[pulumi.Input[bool]]: - """ - When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - """ return pulumi.get(self, "enable_online_resize") @enable_online_resize.setter @@ -180,11 +121,6 @@ def enable_online_resize(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -194,10 +130,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -207,10 +139,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the volume. Changing this updates the - volume's name. - """ return pulumi.get(self, "name") @name.setter @@ -220,11 +148,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - """ return pulumi.get(self, "region") @region.setter @@ -234,10 +157,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VolumeSchedulerHintArgs']]]]: - """ - Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @scheduler_hints.setter @@ -247,11 +166,6 @@ def scheduler_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Vo @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: - """ - The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -261,9 +175,6 @@ def snapshot_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourceReplica") def source_replica(self) -> Optional[pulumi.Input[str]]: - """ - The volume ID to replicate with. - """ return pulumi.get(self, "source_replica") @source_replica.setter @@ -273,11 +184,6 @@ def source_replica(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourceVolId") def source_vol_id(self) -> Optional[pulumi.Input[str]]: - """ - The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "source_vol_id") @source_vol_id.setter @@ -287,10 +193,6 @@ def source_vol_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeType") def volume_type(self) -> Optional[pulumi.Input[str]]: - """ - The type of volume to create. - Changing this creates a new volume. - """ return pulumi.get(self, "volume_type") @volume_type.setter @@ -319,43 +221,6 @@ def __init__(__self__, *, volume_type: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Volume resources. - :param pulumi.Input[Sequence[pulumi.Input['VolumeAttachmentArgs']]] attachments: If a volume is attached to an instance, this attribute will - display the Attachment ID, Instance ID, and the Device as the Instance - sees it. - :param pulumi.Input[str] availability_zone: The availability zone for the volume. - Changing this creates a new volume. - :param pulumi.Input[str] backup_id: The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - :param pulumi.Input[str] consistency_group_id: The consistency group to place the volume - in. - :param pulumi.Input[str] description: A description of the volume. Changing this updates - the volume's description. - :param pulumi.Input[bool] enable_online_resize: When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - :param pulumi.Input[str] image_id: The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - :param pulumi.Input[str] name: A unique name for the volume. Changing this updates the - volume's name. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - :param pulumi.Input[Sequence[pulumi.Input['VolumeSchedulerHintArgs']]] scheduler_hints: Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - :param pulumi.Input[int] size: The size of the volume to create (in gigabytes). - :param pulumi.Input[str] snapshot_id: The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] source_replica: The volume ID to replicate with. - :param pulumi.Input[str] source_vol_id: The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] volume_type: The type of volume to create. - Changing this creates a new volume. """ if attachments is not None: pulumi.set(__self__, "attachments", attachments) @@ -393,11 +258,6 @@ def __init__(__self__, *, @property @pulumi.getter def attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VolumeAttachmentArgs']]]]: - """ - If a volume is attached to an instance, this attribute will - display the Attachment ID, Instance ID, and the Device as the Instance - sees it. - """ return pulumi.get(self, "attachments") @attachments.setter @@ -407,10 +267,6 @@ def attachments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Volume @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone for the volume. - Changing this creates a new volume. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -420,11 +276,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="backupId") def backup_id(self) -> Optional[pulumi.Input[str]]: - """ - The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - """ return pulumi.get(self, "backup_id") @backup_id.setter @@ -434,10 +285,6 @@ def backup_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="consistencyGroupId") def consistency_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The consistency group to place the volume - in. - """ return pulumi.get(self, "consistency_group_id") @consistency_group_id.setter @@ -447,10 +294,6 @@ def consistency_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the volume. Changing this updates - the volume's description. - """ return pulumi.get(self, "description") @description.setter @@ -460,11 +303,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="enableOnlineResize") def enable_online_resize(self) -> Optional[pulumi.Input[bool]]: - """ - When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - """ return pulumi.get(self, "enable_online_resize") @enable_online_resize.setter @@ -474,11 +312,6 @@ def enable_online_resize(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -488,10 +321,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -501,10 +330,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the volume. Changing this updates the - volume's name. - """ return pulumi.get(self, "name") @name.setter @@ -514,11 +339,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - """ return pulumi.get(self, "region") @region.setter @@ -528,10 +348,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VolumeSchedulerHintArgs']]]]: - """ - Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @scheduler_hints.setter @@ -541,9 +357,6 @@ def scheduler_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Vo @property @pulumi.getter def size(self) -> Optional[pulumi.Input[int]]: - """ - The size of the volume to create (in gigabytes). - """ return pulumi.get(self, "size") @size.setter @@ -553,11 +366,6 @@ def size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: - """ - The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -567,9 +375,6 @@ def snapshot_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourceReplica") def source_replica(self) -> Optional[pulumi.Input[str]]: - """ - The volume ID to replicate with. - """ return pulumi.get(self, "source_replica") @source_replica.setter @@ -579,11 +384,6 @@ def source_replica(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourceVolId") def source_vol_id(self) -> Optional[pulumi.Input[str]]: - """ - The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "source_vol_id") @source_vol_id.setter @@ -593,10 +393,6 @@ def source_vol_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeType") def volume_type(self) -> Optional[pulumi.Input[str]]: - """ - The type of volume to create. - Changing this creates a new volume. - """ return pulumi.get(self, "volume_type") @volume_type.setter @@ -626,65 +422,9 @@ def __init__(__self__, volume_type: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 volume resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - region="RegionOne", - name="volume_1", - description="first test volume", - size=3) - ``` - - ## Import - - Volumes can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volume:Volume volume_1 ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a Volume resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] availability_zone: The availability zone for the volume. - Changing this creates a new volume. - :param pulumi.Input[str] backup_id: The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - :param pulumi.Input[str] consistency_group_id: The consistency group to place the volume - in. - :param pulumi.Input[str] description: A description of the volume. Changing this updates - the volume's description. - :param pulumi.Input[bool] enable_online_resize: When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - :param pulumi.Input[str] image_id: The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - :param pulumi.Input[str] name: A unique name for the volume. Changing this updates the - volume's name. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeSchedulerHintArgs', 'VolumeSchedulerHintArgsDict']]]] scheduler_hints: Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - :param pulumi.Input[int] size: The size of the volume to create (in gigabytes). - :param pulumi.Input[str] snapshot_id: The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] source_replica: The volume ID to replicate with. - :param pulumi.Input[str] source_vol_id: The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] volume_type: The type of volume to create. - Changing this creates a new volume. """ ... @overload @@ -693,29 +433,7 @@ def __init__(__self__, args: VolumeArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 volume resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - region="RegionOne", - name="volume_1", - description="first test volume", - size=3) - ``` - - ## Import - - Volumes can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volume:Volume volume_1 ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a Volume resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param VolumeArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -806,43 +524,6 @@ def get(resource_name: str, :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['VolumeAttachmentArgs', 'VolumeAttachmentArgsDict']]]] attachments: If a volume is attached to an instance, this attribute will - display the Attachment ID, Instance ID, and the Device as the Instance - sees it. - :param pulumi.Input[str] availability_zone: The availability zone for the volume. - Changing this creates a new volume. - :param pulumi.Input[str] backup_id: The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - :param pulumi.Input[str] consistency_group_id: The consistency group to place the volume - in. - :param pulumi.Input[str] description: A description of the volume. Changing this updates - the volume's description. - :param pulumi.Input[bool] enable_online_resize: When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - :param pulumi.Input[str] image_id: The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - :param pulumi.Input[str] name: A unique name for the volume. Changing this updates the - volume's name. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeSchedulerHintArgs', 'VolumeSchedulerHintArgsDict']]]] scheduler_hints: Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - :param pulumi.Input[int] size: The size of the volume to create (in gigabytes). - :param pulumi.Input[str] snapshot_id: The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] source_replica: The volume ID to replicate with. - :param pulumi.Input[str] source_vol_id: The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - :param pulumi.Input[str] volume_type: The type of volume to create. - Changing this creates a new volume. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -869,149 +550,80 @@ def get(resource_name: str, @property @pulumi.getter def attachments(self) -> pulumi.Output[Sequence['outputs.VolumeAttachment']]: - """ - If a volume is attached to an instance, this attribute will - display the Attachment ID, Instance ID, and the Device as the Instance - sees it. - """ return pulumi.get(self, "attachments") @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> pulumi.Output[str]: - """ - The availability zone for the volume. - Changing this creates a new volume. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter(name="backupId") def backup_id(self) -> pulumi.Output[Optional[str]]: - """ - The backup ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `image_id`. Changing this - creates a new volume. Requires microversion >= 3.47. - """ return pulumi.get(self, "backup_id") @property @pulumi.getter(name="consistencyGroupId") def consistency_group_id(self) -> pulumi.Output[Optional[str]]: - """ - The consistency group to place the volume - in. - """ return pulumi.get(self, "consistency_group_id") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the volume. Changing this updates - the volume's description. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="enableOnlineResize") def enable_online_resize(self) -> pulumi.Output[Optional[bool]]: - """ - When this option is set it allows extending - attached volumes. Note: updating size of an attached volume requires Cinder - support for version 3.42 and a compatible storage driver. - """ return pulumi.get(self, "enable_online_resize") @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[Optional[str]]: - """ - The image ID from which to create the volume. - Conflicts with `snapshot_id`, `source_vol_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "image_id") @property @pulumi.getter def metadata(self) -> pulumi.Output[Mapping[str, str]]: - """ - Metadata key/value pairs to associate with the volume. - Changing this updates the existing volume metadata. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the volume. Changing this updates the - volume's name. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new volume. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> pulumi.Output[Optional[Sequence['outputs.VolumeSchedulerHint']]]: - """ - Provide the Cinder scheduler with hints on where - to instantiate a volume in the OpenStack cloud. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @property @pulumi.getter def size(self) -> pulumi.Output[int]: - """ - The size of the volume to create (in gigabytes). - """ return pulumi.get(self, "size") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> pulumi.Output[Optional[str]]: - """ - The snapshot ID from which to create the volume. - Conflicts with `source_vol_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "snapshot_id") @property @pulumi.getter(name="sourceReplica") def source_replica(self) -> pulumi.Output[Optional[str]]: - """ - The volume ID to replicate with. - """ return pulumi.get(self, "source_replica") @property @pulumi.getter(name="sourceVolId") def source_vol_id(self) -> pulumi.Output[Optional[str]]: - """ - The volume ID from which to create the volume. - Conflicts with `snapshot_id`, `image_id`, `backup_id`. Changing this - creates a new volume. - """ return pulumi.get(self, "source_vol_id") @property @pulumi.getter(name="volumeType") def volume_type(self) -> pulumi.Output[str]: - """ - The type of volume to create. - Changing this creates a new volume. - """ return pulumi.get(self, "volume_type") diff --git a/sdk/python/pulumi_openstack/blockstorage/volume_attach.py b/sdk/python/pulumi_openstack/blockstorage/volume_attach.py index 2a04045e0..6dcfd1a8f 100644 --- a/sdk/python/pulumi_openstack/blockstorage/volume_attach.py +++ b/sdk/python/pulumi_openstack/blockstorage/volume_attach.py @@ -28,26 +28,6 @@ def __init__(__self__, *, wwpns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a VolumeAttach resource. - :param pulumi.Input[str] host_name: The host to attach the volume to. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. - :param pulumi.Input[str] attach_mode: Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - :param pulumi.Input[str] device: The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - :param pulumi.Input[str] initiator: The iSCSI initiator string to make the connection. - :param pulumi.Input[str] ip_address: The IP address of the `host_name` above. - :param pulumi.Input[bool] multipath: Whether to connect to this volume via multipath. - :param pulumi.Input[str] os_type: The iSCSI initiator OS type. - :param pulumi.Input[str] platform: The iSCSI initiator platform. - :param pulumi.Input[str] region: The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - :param pulumi.Input[str] wwnn: A wwnn name. Used for Fibre Channel connections. - :param pulumi.Input[Sequence[pulumi.Input[str]]] wwpns: An array of wwpn strings. Used for Fibre Channel - connections. """ pulumi.set(__self__, "host_name", host_name) pulumi.set(__self__, "volume_id", volume_id) @@ -75,9 +55,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="hostName") def host_name(self) -> pulumi.Input[str]: - """ - The host to attach the volume to. - """ return pulumi.get(self, "host_name") @host_name.setter @@ -87,9 +64,6 @@ def host_name(self, value: pulumi.Input[str]): @property @pulumi.getter(name="volumeId") def volume_id(self) -> pulumi.Input[str]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") @volume_id.setter @@ -99,11 +73,6 @@ def volume_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="attachMode") def attach_mode(self) -> Optional[pulumi.Input[str]]: - """ - Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - """ return pulumi.get(self, "attach_mode") @attach_mode.setter @@ -113,11 +82,6 @@ def attach_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def device(self) -> Optional[pulumi.Input[str]]: - """ - The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - """ return pulumi.get(self, "device") @device.setter @@ -127,9 +91,6 @@ def device(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def initiator(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator string to make the connection. - """ return pulumi.get(self, "initiator") @initiator.setter @@ -139,9 +100,6 @@ def initiator(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The IP address of the `host_name` above. - """ return pulumi.get(self, "ip_address") @ip_address.setter @@ -151,9 +109,6 @@ def ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def multipath(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to connect to this volume via multipath. - """ return pulumi.get(self, "multipath") @multipath.setter @@ -163,9 +118,6 @@ def multipath(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="osType") def os_type(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator OS type. - """ return pulumi.get(self, "os_type") @os_type.setter @@ -175,9 +127,6 @@ def os_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def platform(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator platform. - """ return pulumi.get(self, "platform") @platform.setter @@ -187,12 +136,6 @@ def platform(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - """ return pulumi.get(self, "region") @region.setter @@ -202,9 +145,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def wwnn(self) -> Optional[pulumi.Input[str]]: - """ - A wwnn name. Used for Fibre Channel connections. - """ return pulumi.get(self, "wwnn") @wwnn.setter @@ -214,10 +154,6 @@ def wwnn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def wwpns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of wwpn strings. Used for Fibre Channel - connections. - """ return pulumi.get(self, "wwpns") @wwpns.setter @@ -245,31 +181,6 @@ def __init__(__self__, *, wwpns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering VolumeAttach resources. - :param pulumi.Input[str] attach_mode: Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] data: This is a map of key/value pairs that contain the connection - information. You will want to pass this information to a provisioner - script to finalize the connection. See below for more information. - :param pulumi.Input[str] device: The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - :param pulumi.Input[str] driver_volume_type: The storage driver that the volume is based on. - :param pulumi.Input[str] host_name: The host to attach the volume to. - :param pulumi.Input[str] initiator: The iSCSI initiator string to make the connection. - :param pulumi.Input[str] ip_address: The IP address of the `host_name` above. - :param pulumi.Input[str] mount_point_base: A mount point base name for shared storage. - :param pulumi.Input[bool] multipath: Whether to connect to this volume via multipath. - :param pulumi.Input[str] os_type: The iSCSI initiator OS type. - :param pulumi.Input[str] platform: The iSCSI initiator platform. - :param pulumi.Input[str] region: The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. - :param pulumi.Input[str] wwnn: A wwnn name. Used for Fibre Channel connections. - :param pulumi.Input[Sequence[pulumi.Input[str]]] wwpns: An array of wwpn strings. Used for Fibre Channel - connections. """ if attach_mode is not None: pulumi.set(__self__, "attach_mode", attach_mode) @@ -305,11 +216,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="attachMode") def attach_mode(self) -> Optional[pulumi.Input[str]]: - """ - Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - """ return pulumi.get(self, "attach_mode") @attach_mode.setter @@ -319,11 +225,6 @@ def attach_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - This is a map of key/value pairs that contain the connection - information. You will want to pass this information to a provisioner - script to finalize the connection. See below for more information. - """ return pulumi.get(self, "data") @data.setter @@ -333,11 +234,6 @@ def data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): @property @pulumi.getter def device(self) -> Optional[pulumi.Input[str]]: - """ - The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - """ return pulumi.get(self, "device") @device.setter @@ -347,9 +243,6 @@ def device(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="driverVolumeType") def driver_volume_type(self) -> Optional[pulumi.Input[str]]: - """ - The storage driver that the volume is based on. - """ return pulumi.get(self, "driver_volume_type") @driver_volume_type.setter @@ -359,9 +252,6 @@ def driver_volume_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="hostName") def host_name(self) -> Optional[pulumi.Input[str]]: - """ - The host to attach the volume to. - """ return pulumi.get(self, "host_name") @host_name.setter @@ -371,9 +261,6 @@ def host_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def initiator(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator string to make the connection. - """ return pulumi.get(self, "initiator") @initiator.setter @@ -383,9 +270,6 @@ def initiator(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The IP address of the `host_name` above. - """ return pulumi.get(self, "ip_address") @ip_address.setter @@ -395,9 +279,6 @@ def ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="mountPointBase") def mount_point_base(self) -> Optional[pulumi.Input[str]]: - """ - A mount point base name for shared storage. - """ return pulumi.get(self, "mount_point_base") @mount_point_base.setter @@ -407,9 +288,6 @@ def mount_point_base(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def multipath(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to connect to this volume via multipath. - """ return pulumi.get(self, "multipath") @multipath.setter @@ -419,9 +297,6 @@ def multipath(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="osType") def os_type(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator OS type. - """ return pulumi.get(self, "os_type") @os_type.setter @@ -431,9 +306,6 @@ def os_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def platform(self) -> Optional[pulumi.Input[str]]: - """ - The iSCSI initiator platform. - """ return pulumi.get(self, "platform") @platform.setter @@ -443,12 +315,6 @@ def platform(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - """ return pulumi.get(self, "region") @region.setter @@ -458,9 +324,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeId") def volume_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") @volume_id.setter @@ -470,9 +333,6 @@ def volume_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def wwnn(self) -> Optional[pulumi.Input[str]]: - """ - A wwnn name. Used for Fibre Channel connections. - """ return pulumi.get(self, "wwnn") @wwnn.setter @@ -482,10 +342,6 @@ def wwnn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def wwpns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of wwpn strings. Used for Fibre Channel - connections. - """ return pulumi.get(self, "wwpns") @wwpns.setter @@ -512,85 +368,9 @@ def __init__(__self__, wwpns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - > **Note:** This resource usually requires admin privileges. - - > **Note:** This resource does not actually attach a volume to an instance. - Please use the `compute.VolumeAttach` resource for that. - - > **Note:** All arguments including the `data` computed attribute will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - Creates a general purpose attachment connection to a Block - Storage volume using the OpenStack Block Storage (Cinder) v3 API. - - Depending on your Block Storage service configuration, this - resource can assist in attaching a volume to a non-OpenStack resource - such as a bare-metal server or a remote virtual machine in a - different cloud provider. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1) - va1 = openstack.blockstorage.VolumeAttach("va_1", - volume_id=volume1.id, - device="auto", - host_name="devstack", - ip_address="192.168.255.10", - initiator="iqn.1993-08.org.debian:01:e9861fb1859", - os_type="linux2", - platform="x86_64") - ``` - - ## Volume Connection Data - - Upon creation of this resource, a `data` exported attribute will be available. - This attribute is a set of key/value pairs that contains the information - required to complete the block storage connection. - - As an example, creating an iSCSI-based volume will return the following: - - This information can then be fed into a provisioner or a template shell script, - where the final result would look something like: - - The contents of `data` will vary from each Block Storage service. You must have - a good understanding of how the service is configured and how to make the - appropriate final connection. However, if used correctly, this has the - flexibility to be able to attach OpenStack Block Storage volumes to - non-OpenStack resources. - - ## Import - - It is not possible to import this resource. - + Create a VolumeAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] attach_mode: Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - :param pulumi.Input[str] device: The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - :param pulumi.Input[str] host_name: The host to attach the volume to. - :param pulumi.Input[str] initiator: The iSCSI initiator string to make the connection. - :param pulumi.Input[str] ip_address: The IP address of the `host_name` above. - :param pulumi.Input[bool] multipath: Whether to connect to this volume via multipath. - :param pulumi.Input[str] os_type: The iSCSI initiator OS type. - :param pulumi.Input[str] platform: The iSCSI initiator platform. - :param pulumi.Input[str] region: The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. - :param pulumi.Input[str] wwnn: A wwnn name. Used for Fibre Channel connections. - :param pulumi.Input[Sequence[pulumi.Input[str]]] wwpns: An array of wwpn strings. Used for Fibre Channel - connections. """ ... @overload @@ -599,63 +379,7 @@ def __init__(__self__, args: VolumeAttachArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - > **Note:** This resource usually requires admin privileges. - - > **Note:** This resource does not actually attach a volume to an instance. - Please use the `compute.VolumeAttach` resource for that. - - > **Note:** All arguments including the `data` computed attribute will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - Creates a general purpose attachment connection to a Block - Storage volume using the OpenStack Block Storage (Cinder) v3 API. - - Depending on your Block Storage service configuration, this - resource can assist in attaching a volume to a non-OpenStack resource - such as a bare-metal server or a remote virtual machine in a - different cloud provider. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1) - va1 = openstack.blockstorage.VolumeAttach("va_1", - volume_id=volume1.id, - device="auto", - host_name="devstack", - ip_address="192.168.255.10", - initiator="iqn.1993-08.org.debian:01:e9861fb1859", - os_type="linux2", - platform="x86_64") - ``` - - ## Volume Connection Data - - Upon creation of this resource, a `data` exported attribute will be available. - This attribute is a set of key/value pairs that contains the information - required to complete the block storage connection. - - As an example, creating an iSCSI-based volume will return the following: - - This information can then be fed into a provisioner or a template shell script, - where the final result would look something like: - - The contents of `data` will vary from each Block Storage service. You must have - a good understanding of how the service is configured and how to make the - appropriate final connection. However, if used correctly, this has the - flexibility to be able to attach OpenStack Block Storage volumes to - non-OpenStack resources. - - ## Import - - It is not possible to import this resource. - + Create a VolumeAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param VolumeAttachArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -745,31 +469,6 @@ def get(resource_name: str, :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] attach_mode: Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] data: This is a map of key/value pairs that contain the connection - information. You will want to pass this information to a provisioner - script to finalize the connection. See below for more information. - :param pulumi.Input[str] device: The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - :param pulumi.Input[str] driver_volume_type: The storage driver that the volume is based on. - :param pulumi.Input[str] host_name: The host to attach the volume to. - :param pulumi.Input[str] initiator: The iSCSI initiator string to make the connection. - :param pulumi.Input[str] ip_address: The IP address of the `host_name` above. - :param pulumi.Input[str] mount_point_base: A mount point base name for shared storage. - :param pulumi.Input[bool] multipath: Whether to connect to this volume via multipath. - :param pulumi.Input[str] os_type: The iSCSI initiator OS type. - :param pulumi.Input[str] platform: The iSCSI initiator platform. - :param pulumi.Input[str] region: The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. - :param pulumi.Input[str] wwnn: A wwnn name. Used for Fibre Channel connections. - :param pulumi.Input[Sequence[pulumi.Input[str]]] wwpns: An array of wwpn strings. Used for Fibre Channel - connections. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -795,130 +494,75 @@ def get(resource_name: str, @property @pulumi.getter(name="attachMode") def attach_mode(self) -> pulumi.Output[Optional[str]]: - """ - Specify whether to attach the volume as Read-Only - (`ro`) or Read-Write (`rw`). Only values of `ro` and `rw` are accepted. - If left unspecified, the Block Storage API will apply a default of `rw`. - """ return pulumi.get(self, "attach_mode") @property @pulumi.getter def data(self) -> pulumi.Output[Mapping[str, str]]: - """ - This is a map of key/value pairs that contain the connection - information. You will want to pass this information to a provisioner - script to finalize the connection. See below for more information. - """ return pulumi.get(self, "data") @property @pulumi.getter def device(self) -> pulumi.Output[Optional[str]]: - """ - The device to tell the Block Storage service this - volume will be attached as. This is purely for informational purposes. - You can specify `auto` or a device such as `/dev/vdc`. - """ return pulumi.get(self, "device") @property @pulumi.getter(name="driverVolumeType") def driver_volume_type(self) -> pulumi.Output[str]: - """ - The storage driver that the volume is based on. - """ return pulumi.get(self, "driver_volume_type") @property @pulumi.getter(name="hostName") def host_name(self) -> pulumi.Output[str]: - """ - The host to attach the volume to. - """ return pulumi.get(self, "host_name") @property @pulumi.getter def initiator(self) -> pulumi.Output[Optional[str]]: - """ - The iSCSI initiator string to make the connection. - """ return pulumi.get(self, "initiator") @property @pulumi.getter(name="ipAddress") def ip_address(self) -> pulumi.Output[Optional[str]]: - """ - The IP address of the `host_name` above. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="mountPointBase") def mount_point_base(self) -> pulumi.Output[str]: - """ - A mount point base name for shared storage. - """ return pulumi.get(self, "mount_point_base") @property @pulumi.getter def multipath(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to connect to this volume via multipath. - """ return pulumi.get(self, "multipath") @property @pulumi.getter(name="osType") def os_type(self) -> pulumi.Output[Optional[str]]: - """ - The iSCSI initiator OS type. - """ return pulumi.get(self, "os_type") @property @pulumi.getter def platform(self) -> pulumi.Output[Optional[str]]: - """ - The iSCSI initiator platform. - """ return pulumi.get(self, "platform") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Block Storage - client. A Block Storage client is needed to create a volume attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new volume attachment. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="volumeId") def volume_id(self) -> pulumi.Output[str]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") @property @pulumi.getter def wwnn(self) -> pulumi.Output[Optional[str]]: - """ - A wwnn name. Used for Fibre Channel connections. - """ return pulumi.get(self, "wwnn") @property @pulumi.getter def wwpns(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - An array of wwpn strings. Used for Fibre Channel - connections. - """ return pulumi.get(self, "wwpns") diff --git a/sdk/python/pulumi_openstack/blockstorage/volume_type_access_v3.py b/sdk/python/pulumi_openstack/blockstorage/volume_type_access_v3.py index d6df375fc..7a2f0b293 100644 --- a/sdk/python/pulumi_openstack/blockstorage/volume_type_access_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/volume_type_access_v3.py @@ -19,13 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a VolumeTypeAccessV3 resource. - :param pulumi.Input[str] project_id: ID of the project to give access to. Changing this - creates a new resource. - :param pulumi.Input[str] volume_type_id: ID of the volume type to give access to. Changing - this creates a new resource. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "volume_type_id", volume_type_id) @@ -35,10 +28,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: - """ - ID of the project to give access to. Changing this - creates a new resource. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -48,10 +37,6 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> pulumi.Input[str]: - """ - ID of the volume type to give access to. Changing - this creates a new resource. - """ return pulumi.get(self, "volume_type_id") @volume_type_id.setter @@ -61,11 +46,6 @@ def volume_type_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -81,13 +61,6 @@ def __init__(__self__, *, volume_type_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering VolumeTypeAccessV3 resources. - :param pulumi.Input[str] project_id: ID of the project to give access to. Changing this - creates a new resource. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[str] volume_type_id: ID of the volume type to give access to. Changing - this creates a new resource. """ if project_id is not None: pulumi.set(__self__, "project_id", project_id) @@ -99,10 +72,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the project to give access to. Changing this - creates a new resource. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -112,11 +81,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -126,10 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the volume type to give access to. Changing - this creates a new resource. - """ return pulumi.get(self, "volume_type_id") @volume_type_id.setter @@ -147,42 +107,9 @@ def __init__(__self__, volume_type_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 block storage volume type access resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - volume_type1 = openstack.blockstorage.VolumeTypeV3("volume_type_1", - name="volume_type_1", - is_public=False) - volume_type_access = openstack.blockstorage.VolumeTypeAccessV3("volume_type_access", - project_id=project1.id, - volume_type_id=volume_type1.id) - ``` - - ## Import - - Volume types access can be imported using the `volume_type_id/project_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3 volume_type_access 941793f0-0a34-4bc4-b72e-a6326ae58283/ed498e81f0cc448bae0ad4f8f21bf67f - ``` - + Create a VolumeTypeAccessV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] project_id: ID of the project to give access to. Changing this - creates a new resource. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[str] volume_type_id: ID of the volume type to give access to. Changing - this creates a new resource. """ ... @overload @@ -191,33 +118,7 @@ def __init__(__self__, args: VolumeTypeAccessV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 block storage volume type access resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - volume_type1 = openstack.blockstorage.VolumeTypeV3("volume_type_1", - name="volume_type_1", - is_public=False) - volume_type_access = openstack.blockstorage.VolumeTypeAccessV3("volume_type_access", - project_id=project1.id, - volume_type_id=volume_type1.id) - ``` - - ## Import - - Volume types access can be imported using the `volume_type_id/project_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volumeTypeAccessV3:VolumeTypeAccessV3 volume_type_access 941793f0-0a34-4bc4-b72e-a6326ae58283/ed498e81f0cc448bae0ad4f8f21bf67f - ``` - + Create a VolumeTypeAccessV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param VolumeTypeAccessV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -272,13 +173,6 @@ def get(resource_name: str, :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] project_id: ID of the project to give access to. Changing this - creates a new resource. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[str] volume_type_id: ID of the volume type to give access to. Changing - this creates a new resource. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -292,28 +186,15 @@ def get(resource_name: str, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - ID of the project to give access to. Changing this - creates a new resource. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="volumeTypeId") def volume_type_id(self) -> pulumi.Output[str]: - """ - ID of the volume type to give access to. Changing - this creates a new resource. - """ return pulumi.get(self, "volume_type_id") diff --git a/sdk/python/pulumi_openstack/blockstorage/volume_type_v3.py b/sdk/python/pulumi_openstack/blockstorage/volume_type_v3.py index ce00d03f8..593755fac 100644 --- a/sdk/python/pulumi_openstack/blockstorage/volume_type_v3.py +++ b/sdk/python/pulumi_openstack/blockstorage/volume_type_v3.py @@ -21,16 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a VolumeTypeV3 resource. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the volume type. - :param pulumi.Input[bool] is_public: Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - :param pulumi.Input[str] name: Name of the volume type. Changing this - updates the `name` of an existing volume type. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. """ if description is not None: pulumi.set(__self__, "description", description) @@ -46,10 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - """ return pulumi.get(self, "description") @description.setter @@ -59,9 +45,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of metadata for the volume type. - """ return pulumi.get(self, "extra_specs") @extra_specs.setter @@ -71,10 +54,6 @@ def extra_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -84,10 +63,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the volume type. Changing this - updates the `name` of an existing volume type. - """ return pulumi.get(self, "name") @name.setter @@ -97,11 +72,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -119,16 +89,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering VolumeTypeV3 resources. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the volume type. - :param pulumi.Input[bool] is_public: Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - :param pulumi.Input[str] name: Name of the volume type. Changing this - updates the `name` of an existing volume type. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. """ if description is not None: pulumi.set(__self__, "description", description) @@ -144,10 +104,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - """ return pulumi.get(self, "description") @description.setter @@ -157,9 +113,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of metadata for the volume type. - """ return pulumi.get(self, "extra_specs") @extra_specs.setter @@ -169,10 +122,6 @@ def extra_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -182,10 +131,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the volume type. Changing this - updates the `name` of an existing volume type. - """ return pulumi.get(self, "name") @name.setter @@ -195,11 +140,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -219,61 +159,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 block storage volume type resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ### Basic Volume Type - - ```python - import pulumi - import pulumi_openstack as openstack - - volume_type1 = openstack.blockstorage.VolumeTypeV3("volume_type_1", - name="volume_type_1", - description="Volume type 1", - extra_specs={ - "capabilities": "gpu", - "volume_backend_name": "ssd", - }) - ``` - - ### Volume Type with multiattach enabled - - ```python - import pulumi - import pulumi_openstack as openstack - - multiattach = openstack.blockstorage.VolumeTypeV3("multiattach", - name="multiattach", - description="Multiattach-enabled volume type", - extra_specs={ - "multiattach": " True", - }) - ``` - - ## Import - - Volume types can be imported using the `volume_type_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volumeTypeV3:VolumeTypeV3 volume_type_1 941793f0-0a34-4bc4-b72e-a6326ae58283 - ``` - + Create a VolumeTypeV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the volume type. - :param pulumi.Input[bool] is_public: Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - :param pulumi.Input[str] name: Name of the volume type. Changing this - updates the `name` of an existing volume type. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. """ ... @overload @@ -282,49 +170,7 @@ def __init__(__self__, args: Optional[VolumeTypeV3Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 block storage volume type resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ### Basic Volume Type - - ```python - import pulumi - import pulumi_openstack as openstack - - volume_type1 = openstack.blockstorage.VolumeTypeV3("volume_type_1", - name="volume_type_1", - description="Volume type 1", - extra_specs={ - "capabilities": "gpu", - "volume_backend_name": "ssd", - }) - ``` - - ### Volume Type with multiattach enabled - - ```python - import pulumi - import pulumi_openstack as openstack - - multiattach = openstack.blockstorage.VolumeTypeV3("multiattach", - name="multiattach", - description="Multiattach-enabled volume type", - extra_specs={ - "multiattach": " True", - }) - ``` - - ## Import - - Volume types can be imported using the `volume_type_id`, e.g. - - ```sh - $ pulumi import openstack:blockstorage/volumeTypeV3:VolumeTypeV3 volume_type_1 941793f0-0a34-4bc4-b72e-a6326ae58283 - ``` - + Create a VolumeTypeV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param VolumeTypeV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -381,16 +227,6 @@ def get(resource_name: str, :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] description: Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the volume type. - :param pulumi.Input[bool] is_public: Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - :param pulumi.Input[str] name: Name of the volume type. Changing this - updates the `name` of an existing volume type. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -406,45 +242,25 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[str]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing volume type. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> pulumi.Output[Mapping[str, str]]: - """ - Key/Value pairs of metadata for the volume type. - """ return pulumi.get(self, "extra_specs") @property @pulumi.getter(name="isPublic") def is_public(self) -> pulumi.Output[bool]: - """ - Whether the volume type is public. Changing - this updates the `is_public` of an existing volume type. - """ return pulumi.get(self, "is_public") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Name of the volume type. Changing this - updates the `name` of an existing volume type. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/compute/_inputs.py b/sdk/python/pulumi_openstack/compute/_inputs.py index 6d757d1c2..782ed9c93 100644 --- a/sdk/python/pulumi_openstack/compute/_inputs.py +++ b/sdk/python/pulumi_openstack/compute/_inputs.py @@ -34,40 +34,6 @@ def __init__(__self__, *, uuid: Optional[pulumi.Input[str]] = None, volume_size: Optional[pulumi.Input[int]] = None, volume_type: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] source_type: The source type of the device. Must be one of - "blank", "image", "volume", or "snapshot". Changing this creates a new - server. - :param pulumi.Input[int] boot_index: The boot index of the volume. It defaults to 0. - Changing this creates a new server. - :param pulumi.Input[bool] delete_on_termination: Delete the volume / block device upon - termination of the instance. Defaults to false. Changing this creates a - new server. - :param pulumi.Input[str] destination_type: The type that gets created. Possible values - are "volume" and "local". Changing this creates a new server. - :param pulumi.Input[str] device_type: The low-level device type that will be used. Most - common thing is to leave this empty. Changing this creates a new server. - :param pulumi.Input[str] disk_bus: The low-level disk bus that will be used. Most common - thing is to leave this empty. Changing this creates a new server. - :param pulumi.Input[str] guest_format: Specifies the guest server disk file system format, - such as `ext2`, `ext3`, `ext4`, `xfs` or `swap`. Swap block device mappings - have the following restrictions: source_type must be blank and destination_type - must be local and only one swap disk per server and the size of the swap disk - must be less than or equal to the swap size of the flavor. Changing this - creates a new server. - :param pulumi.Input[bool] multiattach: Enable the attachment of multiattach-capable - volumes. - :param pulumi.Input[str] uuid: The UUID of - the image, volume, or snapshot. Changing this creates a new server. - :param pulumi.Input[int] volume_size: The size of the volume to create (in gigabytes). Required - in the following combinations: source=image and destination=volume, - source=blank and destination=local, and source=blank and destination=volume. - Changing this creates a new server. - :param pulumi.Input[str] volume_type: The volume type that will be used, for example SSD - or HDD storage. The available options depend on how your specific OpenStack - cloud is configured and what classes of storage are provided. Changing this - creates a new server. - """ pulumi.set(__self__, "source_type", source_type) if boot_index is not None: pulumi.set(__self__, "boot_index", boot_index) @@ -93,11 +59,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="sourceType") def source_type(self) -> pulumi.Input[str]: - """ - The source type of the device. Must be one of - "blank", "image", "volume", or "snapshot". Changing this creates a new - server. - """ return pulumi.get(self, "source_type") @source_type.setter @@ -107,10 +68,6 @@ def source_type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="bootIndex") def boot_index(self) -> Optional[pulumi.Input[int]]: - """ - The boot index of the volume. It defaults to 0. - Changing this creates a new server. - """ return pulumi.get(self, "boot_index") @boot_index.setter @@ -120,11 +77,6 @@ def boot_index(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="deleteOnTermination") def delete_on_termination(self) -> Optional[pulumi.Input[bool]]: - """ - Delete the volume / block device upon - termination of the instance. Defaults to false. Changing this creates a - new server. - """ return pulumi.get(self, "delete_on_termination") @delete_on_termination.setter @@ -134,10 +86,6 @@ def delete_on_termination(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="destinationType") def destination_type(self) -> Optional[pulumi.Input[str]]: - """ - The type that gets created. Possible values - are "volume" and "local". Changing this creates a new server. - """ return pulumi.get(self, "destination_type") @destination_type.setter @@ -147,10 +95,6 @@ def destination_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deviceType") def device_type(self) -> Optional[pulumi.Input[str]]: - """ - The low-level device type that will be used. Most - common thing is to leave this empty. Changing this creates a new server. - """ return pulumi.get(self, "device_type") @device_type.setter @@ -160,10 +104,6 @@ def device_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="diskBus") def disk_bus(self) -> Optional[pulumi.Input[str]]: - """ - The low-level disk bus that will be used. Most common - thing is to leave this empty. Changing this creates a new server. - """ return pulumi.get(self, "disk_bus") @disk_bus.setter @@ -173,14 +113,6 @@ def disk_bus(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="guestFormat") def guest_format(self) -> Optional[pulumi.Input[str]]: - """ - Specifies the guest server disk file system format, - such as `ext2`, `ext3`, `ext4`, `xfs` or `swap`. Swap block device mappings - have the following restrictions: source_type must be blank and destination_type - must be local and only one swap disk per server and the size of the swap disk - must be less than or equal to the swap size of the flavor. Changing this - creates a new server. - """ return pulumi.get(self, "guest_format") @guest_format.setter @@ -190,10 +122,6 @@ def guest_format(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def multiattach(self) -> Optional[pulumi.Input[bool]]: - """ - Enable the attachment of multiattach-capable - volumes. - """ return pulumi.get(self, "multiattach") @multiattach.setter @@ -203,10 +131,6 @@ def multiattach(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def uuid(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of - the image, volume, or snapshot. Changing this creates a new server. - """ return pulumi.get(self, "uuid") @uuid.setter @@ -216,12 +140,6 @@ def uuid(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeSize") def volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size of the volume to create (in gigabytes). Required - in the following combinations: source=image and destination=volume, - source=blank and destination=local, and source=blank and destination=volume. - Changing this creates a new server. - """ return pulumi.get(self, "volume_size") @volume_size.setter @@ -231,12 +149,6 @@ def volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="volumeType") def volume_type(self) -> Optional[pulumi.Input[str]]: - """ - The volume type that will be used, for example SSD - or HDD storage. The available options depend on how your specific OpenStack - cloud is configured and what classes of storage are provided. Changing this - creates a new server. - """ return pulumi.get(self, "volume_type") @volume_type.setter @@ -254,18 +166,6 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, port: Optional[pulumi.Input[str]] = None, uuid: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[bool] access_network: Specifies if this network should be used for - provisioning access. Accepts true or false. Defaults to false. - :param pulumi.Input[str] fixed_ip_v4: Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new server. - :param pulumi.Input[str] name: The human-readable - name of the network. Changing this creates a new server. - :param pulumi.Input[str] port: The port UUID of a - network to attach to the server. Changing this creates a new server. - :param pulumi.Input[str] uuid: The network UUID to - attach to the server. Changing this creates a new server. - """ if access_network is not None: pulumi.set(__self__, "access_network", access_network) if fixed_ip_v4 is not None: @@ -284,10 +184,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessNetwork") def access_network(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies if this network should be used for - provisioning access. Accepts true or false. Defaults to false. - """ return pulumi.get(self, "access_network") @access_network.setter @@ -297,10 +193,6 @@ def access_network(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> Optional[pulumi.Input[str]]: - """ - Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new server. - """ return pulumi.get(self, "fixed_ip_v4") @fixed_ip_v4.setter @@ -328,10 +220,6 @@ def mac(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable - name of the network. Changing this creates a new server. - """ return pulumi.get(self, "name") @name.setter @@ -341,10 +229,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def port(self) -> Optional[pulumi.Input[str]]: - """ - The port UUID of a - network to attach to the server. Changing this creates a new server. - """ return pulumi.get(self, "port") @port.setter @@ -354,10 +238,6 @@ def port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def uuid(self) -> Optional[pulumi.Input[str]]: - """ - The network UUID to - attach to the server. Changing this creates a new server. - """ return pulumi.get(self, "uuid") @uuid.setter @@ -370,19 +250,12 @@ class InstancePersonalityArgs: def __init__(__self__, *, content: pulumi.Input[str], file: pulumi.Input[str]): - """ - :param pulumi.Input[str] content: The contents of the file. Limited to 255 bytes. - :param pulumi.Input[str] file: The absolute path of the destination file. - """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "file", file) @property @pulumi.getter def content(self) -> pulumi.Input[str]: - """ - The contents of the file. Limited to 255 bytes. - """ return pulumi.get(self, "content") @content.setter @@ -392,9 +265,6 @@ def content(self, value: pulumi.Input[str]): @property @pulumi.getter def file(self) -> pulumi.Input[str]: - """ - The absolute path of the destination file. - """ return pulumi.get(self, "file") @file.setter @@ -413,31 +283,6 @@ def __init__(__self__, *, queries: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, same_hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, target_cell: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_properties: Arbitrary key/value pairs of additional - properties to pass to the scheduler. - :param pulumi.Input[str] build_near_host_ip: An IP Address in CIDR form. The instance - will be placed on a compute node that is in the same subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] different_cells: The names of cells where not to build the instance. - :param pulumi.Input[Sequence[pulumi.Input[str]]] different_hosts: A list of instance UUIDs. The instance will - be scheduled on a different host than all other instances. - :param pulumi.Input[str] group: A UUID of a Server Group. The instance will be placed - into that group. See reference - for details on managing servergroup resources - :param pulumi.Input[Sequence[pulumi.Input[str]]] queries: A conditional query that a compute node must pass in - order to host an instance. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [">=", "$free_ram_mb", "1024"] - ``` - :param pulumi.Input[Sequence[pulumi.Input[str]]] same_hosts: A list of instance UUIDs. The instance will be - scheduled on the same host of those specified. - :param pulumi.Input[str] target_cell: The name of a cell to host the instance. - """ if additional_properties is not None: pulumi.set(__self__, "additional_properties", additional_properties) if build_near_host_ip is not None: @@ -458,10 +303,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="additionalProperties") def additional_properties(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Arbitrary key/value pairs of additional - properties to pass to the scheduler. - """ return pulumi.get(self, "additional_properties") @additional_properties.setter @@ -471,10 +312,6 @@ def additional_properties(self, value: Optional[pulumi.Input[Mapping[str, pulumi @property @pulumi.getter(name="buildNearHostIp") def build_near_host_ip(self) -> Optional[pulumi.Input[str]]: - """ - An IP Address in CIDR form. The instance - will be placed on a compute node that is in the same subnet. - """ return pulumi.get(self, "build_near_host_ip") @build_near_host_ip.setter @@ -484,9 +321,6 @@ def build_near_host_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="differentCells") def different_cells(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The names of cells where not to build the instance. - """ return pulumi.get(self, "different_cells") @different_cells.setter @@ -496,10 +330,6 @@ def different_cells(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="differentHosts") def different_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of instance UUIDs. The instance will - be scheduled on a different host than all other instances. - """ return pulumi.get(self, "different_hosts") @different_hosts.setter @@ -509,11 +339,6 @@ def different_hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter def group(self) -> Optional[pulumi.Input[str]]: - """ - A UUID of a Server Group. The instance will be placed - into that group. See reference - for details on managing servergroup resources - """ return pulumi.get(self, "group") @group.setter @@ -523,18 +348,6 @@ def group(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def queries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A conditional query that a compute node must pass in - order to host an instance. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [">=", "$free_ram_mb", "1024"] - ``` - """ return pulumi.get(self, "queries") @queries.setter @@ -544,10 +357,6 @@ def queries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="sameHosts") def same_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of instance UUIDs. The instance will be - scheduled on the same host of those specified. - """ return pulumi.get(self, "same_hosts") @same_hosts.setter @@ -557,9 +366,6 @@ def same_hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter(name="targetCell") def target_cell(self) -> Optional[pulumi.Input[str]]: - """ - The name of a cell to host the instance. - """ return pulumi.get(self, "target_cell") @target_cell.setter @@ -572,15 +378,6 @@ class InstanceVendorOptionsArgs: def __init__(__self__, *, detach_ports_before_destroy: Optional[pulumi.Input[bool]] = None, ignore_resize_confirmation: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[bool] detach_ports_before_destroy: Whether to try to detach all attached - ports to the vm before destroying it to make sure the port state is correct - after the vm destruction. This is helpful when the port is not deleted. - :param pulumi.Input[bool] ignore_resize_confirmation: Boolean to control whether - to ignore manual confirmation of the instance resizing. This can be helpful - to work with some OpenStack clouds which automatically confirm resizing of - instances after some timeout. - """ if detach_ports_before_destroy is not None: pulumi.set(__self__, "detach_ports_before_destroy", detach_ports_before_destroy) if ignore_resize_confirmation is not None: @@ -589,11 +386,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="detachPortsBeforeDestroy") def detach_ports_before_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to try to detach all attached - ports to the vm before destroying it to make sure the port state is correct - after the vm destruction. This is helpful when the port is not deleted. - """ return pulumi.get(self, "detach_ports_before_destroy") @detach_ports_before_destroy.setter @@ -603,12 +395,6 @@ def detach_ports_before_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ignoreResizeConfirmation") def ignore_resize_confirmation(self) -> Optional[pulumi.Input[bool]]: - """ - Boolean to control whether - to ignore manual confirmation of the instance resizing. This can be helpful - to work with some OpenStack clouds which automatically confirm resizing of - instances after some timeout. - """ return pulumi.get(self, "ignore_resize_confirmation") @ignore_resize_confirmation.setter @@ -637,22 +423,12 @@ def max_server_per_host(self, value: Optional[pulumi.Input[int]]): class VolumeAttachVendorOptionsArgs: def __init__(__self__, *, ignore_volume_confirmation: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[bool] ignore_volume_confirmation: Boolean to control whether - to ignore volume status confirmation of the attached volume. This can be helpful - to work with some OpenStack clouds which don't have the Block Storage V3 API available. - """ if ignore_volume_confirmation is not None: pulumi.set(__self__, "ignore_volume_confirmation", ignore_volume_confirmation) @property @pulumi.getter(name="ignoreVolumeConfirmation") def ignore_volume_confirmation(self) -> Optional[pulumi.Input[bool]]: - """ - Boolean to control whether - to ignore volume status confirmation of the attached volume. This can be helpful - to work with some OpenStack clouds which don't have the Block Storage V3 API available. - """ return pulumi.get(self, "ignore_volume_confirmation") @ignore_volume_confirmation.setter @@ -669,14 +445,6 @@ def __init__(__self__, *, name: str, port: str, uuid: str): - """ - :param str fixed_ip_v4: The IPv4 address assigned to this network port. - :param str fixed_ip_v6: The IPv6 address assigned to this network port. - :param str mac: The MAC address assigned to this network interface. - :param str name: The name of the network - :param str port: The port UUID for this network - :param str uuid: The UUID of the network - """ pulumi.set(__self__, "fixed_ip_v4", fixed_ip_v4) pulumi.set(__self__, "fixed_ip_v6", fixed_ip_v6) pulumi.set(__self__, "mac", mac) @@ -687,9 +455,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> str: - """ - The IPv4 address assigned to this network port. - """ return pulumi.get(self, "fixed_ip_v4") @fixed_ip_v4.setter @@ -699,9 +464,6 @@ def fixed_ip_v4(self, value: str): @property @pulumi.getter(name="fixedIpV6") def fixed_ip_v6(self) -> str: - """ - The IPv6 address assigned to this network port. - """ return pulumi.get(self, "fixed_ip_v6") @fixed_ip_v6.setter @@ -711,9 +473,6 @@ def fixed_ip_v6(self, value: str): @property @pulumi.getter def mac(self) -> str: - """ - The MAC address assigned to this network interface. - """ return pulumi.get(self, "mac") @mac.setter @@ -723,9 +482,6 @@ def mac(self, value: str): @property @pulumi.getter def name(self) -> str: - """ - The name of the network - """ return pulumi.get(self, "name") @name.setter @@ -735,9 +491,6 @@ def name(self, value: str): @property @pulumi.getter def port(self) -> str: - """ - The port UUID for this network - """ return pulumi.get(self, "port") @port.setter @@ -747,9 +500,6 @@ def port(self, value: str): @property @pulumi.getter def uuid(self) -> str: - """ - The UUID of the network - """ return pulumi.get(self, "uuid") @uuid.setter diff --git a/sdk/python/pulumi_openstack/compute/aggregate_v2.py b/sdk/python/pulumi_openstack/compute/aggregate_v2.py index bd5fa7874..42ed28512 100644 --- a/sdk/python/pulumi_openstack/compute/aggregate_v2.py +++ b/sdk/python/pulumi_openstack/compute/aggregate_v2.py @@ -21,16 +21,6 @@ def __init__(__self__, *, zone: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a AggregateV2 resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] hosts: The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - :param pulumi.Input[str] name: The name of the Host Aggregate - :param pulumi.Input[str] region: The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - :param pulumi.Input[str] zone: The name of the Availability Zone to use. If ommited, it will take the default - availability zone. """ if hosts is not None: pulumi.set(__self__, "hosts", hosts) @@ -46,11 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - """ return pulumi.get(self, "hosts") @hosts.setter @@ -60,9 +45,6 @@ def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -72,9 +54,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Host Aggregate - """ return pulumi.get(self, "name") @name.setter @@ -84,11 +63,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - """ return pulumi.get(self, "region") @region.setter @@ -98,10 +72,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def zone(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Availability Zone to use. If ommited, it will take the default - availability zone. - """ return pulumi.get(self, "zone") @zone.setter @@ -119,16 +89,6 @@ def __init__(__self__, *, zone: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering AggregateV2 resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] hosts: The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - :param pulumi.Input[str] name: The name of the Host Aggregate - :param pulumi.Input[str] region: The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - :param pulumi.Input[str] zone: The name of the Availability Zone to use. If ommited, it will take the default - availability zone. """ if hosts is not None: pulumi.set(__self__, "hosts", hosts) @@ -144,11 +104,6 @@ def __init__(__self__, *, @property @pulumi.getter def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - """ return pulumi.get(self, "hosts") @hosts.setter @@ -158,9 +113,6 @@ def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -170,9 +122,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Host Aggregate - """ return pulumi.get(self, "name") @name.setter @@ -182,11 +131,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - """ return pulumi.get(self, "region") @region.setter @@ -196,10 +140,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def zone(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Availability Zone to use. If ommited, it will take the default - availability zone. - """ return pulumi.get(self, "zone") @zone.setter @@ -219,72 +159,9 @@ def __init__(__self__, zone: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a Host Aggregate within Openstack Nova. - - ## Example Usage - - ### Full example - - ```python - import pulumi - import pulumi_openstack as openstack - - dell_servers = openstack.compute.AggregateV2("dell_servers", - region="RegionOne", - name="dell_servers", - zone="nova", - metadata={ - "cpus": "56", - }, - hosts=[ - "myhost01.example.com", - "myhost02.example.com", - ]) - ``` - - ### Minimum required example - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.compute.AggregateV2("test", name="test") - ``` - - ## Import - - You can import an existing Host Aggregate by their ID. - - ```sh - $ pulumi import openstack:compute/aggregateV2:AggregateV2 myaggregate 24 - ``` - - The ID can be obtained with an openstack command: - - $ openstack aggregate list - - +----+------+-------------------+ - - | ID | Name | Availability Zone | - - +----+------+-------------------+ - - | 59 | test | None | - - +----+------+-------------------+ - + Create a AggregateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] hosts: The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - :param pulumi.Input[str] name: The name of the Host Aggregate - :param pulumi.Input[str] region: The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - :param pulumi.Input[str] zone: The name of the Availability Zone to use. If ommited, it will take the default - availability zone. """ ... @overload @@ -293,60 +170,7 @@ def __init__(__self__, args: Optional[AggregateV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a Host Aggregate within Openstack Nova. - - ## Example Usage - - ### Full example - - ```python - import pulumi - import pulumi_openstack as openstack - - dell_servers = openstack.compute.AggregateV2("dell_servers", - region="RegionOne", - name="dell_servers", - zone="nova", - metadata={ - "cpus": "56", - }, - hosts=[ - "myhost01.example.com", - "myhost02.example.com", - ]) - ``` - - ### Minimum required example - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.compute.AggregateV2("test", name="test") - ``` - - ## Import - - You can import an existing Host Aggregate by their ID. - - ```sh - $ pulumi import openstack:compute/aggregateV2:AggregateV2 myaggregate 24 - ``` - - The ID can be obtained with an openstack command: - - $ openstack aggregate list - - +----+------+-------------------+ - - | ID | Name | Availability Zone | - - +----+------+-------------------+ - - | 59 | test | None | - - +----+------+-------------------+ - + Create a AggregateV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param AggregateV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -403,16 +227,6 @@ def get(resource_name: str, :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[str]]] hosts: The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - :param pulumi.Input[str] name: The name of the Host Aggregate - :param pulumi.Input[str] region: The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - :param pulumi.Input[str] zone: The name of the Availability Zone to use. If ommited, it will take the default - availability zone. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -428,45 +242,25 @@ def get(resource_name: str, @property @pulumi.getter def hosts(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - The list of hosts contained in the Host Aggregate. The hosts must be added - to Openstack and visible in the web interface, or the provider will fail to add them to the host - aggregate. - """ return pulumi.get(self, "hosts") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - The metadata of the Host Aggregate. Can be useful to indicate scheduler hints. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the Host Aggregate - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the Host Aggregate. If - omitted, the `region` argument of the provider is used. Changing this - creates a new Host Aggregate. - """ return pulumi.get(self, "region") @property @pulumi.getter def zone(self) -> pulumi.Output[Optional[str]]: - """ - The name of the Availability Zone to use. If ommited, it will take the default - availability zone. - """ return pulumi.get(self, "zone") diff --git a/sdk/python/pulumi_openstack/compute/flavor.py b/sdk/python/pulumi_openstack/compute/flavor.py index 7969f38b9..5ecc51438 100644 --- a/sdk/python/pulumi_openstack/compute/flavor.py +++ b/sdk/python/pulumi_openstack/compute/flavor.py @@ -28,31 +28,6 @@ def __init__(__self__, *, swap: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a Flavor resource. - :param pulumi.Input[int] disk: The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - :param pulumi.Input[int] ram: The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - :param pulumi.Input[int] vcpus: The number of virtual CPUs to use. Changing this creates - a new flavor. - :param pulumi.Input[str] description: The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - :param pulumi.Input[int] ephemeral: The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the flavor. - :param pulumi.Input[str] flavor_id: Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - :param pulumi.Input[bool] is_public: Whether the flavor is public. Changing this creates - a new flavor. - :param pulumi.Input[str] name: A unique name for the flavor. Changing this creates a new - flavor. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - :param pulumi.Input[float] rx_tx_factor: RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - :param pulumi.Input[int] swap: The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. """ pulumi.set(__self__, "disk", disk) pulumi.set(__self__, "ram", ram) @@ -79,10 +54,6 @@ def __init__(__self__, *, @property @pulumi.getter def disk(self) -> pulumi.Input[int]: - """ - The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - """ return pulumi.get(self, "disk") @disk.setter @@ -92,10 +63,6 @@ def disk(self, value: pulumi.Input[int]): @property @pulumi.getter def ram(self) -> pulumi.Input[int]: - """ - The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - """ return pulumi.get(self, "ram") @ram.setter @@ -105,10 +72,6 @@ def ram(self, value: pulumi.Input[int]): @property @pulumi.getter def vcpus(self) -> pulumi.Input[int]: - """ - The number of virtual CPUs to use. Changing this creates - a new flavor. - """ return pulumi.get(self, "vcpus") @vcpus.setter @@ -118,10 +81,6 @@ def vcpus(self, value: pulumi.Input[int]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - """ return pulumi.get(self, "description") @description.setter @@ -131,10 +90,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ephemeral(self) -> Optional[pulumi.Input[int]]: - """ - The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "ephemeral") @ephemeral.setter @@ -144,9 +99,6 @@ def ephemeral(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of metadata for the flavor. - """ return pulumi.get(self, "extra_specs") @extra_specs.setter @@ -156,10 +108,6 @@ def extra_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -169,10 +117,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the flavor is public. Changing this creates - a new flavor. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -182,10 +126,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the flavor. Changing this creates a new - flavor. - """ return pulumi.get(self, "name") @name.setter @@ -195,12 +135,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - """ return pulumi.get(self, "region") @region.setter @@ -210,10 +144,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="rxTxFactor") def rx_tx_factor(self) -> Optional[pulumi.Input[float]]: - """ - RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - """ return pulumi.get(self, "rx_tx_factor") @rx_tx_factor.setter @@ -223,10 +153,6 @@ def rx_tx_factor(self, value: Optional[pulumi.Input[float]]): @property @pulumi.getter def swap(self) -> Optional[pulumi.Input[int]]: - """ - The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "swap") @swap.setter @@ -251,31 +177,6 @@ def __init__(__self__, *, vcpus: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering Flavor resources. - :param pulumi.Input[str] description: The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - :param pulumi.Input[int] disk: The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - :param pulumi.Input[int] ephemeral: The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the flavor. - :param pulumi.Input[str] flavor_id: Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - :param pulumi.Input[bool] is_public: Whether the flavor is public. Changing this creates - a new flavor. - :param pulumi.Input[str] name: A unique name for the flavor. Changing this creates a new - flavor. - :param pulumi.Input[int] ram: The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - :param pulumi.Input[float] rx_tx_factor: RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - :param pulumi.Input[int] swap: The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - :param pulumi.Input[int] vcpus: The number of virtual CPUs to use. Changing this creates - a new flavor. """ if description is not None: pulumi.set(__self__, "description", description) @@ -305,10 +206,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - """ return pulumi.get(self, "description") @description.setter @@ -318,10 +215,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def disk(self) -> Optional[pulumi.Input[int]]: - """ - The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - """ return pulumi.get(self, "disk") @disk.setter @@ -331,10 +224,6 @@ def disk(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def ephemeral(self) -> Optional[pulumi.Input[int]]: - """ - The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "ephemeral") @ephemeral.setter @@ -344,9 +233,6 @@ def ephemeral(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Key/Value pairs of metadata for the flavor. - """ return pulumi.get(self, "extra_specs") @extra_specs.setter @@ -356,10 +242,6 @@ def extra_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -369,10 +251,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the flavor is public. Changing this creates - a new flavor. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -382,10 +260,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the flavor. Changing this creates a new - flavor. - """ return pulumi.get(self, "name") @name.setter @@ -395,10 +269,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ram(self) -> Optional[pulumi.Input[int]]: - """ - The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - """ return pulumi.get(self, "ram") @ram.setter @@ -408,12 +278,6 @@ def ram(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - """ return pulumi.get(self, "region") @region.setter @@ -423,10 +287,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="rxTxFactor") def rx_tx_factor(self) -> Optional[pulumi.Input[float]]: - """ - RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - """ return pulumi.get(self, "rx_tx_factor") @rx_tx_factor.setter @@ -436,10 +296,6 @@ def rx_tx_factor(self, value: Optional[pulumi.Input[float]]): @property @pulumi.getter def swap(self) -> Optional[pulumi.Input[int]]: - """ - The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "swap") @swap.setter @@ -449,10 +305,6 @@ def swap(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def vcpus(self) -> Optional[pulumi.Input[int]]: - """ - The number of virtual CPUs to use. Changing this creates - a new flavor. - """ return pulumi.get(self, "vcpus") @vcpus.setter @@ -479,60 +331,9 @@ def __init__(__self__, vcpus: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V2 flavor resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - test_flavor = openstack.compute.Flavor("test-flavor", - name="my-flavor", - ram=8096, - vcpus=2, - disk=20, - extra_specs={ - "hw:cpu_policy": "CPU-POLICY", - "hw:cpu_thread_policy": "CPU-THREAD-POLICY", - }) - ``` - - ## Import - - Flavors can be imported using the `ID`, e.g. - - ```sh - $ pulumi import openstack:compute/flavor:Flavor my-flavor 4142e64b-1b35-44a0-9b1e-5affc7af1106 - ``` - + Create a Flavor resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - :param pulumi.Input[int] disk: The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - :param pulumi.Input[int] ephemeral: The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the flavor. - :param pulumi.Input[str] flavor_id: Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - :param pulumi.Input[bool] is_public: Whether the flavor is public. Changing this creates - a new flavor. - :param pulumi.Input[str] name: A unique name for the flavor. Changing this creates a new - flavor. - :param pulumi.Input[int] ram: The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - :param pulumi.Input[float] rx_tx_factor: RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - :param pulumi.Input[int] swap: The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - :param pulumi.Input[int] vcpus: The number of virtual CPUs to use. Changing this creates - a new flavor. """ ... @overload @@ -541,33 +342,7 @@ def __init__(__self__, args: FlavorArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 flavor resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - test_flavor = openstack.compute.Flavor("test-flavor", - name="my-flavor", - ram=8096, - vcpus=2, - disk=20, - extra_specs={ - "hw:cpu_policy": "CPU-POLICY", - "hw:cpu_thread_policy": "CPU-THREAD-POLICY", - }) - ``` - - ## Import - - Flavors can be imported using the `ID`, e.g. - - ```sh - $ pulumi import openstack:compute/flavor:Flavor my-flavor 4142e64b-1b35-44a0-9b1e-5affc7af1106 - ``` - + Create a Flavor resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param FlavorArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -651,31 +426,6 @@ def get(resource_name: str, :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] description: The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - :param pulumi.Input[int] disk: The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - :param pulumi.Input[int] ephemeral: The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra_specs: Key/Value pairs of metadata for the flavor. - :param pulumi.Input[str] flavor_id: Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - :param pulumi.Input[bool] is_public: Whether the flavor is public. Changing this creates - a new flavor. - :param pulumi.Input[str] name: A unique name for the flavor. Changing this creates a new - flavor. - :param pulumi.Input[int] ram: The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - :param pulumi.Input[float] rx_tx_factor: RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - :param pulumi.Input[int] swap: The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - :param pulumi.Input[int] vcpus: The number of virtual CPUs to use. Changing this creates - a new flavor. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -698,109 +448,60 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The description of the flavor. Changing this - updates the description of the flavor. Requires microversion >= 2.55. - """ return pulumi.get(self, "description") @property @pulumi.getter def disk(self) -> pulumi.Output[int]: - """ - The amount of disk space in GiB to use for the root - (/) partition. Changing this creates a new flavor. - """ return pulumi.get(self, "disk") @property @pulumi.getter def ephemeral(self) -> pulumi.Output[Optional[int]]: - """ - The amount of ephemeral in GiB. If unspecified, - the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "ephemeral") @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> pulumi.Output[Mapping[str, str]]: - """ - Key/Value pairs of metadata for the flavor. - """ return pulumi.get(self, "extra_specs") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - Unique ID (integer or UUID) of flavor to create. Changing - this creates a new flavor. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="isPublic") def is_public(self) -> pulumi.Output[Optional[bool]]: - """ - Whether the flavor is public. Changing this creates - a new flavor. - """ return pulumi.get(self, "is_public") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the flavor. Changing this creates a new - flavor. - """ return pulumi.get(self, "name") @property @pulumi.getter def ram(self) -> pulumi.Output[int]: - """ - The amount of RAM to use, in megabytes. Changing this - creates a new flavor. - """ return pulumi.get(self, "ram") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - Flavors are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="rxTxFactor") def rx_tx_factor(self) -> pulumi.Output[Optional[float]]: - """ - RX/TX bandwith factor. The default is 1. Changing - this creates a new flavor. - """ return pulumi.get(self, "rx_tx_factor") @property @pulumi.getter def swap(self) -> pulumi.Output[Optional[int]]: - """ - The amount of disk space in megabytes to use. If - unspecified, the default is 0. Changing this creates a new flavor. - """ return pulumi.get(self, "swap") @property @pulumi.getter def vcpus(self) -> pulumi.Output[int]: - """ - The number of virtual CPUs to use. Changing this creates - a new flavor. - """ return pulumi.get(self, "vcpus") diff --git a/sdk/python/pulumi_openstack/compute/flavor_access.py b/sdk/python/pulumi_openstack/compute/flavor_access.py index 243791f99..5d8e8f124 100644 --- a/sdk/python/pulumi_openstack/compute/flavor_access.py +++ b/sdk/python/pulumi_openstack/compute/flavor_access.py @@ -19,12 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a FlavorAccess resource. - :param pulumi.Input[str] flavor_id: The UUID of flavor to use. Changing this creates a new flavor access. - :param pulumi.Input[str] tenant_id: The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. """ pulumi.set(__self__, "flavor_id", flavor_id) pulumi.set(__self__, "tenant_id", tenant_id) @@ -34,9 +28,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Input[str]: - """ - The UUID of flavor to use. Changing this creates a new flavor access. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -46,10 +37,6 @@ def flavor_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Input[str]: - """ - The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -59,11 +46,6 @@ def tenant_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - """ return pulumi.get(self, "region") @region.setter @@ -79,12 +61,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering FlavorAccess resources. - :param pulumi.Input[str] flavor_id: The UUID of flavor to use. Changing this creates a new flavor access. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - :param pulumi.Input[str] tenant_id: The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. """ if flavor_id is not None: pulumi.set(__self__, "flavor_id", flavor_id) @@ -96,9 +72,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of flavor to use. Changing this creates a new flavor access. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -108,11 +81,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - """ return pulumi.get(self, "region") @region.setter @@ -122,10 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -143,48 +107,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a project access for flavor V2 resource within OpenStack. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - *** - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="my-project") - flavor1 = openstack.compute.Flavor("flavor_1", - name="my-flavor", - ram=8096, - vcpus=2, - disk=20, - is_public=False) - access1 = openstack.compute.FlavorAccess("access_1", - tenant_id=project1.id, - flavor_id=flavor1.id) - ``` - - ## Import - - This resource can be imported by specifying all two arguments, separated - by a forward slash: - - ```sh - $ pulumi import openstack:compute/flavorAccess:FlavorAccess access_1 flavor_id/tenant_id - ``` - + Create a FlavorAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] flavor_id: The UUID of flavor to use. Changing this creates a new flavor access. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - :param pulumi.Input[str] tenant_id: The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. """ ... @overload @@ -193,40 +118,7 @@ def __init__(__self__, args: FlavorAccessArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a project access for flavor V2 resource within OpenStack. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - *** - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="my-project") - flavor1 = openstack.compute.Flavor("flavor_1", - name="my-flavor", - ram=8096, - vcpus=2, - disk=20, - is_public=False) - access1 = openstack.compute.FlavorAccess("access_1", - tenant_id=project1.id, - flavor_id=flavor1.id) - ``` - - ## Import - - This resource can be imported by specifying all two arguments, separated - by a forward slash: - - ```sh - $ pulumi import openstack:compute/flavorAccess:FlavorAccess access_1 flavor_id/tenant_id - ``` - + Create a FlavorAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param FlavorAccessArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -281,12 +173,6 @@ def get(resource_name: str, :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] flavor_id: The UUID of flavor to use. Changing this creates a new flavor access. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - :param pulumi.Input[str] tenant_id: The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -300,27 +186,15 @@ def get(resource_name: str, @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - The UUID of flavor to use. Changing this creates a new flavor access. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new flavor access. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The UUID of tenant which is allowed to use the flavor. - Changing this creates a new flavor access. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/compute/get_aggregate_v2.py b/sdk/python/pulumi_openstack/compute/get_aggregate_v2.py index 76ae89be6..9d1719b6a 100644 --- a/sdk/python/pulumi_openstack/compute/get_aggregate_v2.py +++ b/sdk/python/pulumi_openstack/compute/get_aggregate_v2.py @@ -41,9 +41,6 @@ def __init__(__self__, hosts=None, id=None, metadata=None, name=None, zone=None) @property @pulumi.getter def hosts(self) -> Sequence[str]: - """ - List of Hypervisors contained in the Host Aggregate - """ return pulumi.get(self, "hosts") @property @@ -57,25 +54,16 @@ def id(self) -> str: @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - Metadata of the Host Aggregate - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def zone(self) -> str: - """ - Availability zone of the Host Aggregate - """ return pulumi.get(self, "zone") @@ -97,22 +85,7 @@ def get_aggregate_v2(hosts: Optional[Sequence[str]] = None, name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAggregateV2Result: """ - Use this data source to get information about host aggregates - by name. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.compute.get_aggregate_v2(name="test") - ``` - - - :param Sequence[str] hosts: List of Hypervisors contained in the Host Aggregate - :param Mapping[str, str] metadata: Metadata of the Host Aggregate - :param str name: The name of the host aggregate + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['hosts'] = hosts @@ -135,21 +108,6 @@ def get_aggregate_v2_output(hosts: Optional[pulumi.Input[Optional[Sequence[str]] name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAggregateV2Result]: """ - Use this data source to get information about host aggregates - by name. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.compute.get_aggregate_v2(name="test") - ``` - - - :param Sequence[str] hosts: List of Hypervisors contained in the Host Aggregate - :param Mapping[str, str] metadata: Metadata of the Host Aggregate - :param str name: The name of the host aggregate + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_availability_zones.py b/sdk/python/pulumi_openstack/compute/get_availability_zones.py index 9f49c5924..cb30c0de3 100644 --- a/sdk/python/pulumi_openstack/compute/get_availability_zones.py +++ b/sdk/python/pulumi_openstack/compute/get_availability_zones.py @@ -46,9 +46,6 @@ def id(self) -> str: @property @pulumi.getter def names(self) -> Sequence[str]: - """ - The names of the availability zones, ordered alphanumerically, that match the queried `state` - """ return pulumi.get(self, "names") @property @@ -78,20 +75,7 @@ def get_availability_zones(region: Optional[str] = None, state: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAvailabilityZonesResult: """ - Use this data source to get a list of availability zones from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.compute.get_availability_zones() - ``` - - - :param str region: The `region` to fetch availability zones from, defaults to the provider's `region` - :param str state: The `state` of the availability zones to match, default ("available"). + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['region'] = region @@ -111,19 +95,6 @@ def get_availability_zones_output(region: Optional[pulumi.Input[Optional[str]]] state: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAvailabilityZonesResult]: """ - Use this data source to get a list of availability zones from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.compute.get_availability_zones() - ``` - - - :param str region: The `region` to fetch availability zones from, defaults to the provider's `region` - :param str state: The `state` of the availability zones to match, default ("available"). + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_flavor.py b/sdk/python/pulumi_openstack/compute/get_flavor.py index b7a5f782c..310d9d524 100644 --- a/sdk/python/pulumi_openstack/compute/get_flavor.py +++ b/sdk/python/pulumi_openstack/compute/get_flavor.py @@ -78,9 +78,6 @@ def disk(self) -> Optional[int]: @property @pulumi.getter(name="extraSpecs") def extra_specs(self) -> Mapping[str, str]: - """ - Key/Value pairs of metadata for the flavor. - """ return pulumi.get(self, "extra_specs") @property @@ -178,35 +175,7 @@ def get_flavor(description: Optional[str] = None, vcpus: Optional[int] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFlavorResult: """ - Use this data source to get the ID of an available OpenStack flavor. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - small = openstack.compute.get_flavor(vcpus=1, - ram=512) - ``` - - - :param str description: The description of the flavor. - :param int disk: The exact amount of disk (in gigabytes). - :param str flavor_id: The ID of the flavor. Conflicts with the `name`, - `min_ram` and `min_disk` - :param bool is_public: The flavor visibility. - :param int min_disk: The minimum amount of disk (in gigabytes). Conflicts - with the `flavor_id`. - :param int min_ram: The minimum amount of RAM (in megabytes). Conflicts - with the `flavor_id`. - :param str name: The name of the flavor. Conflicts with the `flavor_id`. - :param int ram: The exact amount of RAM (in megabytes). - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - :param float rx_tx_factor: The `rx_tx_factor` of the flavor. - :param int swap: The amount of swap (in gigabytes). - :param int vcpus: The amount of VCPUs. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -256,34 +225,6 @@ def get_flavor_output(description: Optional[pulumi.Input[Optional[str]]] = None, vcpus: Optional[pulumi.Input[Optional[int]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFlavorResult]: """ - Use this data source to get the ID of an available OpenStack flavor. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - small = openstack.compute.get_flavor(vcpus=1, - ram=512) - ``` - - - :param str description: The description of the flavor. - :param int disk: The exact amount of disk (in gigabytes). - :param str flavor_id: The ID of the flavor. Conflicts with the `name`, - `min_ram` and `min_disk` - :param bool is_public: The flavor visibility. - :param int min_disk: The minimum amount of disk (in gigabytes). Conflicts - with the `flavor_id`. - :param int min_ram: The minimum amount of RAM (in megabytes). Conflicts - with the `flavor_id`. - :param str name: The name of the flavor. Conflicts with the `flavor_id`. - :param int ram: The exact amount of RAM (in megabytes). - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - :param float rx_tx_factor: The `rx_tx_factor` of the flavor. - :param int swap: The amount of swap (in gigabytes). - :param int vcpus: The amount of VCPUs. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_hypervisor_v2.py b/sdk/python/pulumi_openstack/compute/get_hypervisor_v2.py index 69cef2501..85c826dc0 100644 --- a/sdk/python/pulumi_openstack/compute/get_hypervisor_v2.py +++ b/sdk/python/pulumi_openstack/compute/get_hypervisor_v2.py @@ -53,25 +53,16 @@ def __init__(__self__, disk=None, host_ip=None, hostname=None, id=None, memory=N @property @pulumi.getter def disk(self) -> int: - """ - The amount in GigaBytes of local storage the hypervisor can provide - """ return pulumi.get(self, "disk") @property @pulumi.getter(name="hostIp") def host_ip(self) -> str: - """ - The IP address of the Hypervisor - """ return pulumi.get(self, "host_ip") @property @pulumi.getter def hostname(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "hostname") @property @@ -85,41 +76,26 @@ def id(self) -> str: @property @pulumi.getter def memory(self) -> int: - """ - The number in MegaBytes of memory the hypervisor can provide - """ return pulumi.get(self, "memory") @property @pulumi.getter def state(self) -> str: - """ - The state of the hypervisor (`up` or `down`) - """ return pulumi.get(self, "state") @property @pulumi.getter def status(self) -> str: - """ - The status of the hypervisor (`enabled` or `disabled`) - """ return pulumi.get(self, "status") @property @pulumi.getter def type(self) -> str: - """ - The type of the hypervisor (example: `QEMU`) - """ return pulumi.get(self, "type") @property @pulumi.getter def vcpus(self) -> int: - """ - The number of virtual CPUs the hypervisor can provide - """ return pulumi.get(self, "vcpus") @@ -143,20 +119,7 @@ def __await__(self): def get_hypervisor_v2(hostname: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetHypervisorV2Result: """ - Use this data source to get information about hypervisors - by hostname. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - host01 = openstack.compute.get_hypervisor_v2(hostname="host01") - ``` - - - :param str hostname: The hostname of the hypervisor + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['hostname'] = hostname @@ -179,19 +142,6 @@ def get_hypervisor_v2(hostname: Optional[str] = None, def get_hypervisor_v2_output(hostname: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetHypervisorV2Result]: """ - Use this data source to get information about hypervisors - by hostname. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - host01 = openstack.compute.get_hypervisor_v2(hostname="host01") - ``` - - - :param str hostname: The hostname of the hypervisor + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_instance_v2.py b/sdk/python/pulumi_openstack/compute/get_instance_v2.py index e95452298..1521ba6b2 100644 --- a/sdk/python/pulumi_openstack/compute/get_instance_v2.py +++ b/sdk/python/pulumi_openstack/compute/get_instance_v2.py @@ -85,49 +85,31 @@ def __init__(__self__, access_ip_v4=None, access_ip_v6=None, availability_zone=N @property @pulumi.getter(name="accessIpV4") def access_ip_v4(self) -> str: - """ - The first IPv4 address assigned to this server. - """ return pulumi.get(self, "access_ip_v4") @property @pulumi.getter(name="accessIpV6") def access_ip_v6(self) -> str: - """ - The first IPv6 address assigned to this server. - """ return pulumi.get(self, "access_ip_v6") @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> str: - """ - The availability zone of this server. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter def created(self) -> str: - """ - The creation time of the instance. - """ return pulumi.get(self, "created") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> str: - """ - The flavor ID used to create the server. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="flavorName") def flavor_name(self) -> str: - """ - The flavor name used to create the server. - """ return pulumi.get(self, "flavor_name") @property @@ -138,49 +120,31 @@ def id(self) -> str: @property @pulumi.getter(name="imageId") def image_id(self) -> str: - """ - The image ID used to create the server. - """ return pulumi.get(self, "image_id") @property @pulumi.getter(name="imageName") def image_name(self) -> str: - """ - The image name used to create the server. - """ return pulumi.get(self, "image_name") @property @pulumi.getter(name="keyPair") def key_pair(self) -> str: - """ - The name of the key pair assigned to this server. - """ return pulumi.get(self, "key_pair") @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - A set of key/value pairs made available to the server. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> str: - """ - The name of the network - """ return pulumi.get(self, "name") @property @pulumi.getter def networks(self) -> Sequence['outputs.GetInstanceV2NetworkResult']: - """ - An array of maps, detailed below. - """ return pulumi.get(self, "networks") @property @@ -196,33 +160,21 @@ def region(self) -> str: @property @pulumi.getter(name="securityGroups") def security_groups(self) -> Sequence[str]: - """ - An array of security group names associated with this server. - """ return pulumi.get(self, "security_groups") @property @pulumi.getter def tags(self) -> Sequence[str]: - """ - A set of string tags assigned to this server. - """ return pulumi.get(self, "tags") @property @pulumi.getter def updated(self) -> str: - """ - The time when the instance was last updated. - """ return pulumi.get(self, "updated") @property @pulumi.getter(name="userData") def user_data(self) -> str: - """ - The user data added when the server was created. - """ return pulumi.get(self, "user_data") @@ -259,21 +211,7 @@ def get_instance_v2(id: Optional[str] = None, user_data: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInstanceV2Result: """ - Use this data source to get the details of a running server - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - instance = openstack.compute.get_instance_v2(id="2ba26dc6-a12d-4889-8f25-794ea5bf4453") - ``` - - - :param str id: The UUID of the instance - :param Sequence[Union['GetInstanceV2NetworkArgs', 'GetInstanceV2NetworkArgsDict']] networks: An array of maps, detailed below. - :param str user_data: The user data added when the server was created. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['id'] = id @@ -312,20 +250,6 @@ def get_instance_v2_output(id: Optional[pulumi.Input[str]] = None, user_data: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetInstanceV2Result]: """ - Use this data source to get the details of a running server - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - instance = openstack.compute.get_instance_v2(id="2ba26dc6-a12d-4889-8f25-794ea5bf4453") - ``` - - - :param str id: The UUID of the instance - :param Sequence[Union['GetInstanceV2NetworkArgs', 'GetInstanceV2NetworkArgsDict']] networks: An array of maps, detailed below. - :param str user_data: The user data added when the server was created. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_keypair.py b/sdk/python/pulumi_openstack/compute/get_keypair.py index c4faa8ee5..146674788 100644 --- a/sdk/python/pulumi_openstack/compute/get_keypair.py +++ b/sdk/python/pulumi_openstack/compute/get_keypair.py @@ -44,9 +44,6 @@ def __init__(__self__, fingerprint=None, id=None, name=None, public_key=None, re @property @pulumi.getter def fingerprint(self) -> str: - """ - The fingerprint of the OpenSSH key. - """ return pulumi.get(self, "fingerprint") @property @@ -60,33 +57,21 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="publicKey") def public_key(self) -> str: - """ - The OpenSSH-formatted public key of the keypair. - """ return pulumi.get(self, "public_key") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="userId") def user_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "user_id") @@ -109,24 +94,7 @@ def get_keypair(name: Optional[str] = None, user_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetKeypairResult: """ - Use this data source to get the ID and public key of an OpenStack keypair. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - kp = openstack.compute.get_keypair(name="sand") - ``` - - - :param str name: The unique name of the keypair. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - :param str user_id: The user id of the owner of the key pair. - This parameter can be specified only if the provider is configured to use - the credentials of an OpenStack administrator. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['name'] = name @@ -150,23 +118,6 @@ def get_keypair_output(name: Optional[pulumi.Input[str]] = None, user_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetKeypairResult]: """ - Use this data source to get the ID and public key of an OpenStack keypair. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - kp = openstack.compute.get_keypair(name="sand") - ``` - - - :param str name: The unique name of the keypair. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. - :param str user_id: The user id of the owner of the key pair. - This parameter can be specified only if the provider is configured to use - the credentials of an OpenStack administrator. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_limits_v2.py b/sdk/python/pulumi_openstack/compute/get_limits_v2.py index 23ae8558c..5fe72889c 100644 --- a/sdk/python/pulumi_openstack/compute/get_limits_v2.py +++ b/sdk/python/pulumi_openstack/compute/get_limits_v2.py @@ -100,169 +100,106 @@ def id(self) -> str: @property @pulumi.getter(name="maxImageMeta") def max_image_meta(self) -> int: - """ - The number of allowed metadata items for each image. Starting from version 2.39 this field is dropped from ‘os-limits’ response, because ‘image-metadata’ proxy API was deprecated. Available until version 2.38. - """ return pulumi.get(self, "max_image_meta") @property @pulumi.getter(name="maxPersonality") def max_personality(self) -> int: - """ - The number of allowed injected files for the tenant. Available until version 2.56. - """ return pulumi.get(self, "max_personality") @property @pulumi.getter(name="maxPersonalitySize") def max_personality_size(self) -> int: - """ - The number of allowed bytes of content for each injected file. Available until version 2.56. - """ return pulumi.get(self, "max_personality_size") @property @pulumi.getter(name="maxSecurityGroupRules") def max_security_group_rules(self) -> int: - """ - The number of allowed rules for each security group. Available until version 2.35. - """ return pulumi.get(self, "max_security_group_rules") @property @pulumi.getter(name="maxSecurityGroups") def max_security_groups(self) -> int: - """ - The number of allowed security groups for the tenant. Available until version 2.35. - """ return pulumi.get(self, "max_security_groups") @property @pulumi.getter(name="maxServerGroupMembers") def max_server_group_members(self) -> int: - """ - The number of allowed members for each server group. - """ return pulumi.get(self, "max_server_group_members") @property @pulumi.getter(name="maxServerGroups") def max_server_groups(self) -> int: - """ - The number of allowed server groups for the tenant. - """ return pulumi.get(self, "max_server_groups") @property @pulumi.getter(name="maxServerMeta") def max_server_meta(self) -> int: - """ - The number of allowed server groups for the tenant. - """ return pulumi.get(self, "max_server_meta") @property @pulumi.getter(name="maxTotalCores") def max_total_cores(self) -> int: - """ - The number of allowed server cores for the tenant. - """ return pulumi.get(self, "max_total_cores") @property @pulumi.getter(name="maxTotalFloatingIps") def max_total_floating_ips(self) -> int: - """ - The number of allowed floating IP addresses for each tenant. Available until version 2.35. - """ return pulumi.get(self, "max_total_floating_ips") @property @pulumi.getter(name="maxTotalInstances") def max_total_instances(self) -> int: - """ - The number of allowed servers for the tenant. - """ return pulumi.get(self, "max_total_instances") @property @pulumi.getter(name="maxTotalKeypairs") def max_total_keypairs(self) -> int: - """ - The number of allowed key pairs for the user. - """ return pulumi.get(self, "max_total_keypairs") @property @pulumi.getter(name="maxTotalRamSize") def max_total_ram_size(self) -> int: - """ - The number of allowed floating IP addresses for the tenant. Available until version 2.35. - """ return pulumi.get(self, "max_total_ram_size") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="totalCoresUsed") def total_cores_used(self) -> int: - """ - The number of used server cores in the tenant. - """ return pulumi.get(self, "total_cores_used") @property @pulumi.getter(name="totalFloatingIpsUsed") def total_floating_ips_used(self) -> int: - """ - The number of used floating IP addresses in the tenant. - """ return pulumi.get(self, "total_floating_ips_used") @property @pulumi.getter(name="totalInstancesUsed") def total_instances_used(self) -> int: - """ - The number of used server cores in the tenant. - """ return pulumi.get(self, "total_instances_used") @property @pulumi.getter(name="totalRamUsed") def total_ram_used(self) -> int: - """ - The amount of used server RAM in the tenant. - """ return pulumi.get(self, "total_ram_used") @property @pulumi.getter(name="totalSecurityGroupsUsed") def total_security_groups_used(self) -> int: - """ - The number of used security groups in the tenant. Available until version 2.35. - """ return pulumi.get(self, "total_security_groups_used") @property @pulumi.getter(name="totalServerGroupsUsed") def total_server_groups_used(self) -> int: - """ - The number of used server groups in each tenant. - """ return pulumi.get(self, "total_server_groups_used") @@ -300,21 +237,7 @@ def get_limits_v2(project_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLimitsV2Result: """ - Use this data source to get the compute limits of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - limits = openstack.compute.get_limits_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the limits. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['projectId'] = project_id @@ -352,20 +275,6 @@ def get_limits_v2_output(project_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetLimitsV2Result]: """ - Use this data source to get the compute limits of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - limits = openstack.compute.get_limits_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the limits. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/get_quota_set_v2.py b/sdk/python/pulumi_openstack/compute/get_quota_set_v2.py index 05dd65037..872e81832 100644 --- a/sdk/python/pulumi_openstack/compute/get_quota_set_v2.py +++ b/sdk/python/pulumi_openstack/compute/get_quota_set_v2.py @@ -77,25 +77,16 @@ def __init__(__self__, cores=None, fixed_ips=None, floating_ips=None, id=None, i @property @pulumi.getter def cores(self) -> int: - """ - The number of allowed server cores. - """ return pulumi.get(self, "cores") @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> int: - """ - The number of allowed fixed IP addresses. Available until version 2.35. - """ return pulumi.get(self, "fixed_ips") @property @pulumi.getter(name="floatingIps") def floating_ips(self) -> int: - """ - The number of allowed floating IP addresses. Available until version 2.35. - """ return pulumi.get(self, "floating_ips") @property @@ -109,105 +100,66 @@ def id(self) -> str: @property @pulumi.getter(name="injectedFileContentBytes") def injected_file_content_bytes(self) -> int: - """ - The number of allowed bytes of content for each injected file. Available until version 2.56. - """ return pulumi.get(self, "injected_file_content_bytes") @property @pulumi.getter(name="injectedFilePathBytes") def injected_file_path_bytes(self) -> int: - """ - The number of allowed bytes for each injected file path. Available until version 2.56. - """ return pulumi.get(self, "injected_file_path_bytes") @property @pulumi.getter(name="injectedFiles") def injected_files(self) -> int: - """ - The number of allowed injected files. Available until version 2.56. - """ return pulumi.get(self, "injected_files") @property @pulumi.getter def instances(self) -> int: - """ - The number of allowed servers. - """ return pulumi.get(self, "instances") @property @pulumi.getter(name="keyPairs") def key_pairs(self) -> int: - """ - The number of allowed key pairs for each user. - """ return pulumi.get(self, "key_pairs") @property @pulumi.getter(name="metadataItems") def metadata_items(self) -> int: - """ - The number of allowed metadata items for each server. - """ return pulumi.get(self, "metadata_items") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def ram(self) -> int: - """ - The amount of allowed server RAM, in MiB. - """ return pulumi.get(self, "ram") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityGroupRules") def security_group_rules(self) -> int: - """ - The number of allowed rules for each security group. Available until version 2.35. - """ return pulumi.get(self, "security_group_rules") @property @pulumi.getter(name="securityGroups") def security_groups(self) -> int: - """ - The number of allowed security groups. Available until version 2.35. - """ return pulumi.get(self, "security_groups") @property @pulumi.getter(name="serverGroupMembers") def server_group_members(self) -> int: - """ - The number of allowed members for each server group. - """ return pulumi.get(self, "server_group_members") @property @pulumi.getter(name="serverGroups") def server_groups(self) -> int: - """ - The number of allowed server groups. - """ return pulumi.get(self, "server_groups") @@ -240,21 +192,7 @@ def get_quota_set_v2(project_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQuotaSetV2Result: """ - Use this data source to get the compute quotaset of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.compute.get_quota_set_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quotaset. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['projectId'] = project_id @@ -287,20 +225,6 @@ def get_quota_set_v2_output(project_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQuotaSetV2Result]: """ - Use this data source to get the compute quotaset of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.compute.get_quota_set_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quotaset. - :param str region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/compute/instance.py b/sdk/python/pulumi_openstack/compute/instance.py index e2db00fc8..9e1f8918f 100644 --- a/sdk/python/pulumi_openstack/compute/instance.py +++ b/sdk/python/pulumi_openstack/compute/instance.py @@ -44,81 +44,6 @@ def __init__(__self__, *, vendor_options: Optional[pulumi.Input['InstanceVendorOptionsArgs']] = None): """ The set of arguments for constructing a Instance resource. - :param pulumi.Input[str] access_ip_v4: The first detected Fixed IPv4 address. - :param pulumi.Input[str] access_ip_v6: The first detected Fixed IPv6 address. - :param pulumi.Input[str] admin_pass: The administrative password to assign to the server. - Changing this changes the root password on the existing server. - :param pulumi.Input[str] availability_zone: The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - :param pulumi.Input[str] availability_zone_hints: The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - :param pulumi.Input[Sequence[pulumi.Input['InstanceBlockDeviceArgs']]] block_devices: Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - :param pulumi.Input[bool] config_drive: Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - :param pulumi.Input[str] flavor_id: The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[str] flavor_name: The name of the - desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[bool] force_delete: Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - :param pulumi.Input[str] image_id: (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - :param pulumi.Input[str] image_name: (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - :param pulumi.Input[str] key_pair: The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] network_mode: Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - :param pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input['InstancePersonalityArgs']]] personalities: Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - :param pulumi.Input[str] power_state: Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - :param pulumi.Input[str] region: The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input['InstanceSchedulerHintArgs']]] scheduler_hints: Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - :param pulumi.Input[bool] stop_before_destroy: Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the instance. Changing this - updates the existing instance tags. - :param pulumi.Input[str] user_data: The user data to provide when launching the instance. - Changing this creates a new server. - :param pulumi.Input['InstanceVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ if access_ip_v4 is not None: pulumi.set(__self__, "access_ip_v4", access_ip_v4) @@ -176,9 +101,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessIpV4") def access_ip_v4(self) -> Optional[pulumi.Input[str]]: - """ - The first detected Fixed IPv4 address. - """ return pulumi.get(self, "access_ip_v4") @access_ip_v4.setter @@ -188,9 +110,6 @@ def access_ip_v4(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="accessIpV6") def access_ip_v6(self) -> Optional[pulumi.Input[str]]: - """ - The first detected Fixed IPv6 address. - """ return pulumi.get(self, "access_ip_v6") @access_ip_v6.setter @@ -200,10 +119,6 @@ def access_ip_v6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="adminPass") def admin_pass(self) -> Optional[pulumi.Input[str]]: - """ - The administrative password to assign to the server. - Changing this changes the root password on the existing server. - """ return pulumi.get(self, "admin_pass") @admin_pass.setter @@ -213,11 +128,6 @@ def admin_pass(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -227,14 +137,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -244,14 +146,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="blockDevices") def block_devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceBlockDeviceArgs']]]]: - """ - Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - """ return pulumi.get(self, "block_devices") @block_devices.setter @@ -261,10 +155,6 @@ def block_devices(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Inst @property @pulumi.getter(name="configDrive") def config_drive(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - """ return pulumi.get(self, "config_drive") @config_drive.setter @@ -274,10 +164,6 @@ def config_drive(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -287,10 +173,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="flavorName") def flavor_name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the - desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_name") @flavor_name.setter @@ -300,11 +182,6 @@ def flavor_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="forceDelete") def force_delete(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - """ return pulumi.get(self, "force_delete") @force_delete.setter @@ -314,12 +191,6 @@ def force_delete(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -329,11 +200,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageName") def image_name(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - """ return pulumi.get(self, "image_name") @image_name.setter @@ -343,11 +209,6 @@ def image_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="keyPair") def key_pair(self) -> Optional[pulumi.Input[str]]: - """ - The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - """ return pulumi.get(self, "key_pair") @key_pair.setter @@ -357,10 +218,6 @@ def key_pair(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -370,9 +227,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -382,11 +236,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkMode") def network_mode(self) -> Optional[pulumi.Input[str]]: - """ - Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - """ return pulumi.get(self, "network_mode") @network_mode.setter @@ -396,11 +245,6 @@ def network_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]]]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - """ return pulumi.get(self, "networks") @networks.setter @@ -410,11 +254,6 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceN @property @pulumi.getter def personalities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePersonalityArgs']]]]: - """ - Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - """ return pulumi.get(self, "personalities") @personalities.setter @@ -424,13 +263,6 @@ def personalities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Inst @property @pulumi.getter(name="powerState") def power_state(self) -> Optional[pulumi.Input[str]]: - """ - Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - """ return pulumi.get(self, "power_state") @power_state.setter @@ -440,11 +272,6 @@ def power_state(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - """ return pulumi.get(self, "region") @region.setter @@ -454,10 +281,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceSchedulerHintArgs']]]]: - """ - Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @scheduler_hints.setter @@ -467,14 +290,6 @@ def scheduler_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['In @property @pulumi.getter(name="securityGroups") def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - """ return pulumi.get(self, "security_groups") @security_groups.setter @@ -484,11 +299,6 @@ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="stopBeforeDestroy") def stop_before_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - """ return pulumi.get(self, "stop_before_destroy") @stop_before_destroy.setter @@ -498,10 +308,6 @@ def stop_before_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the instance. Changing this - updates the existing instance tags. - """ return pulumi.get(self, "tags") @tags.setter @@ -511,10 +317,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="userData") def user_data(self) -> Optional[pulumi.Input[str]]: - """ - The user data to provide when launching the instance. - Changing this creates a new server. - """ return pulumi.get(self, "user_data") @user_data.setter @@ -524,10 +326,6 @@ def user_data(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['InstanceVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -570,85 +368,6 @@ def __init__(__self__, *, vendor_options: Optional[pulumi.Input['InstanceVendorOptionsArgs']] = None): """ Input properties used for looking up and filtering Instance resources. - :param pulumi.Input[str] access_ip_v4: The first detected Fixed IPv4 address. - :param pulumi.Input[str] access_ip_v6: The first detected Fixed IPv6 address. - :param pulumi.Input[str] admin_pass: The administrative password to assign to the server. - Changing this changes the root password on the existing server. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the instance, which have - been explicitly and implicitly added. - :param pulumi.Input[str] availability_zone: The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - :param pulumi.Input[str] availability_zone_hints: The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - :param pulumi.Input[Sequence[pulumi.Input['InstanceBlockDeviceArgs']]] block_devices: Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - :param pulumi.Input[bool] config_drive: Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - :param pulumi.Input[str] created: The creation time of the instance. - :param pulumi.Input[str] flavor_id: The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[str] flavor_name: The name of the - desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[bool] force_delete: Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - :param pulumi.Input[str] image_id: (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - :param pulumi.Input[str] image_name: (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - :param pulumi.Input[str] key_pair: The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] network_mode: Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - :param pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input['InstancePersonalityArgs']]] personalities: Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - :param pulumi.Input[str] power_state: Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - :param pulumi.Input[str] region: The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input['InstanceSchedulerHintArgs']]] scheduler_hints: Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - :param pulumi.Input[bool] stop_before_destroy: Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the instance. Changing this - updates the existing instance tags. - :param pulumi.Input[str] updated: The time when the instance was last updated. - :param pulumi.Input[str] user_data: The user data to provide when launching the instance. - Changing this creates a new server. - :param pulumi.Input['InstanceVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ if access_ip_v4 is not None: pulumi.set(__self__, "access_ip_v4", access_ip_v4) @@ -714,9 +433,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessIpV4") def access_ip_v4(self) -> Optional[pulumi.Input[str]]: - """ - The first detected Fixed IPv4 address. - """ return pulumi.get(self, "access_ip_v4") @access_ip_v4.setter @@ -726,9 +442,6 @@ def access_ip_v4(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="accessIpV6") def access_ip_v6(self) -> Optional[pulumi.Input[str]]: - """ - The first detected Fixed IPv6 address. - """ return pulumi.get(self, "access_ip_v6") @access_ip_v6.setter @@ -738,10 +451,6 @@ def access_ip_v6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="adminPass") def admin_pass(self) -> Optional[pulumi.Input[str]]: - """ - The administrative password to assign to the server. - Changing this changes the root password on the existing server. - """ return pulumi.get(self, "admin_pass") @admin_pass.setter @@ -760,10 +469,6 @@ def all_metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[st @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the instance, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -773,11 +478,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -787,14 +487,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -804,14 +496,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="blockDevices") def block_devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceBlockDeviceArgs']]]]: - """ - Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - """ return pulumi.get(self, "block_devices") @block_devices.setter @@ -821,10 +505,6 @@ def block_devices(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Inst @property @pulumi.getter(name="configDrive") def config_drive(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - """ return pulumi.get(self, "config_drive") @config_drive.setter @@ -834,9 +514,6 @@ def config_drive(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def created(self) -> Optional[pulumi.Input[str]]: - """ - The creation time of the instance. - """ return pulumi.get(self, "created") @created.setter @@ -846,10 +523,6 @@ def created(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -859,10 +532,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="flavorName") def flavor_name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the - desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_name") @flavor_name.setter @@ -872,11 +541,6 @@ def flavor_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="forceDelete") def force_delete(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - """ return pulumi.get(self, "force_delete") @force_delete.setter @@ -886,12 +550,6 @@ def force_delete(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -901,11 +559,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageName") def image_name(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - """ return pulumi.get(self, "image_name") @image_name.setter @@ -915,11 +568,6 @@ def image_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="keyPair") def key_pair(self) -> Optional[pulumi.Input[str]]: - """ - The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - """ return pulumi.get(self, "key_pair") @key_pair.setter @@ -929,10 +577,6 @@ def key_pair(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -942,9 +586,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -954,11 +595,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkMode") def network_mode(self) -> Optional[pulumi.Input[str]]: - """ - Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - """ return pulumi.get(self, "network_mode") @network_mode.setter @@ -968,11 +604,6 @@ def network_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]]]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - """ return pulumi.get(self, "networks") @networks.setter @@ -982,11 +613,6 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceN @property @pulumi.getter def personalities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePersonalityArgs']]]]: - """ - Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - """ return pulumi.get(self, "personalities") @personalities.setter @@ -996,13 +622,6 @@ def personalities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Inst @property @pulumi.getter(name="powerState") def power_state(self) -> Optional[pulumi.Input[str]]: - """ - Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - """ return pulumi.get(self, "power_state") @power_state.setter @@ -1012,11 +631,6 @@ def power_state(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - """ return pulumi.get(self, "region") @region.setter @@ -1026,10 +640,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceSchedulerHintArgs']]]]: - """ - Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @scheduler_hints.setter @@ -1039,14 +649,6 @@ def scheduler_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['In @property @pulumi.getter(name="securityGroups") def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - """ return pulumi.get(self, "security_groups") @security_groups.setter @@ -1056,11 +658,6 @@ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="stopBeforeDestroy") def stop_before_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - """ return pulumi.get(self, "stop_before_destroy") @stop_before_destroy.setter @@ -1070,10 +667,6 @@ def stop_before_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the instance. Changing this - updates the existing instance tags. - """ return pulumi.get(self, "tags") @tags.setter @@ -1083,9 +676,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def updated(self) -> Optional[pulumi.Input[str]]: - """ - The time when the instance was last updated. - """ return pulumi.get(self, "updated") @updated.setter @@ -1095,10 +685,6 @@ def updated(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userData") def user_data(self) -> Optional[pulumi.Input[str]]: - """ - The user data to provide when launching the instance. - Changing this creates a new server. - """ return pulumi.get(self, "user_data") @user_data.setter @@ -1108,10 +694,6 @@ def user_data(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['InstanceVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -1155,81 +737,6 @@ def __init__(__self__, Create a Instance resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_ip_v4: The first detected Fixed IPv4 address. - :param pulumi.Input[str] access_ip_v6: The first detected Fixed IPv6 address. - :param pulumi.Input[str] admin_pass: The administrative password to assign to the server. - Changing this changes the root password on the existing server. - :param pulumi.Input[str] availability_zone: The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - :param pulumi.Input[str] availability_zone_hints: The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceBlockDeviceArgs', 'InstanceBlockDeviceArgsDict']]]] block_devices: Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - :param pulumi.Input[bool] config_drive: Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - :param pulumi.Input[str] flavor_id: The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[str] flavor_name: The name of the - desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[bool] force_delete: Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - :param pulumi.Input[str] image_id: (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - :param pulumi.Input[str] image_name: (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - :param pulumi.Input[str] key_pair: The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] network_mode: Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceNetworkArgs', 'InstanceNetworkArgsDict']]]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstancePersonalityArgs', 'InstancePersonalityArgsDict']]]] personalities: Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - :param pulumi.Input[str] power_state: Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - :param pulumi.Input[str] region: The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceSchedulerHintArgs', 'InstanceSchedulerHintArgsDict']]]] scheduler_hints: Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - :param pulumi.Input[bool] stop_before_destroy: Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the instance. Changing this - updates the existing instance tags. - :param pulumi.Input[str] user_data: The user data to provide when launching the instance. - Changing this creates a new server. - :param pulumi.Input[Union['InstanceVendorOptionsArgs', 'InstanceVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ ... @overload @@ -1368,85 +875,6 @@ def get(resource_name: str, :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] access_ip_v4: The first detected Fixed IPv4 address. - :param pulumi.Input[str] access_ip_v6: The first detected Fixed IPv6 address. - :param pulumi.Input[str] admin_pass: The administrative password to assign to the server. - Changing this changes the root password on the existing server. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the instance, which have - been explicitly and implicitly added. - :param pulumi.Input[str] availability_zone: The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - :param pulumi.Input[str] availability_zone_hints: The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceBlockDeviceArgs', 'InstanceBlockDeviceArgsDict']]]] block_devices: Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - :param pulumi.Input[bool] config_drive: Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - :param pulumi.Input[str] created: The creation time of the instance. - :param pulumi.Input[str] flavor_id: The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[str] flavor_name: The name of the - desired flavor for the server. Changing this resizes the existing server. - :param pulumi.Input[bool] force_delete: Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - :param pulumi.Input[str] image_id: (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - :param pulumi.Input[str] image_name: (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - :param pulumi.Input[str] key_pair: The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] network_mode: Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceNetworkArgs', 'InstanceNetworkArgsDict']]]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstancePersonalityArgs', 'InstancePersonalityArgsDict']]]] personalities: Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - :param pulumi.Input[str] power_state: Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - :param pulumi.Input[str] region: The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceSchedulerHintArgs', 'InstanceSchedulerHintArgsDict']]]] scheduler_hints: Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - :param pulumi.Input[bool] stop_before_destroy: Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the instance. Changing this - updates the existing instance tags. - :param pulumi.Input[str] updated: The time when the instance was last updated. - :param pulumi.Input[str] user_data: The user data to provide when launching the instance. - Changing this creates a new server. - :param pulumi.Input[Union['InstanceVendorOptionsArgs', 'InstanceVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1487,26 +915,16 @@ def get(resource_name: str, @property @pulumi.getter(name="accessIpV4") def access_ip_v4(self) -> pulumi.Output[str]: - """ - The first detected Fixed IPv4 address. - """ return pulumi.get(self, "access_ip_v4") @property @pulumi.getter(name="accessIpV6") def access_ip_v6(self) -> pulumi.Output[str]: - """ - The first detected Fixed IPv6 address. - """ return pulumi.get(self, "access_ip_v6") @property @pulumi.getter(name="adminPass") def admin_pass(self) -> pulumi.Output[Optional[str]]: - """ - The administrative password to assign to the server. - Changing this changes the root password on the existing server. - """ return pulumi.get(self, "admin_pass") @property @@ -1517,257 +935,130 @@ def all_metadata(self) -> pulumi.Output[Mapping[str, str]]: @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the instance, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> pulumi.Output[str]: - """ - The availability zone in which to create - the server. Conflicts with `availability_zone_hints`. Changing this creates - a new server. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> pulumi.Output[Optional[str]]: - """ - The availability zone in which to - create the server. This argument is preferred to `availability_zone`, when - scheduling the server on a - [particular](https://docs.openstack.org/nova/latest/admin/availability-zones.html) - host or node. Conflicts with `availability_zone`. Changing this creates a - new server. - """ return pulumi.get(self, "availability_zone_hints") @property @pulumi.getter(name="blockDevices") def block_devices(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceBlockDevice']]]: - """ - Configuration of block devices. The block_device - structure is documented below. Changing this creates a new server. - You can specify multiple block devices which will create an instance with - multiple disks. This configuration is very flexible, so please see the - following [reference](https://docs.openstack.org/nova/latest/user/block-device-mapping.html) - for more information. - """ return pulumi.get(self, "block_devices") @property @pulumi.getter(name="configDrive") def config_drive(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to use the config_drive feature to - configure the instance. Changing this creates a new server. - """ return pulumi.get(self, "config_drive") @property @pulumi.getter def created(self) -> pulumi.Output[str]: - """ - The creation time of the instance. - """ return pulumi.get(self, "created") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - The flavor ID of - the desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="flavorName") def flavor_name(self) -> pulumi.Output[str]: - """ - The name of the - desired flavor for the server. Changing this resizes the existing server. - """ return pulumi.get(self, "flavor_name") @property @pulumi.getter(name="forceDelete") def force_delete(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to force the OpenStack instance to be - forcefully deleted. This is useful for environments that have reclaim / soft - deletion enabled. - """ return pulumi.get(self, "force_delete") @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: - """ - (Optional; Required if `image_name` is empty and not booting - from a volume. Do not specify if booting from a volume.) The image ID of - the desired image for the server. Changing this rebuilds the existing - server. - """ return pulumi.get(self, "image_id") @property @pulumi.getter(name="imageName") def image_name(self) -> pulumi.Output[str]: - """ - (Optional; Required if `image_id` is empty and not booting - from a volume. Do not specify if booting from a volume.) The name of the - desired image for the server. Changing this rebuilds the existing server. - """ return pulumi.get(self, "image_name") @property @pulumi.getter(name="keyPair") def key_pair(self) -> pulumi.Output[Optional[str]]: - """ - The name of a key pair to put on the server. The key - pair must already be created and associated with the tenant's account. - Changing this creates a new server. - """ return pulumi.get(self, "key_pair") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Metadata key/value pairs to make available from - within the instance. Changing this updates the existing server metadata. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkMode") def network_mode(self) -> pulumi.Output[Optional[str]]: - """ - Special string for `network` option to create - the server. `network_mode` can be `"auto"` or `"none"`. - Please see the following [reference](https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#id11) for more information. Conflicts with `network`. - """ return pulumi.get(self, "network_mode") @property @pulumi.getter def networks(self) -> pulumi.Output[Sequence['outputs.InstanceNetwork']]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new server. - """ return pulumi.get(self, "networks") @property @pulumi.getter def personalities(self) -> pulumi.Output[Optional[Sequence['outputs.InstancePersonality']]]: - """ - Customize the personality of an instance by - defining one or more files and their contents. The personality structure - is described below. Changing this rebuilds the existing server. - """ return pulumi.get(self, "personalities") @property @pulumi.getter(name="powerState") def power_state(self) -> pulumi.Output[Optional[str]]: - """ - Provide the VM state. Only 'active', 'shutoff', 'paused' - and 'shelved_offloaded' are supported values. - *Note*: If the initial power_state is the shutoff or paused - the VM will be stopped immediately after build and the provisioners like - remote-exec or files are not supported. - """ return pulumi.get(self, "power_state") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the server instance. If - omitted, the `region` argument of the provider is used. Changing this - creates a new server. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="schedulerHints") def scheduler_hints(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceSchedulerHint']]]: - """ - Provide the Nova scheduler with hints on how - the instance should be launched. The available hints are described below. - """ return pulumi.get(self, "scheduler_hints") @property @pulumi.getter(name="securityGroups") def security_groups(self) -> pulumi.Output[Sequence[str]]: - """ - An array of one or more security group names - to associate with the server. Changing this results in adding/removing - security groups from the existing server. *Note*: When attaching the - instance to networks using Ports, place the security groups on the Port - and not the instance. *Note*: Names should be used and not ids, as ids - trigger unnecessary updates. - """ return pulumi.get(self, "security_groups") @property @pulumi.getter(name="stopBeforeDestroy") def stop_before_destroy(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to try stop instance gracefully - before destroying it, thus giving chance for guest OS daemons to stop correctly. - If instance doesn't stop within timeout, it will be destroyed anyway. - """ return pulumi.get(self, "stop_before_destroy") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the instance. Changing this - updates the existing instance tags. - """ return pulumi.get(self, "tags") @property @pulumi.getter def updated(self) -> pulumi.Output[str]: - """ - The time when the instance was last updated. - """ return pulumi.get(self, "updated") @property @pulumi.getter(name="userData") def user_data(self) -> pulumi.Output[Optional[str]]: - """ - The user data to provide when launching the instance. - Changing this creates a new server. - """ return pulumi.get(self, "user_data") @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> pulumi.Output[Optional['outputs.InstanceVendorOptions']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") diff --git a/sdk/python/pulumi_openstack/compute/interface_attach.py b/sdk/python/pulumi_openstack/compute/interface_attach.py index a46e7c3f5..2b7ef26fc 100644 --- a/sdk/python/pulumi_openstack/compute/interface_attach.py +++ b/sdk/python/pulumi_openstack/compute/interface_attach.py @@ -21,16 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a InterfaceAttach resource. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Port or Network to. - :param pulumi.Input[str] fixed_ip: An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - :param pulumi.Input[str] network_id: The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - :param pulumi.Input[str] port_id: The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - :param pulumi.Input[str] region: The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. """ pulumi.set(__self__, "instance_id", instance_id) if fixed_ip is not None: @@ -45,9 +35,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Input[str]: - """ - The ID of the Instance to attach the Port or Network to. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -57,10 +44,6 @@ def instance_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> Optional[pulumi.Input[str]]: - """ - An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - """ return pulumi.get(self, "fixed_ip") @fixed_ip.setter @@ -70,10 +53,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -83,10 +62,6 @@ def network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -96,11 +71,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. - """ return pulumi.get(self, "region") @region.setter @@ -118,16 +88,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering InterfaceAttach resources. - :param pulumi.Input[str] fixed_ip: An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Port or Network to. - :param pulumi.Input[str] network_id: The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - :param pulumi.Input[str] port_id: The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - :param pulumi.Input[str] region: The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. """ if fixed_ip is not None: pulumi.set(__self__, "fixed_ip", fixed_ip) @@ -143,10 +103,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> Optional[pulumi.Input[str]]: - """ - An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - """ return pulumi.get(self, "fixed_ip") @fixed_ip.setter @@ -156,9 +112,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Instance to attach the Port or Network to. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -168,10 +121,6 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -181,10 +130,6 @@ def network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -194,11 +139,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. - """ return pulumi.get(self, "region") @region.setter @@ -218,88 +158,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Attaches a Network Interface (a Port) to an Instance using the OpenStack - Compute (Nova) v2 API. - - ## Example Usage - - ### Basic Attachment - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - network_id=network1.id) - ``` - - ### Attachment Specifying a Fixed IP - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - network_id=network1_openstack_networking_port_v2["id"], - fixed_ip="10.0.10.10") - ``` - - ### Attachment Using an Existing Port - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - port_id=port1.id) - ``` - - ## Import - - Interface Attachments can be imported using the Instance ID and Port ID - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:compute/interfaceAttach:InterfaceAttach ai_1 89c60255-9bd6-460c-822a-e2b959ede9d2/45670584-225f-46c3-b33e-6707b589b666 - ``` - + Create a InterfaceAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] fixed_ip: An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Port or Network to. - :param pulumi.Input[str] network_id: The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - :param pulumi.Input[str] port_id: The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - :param pulumi.Input[str] region: The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. """ ... @overload @@ -308,76 +169,7 @@ def __init__(__self__, args: InterfaceAttachArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Attaches a Network Interface (a Port) to an Instance using the OpenStack - Compute (Nova) v2 API. - - ## Example Usage - - ### Basic Attachment - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - network_id=network1.id) - ``` - - ### Attachment Specifying a Fixed IP - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - network_id=network1_openstack_networking_port_v2["id"], - fixed_ip="10.0.10.10") - ``` - - ### Attachment Using an Existing Port - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - ai1 = openstack.compute.InterfaceAttach("ai_1", - instance_id=instance1.id, - port_id=port1.id) - ``` - - ## Import - - Interface Attachments can be imported using the Instance ID and Port ID - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:compute/interfaceAttach:InterfaceAttach ai_1 89c60255-9bd6-460c-822a-e2b959ede9d2/45670584-225f-46c3-b33e-6707b589b666 - ``` - + Create a InterfaceAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param InterfaceAttachArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -436,16 +228,6 @@ def get(resource_name: str, :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] fixed_ip: An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Port or Network to. - :param pulumi.Input[str] network_id: The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - :param pulumi.Input[str] port_id: The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - :param pulumi.Input[str] region: The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -461,45 +243,25 @@ def get(resource_name: str, @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> pulumi.Output[str]: - """ - An IP address to assosciate with the port. - _NOTE_: This option cannot be used with port_id. You must specifiy a network_id. The IP address must lie in a range on the supplied network. - """ return pulumi.get(self, "fixed_ip") @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: - """ - The ID of the Instance to attach the Port or Network to. - """ return pulumi.get(self, "instance_id") @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Output[str]: - """ - The ID of the Network to attach to an Instance. A port will be created automatically. - _NOTE_: This option and `port_id` are mutually exclusive. - """ return pulumi.get(self, "network_id") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - The ID of the Port to attach to an Instance. - _NOTE_: This option and `network_id` are mutually exclusive. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the interface attachment. - If omitted, the `region` argument of the provider is used. Changing this - creates a new attachment. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/compute/keypair.py b/sdk/python/pulumi_openstack/compute/keypair.py index ee832ec5e..37bc5117e 100644 --- a/sdk/python/pulumi_openstack/compute/keypair.py +++ b/sdk/python/pulumi_openstack/compute/keypair.py @@ -21,21 +21,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Keypair resource. - :param pulumi.Input[str] name: A unique name for the keypair. Changing this creates a new - keypair. - :param pulumi.Input[str] public_key: A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - :param pulumi.Input[str] user_id: This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if name is not None: pulumi.set(__self__, "name", name) @@ -51,10 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the keypair. Changing this creates a new - keypair. - """ return pulumi.get(self, "name") @name.setter @@ -64,13 +45,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="publicKey") def public_key(self) -> Optional[pulumi.Input[str]]: - """ - A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - """ return pulumi.get(self, "public_key") @public_key.setter @@ -80,12 +54,6 @@ def public_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - """ return pulumi.get(self, "region") @region.setter @@ -95,11 +63,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -109,9 +72,6 @@ def user_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -131,23 +91,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Keypair resources. - :param pulumi.Input[str] fingerprint: The fingerprint of the public key. - :param pulumi.Input[str] name: A unique name for the keypair. Changing this creates a new - keypair. - :param pulumi.Input[str] private_key: The generated private key when no public key is specified. - :param pulumi.Input[str] public_key: A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - :param pulumi.Input[str] user_id: This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if fingerprint is not None: pulumi.set(__self__, "fingerprint", fingerprint) @@ -167,9 +110,6 @@ def __init__(__self__, *, @property @pulumi.getter def fingerprint(self) -> Optional[pulumi.Input[str]]: - """ - The fingerprint of the public key. - """ return pulumi.get(self, "fingerprint") @fingerprint.setter @@ -179,10 +119,6 @@ def fingerprint(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the keypair. Changing this creates a new - keypair. - """ return pulumi.get(self, "name") @name.setter @@ -192,9 +128,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="privateKey") def private_key(self) -> Optional[pulumi.Input[str]]: - """ - The generated private key when no public key is specified. - """ return pulumi.get(self, "private_key") @private_key.setter @@ -204,13 +137,6 @@ def private_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="publicKey") def public_key(self) -> Optional[pulumi.Input[str]]: - """ - A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - """ return pulumi.get(self, "public_key") @public_key.setter @@ -220,12 +146,6 @@ def public_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - """ return pulumi.get(self, "region") @region.setter @@ -235,11 +155,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -249,9 +164,6 @@ def user_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -271,53 +183,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - ## Example Usage - - ### Import an Existing Public Key - - ```python - import pulumi - import pulumi_openstack as openstack - - test_keypair = openstack.compute.Keypair("test-keypair", - name="my-keypair", - public_key="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAjpC1hwiOCCmKEWxJ4qzTTsJbKzndLotBCz5PcwtUnflmU+gHJtWMZKpuEGVi29h0A/+ydKek1O18k10Ff+4tyFjiHDQAnOfgWf7+b1yK+qDip3X1C0UPMbwHlTfSGWLGZqd9LvEFx9k3h/M+VtMvwR1lJ9LUyTAImnNjWG7TaIPmui30HvM2UiFEmqkr4ijq45MyX2+fLIePLRIF61p4whjHAQYufqyno3BS48icQb4p6iVEZPo4AE2o9oIyQvj2mx4dk5Y8CgSETOZTYDOR3rU2fZTRDRgPJDH9FWvQjF5tA0p3d9CoWWd2s6GKKbfoUIi8R/Db1BSPJwkqB") - ``` - - ### Generate a Public/Private Key Pair - - ```python - import pulumi - import pulumi_openstack as openstack - - test_keypair = openstack.compute.Keypair("test-keypair", name="my-keypair") - ``` - - ## Import - - Keypairs can be imported using the `name`, e.g. - - ```sh - $ pulumi import openstack:compute/keypair:Keypair my-keypair test-keypair - ``` - + Create a Keypair resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] name: A unique name for the keypair. Changing this creates a new - keypair. - :param pulumi.Input[str] public_key: A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - :param pulumi.Input[str] user_id: This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -326,36 +194,7 @@ def __init__(__self__, args: Optional[KeypairArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Example Usage - - ### Import an Existing Public Key - - ```python - import pulumi - import pulumi_openstack as openstack - - test_keypair = openstack.compute.Keypair("test-keypair", - name="my-keypair", - public_key="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAjpC1hwiOCCmKEWxJ4qzTTsJbKzndLotBCz5PcwtUnflmU+gHJtWMZKpuEGVi29h0A/+ydKek1O18k10Ff+4tyFjiHDQAnOfgWf7+b1yK+qDip3X1C0UPMbwHlTfSGWLGZqd9LvEFx9k3h/M+VtMvwR1lJ9LUyTAImnNjWG7TaIPmui30HvM2UiFEmqkr4ijq45MyX2+fLIePLRIF61p4whjHAQYufqyno3BS48icQb4p6iVEZPo4AE2o9oIyQvj2mx4dk5Y8CgSETOZTYDOR3rU2fZTRDRgPJDH9FWvQjF5tA0p3d9CoWWd2s6GKKbfoUIi8R/Db1BSPJwkqB") - ``` - - ### Generate a Public/Private Key Pair - - ```python - import pulumi - import pulumi_openstack as openstack - - test_keypair = openstack.compute.Keypair("test-keypair", name="my-keypair") - ``` - - ## Import - - Keypairs can be imported using the `name`, e.g. - - ```sh - $ pulumi import openstack:compute/keypair:Keypair my-keypair test-keypair - ``` - + Create a Keypair resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param KeypairArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -418,23 +257,6 @@ def get(resource_name: str, :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] fingerprint: The fingerprint of the public key. - :param pulumi.Input[str] name: A unique name for the keypair. Changing this creates a new - keypair. - :param pulumi.Input[str] private_key: The generated private key when no public key is specified. - :param pulumi.Input[str] public_key: A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - :param pulumi.Input[str] user_id: This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -452,66 +274,35 @@ def get(resource_name: str, @property @pulumi.getter def fingerprint(self) -> pulumi.Output[str]: - """ - The fingerprint of the public key. - """ return pulumi.get(self, "fingerprint") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the keypair. Changing this creates a new - keypair. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="privateKey") def private_key(self) -> pulumi.Output[str]: - """ - The generated private key when no public key is specified. - """ return pulumi.get(self, "private_key") @property @pulumi.getter(name="publicKey") def public_key(self) -> pulumi.Output[str]: - """ - A pregenerated OpenSSH-formatted public key. - Changing this creates a new keypair. If a public key is not specified, then - a public/private key pair will be automatically generated. If a pair is - created, then destroying this resource means you will lose access to that - keypair forever. - """ return pulumi.get(self, "public_key") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new keypair. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[str]: - """ - This allows administrative users to operate key-pairs - of specified user ID. For this feature your need to have openstack microversion - 2.10 (Liberty) or later. - """ return pulumi.get(self, "user_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/compute/outputs.py b/sdk/python/pulumi_openstack/compute/outputs.py index a6e8f1ee3..ff6ad4ac6 100644 --- a/sdk/python/pulumi_openstack/compute/outputs.py +++ b/sdk/python/pulumi_openstack/compute/outputs.py @@ -67,40 +67,6 @@ def __init__(__self__, *, uuid: Optional[str] = None, volume_size: Optional[int] = None, volume_type: Optional[str] = None): - """ - :param str source_type: The source type of the device. Must be one of - "blank", "image", "volume", or "snapshot". Changing this creates a new - server. - :param int boot_index: The boot index of the volume. It defaults to 0. - Changing this creates a new server. - :param bool delete_on_termination: Delete the volume / block device upon - termination of the instance. Defaults to false. Changing this creates a - new server. - :param str destination_type: The type that gets created. Possible values - are "volume" and "local". Changing this creates a new server. - :param str device_type: The low-level device type that will be used. Most - common thing is to leave this empty. Changing this creates a new server. - :param str disk_bus: The low-level disk bus that will be used. Most common - thing is to leave this empty. Changing this creates a new server. - :param str guest_format: Specifies the guest server disk file system format, - such as `ext2`, `ext3`, `ext4`, `xfs` or `swap`. Swap block device mappings - have the following restrictions: source_type must be blank and destination_type - must be local and only one swap disk per server and the size of the swap disk - must be less than or equal to the swap size of the flavor. Changing this - creates a new server. - :param bool multiattach: Enable the attachment of multiattach-capable - volumes. - :param str uuid: The UUID of - the image, volume, or snapshot. Changing this creates a new server. - :param int volume_size: The size of the volume to create (in gigabytes). Required - in the following combinations: source=image and destination=volume, - source=blank and destination=local, and source=blank and destination=volume. - Changing this creates a new server. - :param str volume_type: The volume type that will be used, for example SSD - or HDD storage. The available options depend on how your specific OpenStack - cloud is configured and what classes of storage are provided. Changing this - creates a new server. - """ pulumi.set(__self__, "source_type", source_type) if boot_index is not None: pulumi.set(__self__, "boot_index", boot_index) @@ -126,110 +92,56 @@ def __init__(__self__, *, @property @pulumi.getter(name="sourceType") def source_type(self) -> str: - """ - The source type of the device. Must be one of - "blank", "image", "volume", or "snapshot". Changing this creates a new - server. - """ return pulumi.get(self, "source_type") @property @pulumi.getter(name="bootIndex") def boot_index(self) -> Optional[int]: - """ - The boot index of the volume. It defaults to 0. - Changing this creates a new server. - """ return pulumi.get(self, "boot_index") @property @pulumi.getter(name="deleteOnTermination") def delete_on_termination(self) -> Optional[bool]: - """ - Delete the volume / block device upon - termination of the instance. Defaults to false. Changing this creates a - new server. - """ return pulumi.get(self, "delete_on_termination") @property @pulumi.getter(name="destinationType") def destination_type(self) -> Optional[str]: - """ - The type that gets created. Possible values - are "volume" and "local". Changing this creates a new server. - """ return pulumi.get(self, "destination_type") @property @pulumi.getter(name="deviceType") def device_type(self) -> Optional[str]: - """ - The low-level device type that will be used. Most - common thing is to leave this empty. Changing this creates a new server. - """ return pulumi.get(self, "device_type") @property @pulumi.getter(name="diskBus") def disk_bus(self) -> Optional[str]: - """ - The low-level disk bus that will be used. Most common - thing is to leave this empty. Changing this creates a new server. - """ return pulumi.get(self, "disk_bus") @property @pulumi.getter(name="guestFormat") def guest_format(self) -> Optional[str]: - """ - Specifies the guest server disk file system format, - such as `ext2`, `ext3`, `ext4`, `xfs` or `swap`. Swap block device mappings - have the following restrictions: source_type must be blank and destination_type - must be local and only one swap disk per server and the size of the swap disk - must be less than or equal to the swap size of the flavor. Changing this - creates a new server. - """ return pulumi.get(self, "guest_format") @property @pulumi.getter def multiattach(self) -> Optional[bool]: - """ - Enable the attachment of multiattach-capable - volumes. - """ return pulumi.get(self, "multiattach") @property @pulumi.getter def uuid(self) -> Optional[str]: - """ - The UUID of - the image, volume, or snapshot. Changing this creates a new server. - """ return pulumi.get(self, "uuid") @property @pulumi.getter(name="volumeSize") def volume_size(self) -> Optional[int]: - """ - The size of the volume to create (in gigabytes). Required - in the following combinations: source=image and destination=volume, - source=blank and destination=local, and source=blank and destination=volume. - Changing this creates a new server. - """ return pulumi.get(self, "volume_size") @property @pulumi.getter(name="volumeType") def volume_type(self) -> Optional[str]: - """ - The volume type that will be used, for example SSD - or HDD storage. The available options depend on how your specific OpenStack - cloud is configured and what classes of storage are provided. Changing this - creates a new server. - """ return pulumi.get(self, "volume_type") @@ -264,18 +176,6 @@ def __init__(__self__, *, name: Optional[str] = None, port: Optional[str] = None, uuid: Optional[str] = None): - """ - :param bool access_network: Specifies if this network should be used for - provisioning access. Accepts true or false. Defaults to false. - :param str fixed_ip_v4: Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new server. - :param str name: The human-readable - name of the network. Changing this creates a new server. - :param str port: The port UUID of a - network to attach to the server. Changing this creates a new server. - :param str uuid: The network UUID to - attach to the server. Changing this creates a new server. - """ if access_network is not None: pulumi.set(__self__, "access_network", access_network) if fixed_ip_v4 is not None: @@ -294,19 +194,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessNetwork") def access_network(self) -> Optional[bool]: - """ - Specifies if this network should be used for - provisioning access. Accepts true or false. Defaults to false. - """ return pulumi.get(self, "access_network") @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> Optional[str]: - """ - Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new server. - """ return pulumi.get(self, "fixed_ip_v4") @property @@ -322,28 +214,16 @@ def mac(self) -> Optional[str]: @property @pulumi.getter def name(self) -> Optional[str]: - """ - The human-readable - name of the network. Changing this creates a new server. - """ return pulumi.get(self, "name") @property @pulumi.getter def port(self) -> Optional[str]: - """ - The port UUID of a - network to attach to the server. Changing this creates a new server. - """ return pulumi.get(self, "port") @property @pulumi.getter def uuid(self) -> Optional[str]: - """ - The network UUID to - attach to the server. Changing this creates a new server. - """ return pulumi.get(self, "uuid") @@ -352,27 +232,17 @@ class InstancePersonality(dict): def __init__(__self__, *, content: str, file: str): - """ - :param str content: The contents of the file. Limited to 255 bytes. - :param str file: The absolute path of the destination file. - """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "file", file) @property @pulumi.getter def content(self) -> str: - """ - The contents of the file. Limited to 255 bytes. - """ return pulumi.get(self, "content") @property @pulumi.getter def file(self) -> str: - """ - The absolute path of the destination file. - """ return pulumi.get(self, "file") @@ -414,31 +284,6 @@ def __init__(__self__, *, queries: Optional[Sequence[str]] = None, same_hosts: Optional[Sequence[str]] = None, target_cell: Optional[str] = None): - """ - :param Mapping[str, str] additional_properties: Arbitrary key/value pairs of additional - properties to pass to the scheduler. - :param str build_near_host_ip: An IP Address in CIDR form. The instance - will be placed on a compute node that is in the same subnet. - :param Sequence[str] different_cells: The names of cells where not to build the instance. - :param Sequence[str] different_hosts: A list of instance UUIDs. The instance will - be scheduled on a different host than all other instances. - :param str group: A UUID of a Server Group. The instance will be placed - into that group. See reference - for details on managing servergroup resources - :param Sequence[str] queries: A conditional query that a compute node must pass in - order to host an instance. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [">=", "$free_ram_mb", "1024"] - ``` - :param Sequence[str] same_hosts: A list of instance UUIDs. The instance will be - scheduled on the same host of those specified. - :param str target_cell: The name of a cell to host the instance. - """ if additional_properties is not None: pulumi.set(__self__, "additional_properties", additional_properties) if build_near_host_ip is not None: @@ -459,80 +304,41 @@ def __init__(__self__, *, @property @pulumi.getter(name="additionalProperties") def additional_properties(self) -> Optional[Mapping[str, str]]: - """ - Arbitrary key/value pairs of additional - properties to pass to the scheduler. - """ return pulumi.get(self, "additional_properties") @property @pulumi.getter(name="buildNearHostIp") def build_near_host_ip(self) -> Optional[str]: - """ - An IP Address in CIDR form. The instance - will be placed on a compute node that is in the same subnet. - """ return pulumi.get(self, "build_near_host_ip") @property @pulumi.getter(name="differentCells") def different_cells(self) -> Optional[Sequence[str]]: - """ - The names of cells where not to build the instance. - """ return pulumi.get(self, "different_cells") @property @pulumi.getter(name="differentHosts") def different_hosts(self) -> Optional[Sequence[str]]: - """ - A list of instance UUIDs. The instance will - be scheduled on a different host than all other instances. - """ return pulumi.get(self, "different_hosts") @property @pulumi.getter def group(self) -> Optional[str]: - """ - A UUID of a Server Group. The instance will be placed - into that group. See reference - for details on managing servergroup resources - """ return pulumi.get(self, "group") @property @pulumi.getter def queries(self) -> Optional[Sequence[str]]: - """ - A conditional query that a compute node must pass in - order to host an instance. The query must use the `JsonFilter` syntax - which is described - [here](https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#jsonfilter). - At this time, only simple queries are supported. Compound queries using - `and`, `or`, or `not` are not supported. An example of a simple query is: - - ``` - [">=", "$free_ram_mb", "1024"] - ``` - """ return pulumi.get(self, "queries") @property @pulumi.getter(name="sameHosts") def same_hosts(self) -> Optional[Sequence[str]]: - """ - A list of instance UUIDs. The instance will be - scheduled on the same host of those specified. - """ return pulumi.get(self, "same_hosts") @property @pulumi.getter(name="targetCell") def target_cell(self) -> Optional[str]: - """ - The name of a cell to host the instance. - """ return pulumi.get(self, "target_cell") @@ -560,15 +366,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, detach_ports_before_destroy: Optional[bool] = None, ignore_resize_confirmation: Optional[bool] = None): - """ - :param bool detach_ports_before_destroy: Whether to try to detach all attached - ports to the vm before destroying it to make sure the port state is correct - after the vm destruction. This is helpful when the port is not deleted. - :param bool ignore_resize_confirmation: Boolean to control whether - to ignore manual confirmation of the instance resizing. This can be helpful - to work with some OpenStack clouds which automatically confirm resizing of - instances after some timeout. - """ if detach_ports_before_destroy is not None: pulumi.set(__self__, "detach_ports_before_destroy", detach_ports_before_destroy) if ignore_resize_confirmation is not None: @@ -577,22 +374,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="detachPortsBeforeDestroy") def detach_ports_before_destroy(self) -> Optional[bool]: - """ - Whether to try to detach all attached - ports to the vm before destroying it to make sure the port state is correct - after the vm destruction. This is helpful when the port is not deleted. - """ return pulumi.get(self, "detach_ports_before_destroy") @property @pulumi.getter(name="ignoreResizeConfirmation") def ignore_resize_confirmation(self) -> Optional[bool]: - """ - Boolean to control whether - to ignore manual confirmation of the instance resizing. This can be helpful - to work with some OpenStack clouds which automatically confirm resizing of - instances after some timeout. - """ return pulumi.get(self, "ignore_resize_confirmation") @@ -647,22 +433,12 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, ignore_volume_confirmation: Optional[bool] = None): - """ - :param bool ignore_volume_confirmation: Boolean to control whether - to ignore volume status confirmation of the attached volume. This can be helpful - to work with some OpenStack clouds which don't have the Block Storage V3 API available. - """ if ignore_volume_confirmation is not None: pulumi.set(__self__, "ignore_volume_confirmation", ignore_volume_confirmation) @property @pulumi.getter(name="ignoreVolumeConfirmation") def ignore_volume_confirmation(self) -> Optional[bool]: - """ - Boolean to control whether - to ignore volume status confirmation of the attached volume. This can be helpful - to work with some OpenStack clouds which don't have the Block Storage V3 API available. - """ return pulumi.get(self, "ignore_volume_confirmation") @@ -675,14 +451,6 @@ def __init__(__self__, *, name: str, port: str, uuid: str): - """ - :param str fixed_ip_v4: The IPv4 address assigned to this network port. - :param str fixed_ip_v6: The IPv6 address assigned to this network port. - :param str mac: The MAC address assigned to this network interface. - :param str name: The name of the network - :param str port: The port UUID for this network - :param str uuid: The UUID of the network - """ pulumi.set(__self__, "fixed_ip_v4", fixed_ip_v4) pulumi.set(__self__, "fixed_ip_v6", fixed_ip_v6) pulumi.set(__self__, "mac", mac) @@ -693,49 +461,31 @@ def __init__(__self__, *, @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> str: - """ - The IPv4 address assigned to this network port. - """ return pulumi.get(self, "fixed_ip_v4") @property @pulumi.getter(name="fixedIpV6") def fixed_ip_v6(self) -> str: - """ - The IPv6 address assigned to this network port. - """ return pulumi.get(self, "fixed_ip_v6") @property @pulumi.getter def mac(self) -> str: - """ - The MAC address assigned to this network interface. - """ return pulumi.get(self, "mac") @property @pulumi.getter def name(self) -> str: - """ - The name of the network - """ return pulumi.get(self, "name") @property @pulumi.getter def port(self) -> str: - """ - The port UUID for this network - """ return pulumi.get(self, "port") @property @pulumi.getter def uuid(self) -> str: - """ - The UUID of the network - """ return pulumi.get(self, "uuid") diff --git a/sdk/python/pulumi_openstack/compute/quota_set_v2.py b/sdk/python/pulumi_openstack/compute/quota_set_v2.py index 30da14dff..65cd94cc0 100644 --- a/sdk/python/pulumi_openstack/compute/quota_set_v2.py +++ b/sdk/python/pulumi_openstack/compute/quota_set_v2.py @@ -32,39 +32,6 @@ def __init__(__self__, *, server_groups: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a QuotaSetV2 resource. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. - Changing this creates a new quotaset. - :param pulumi.Input[int] cores: Quota value for cores. - Changing this updates the existing quotaset. - :param pulumi.Input[int] fixed_ips: Quota value for fixed IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] floating_ips: Quota value for floating IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_content_bytes: Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_path_bytes: Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_files: Quota value for injected files. - Changing this updates the existing quotaset. - :param pulumi.Input[int] instances: Quota value for instances. - Changing this updates the existing quotaset. - :param pulumi.Input[int] key_pairs: Quota value for key pairs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] metadata_items: Quota value for metadata items. - Changing this updates the existing quotaset. - :param pulumi.Input[int] ram: Quota value for RAM. - Changing this updates the existing quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] security_group_rules: Quota value for security group rules. - Changing this updates the existing quotaset. - :param pulumi.Input[int] security_groups: Quota value for security groups. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_group_members: Quota value for server groups members. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_groups: Quota value for server groups. - Changing this updates the existing quotaset. """ pulumi.set(__self__, "project_id", project_id) if cores is not None: @@ -101,10 +68,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: - """ - ID of the project to manage quotas. - Changing this creates a new quotaset. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -114,10 +77,6 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def cores(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for cores. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "cores") @cores.setter @@ -127,10 +86,6 @@ def cores(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for fixed IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "fixed_ips") @fixed_ips.setter @@ -140,10 +95,6 @@ def fixed_ips(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="floatingIps") def floating_ips(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for floating IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "floating_ips") @floating_ips.setter @@ -153,10 +104,6 @@ def floating_ips(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFileContentBytes") def injected_file_content_bytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_content_bytes") @injected_file_content_bytes.setter @@ -166,10 +113,6 @@ def injected_file_content_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFilePathBytes") def injected_file_path_bytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_path_bytes") @injected_file_path_bytes.setter @@ -179,10 +122,6 @@ def injected_file_path_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFiles") def injected_files(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for injected files. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_files") @injected_files.setter @@ -192,10 +131,6 @@ def injected_files(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def instances(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for instances. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "instances") @instances.setter @@ -205,10 +140,6 @@ def instances(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="keyPairs") def key_pairs(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for key pairs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "key_pairs") @key_pairs.setter @@ -218,10 +149,6 @@ def key_pairs(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="metadataItems") def metadata_items(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for metadata items. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "metadata_items") @metadata_items.setter @@ -231,10 +158,6 @@ def metadata_items(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def ram(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for RAM. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "ram") @ram.setter @@ -244,11 +167,6 @@ def ram(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -258,10 +176,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupRules") def security_group_rules(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security group rules. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_group_rules") @security_group_rules.setter @@ -271,10 +185,6 @@ def security_group_rules(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroups") def security_groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_groups") @security_groups.setter @@ -284,10 +194,6 @@ def security_groups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="serverGroupMembers") def server_group_members(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for server groups members. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_group_members") @server_group_members.setter @@ -297,10 +203,6 @@ def server_group_members(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="serverGroups") def server_groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for server groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_groups") @server_groups.setter @@ -329,39 +231,6 @@ def __init__(__self__, *, server_groups: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering QuotaSetV2 resources. - :param pulumi.Input[int] cores: Quota value for cores. - Changing this updates the existing quotaset. - :param pulumi.Input[int] fixed_ips: Quota value for fixed IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] floating_ips: Quota value for floating IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_content_bytes: Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_path_bytes: Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_files: Quota value for injected files. - Changing this updates the existing quotaset. - :param pulumi.Input[int] instances: Quota value for instances. - Changing this updates the existing quotaset. - :param pulumi.Input[int] key_pairs: Quota value for key pairs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] metadata_items: Quota value for metadata items. - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. - Changing this creates a new quotaset. - :param pulumi.Input[int] ram: Quota value for RAM. - Changing this updates the existing quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] security_group_rules: Quota value for security group rules. - Changing this updates the existing quotaset. - :param pulumi.Input[int] security_groups: Quota value for security groups. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_group_members: Quota value for server groups members. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_groups: Quota value for server groups. - Changing this updates the existing quotaset. """ if cores is not None: pulumi.set(__self__, "cores", cores) @@ -399,10 +268,6 @@ def __init__(__self__, *, @property @pulumi.getter def cores(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for cores. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "cores") @cores.setter @@ -412,10 +277,6 @@ def cores(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for fixed IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "fixed_ips") @fixed_ips.setter @@ -425,10 +286,6 @@ def fixed_ips(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="floatingIps") def floating_ips(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for floating IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "floating_ips") @floating_ips.setter @@ -438,10 +295,6 @@ def floating_ips(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFileContentBytes") def injected_file_content_bytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_content_bytes") @injected_file_content_bytes.setter @@ -451,10 +304,6 @@ def injected_file_content_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFilePathBytes") def injected_file_path_bytes(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_path_bytes") @injected_file_path_bytes.setter @@ -464,10 +313,6 @@ def injected_file_path_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="injectedFiles") def injected_files(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for injected files. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_files") @injected_files.setter @@ -477,10 +322,6 @@ def injected_files(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def instances(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for instances. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "instances") @instances.setter @@ -490,10 +331,6 @@ def instances(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="keyPairs") def key_pairs(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for key pairs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "key_pairs") @key_pairs.setter @@ -503,10 +340,6 @@ def key_pairs(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="metadataItems") def metadata_items(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for metadata items. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "metadata_items") @metadata_items.setter @@ -516,10 +349,6 @@ def metadata_items(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the project to manage quotas. - Changing this creates a new quotaset. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -529,10 +358,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ram(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for RAM. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "ram") @ram.setter @@ -542,11 +367,6 @@ def ram(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @region.setter @@ -556,10 +376,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupRules") def security_group_rules(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security group rules. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_group_rules") @security_group_rules.setter @@ -569,10 +385,6 @@ def security_group_rules(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroups") def security_groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_groups") @security_groups.setter @@ -582,10 +394,6 @@ def security_groups(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="serverGroupMembers") def server_group_members(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for server groups members. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_group_members") @server_group_members.setter @@ -595,10 +403,6 @@ def server_group_members(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="serverGroups") def server_groups(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for server groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_groups") @server_groups.setter @@ -629,59 +433,9 @@ def __init__(__self__, server_groups: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V2 compute quotaset resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - ## Import - - Quotasets can be imported using the `project_id/region_name`, e.g. - - ```sh - $ pulumi import openstack:compute/quotaSetV2:QuotaSetV2 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuotaSetV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] cores: Quota value for cores. - Changing this updates the existing quotaset. - :param pulumi.Input[int] fixed_ips: Quota value for fixed IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] floating_ips: Quota value for floating IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_content_bytes: Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_path_bytes: Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_files: Quota value for injected files. - Changing this updates the existing quotaset. - :param pulumi.Input[int] instances: Quota value for instances. - Changing this updates the existing quotaset. - :param pulumi.Input[int] key_pairs: Quota value for key pairs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] metadata_items: Quota value for metadata items. - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. - Changing this creates a new quotaset. - :param pulumi.Input[int] ram: Quota value for RAM. - Changing this updates the existing quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] security_group_rules: Quota value for security group rules. - Changing this updates the existing quotaset. - :param pulumi.Input[int] security_groups: Quota value for security groups. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_group_members: Quota value for server groups members. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_groups: Quota value for server groups. - Changing this updates the existing quotaset. """ ... @overload @@ -690,24 +444,7 @@ def __init__(__self__, args: QuotaSetV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 compute quotaset resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - ## Import - - Quotasets can be imported using the `project_id/region_name`, e.g. - - ```sh - $ pulumi import openstack:compute/quotaSetV2:QuotaSetV2 quotaset_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuotaSetV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QuotaSetV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -799,39 +536,6 @@ def get(resource_name: str, :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[int] cores: Quota value for cores. - Changing this updates the existing quotaset. - :param pulumi.Input[int] fixed_ips: Quota value for fixed IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] floating_ips: Quota value for floating IPs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_content_bytes: Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_file_path_bytes: Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - :param pulumi.Input[int] injected_files: Quota value for injected files. - Changing this updates the existing quotaset. - :param pulumi.Input[int] instances: Quota value for instances. - Changing this updates the existing quotaset. - :param pulumi.Input[int] key_pairs: Quota value for key pairs. - Changing this updates the existing quotaset. - :param pulumi.Input[int] metadata_items: Quota value for metadata items. - Changing this updates the existing quotaset. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. - Changing this creates a new quotaset. - :param pulumi.Input[int] ram: Quota value for RAM. - Changing this updates the existing quotaset. - :param pulumi.Input[str] region: The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - :param pulumi.Input[int] security_group_rules: Quota value for security group rules. - Changing this updates the existing quotaset. - :param pulumi.Input[int] security_groups: Quota value for security groups. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_group_members: Quota value for server groups members. - Changing this updates the existing quotaset. - :param pulumi.Input[int] server_groups: Quota value for server groups. - Changing this updates the existing quotaset. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -858,145 +562,80 @@ def get(resource_name: str, @property @pulumi.getter def cores(self) -> pulumi.Output[int]: - """ - Quota value for cores. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "cores") @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> pulumi.Output[int]: - """ - Quota value for fixed IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "fixed_ips") @property @pulumi.getter(name="floatingIps") def floating_ips(self) -> pulumi.Output[int]: - """ - Quota value for floating IPs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "floating_ips") @property @pulumi.getter(name="injectedFileContentBytes") def injected_file_content_bytes(self) -> pulumi.Output[int]: - """ - Quota value for content bytes - of injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_content_bytes") @property @pulumi.getter(name="injectedFilePathBytes") def injected_file_path_bytes(self) -> pulumi.Output[int]: - """ - Quota value for path bytes of - injected files. Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_file_path_bytes") @property @pulumi.getter(name="injectedFiles") def injected_files(self) -> pulumi.Output[int]: - """ - Quota value for injected files. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "injected_files") @property @pulumi.getter def instances(self) -> pulumi.Output[int]: - """ - Quota value for instances. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "instances") @property @pulumi.getter(name="keyPairs") def key_pairs(self) -> pulumi.Output[int]: - """ - Quota value for key pairs. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "key_pairs") @property @pulumi.getter(name="metadataItems") def metadata_items(self) -> pulumi.Output[int]: - """ - Quota value for metadata items. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "metadata_items") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - ID of the project to manage quotas. - Changing this creates a new quotaset. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def ram(self) -> pulumi.Output[int]: - """ - Quota value for RAM. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "ram") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the volume. If - omitted, the `region` argument of the provider is used. Changing this - creates a new quotaset. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityGroupRules") def security_group_rules(self) -> pulumi.Output[int]: - """ - Quota value for security group rules. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_group_rules") @property @pulumi.getter(name="securityGroups") def security_groups(self) -> pulumi.Output[int]: - """ - Quota value for security groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "security_groups") @property @pulumi.getter(name="serverGroupMembers") def server_group_members(self) -> pulumi.Output[int]: - """ - Quota value for server groups members. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_group_members") @property @pulumi.getter(name="serverGroups") def server_groups(self) -> pulumi.Output[int]: - """ - Quota value for server groups. - Changing this updates the existing quotaset. - """ return pulumi.get(self, "server_groups") diff --git a/sdk/python/pulumi_openstack/compute/server_group.py b/sdk/python/pulumi_openstack/compute/server_group.py index b03abc3ea..9ade2fa09 100644 --- a/sdk/python/pulumi_openstack/compute/server_group.py +++ b/sdk/python/pulumi_openstack/compute/server_group.py @@ -23,17 +23,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a ServerGroup resource. - :param pulumi.Input[str] name: A unique name for the server group. Changing this creates - a new server group. - :param pulumi.Input[str] policies: A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - :param pulumi.Input['ServerGroupRulesArgs'] rules: The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if name is not None: pulumi.set(__self__, "name", name) @@ -49,10 +38,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the server group. Changing this creates - a new server group. - """ return pulumi.get(self, "name") @name.setter @@ -62,11 +47,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def policies(self) -> Optional[pulumi.Input[str]]: - """ - A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - """ return pulumi.get(self, "policies") @policies.setter @@ -76,11 +56,6 @@ def policies(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - """ return pulumi.get(self, "region") @region.setter @@ -90,10 +65,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rules(self) -> Optional[pulumi.Input['ServerGroupRulesArgs']]: - """ - The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - """ return pulumi.get(self, "rules") @rules.setter @@ -103,9 +74,6 @@ def rules(self, value: Optional[pulumi.Input['ServerGroupRulesArgs']]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -124,18 +92,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering ServerGroup resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] members: The instances that are part of this server group. - :param pulumi.Input[str] name: A unique name for the server group. Changing this creates - a new server group. - :param pulumi.Input[str] policies: A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - :param pulumi.Input['ServerGroupRulesArgs'] rules: The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if members is not None: pulumi.set(__self__, "members", members) @@ -153,9 +109,6 @@ def __init__(__self__, *, @property @pulumi.getter def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The instances that are part of this server group. - """ return pulumi.get(self, "members") @members.setter @@ -165,10 +118,6 @@ def members(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the server group. Changing this creates - a new server group. - """ return pulumi.get(self, "name") @name.setter @@ -178,11 +127,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def policies(self) -> Optional[pulumi.Input[str]]: - """ - A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - """ return pulumi.get(self, "policies") @policies.setter @@ -192,11 +136,6 @@ def policies(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - """ return pulumi.get(self, "region") @region.setter @@ -206,10 +145,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rules(self) -> Optional[pulumi.Input['ServerGroupRulesArgs']]: - """ - The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - """ return pulumi.get(self, "rules") @rules.setter @@ -219,9 +154,6 @@ def rules(self, value: Optional[pulumi.Input['ServerGroupRulesArgs']]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -241,94 +173,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Server Group resource within OpenStack. - - ## Example Usage - - ### Compute service API version 2.63 or below: - - ```python - import pulumi - import pulumi_openstack as openstack - - test_sg = openstack.compute.ServerGroup("test-sg", - name="my-sg", - policies="anti-affinity") - test_instance = openstack.compute.Instance("test-instance", - name="my-instance", - image_id="ad091b52-742f-469e-8f3c-fd81cadf0743", - flavor_id="3", - scheduler_hints=[{ - "group": test_sg.id, - }], - networks=[{ - "name": "my_network", - }]) - ``` - - ### Compute service API version 2.64 or above: - - ```python - import pulumi - import pulumi_openstack as openstack - - test_sg = openstack.compute.ServerGroup("test-sg", - name="my-sg", - policies="anti-affinity", - rules={ - "max_server_per_host": 3, - }) - test_instance = openstack.compute.Instance("test-instance", - name="my-instance", - image_id="ad091b52-742f-469e-8f3c-fd81cadf0743", - flavor_id="3", - scheduler_hints=[{ - "group": test_sg.id, - }], - networks=[{ - "name": "my_network", - }]) - ``` - - ## Policies - - * `affinity` - All instances/servers launched in this group will be hosted on - the same compute node. - - * `anti-affinity` - All instances/servers launched in this group will be - hosted on different compute nodes. - - * `soft-affinity` - All instances/servers launched in this group will be hosted - on the same compute node if possible, but if not possible they - still will be scheduled instead of failure. To use this policy your - OpenStack environment should support Compute service API 2.15 or above. - - * `soft-anti-affinity` - All instances/servers launched in this group will be - hosted on different compute nodes if possible, but if not possible they - still will be scheduled instead of failure. To use this policy your - OpenStack environment should support Compute service API 2.15 or above. - - ## Import - - Server Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:compute/serverGroup:ServerGroup test-sg 1bc30ee9-9d5b-4c30-bdd5-7f1e663f5edf - ``` - + Create a ServerGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] name: A unique name for the server group. Changing this creates - a new server group. - :param pulumi.Input[str] policies: A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - :param pulumi.Input[Union['ServerGroupRulesArgs', 'ServerGroupRulesArgsDict']] rules: The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -337,81 +184,7 @@ def __init__(__self__, args: Optional[ServerGroupArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Server Group resource within OpenStack. - - ## Example Usage - - ### Compute service API version 2.63 or below: - - ```python - import pulumi - import pulumi_openstack as openstack - - test_sg = openstack.compute.ServerGroup("test-sg", - name="my-sg", - policies="anti-affinity") - test_instance = openstack.compute.Instance("test-instance", - name="my-instance", - image_id="ad091b52-742f-469e-8f3c-fd81cadf0743", - flavor_id="3", - scheduler_hints=[{ - "group": test_sg.id, - }], - networks=[{ - "name": "my_network", - }]) - ``` - - ### Compute service API version 2.64 or above: - - ```python - import pulumi - import pulumi_openstack as openstack - - test_sg = openstack.compute.ServerGroup("test-sg", - name="my-sg", - policies="anti-affinity", - rules={ - "max_server_per_host": 3, - }) - test_instance = openstack.compute.Instance("test-instance", - name="my-instance", - image_id="ad091b52-742f-469e-8f3c-fd81cadf0743", - flavor_id="3", - scheduler_hints=[{ - "group": test_sg.id, - }], - networks=[{ - "name": "my_network", - }]) - ``` - - ## Policies - - * `affinity` - All instances/servers launched in this group will be hosted on - the same compute node. - - * `anti-affinity` - All instances/servers launched in this group will be - hosted on different compute nodes. - - * `soft-affinity` - All instances/servers launched in this group will be hosted - on the same compute node if possible, but if not possible they - still will be scheduled instead of failure. To use this policy your - OpenStack environment should support Compute service API 2.15 or above. - - * `soft-anti-affinity` - All instances/servers launched in this group will be - hosted on different compute nodes if possible, but if not possible they - still will be scheduled instead of failure. To use this policy your - OpenStack environment should support Compute service API 2.15 or above. - - ## Import - - Server Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:compute/serverGroup:ServerGroup test-sg 1bc30ee9-9d5b-4c30-bdd5-7f1e663f5edf - ``` - + Create a ServerGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ServerGroupArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -470,18 +243,6 @@ def get(resource_name: str, :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[str]]] members: The instances that are part of this server group. - :param pulumi.Input[str] name: A unique name for the server group. Changing this creates - a new server group. - :param pulumi.Input[str] policies: A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - :param pulumi.Input[Union['ServerGroupRulesArgs', 'ServerGroupRulesArgsDict']] rules: The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -498,54 +259,30 @@ def get(resource_name: str, @property @pulumi.getter def members(self) -> pulumi.Output[Sequence[str]]: - """ - The instances that are part of this server group. - """ return pulumi.get(self, "members") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the server group. Changing this creates - a new server group. - """ return pulumi.get(self, "name") @property @pulumi.getter def policies(self) -> pulumi.Output[Optional[str]]: - """ - A list of exactly one policy name to associate with - the server group. See the Policies section for more information. Changing this - creates a new server group. - """ return pulumi.get(self, "policies") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - If omitted, the `region` argument of the provider is used. Changing - this creates a new server group. - """ return pulumi.get(self, "region") @property @pulumi.getter def rules(self) -> pulumi.Output['outputs.ServerGroupRules']: - """ - The rules which are applied to specified `policy`. Currently, - only the `max_server_per_host` rule is supported for the `anti-affinity` policy. - """ return pulumi.get(self, "rules") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/compute/volume_attach.py b/sdk/python/pulumi_openstack/compute/volume_attach.py index a83cb0a34..efdd79ec1 100644 --- a/sdk/python/pulumi_openstack/compute/volume_attach.py +++ b/sdk/python/pulumi_openstack/compute/volume_attach.py @@ -25,18 +25,6 @@ def __init__(__self__, *, vendor_options: Optional[pulumi.Input['VolumeAttachVendorOptionsArgs']] = None): """ The set of arguments for constructing a VolumeAttach resource. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Volume to. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. - :param pulumi.Input[bool] multiattach: Enable attachment of multiattach-capable volumes. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - :param pulumi.Input[str] tag: Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - :param pulumi.Input['VolumeAttachVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ pulumi.set(__self__, "instance_id", instance_id) pulumi.set(__self__, "volume_id", volume_id) @@ -54,9 +42,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Input[str]: - """ - The ID of the Instance to attach the Volume to. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -66,9 +51,6 @@ def instance_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="volumeId") def volume_id(self) -> pulumi.Input[str]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") @volume_id.setter @@ -87,9 +69,6 @@ def device(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def multiattach(self) -> Optional[pulumi.Input[bool]]: - """ - Enable attachment of multiattach-capable volumes. - """ return pulumi.get(self, "multiattach") @multiattach.setter @@ -99,12 +78,6 @@ def multiattach(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - """ return pulumi.get(self, "region") @region.setter @@ -114,11 +87,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tag(self) -> Optional[pulumi.Input[str]]: - """ - Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - """ return pulumi.get(self, "tag") @tag.setter @@ -128,10 +96,6 @@ def tag(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['VolumeAttachVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -151,18 +115,6 @@ def __init__(__self__, *, volume_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering VolumeAttach resources. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Volume to. - :param pulumi.Input[bool] multiattach: Enable attachment of multiattach-capable volumes. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - :param pulumi.Input[str] tag: Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - :param pulumi.Input['VolumeAttachVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. """ if device is not None: pulumi.set(__self__, "device", device) @@ -191,9 +143,6 @@ def device(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Instance to attach the Volume to. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -203,9 +152,6 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def multiattach(self) -> Optional[pulumi.Input[bool]]: - """ - Enable attachment of multiattach-capable volumes. - """ return pulumi.get(self, "multiattach") @multiattach.setter @@ -215,12 +161,6 @@ def multiattach(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - """ return pulumi.get(self, "region") @region.setter @@ -230,11 +170,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tag(self) -> Optional[pulumi.Input[str]]: - """ - Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - """ return pulumi.get(self, "tag") @tag.setter @@ -244,10 +179,6 @@ def tag(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['VolumeAttachVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -257,9 +188,6 @@ def vendor_options(self, value: Optional[pulumi.Input['VolumeAttachVendorOptions @property @pulumi.getter(name="volumeId") def volume_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") @volume_id.setter @@ -281,84 +209,9 @@ def __init__(__self__, volume_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Attaches a Block Storage Volume to an Instance using the OpenStack - Compute (Nova) v2 API. - - ## Example Usage - - ### Basic attachment of a single volume to a single instance - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - va1 = openstack.compute.VolumeAttach("va_1", - instance_id=instance1.id, - volume_id=volume1.id) - ``` - - ### Using Multiattach-enabled volumes - - Multiattach Volumes are dependent upon your OpenStack cloud and not all - clouds support multiattach. Multiattach volumes require a volume_type that has [multiattach enabled](https://docs.openstack.org/cinder/latest/admin/volume-multiattach.html#multiattach-volume-type). - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1, - volume_type="multiattach") - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - instance2 = openstack.compute.Instance("instance_2", - name="instance_2", - security_groups=["default"]) - va1 = openstack.compute.VolumeAttach("va_1", - instance_id=instance1.id, - volume_id=volume1.id, - multiattach=True) - va2 = openstack.compute.VolumeAttach("va_2", - instance_id=instance2.id, - volume_id=volume1.id, - multiattach=True, - opts = pulumi.ResourceOptions(depends_on=[va1])) - ``` - - It is recommended to use `depends_on` for the attach resources - to enforce the volume attachments to happen one at a time. - - ## Import - - Volume Attachments can be imported using the Instance ID and Volume ID - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:compute/volumeAttach:VolumeAttach va_1 89c60255-9bd6-460c-822a-e2b959ede9d2/45670584-225f-46c3-b33e-6707b589b666 - ``` - + Create a VolumeAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] instance_id: The ID of the Instance to attach the Volume to. - :param pulumi.Input[bool] multiattach: Enable attachment of multiattach-capable volumes. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - :param pulumi.Input[str] tag: Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - :param pulumi.Input[Union['VolumeAttachVendorOptionsArgs', 'VolumeAttachVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. """ ... @overload @@ -367,70 +220,7 @@ def __init__(__self__, args: VolumeAttachArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Attaches a Block Storage Volume to an Instance using the OpenStack - Compute (Nova) v2 API. - - ## Example Usage - - ### Basic attachment of a single volume to a single instance - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - va1 = openstack.compute.VolumeAttach("va_1", - instance_id=instance1.id, - volume_id=volume1.id) - ``` - - ### Using Multiattach-enabled volumes - - Multiattach Volumes are dependent upon your OpenStack cloud and not all - clouds support multiattach. Multiattach volumes require a volume_type that has [multiattach enabled](https://docs.openstack.org/cinder/latest/admin/volume-multiattach.html#multiattach-volume-type). - - ```python - import pulumi - import pulumi_openstack as openstack - - volume1 = openstack.blockstorage.Volume("volume_1", - name="volume_1", - size=1, - volume_type="multiattach") - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"]) - instance2 = openstack.compute.Instance("instance_2", - name="instance_2", - security_groups=["default"]) - va1 = openstack.compute.VolumeAttach("va_1", - instance_id=instance1.id, - volume_id=volume1.id, - multiattach=True) - va2 = openstack.compute.VolumeAttach("va_2", - instance_id=instance2.id, - volume_id=volume1.id, - multiattach=True, - opts = pulumi.ResourceOptions(depends_on=[va1])) - ``` - - It is recommended to use `depends_on` for the attach resources - to enforce the volume attachments to happen one at a time. - - ## Import - - Volume Attachments can be imported using the Instance ID and Volume ID - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:compute/volumeAttach:VolumeAttach va_1 89c60255-9bd6-460c-822a-e2b959ede9d2/45670584-225f-46c3-b33e-6707b589b666 - ``` - + Create a VolumeAttach resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param VolumeAttachArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -497,18 +287,6 @@ def get(resource_name: str, :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] instance_id: The ID of the Instance to attach the Volume to. - :param pulumi.Input[bool] multiattach: Enable attachment of multiattach-capable volumes. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - :param pulumi.Input[str] tag: Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - :param pulumi.Input[Union['VolumeAttachVendorOptionsArgs', 'VolumeAttachVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. - :param pulumi.Input[str] volume_id: The ID of the Volume to attach to an Instance. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -531,54 +309,30 @@ def device(self) -> pulumi.Output[str]: @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: - """ - The ID of the Instance to attach the Volume to. - """ return pulumi.get(self, "instance_id") @property @pulumi.getter def multiattach(self) -> pulumi.Output[Optional[bool]]: - """ - Enable attachment of multiattach-capable volumes. - """ return pulumi.get(self, "multiattach") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - A Compute client is needed to create a volume attachment. If omitted, the - `region` argument of the provider is used. Changing this creates a - new volume attachment. - """ return pulumi.get(self, "region") @property @pulumi.getter def tag(self) -> pulumi.Output[Optional[str]]: - """ - Add a device role tag that is applied to the volume when - attaching it to the VM. Changing this creates a new volume attachment with - the new tag. Requires microversion >= 2.49. - """ return pulumi.get(self, "tag") @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> pulumi.Output[Optional['outputs.VolumeAttachVendorOptions']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @property @pulumi.getter(name="volumeId") def volume_id(self) -> pulumi.Output[str]: - """ - The ID of the Volume to attach to an Instance. - """ return pulumi.get(self, "volume_id") diff --git a/sdk/python/pulumi_openstack/containerinfra/cluster.py b/sdk/python/pulumi_openstack/containerinfra/cluster.py index 43892a054..9761cb9e1 100644 --- a/sdk/python/pulumi_openstack/containerinfra/cluster.py +++ b/sdk/python/pulumi_openstack/containerinfra/cluster.py @@ -33,43 +33,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Cluster resource. - :param pulumi.Input[str] cluster_template_id: The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - :param pulumi.Input[int] create_timeout: The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] discovery_url: The URL used for cluster node discovery. - Changing this creates a new cluster. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new cluster. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - :param pulumi.Input[str] keypair: The name of the Compute service SSH keypair. Changing - this creates a new cluster. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - :param pulumi.Input[int] master_count: The number of master nodes for the cluster. - Changing this creates a new cluster. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - :param pulumi.Input[str] name: The name of the cluster. Changing this creates a new - cluster. - :param pulumi.Input[int] node_count: The number of nodes for the cluster. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. """ pulumi.set(__self__, "cluster_template_id", cluster_template_id) if create_timeout is not None: @@ -108,10 +71,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterTemplateId") def cluster_template_id(self) -> pulumi.Input[str]: - """ - The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - """ return pulumi.get(self, "cluster_template_id") @cluster_template_id.setter @@ -121,10 +80,6 @@ def cluster_template_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="createTimeout") def create_timeout(self) -> Optional[pulumi.Input[int]]: - """ - The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "create_timeout") @create_timeout.setter @@ -134,10 +89,6 @@ def create_timeout(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="discoveryUrl") def discovery_url(self) -> Optional[pulumi.Input[str]]: - """ - The URL used for cluster node discovery. - Changing this creates a new cluster. - """ return pulumi.get(self, "discovery_url") @discovery_url.setter @@ -147,10 +98,6 @@ def discovery_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new cluster. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -160,10 +107,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> Optional[pulumi.Input[str]]: - """ - The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_network") @fixed_network.setter @@ -173,10 +116,6 @@ def fixed_network(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> Optional[pulumi.Input[str]]: - """ - The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_subnet") @fixed_subnet.setter @@ -186,11 +125,6 @@ def fixed_subnet(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - """ return pulumi.get(self, "flavor") @flavor.setter @@ -200,10 +134,6 @@ def flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - """ return pulumi.get(self, "floating_ip_enabled") @floating_ip_enabled.setter @@ -213,10 +143,6 @@ def floating_ip_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def keypair(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Compute service SSH keypair. Changing - this creates a new cluster. - """ return pulumi.get(self, "keypair") @keypair.setter @@ -226,10 +152,6 @@ def keypair(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "labels") @labels.setter @@ -239,10 +161,6 @@ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]) @property @pulumi.getter(name="masterCount") def master_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of master nodes for the cluster. - Changing this creates a new cluster. - """ return pulumi.get(self, "master_count") @master_count.setter @@ -252,11 +170,6 @@ def master_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - """ return pulumi.get(self, "master_flavor") @master_flavor.setter @@ -266,10 +179,6 @@ def master_flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - """ return pulumi.get(self, "master_lb_enabled") @master_lb_enabled.setter @@ -279,10 +188,6 @@ def master_lb_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - """ return pulumi.get(self, "merge_labels") @merge_labels.setter @@ -292,10 +197,6 @@ def merge_labels(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the cluster. Changing this creates a new - cluster. - """ return pulumi.get(self, "name") @name.setter @@ -305,9 +206,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="nodeCount") def node_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of nodes for the cluster. - """ return pulumi.get(self, "node_count") @node_count.setter @@ -317,12 +215,6 @@ def node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. - """ return pulumi.get(self, "region") @region.setter @@ -363,49 +255,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Cluster resources. - :param pulumi.Input[str] cluster_template_id: The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - :param pulumi.Input[int] create_timeout: The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] discovery_url: The URL used for cluster node discovery. - Changing this creates a new cluster. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new cluster. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - :param pulumi.Input[str] keypair: The name of the Compute service SSH keypair. Changing - this creates a new cluster. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - :param pulumi.Input[int] master_count: The number of master nodes for the cluster. - Changing this creates a new cluster. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - :param pulumi.Input[str] name: The name of the cluster. Changing this creates a new - cluster. - :param pulumi.Input[int] node_count: The number of nodes for the cluster. - :param pulumi.Input[str] project_id: The project of the cluster. Required if admin wants - to create a cluster in another project. Changing this creates a new - cluster. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. - :param pulumi.Input[str] user_id: The user of the cluster. Required if admin wants to - create a cluster template for another user. Changing this creates a new - cluster. """ if api_address is not None: pulumi.set(__self__, "api_address", api_address) @@ -476,10 +325,6 @@ def api_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="clusterTemplateId") def cluster_template_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - """ return pulumi.get(self, "cluster_template_id") @cluster_template_id.setter @@ -507,10 +352,6 @@ def container_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="createTimeout") def create_timeout(self) -> Optional[pulumi.Input[int]]: - """ - The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "create_timeout") @create_timeout.setter @@ -529,10 +370,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="discoveryUrl") def discovery_url(self) -> Optional[pulumi.Input[str]]: - """ - The URL used for cluster node discovery. - Changing this creates a new cluster. - """ return pulumi.get(self, "discovery_url") @discovery_url.setter @@ -542,10 +379,6 @@ def discovery_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new cluster. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -555,10 +388,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> Optional[pulumi.Input[str]]: - """ - The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_network") @fixed_network.setter @@ -568,10 +397,6 @@ def fixed_network(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> Optional[pulumi.Input[str]]: - """ - The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_subnet") @fixed_subnet.setter @@ -581,11 +406,6 @@ def fixed_subnet(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - """ return pulumi.get(self, "flavor") @flavor.setter @@ -595,10 +415,6 @@ def flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - """ return pulumi.get(self, "floating_ip_enabled") @floating_ip_enabled.setter @@ -608,10 +424,6 @@ def floating_ip_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def keypair(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Compute service SSH keypair. Changing - this creates a new cluster. - """ return pulumi.get(self, "keypair") @keypair.setter @@ -630,10 +442,6 @@ def kubeconfig(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "labels") @labels.setter @@ -652,10 +460,6 @@ def master_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[st @property @pulumi.getter(name="masterCount") def master_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of master nodes for the cluster. - Changing this creates a new cluster. - """ return pulumi.get(self, "master_count") @master_count.setter @@ -665,11 +469,6 @@ def master_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - """ return pulumi.get(self, "master_flavor") @master_flavor.setter @@ -679,10 +478,6 @@ def master_flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - """ return pulumi.get(self, "master_lb_enabled") @master_lb_enabled.setter @@ -692,10 +487,6 @@ def master_lb_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - """ return pulumi.get(self, "merge_labels") @merge_labels.setter @@ -705,10 +496,6 @@ def merge_labels(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the cluster. Changing this creates a new - cluster. - """ return pulumi.get(self, "name") @name.setter @@ -727,9 +514,6 @@ def node_addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="nodeCount") def node_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of nodes for the cluster. - """ return pulumi.get(self, "node_count") @node_count.setter @@ -739,11 +523,6 @@ def node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project of the cluster. Required if admin wants - to create a cluster in another project. Changing this creates a new - cluster. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -753,12 +532,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. - """ return pulumi.get(self, "region") @region.setter @@ -786,11 +559,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user of the cluster. Required if admin wants to - create a cluster template for another user. Changing this creates a new - cluster. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -822,111 +590,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 Magnum cluster resource within OpenStack. - - > **Note:** All arguments including the `kubeconfig` computed attribute will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### Create a Cluster - - ```python - import pulumi - import pulumi_openstack as openstack - - cluster1 = openstack.containerinfra.Cluster("cluster_1", - name="cluster_1", - cluster_template_id="b9a45c5c-cd03-4958-82aa-b80bf93cb922", - master_count=3, - node_count=5, - keypair="ssh_keypair") - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which cluster was created. - * `updated_at` - The time at which cluster was created. - * `api_address` - COE API address. - * `coe_version` - COE software version. - * `cluster_template_id` - See Argument Reference above. - * `container_version` - Container software version. - * `create_timeout` - See Argument Reference above. - * `discovery_url` - See Argument Reference above. - * `docker_volume_size` - See Argument Reference above. - * `flavor` - See Argument Reference above. - * `master_flavor` - See Argument Reference above. - * `keypair` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `merge_labels` - See Argument Reference above. - * `master_count` - See Argument Reference above. - * `node_count` - See Argument Reference above. - * `fixed_network` - See Argument Reference above. - * `fixed_subnet` - See Argument Reference above. - * `floating_ip_enabled` - See Argument Reference above. - * `master_addresses` - IP addresses of the master node of the cluster. - * `node_addresses` - IP addresses of the node of the cluster. - * `stack_id` - UUID of the Orchestration service stack. - * `kubeconfig` - The Kubernetes cluster's credentials - * `raw_config` - The raw kubeconfig file - * `host` - The cluster's API server URL - * `cluster_ca_certificate` - The cluster's CA certificate - * `client_key` - The client's RSA key - * `client_certificate` - The client's certificate - - ## Import - - Clusters can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:containerinfra/cluster:Cluster cluster_1 ce0f9463-dd25-474b-9fe8-94de63e5e42b - ``` - + Create a Cluster resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] cluster_template_id: The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - :param pulumi.Input[int] create_timeout: The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] discovery_url: The URL used for cluster node discovery. - Changing this creates a new cluster. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new cluster. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - :param pulumi.Input[str] keypair: The name of the Compute service SSH keypair. Changing - this creates a new cluster. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - :param pulumi.Input[int] master_count: The number of master nodes for the cluster. - Changing this creates a new cluster. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - :param pulumi.Input[str] name: The name of the cluster. Changing this creates a new - cluster. - :param pulumi.Input[int] node_count: The number of nodes for the cluster. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. """ ... @overload @@ -935,72 +601,7 @@ def __init__(__self__, args: ClusterArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 Magnum cluster resource within OpenStack. - - > **Note:** All arguments including the `kubeconfig` computed attribute will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### Create a Cluster - - ```python - import pulumi - import pulumi_openstack as openstack - - cluster1 = openstack.containerinfra.Cluster("cluster_1", - name="cluster_1", - cluster_template_id="b9a45c5c-cd03-4958-82aa-b80bf93cb922", - master_count=3, - node_count=5, - keypair="ssh_keypair") - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which cluster was created. - * `updated_at` - The time at which cluster was created. - * `api_address` - COE API address. - * `coe_version` - COE software version. - * `cluster_template_id` - See Argument Reference above. - * `container_version` - Container software version. - * `create_timeout` - See Argument Reference above. - * `discovery_url` - See Argument Reference above. - * `docker_volume_size` - See Argument Reference above. - * `flavor` - See Argument Reference above. - * `master_flavor` - See Argument Reference above. - * `keypair` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `merge_labels` - See Argument Reference above. - * `master_count` - See Argument Reference above. - * `node_count` - See Argument Reference above. - * `fixed_network` - See Argument Reference above. - * `fixed_subnet` - See Argument Reference above. - * `floating_ip_enabled` - See Argument Reference above. - * `master_addresses` - IP addresses of the master node of the cluster. - * `node_addresses` - IP addresses of the node of the cluster. - * `stack_id` - UUID of the Orchestration service stack. - * `kubeconfig` - The Kubernetes cluster's credentials - * `raw_config` - The raw kubeconfig file - * `host` - The cluster's API server URL - * `cluster_ca_certificate` - The cluster's CA certificate - * `client_key` - The client's RSA key - * `client_certificate` - The client's certificate - - ## Import - - Clusters can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:containerinfra/cluster:Cluster cluster_1 ce0f9463-dd25-474b-9fe8-94de63e5e42b - ``` - + Create a Cluster resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ClusterArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1119,49 +720,6 @@ def get(resource_name: str, :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] cluster_template_id: The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - :param pulumi.Input[int] create_timeout: The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] discovery_url: The URL used for cluster node discovery. - Changing this creates a new cluster. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new cluster. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - :param pulumi.Input[str] keypair: The name of the Compute service SSH keypair. Changing - this creates a new cluster. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - :param pulumi.Input[int] master_count: The number of master nodes for the cluster. - Changing this creates a new cluster. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - :param pulumi.Input[str] name: The name of the cluster. Changing this creates a new - cluster. - :param pulumi.Input[int] node_count: The number of nodes for the cluster. - :param pulumi.Input[str] project_id: The project of the cluster. Required if admin wants - to create a cluster in another project. Changing this creates a new - cluster. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. - :param pulumi.Input[str] user_id: The user of the cluster. Required if admin wants to - create a cluster template for another user. Changing this creates a new - cluster. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1205,10 +763,6 @@ def api_address(self) -> pulumi.Output[str]: @property @pulumi.getter(name="clusterTemplateId") def cluster_template_id(self) -> pulumi.Output[str]: - """ - The UUID of the V1 Container Infra cluster - template. Changing this creates a new cluster. - """ return pulumi.get(self, "cluster_template_id") @property @@ -1224,10 +778,6 @@ def container_version(self) -> pulumi.Output[str]: @property @pulumi.getter(name="createTimeout") def create_timeout(self) -> pulumi.Output[int]: - """ - The timeout (in minutes) for creating the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "create_timeout") @property @@ -1238,65 +788,36 @@ def created_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="discoveryUrl") def discovery_url(self) -> pulumi.Output[str]: - """ - The URL used for cluster node discovery. - Changing this creates a new cluster. - """ return pulumi.get(self, "discovery_url") @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> pulumi.Output[int]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new cluster. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> pulumi.Output[str]: - """ - The fixed network that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_network") @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> pulumi.Output[str]: - """ - The fixed subnet that will be attached to the - cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "fixed_subnet") @property @pulumi.getter def flavor(self) -> pulumi.Output[str]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - cluster. - """ return pulumi.get(self, "flavor") @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> pulumi.Output[bool]: - """ - Indicates whether floating IP should be - created for every cluster node. Changing this creates a new cluster. - """ return pulumi.get(self, "floating_ip_enabled") @property @pulumi.getter def keypair(self) -> pulumi.Output[str]: - """ - The name of the Compute service SSH keypair. Changing - this creates a new cluster. - """ return pulumi.get(self, "keypair") @property @@ -1307,10 +828,6 @@ def kubeconfig(self) -> pulumi.Output[Mapping[str, str]]: @property @pulumi.getter def labels(self) -> pulumi.Output[Mapping[str, str]]: - """ - The list of key value pairs representing additional - properties of the cluster. Changing this creates a new cluster. - """ return pulumi.get(self, "labels") @property @@ -1321,47 +838,26 @@ def master_addresses(self) -> pulumi.Output[Sequence[str]]: @property @pulumi.getter(name="masterCount") def master_count(self) -> pulumi.Output[int]: - """ - The number of master nodes for the cluster. - Changing this creates a new cluster. - """ return pulumi.get(self, "master_count") @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> pulumi.Output[str]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this creates a - new cluster. - """ return pulumi.get(self, "master_flavor") @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> pulumi.Output[bool]: - """ - Indicates whether to create a load balancer - for the master nodes. Changing this creates a new cluster. - """ return pulumi.get(self, "master_lb_enabled") @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster template labels. Changing this creates a new cluster. - """ return pulumi.get(self, "merge_labels") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the cluster. Changing this creates a new - cluster. - """ return pulumi.get(self, "name") @property @@ -1372,30 +868,16 @@ def node_addresses(self) -> pulumi.Output[Sequence[str]]: @property @pulumi.getter(name="nodeCount") def node_count(self) -> pulumi.Output[Optional[int]]: - """ - The number of nodes for the cluster. - """ return pulumi.get(self, "node_count") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The project of the cluster. Required if admin wants - to create a cluster in another project. Changing this creates a new - cluster. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - cluster. - """ return pulumi.get(self, "region") @property @@ -1411,10 +893,5 @@ def updated_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[str]: - """ - The user of the cluster. Required if admin wants to - create a cluster template for another user. Changing this creates a new - cluster. - """ return pulumi.get(self, "user_id") diff --git a/sdk/python/pulumi_openstack/containerinfra/cluster_template.py b/sdk/python/pulumi_openstack/containerinfra/cluster_template.py index e94cd25a4..0e549dfda 100644 --- a/sdk/python/pulumi_openstack/containerinfra/cluster_template.py +++ b/sdk/python/pulumi_openstack/containerinfra/cluster_template.py @@ -45,89 +45,6 @@ def __init__(__self__, *, volume_driver: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ClusterTemplate resource. - :param pulumi.Input[str] coe: The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - :param pulumi.Input[str] image: The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - :param pulumi.Input[int] apiserver_port: The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - :param pulumi.Input[str] cluster_distro: The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - :param pulumi.Input[str] dns_nameserver: Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - :param pulumi.Input[str] docker_storage_driver: Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - :param pulumi.Input[str] external_network_id: The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - :param pulumi.Input[bool] hidden: Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - :param pulumi.Input[str] http_proxy: The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - :param pulumi.Input[str] https_proxy: The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - :param pulumi.Input[str] insecure_registry: The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - :param pulumi.Input[str] keypair_id: The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - :param pulumi.Input[str] name: The name of the cluster template. Changing this updates - the name of the existing cluster template. - :param pulumi.Input[str] network_driver: The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - :param pulumi.Input[str] no_proxy: A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - :param pulumi.Input[bool] public: Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - :param pulumi.Input[bool] registry_enabled: Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - :param pulumi.Input[str] server_type: The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - :param pulumi.Input[bool] tls_disabled: Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - :param pulumi.Input[str] volume_driver: The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. """ pulumi.set(__self__, "coe", coe) pulumi.set(__self__, "image", image) @@ -189,11 +106,6 @@ def __init__(__self__, *, @property @pulumi.getter def coe(self) -> pulumi.Input[str]: - """ - The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - """ return pulumi.get(self, "coe") @coe.setter @@ -203,11 +115,6 @@ def coe(self, value: pulumi.Input[str]): @property @pulumi.getter def image(self) -> pulumi.Input[str]: - """ - The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - """ return pulumi.get(self, "image") @image.setter @@ -217,11 +124,6 @@ def image(self, value: pulumi.Input[str]): @property @pulumi.getter(name="apiserverPort") def apiserver_port(self) -> Optional[pulumi.Input[int]]: - """ - The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - """ return pulumi.get(self, "apiserver_port") @apiserver_port.setter @@ -231,11 +133,6 @@ def apiserver_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="clusterDistro") def cluster_distro(self) -> Optional[pulumi.Input[str]]: - """ - The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - """ return pulumi.get(self, "cluster_distro") @cluster_distro.setter @@ -245,11 +142,6 @@ def cluster_distro(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsNameserver") def dns_nameserver(self) -> Optional[pulumi.Input[str]]: - """ - Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - """ return pulumi.get(self, "dns_nameserver") @dns_nameserver.setter @@ -259,10 +151,6 @@ def dns_nameserver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerStorageDriver") def docker_storage_driver(self) -> Optional[pulumi.Input[str]]: - """ - Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - """ return pulumi.get(self, "docker_storage_driver") @docker_storage_driver.setter @@ -272,11 +160,6 @@ def docker_storage_driver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -286,11 +169,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - """ return pulumi.get(self, "external_network_id") @external_network_id.setter @@ -300,11 +178,6 @@ def external_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> Optional[pulumi.Input[str]]: - """ - The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - """ return pulumi.get(self, "fixed_network") @fixed_network.setter @@ -314,11 +187,6 @@ def fixed_network(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> Optional[pulumi.Input[str]]: - """ - The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - """ return pulumi.get(self, "fixed_subnet") @fixed_subnet.setter @@ -328,11 +196,6 @@ def fixed_subnet(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - """ return pulumi.get(self, "flavor") @flavor.setter @@ -342,11 +205,6 @@ def flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - """ return pulumi.get(self, "floating_ip_enabled") @floating_ip_enabled.setter @@ -356,11 +214,6 @@ def floating_ip_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def hidden(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - """ return pulumi.get(self, "hidden") @hidden.setter @@ -370,11 +223,6 @@ def hidden(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="httpProxy") def http_proxy(self) -> Optional[pulumi.Input[str]]: - """ - The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - """ return pulumi.get(self, "http_proxy") @http_proxy.setter @@ -384,11 +232,6 @@ def http_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpsProxy") def https_proxy(self) -> Optional[pulumi.Input[str]]: - """ - The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - """ return pulumi.get(self, "https_proxy") @https_proxy.setter @@ -398,11 +241,6 @@ def https_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="insecureRegistry") def insecure_registry(self) -> Optional[pulumi.Input[str]]: - """ - The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - """ return pulumi.get(self, "insecure_registry") @insecure_registry.setter @@ -412,10 +250,6 @@ def insecure_registry(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="keypairId") def keypair_id(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - """ return pulumi.get(self, "keypair_id") @keypair_id.setter @@ -425,11 +259,6 @@ def keypair_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - """ return pulumi.get(self, "labels") @labels.setter @@ -439,11 +268,6 @@ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]) @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - """ return pulumi.get(self, "master_flavor") @master_flavor.setter @@ -453,11 +277,6 @@ def master_flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - """ return pulumi.get(self, "master_lb_enabled") @master_lb_enabled.setter @@ -467,10 +286,6 @@ def master_lb_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the cluster template. Changing this updates - the name of the existing cluster template. - """ return pulumi.get(self, "name") @name.setter @@ -480,11 +295,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkDriver") def network_driver(self) -> Optional[pulumi.Input[str]]: - """ - The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - """ return pulumi.get(self, "network_driver") @network_driver.setter @@ -494,11 +304,6 @@ def network_driver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noProxy") def no_proxy(self) -> Optional[pulumi.Input[str]]: - """ - A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - """ return pulumi.get(self, "no_proxy") @no_proxy.setter @@ -508,11 +313,6 @@ def no_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def public(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - """ return pulumi.get(self, "public") @public.setter @@ -522,12 +322,6 @@ def public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - """ return pulumi.get(self, "region") @region.setter @@ -537,11 +331,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="registryEnabled") def registry_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - """ return pulumi.get(self, "registry_enabled") @registry_enabled.setter @@ -551,10 +340,6 @@ def registry_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="serverType") def server_type(self) -> Optional[pulumi.Input[str]]: - """ - The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - """ return pulumi.get(self, "server_type") @server_type.setter @@ -564,10 +349,6 @@ def server_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsDisabled") def tls_disabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - """ return pulumi.get(self, "tls_disabled") @tls_disabled.setter @@ -577,11 +358,6 @@ def tls_disabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="volumeDriver") def volume_driver(self) -> Optional[pulumi.Input[str]]: - """ - The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. - """ return pulumi.get(self, "volume_driver") @volume_driver.setter @@ -627,95 +403,6 @@ def __init__(__self__, *, volume_driver: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ClusterTemplate resources. - :param pulumi.Input[int] apiserver_port: The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - :param pulumi.Input[str] cluster_distro: The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - :param pulumi.Input[str] coe: The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - :param pulumi.Input[str] dns_nameserver: Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - :param pulumi.Input[str] docker_storage_driver: Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - :param pulumi.Input[str] external_network_id: The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - :param pulumi.Input[bool] hidden: Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - :param pulumi.Input[str] http_proxy: The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - :param pulumi.Input[str] https_proxy: The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - :param pulumi.Input[str] image: The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - :param pulumi.Input[str] insecure_registry: The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - :param pulumi.Input[str] keypair_id: The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - :param pulumi.Input[str] name: The name of the cluster template. Changing this updates - the name of the existing cluster template. - :param pulumi.Input[str] network_driver: The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - :param pulumi.Input[str] no_proxy: A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - :param pulumi.Input[str] project_id: The project of the cluster template. Required if - admin wants to create a cluster template in another project. Changing this - creates a new cluster template. - :param pulumi.Input[bool] public: Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - :param pulumi.Input[bool] registry_enabled: Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - :param pulumi.Input[str] server_type: The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - :param pulumi.Input[bool] tls_disabled: Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - :param pulumi.Input[str] user_id: The user of the cluster template. Required if admin - wants to create a cluster template for another user. Changing this creates - a new cluster template. - :param pulumi.Input[str] volume_driver: The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. """ if apiserver_port is not None: pulumi.set(__self__, "apiserver_port", apiserver_port) @@ -787,11 +474,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="apiserverPort") def apiserver_port(self) -> Optional[pulumi.Input[int]]: - """ - The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - """ return pulumi.get(self, "apiserver_port") @apiserver_port.setter @@ -801,11 +483,6 @@ def apiserver_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="clusterDistro") def cluster_distro(self) -> Optional[pulumi.Input[str]]: - """ - The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - """ return pulumi.get(self, "cluster_distro") @cluster_distro.setter @@ -815,11 +492,6 @@ def cluster_distro(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def coe(self) -> Optional[pulumi.Input[str]]: - """ - The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - """ return pulumi.get(self, "coe") @coe.setter @@ -838,11 +510,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsNameserver") def dns_nameserver(self) -> Optional[pulumi.Input[str]]: - """ - Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - """ return pulumi.get(self, "dns_nameserver") @dns_nameserver.setter @@ -852,10 +519,6 @@ def dns_nameserver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerStorageDriver") def docker_storage_driver(self) -> Optional[pulumi.Input[str]]: - """ - Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - """ return pulumi.get(self, "docker_storage_driver") @docker_storage_driver.setter @@ -865,11 +528,6 @@ def docker_storage_driver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -879,11 +537,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - """ return pulumi.get(self, "external_network_id") @external_network_id.setter @@ -893,11 +546,6 @@ def external_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> Optional[pulumi.Input[str]]: - """ - The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - """ return pulumi.get(self, "fixed_network") @fixed_network.setter @@ -907,11 +555,6 @@ def fixed_network(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> Optional[pulumi.Input[str]]: - """ - The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - """ return pulumi.get(self, "fixed_subnet") @fixed_subnet.setter @@ -921,11 +564,6 @@ def fixed_subnet(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - """ return pulumi.get(self, "flavor") @flavor.setter @@ -935,11 +573,6 @@ def flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - """ return pulumi.get(self, "floating_ip_enabled") @floating_ip_enabled.setter @@ -949,11 +582,6 @@ def floating_ip_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def hidden(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - """ return pulumi.get(self, "hidden") @hidden.setter @@ -963,11 +591,6 @@ def hidden(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="httpProxy") def http_proxy(self) -> Optional[pulumi.Input[str]]: - """ - The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - """ return pulumi.get(self, "http_proxy") @http_proxy.setter @@ -977,11 +600,6 @@ def http_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpsProxy") def https_proxy(self) -> Optional[pulumi.Input[str]]: - """ - The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - """ return pulumi.get(self, "https_proxy") @https_proxy.setter @@ -991,11 +609,6 @@ def https_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def image(self) -> Optional[pulumi.Input[str]]: - """ - The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - """ return pulumi.get(self, "image") @image.setter @@ -1005,11 +618,6 @@ def image(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="insecureRegistry") def insecure_registry(self) -> Optional[pulumi.Input[str]]: - """ - The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - """ return pulumi.get(self, "insecure_registry") @insecure_registry.setter @@ -1019,10 +627,6 @@ def insecure_registry(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="keypairId") def keypair_id(self) -> Optional[pulumi.Input[str]]: - """ - The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - """ return pulumi.get(self, "keypair_id") @keypair_id.setter @@ -1032,11 +636,6 @@ def keypair_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - """ return pulumi.get(self, "labels") @labels.setter @@ -1046,11 +645,6 @@ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]) @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - """ return pulumi.get(self, "master_flavor") @master_flavor.setter @@ -1060,11 +654,6 @@ def master_flavor(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - """ return pulumi.get(self, "master_lb_enabled") @master_lb_enabled.setter @@ -1074,10 +663,6 @@ def master_lb_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the cluster template. Changing this updates - the name of the existing cluster template. - """ return pulumi.get(self, "name") @name.setter @@ -1087,11 +672,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkDriver") def network_driver(self) -> Optional[pulumi.Input[str]]: - """ - The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - """ return pulumi.get(self, "network_driver") @network_driver.setter @@ -1101,11 +681,6 @@ def network_driver(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noProxy") def no_proxy(self) -> Optional[pulumi.Input[str]]: - """ - A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - """ return pulumi.get(self, "no_proxy") @no_proxy.setter @@ -1115,11 +690,6 @@ def no_proxy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project of the cluster template. Required if - admin wants to create a cluster template in another project. Changing this - creates a new cluster template. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -1129,11 +699,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def public(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - """ return pulumi.get(self, "public") @public.setter @@ -1143,12 +708,6 @@ def public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - """ return pulumi.get(self, "region") @region.setter @@ -1158,11 +717,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="registryEnabled") def registry_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - """ return pulumi.get(self, "registry_enabled") @registry_enabled.setter @@ -1172,10 +726,6 @@ def registry_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="serverType") def server_type(self) -> Optional[pulumi.Input[str]]: - """ - The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - """ return pulumi.get(self, "server_type") @server_type.setter @@ -1185,10 +735,6 @@ def server_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsDisabled") def tls_disabled(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - """ return pulumi.get(self, "tls_disabled") @tls_disabled.setter @@ -1207,11 +753,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user of the cluster template. Required if admin - wants to create a cluster template for another user. Changing this creates - a new cluster template. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -1221,11 +762,6 @@ def user_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="volumeDriver") def volume_driver(self) -> Optional[pulumi.Input[str]]: - """ - The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. - """ return pulumi.get(self, "volume_driver") @volume_driver.setter @@ -1269,169 +805,9 @@ def __init__(__self__, volume_driver: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 Magnum cluster template resource within OpenStack. - - ## Example Usage - - ### Create a Cluster template - - ```python - import pulumi - import pulumi_openstack as openstack - - clustertemplate1 = openstack.containerinfra.ClusterTemplate("clustertemplate_1", - name="clustertemplate_1", - image="Fedora-Atomic-27", - coe="kubernetes", - flavor="m1.small", - master_flavor="m1.medium", - dns_nameserver="1.1.1.1", - docker_storage_driver="devicemapper", - docker_volume_size=10, - volume_driver="cinder", - network_driver="flannel", - server_type="vm", - master_lb_enabled=True, - floating_ip_enabled=False, - labels={ - "kube_tag": "1.11.1", - "kube_dashboard_enabled": "true", - "prometheus_monitoring": "true", - "influx_grafana_dashboard_enabled": "true", - }) - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which cluster template was created. - * `updated_at` - The time at which cluster template was created. - * `apiserver_port` - See Argument Reference above. - * `coe` - See Argument Reference above. - * `cluster_distro` - See Argument Reference above. - * `dns_nameserver` - See Argument Reference above. - * `docker_storage_driver` - See Argument Reference above. - * `docker_volume_size` - See Argument Reference above. - * `external_network_id` - See Argument Reference above. - * `fixed_network` - See Argument Reference above. - * `fixed_subnet` - See Argument Reference above. - * `flavor` - See Argument Reference above. - * `master_flavor` - See Argument Reference above. - * `floating_ip_enabled` - See Argument Reference above. - * `http_proxy` - See Argument Reference above. - * `https_proxy` - See Argument Reference above. - * `image` - See Argument Reference above. - * `insecure_registry` - See Argument Reference above. - * `keypair_id` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `links` - A list containing associated cluster template links. - * `master_lb_enabled` - See Argument Reference above. - * `network_driver` - See Argument Reference above. - * `no_proxy` - See Argument Reference above. - * `public` - See Argument Reference above. - * `registry_enabled` - See Argument Reference above. - * `server_type` - See Argument Reference above. - * `tls_disabled` - See Argument Reference above. - * `volume_driver` - See Argument Reference above. - * `hidden` - See Argument Reference above. - - ## Import - - Cluster templates can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:containerinfra/clusterTemplate:ClusterTemplate clustertemplate_1 b9a45c5c-cd03-4958-82aa-b80bf93cb922 - ``` - + Create a ClusterTemplate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] apiserver_port: The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - :param pulumi.Input[str] cluster_distro: The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - :param pulumi.Input[str] coe: The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - :param pulumi.Input[str] dns_nameserver: Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - :param pulumi.Input[str] docker_storage_driver: Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - :param pulumi.Input[str] external_network_id: The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - :param pulumi.Input[bool] hidden: Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - :param pulumi.Input[str] http_proxy: The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - :param pulumi.Input[str] https_proxy: The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - :param pulumi.Input[str] image: The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - :param pulumi.Input[str] insecure_registry: The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - :param pulumi.Input[str] keypair_id: The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - :param pulumi.Input[str] name: The name of the cluster template. Changing this updates - the name of the existing cluster template. - :param pulumi.Input[str] network_driver: The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - :param pulumi.Input[str] no_proxy: A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - :param pulumi.Input[bool] public: Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - :param pulumi.Input[bool] registry_enabled: Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - :param pulumi.Input[str] server_type: The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - :param pulumi.Input[bool] tls_disabled: Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - :param pulumi.Input[str] volume_driver: The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. """ ... @overload @@ -1440,84 +816,7 @@ def __init__(__self__, args: ClusterTemplateArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 Magnum cluster template resource within OpenStack. - - ## Example Usage - - ### Create a Cluster template - - ```python - import pulumi - import pulumi_openstack as openstack - - clustertemplate1 = openstack.containerinfra.ClusterTemplate("clustertemplate_1", - name="clustertemplate_1", - image="Fedora-Atomic-27", - coe="kubernetes", - flavor="m1.small", - master_flavor="m1.medium", - dns_nameserver="1.1.1.1", - docker_storage_driver="devicemapper", - docker_volume_size=10, - volume_driver="cinder", - network_driver="flannel", - server_type="vm", - master_lb_enabled=True, - floating_ip_enabled=False, - labels={ - "kube_tag": "1.11.1", - "kube_dashboard_enabled": "true", - "prometheus_monitoring": "true", - "influx_grafana_dashboard_enabled": "true", - }) - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which cluster template was created. - * `updated_at` - The time at which cluster template was created. - * `apiserver_port` - See Argument Reference above. - * `coe` - See Argument Reference above. - * `cluster_distro` - See Argument Reference above. - * `dns_nameserver` - See Argument Reference above. - * `docker_storage_driver` - See Argument Reference above. - * `docker_volume_size` - See Argument Reference above. - * `external_network_id` - See Argument Reference above. - * `fixed_network` - See Argument Reference above. - * `fixed_subnet` - See Argument Reference above. - * `flavor` - See Argument Reference above. - * `master_flavor` - See Argument Reference above. - * `floating_ip_enabled` - See Argument Reference above. - * `http_proxy` - See Argument Reference above. - * `https_proxy` - See Argument Reference above. - * `image` - See Argument Reference above. - * `insecure_registry` - See Argument Reference above. - * `keypair_id` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `links` - A list containing associated cluster template links. - * `master_lb_enabled` - See Argument Reference above. - * `network_driver` - See Argument Reference above. - * `no_proxy` - See Argument Reference above. - * `public` - See Argument Reference above. - * `registry_enabled` - See Argument Reference above. - * `server_type` - See Argument Reference above. - * `tls_disabled` - See Argument Reference above. - * `volume_driver` - See Argument Reference above. - * `hidden` - See Argument Reference above. - - ## Import - - Cluster templates can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:containerinfra/clusterTemplate:ClusterTemplate clustertemplate_1 b9a45c5c-cd03-4958-82aa-b80bf93cb922 - ``` - + Create a ClusterTemplate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ClusterTemplateArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1658,95 +957,6 @@ def get(resource_name: str, :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[int] apiserver_port: The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - :param pulumi.Input[str] cluster_distro: The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - :param pulumi.Input[str] coe: The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - :param pulumi.Input[str] dns_nameserver: Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - :param pulumi.Input[str] docker_storage_driver: Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - :param pulumi.Input[str] external_network_id: The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - :param pulumi.Input[str] fixed_network: The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - :param pulumi.Input[str] fixed_subnet: The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - :param pulumi.Input[str] flavor: The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - :param pulumi.Input[bool] floating_ip_enabled: Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - :param pulumi.Input[bool] hidden: Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - :param pulumi.Input[str] http_proxy: The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - :param pulumi.Input[str] https_proxy: The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - :param pulumi.Input[str] image: The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - :param pulumi.Input[str] insecure_registry: The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - :param pulumi.Input[str] keypair_id: The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - :param pulumi.Input[str] master_flavor: The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - :param pulumi.Input[bool] master_lb_enabled: Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - :param pulumi.Input[str] name: The name of the cluster template. Changing this updates - the name of the existing cluster template. - :param pulumi.Input[str] network_driver: The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - :param pulumi.Input[str] no_proxy: A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - :param pulumi.Input[str] project_id: The project of the cluster template. Required if - admin wants to create a cluster template in another project. Changing this - creates a new cluster template. - :param pulumi.Input[bool] public: Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - :param pulumi.Input[bool] registry_enabled: Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - :param pulumi.Input[str] server_type: The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - :param pulumi.Input[bool] tls_disabled: Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - :param pulumi.Input[str] user_id: The user of the cluster template. Required if admin - wants to create a cluster template for another user. Changing this creates - a new cluster template. - :param pulumi.Input[str] volume_driver: The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1790,31 +1000,16 @@ def get(resource_name: str, @property @pulumi.getter(name="apiserverPort") def apiserver_port(self) -> pulumi.Output[Optional[int]]: - """ - The API server port for the Container - Orchestration Engine for this cluster template. Changing this updates the - API server port of the existing cluster template. - """ return pulumi.get(self, "apiserver_port") @property @pulumi.getter(name="clusterDistro") def cluster_distro(self) -> pulumi.Output[str]: - """ - The distro for the cluster (fedora-atomic, - coreos, etc.). Changing this updates the cluster distro of the existing - cluster template. - """ return pulumi.get(self, "cluster_distro") @property @pulumi.getter def coe(self) -> pulumi.Output[str]: - """ - The Container Orchestration Engine for this cluster - template. Changing this updates the engine of the existing cluster - template. - """ return pulumi.get(self, "coe") @property @@ -1825,257 +1020,131 @@ def created_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="dnsNameserver") def dns_nameserver(self) -> pulumi.Output[Optional[str]]: - """ - Address of the DNS nameserver that is used in - nodes of the cluster. Changing this updates the DNS nameserver of the - existing cluster template. - """ return pulumi.get(self, "dns_nameserver") @property @pulumi.getter(name="dockerStorageDriver") def docker_storage_driver(self) -> pulumi.Output[Optional[str]]: - """ - Docker storage driver. Changing this - updates the Docker storage driver of the existing cluster template. - """ return pulumi.get(self, "docker_storage_driver") @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> pulumi.Output[Optional[int]]: - """ - The size (in GB) of the Docker volume. - Changing this updates the Docker volume size of the existing cluster - template. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> pulumi.Output[Optional[str]]: - """ - The ID of the external network that will - be used for the cluster. Changing this updates the external network ID of - the existing cluster template. - """ return pulumi.get(self, "external_network_id") @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> pulumi.Output[Optional[str]]: - """ - The fixed network that will be attached to the - cluster. Changing this updates the fixed network of the existing cluster - template. - """ return pulumi.get(self, "fixed_network") @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> pulumi.Output[Optional[str]]: - """ - The fixed subnet that will be attached to the - cluster. Changing this updates the fixed subnet of the existing cluster - template. - """ return pulumi.get(self, "fixed_subnet") @property @pulumi.getter def flavor(self) -> pulumi.Output[Optional[str]]: - """ - The flavor for the nodes of the cluster. Can be set via - the `OS_MAGNUM_FLAVOR` environment variable. Changing this updates the - flavor of the existing cluster template. - """ return pulumi.get(self, "flavor") @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether created cluster should - create floating IP for every node or not. Changing this updates the - floating IP enabled attribute of the existing cluster template. - """ return pulumi.get(self, "floating_ip_enabled") @property @pulumi.getter def hidden(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the ClusterTemplate is hidden or not. - Changing this updates the hidden attribute of the existing cluster - template. - """ return pulumi.get(self, "hidden") @property @pulumi.getter(name="httpProxy") def http_proxy(self) -> pulumi.Output[Optional[str]]: - """ - The address of a proxy for receiving all HTTP - requests and relay them. Changing this updates the HTTP proxy address of - the existing cluster template. - """ return pulumi.get(self, "http_proxy") @property @pulumi.getter(name="httpsProxy") def https_proxy(self) -> pulumi.Output[Optional[str]]: - """ - The address of a proxy for receiving all HTTPS - requests and relay them. Changing this updates the HTTPS proxy address of - the existing cluster template. - """ return pulumi.get(self, "https_proxy") @property @pulumi.getter def image(self) -> pulumi.Output[str]: - """ - The reference to an image that is used for nodes of the - cluster. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing cluster template. - """ return pulumi.get(self, "image") @property @pulumi.getter(name="insecureRegistry") def insecure_registry(self) -> pulumi.Output[Optional[str]]: - """ - The insecure registry URL for the cluster - template. Changing this updates the insecure registry attribute of the - existing cluster template. - """ return pulumi.get(self, "insecure_registry") @property @pulumi.getter(name="keypairId") def keypair_id(self) -> pulumi.Output[Optional[str]]: - """ - The name of the Compute service SSH keypair. - Changing this updates the keypair of the existing cluster template. - """ return pulumi.get(self, "keypair_id") @property @pulumi.getter def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - The list of key value pairs representing additional - properties of the cluster template. Changing this updates the labels of the - existing cluster template. - """ return pulumi.get(self, "labels") @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> pulumi.Output[Optional[str]]: - """ - The flavor for the master nodes. Can be set via - the `OS_MAGNUM_MASTER_FLAVOR` environment variable. Changing this updates - the master flavor of the existing cluster template. - """ return pulumi.get(self, "master_flavor") @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether created cluster should - has a loadbalancer for master nodes or not. Changing this updates the - attribute of the existing cluster template. - """ return pulumi.get(self, "master_lb_enabled") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the cluster template. Changing this updates - the name of the existing cluster template. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkDriver") def network_driver(self) -> pulumi.Output[str]: - """ - The name of the driver for the container - network. Changing this updates the network driver of the existing cluster - template. - """ return pulumi.get(self, "network_driver") @property @pulumi.getter(name="noProxy") def no_proxy(self) -> pulumi.Output[Optional[str]]: - """ - A comma-separated list of IP addresses that shouldn't - be used in the cluster. Changing this updates the no proxy list of the - existing cluster template. - """ return pulumi.get(self, "no_proxy") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The project of the cluster template. Required if - admin wants to create a cluster template in another project. Changing this - creates a new cluster template. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def public(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether cluster template should be public. - Changing this updates the public attribute of the existing cluster - template. - """ return pulumi.get(self, "public") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster template. If - omitted,the `region` argument of the provider is used. Changing this - creates a new cluster template. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="registryEnabled") def registry_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether Docker registry is enabled - in the cluster. Changing this updates the registry enabled attribute of the - existing cluster template. - """ return pulumi.get(self, "registry_enabled") @property @pulumi.getter(name="serverType") def server_type(self) -> pulumi.Output[str]: - """ - The server type for the cluster template. Changing - this updates the server type of the existing cluster template. - """ return pulumi.get(self, "server_type") @property @pulumi.getter(name="tlsDisabled") def tls_disabled(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the TLS should be disabled in - the cluster. Changing this updates the attribute of the existing cluster. - """ return pulumi.get(self, "tls_disabled") @property @@ -2086,20 +1155,10 @@ def updated_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[str]: - """ - The user of the cluster template. Required if admin - wants to create a cluster template for another user. Changing this creates - a new cluster template. - """ return pulumi.get(self, "user_id") @property @pulumi.getter(name="volumeDriver") def volume_driver(self) -> pulumi.Output[Optional[str]]: - """ - The name of the driver that is used for the - volumes of the cluster nodes. Changing this updates the volume driver of - the existing cluster template. - """ return pulumi.get(self, "volume_driver") diff --git a/sdk/python/pulumi_openstack/containerinfra/get_cluster.py b/sdk/python/pulumi_openstack/containerinfra/get_cluster.py index 3b022e775..eb2c77808 100644 --- a/sdk/python/pulumi_openstack/containerinfra/get_cluster.py +++ b/sdk/python/pulumi_openstack/containerinfra/get_cluster.py @@ -110,25 +110,16 @@ def __init__(__self__, api_address=None, cluster_template_id=None, coe_version=N @property @pulumi.getter(name="apiAddress") def api_address(self) -> str: - """ - COE API address. - """ return pulumi.get(self, "api_address") @property @pulumi.getter(name="clusterTemplateId") def cluster_template_id(self) -> str: - """ - The UUID of the V1 Container Infra cluster template. - """ return pulumi.get(self, "cluster_template_id") @property @pulumi.getter(name="coeVersion") def coe_version(self) -> str: - """ - COE software version. - """ return pulumi.get(self, "coe_version") @property @@ -139,57 +130,36 @@ def container_version(self) -> str: @property @pulumi.getter(name="createTimeout") def create_timeout(self) -> int: - """ - The timeout (in minutes) for creating the cluster. - """ return pulumi.get(self, "create_timeout") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time at which cluster was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="discoveryUrl") def discovery_url(self) -> str: - """ - The URL used for cluster node discovery. - """ return pulumi.get(self, "discovery_url") @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> int: - """ - The size (in GB) of the Docker volume. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> str: - """ - The fixed network that is attached to the cluster. - """ return pulumi.get(self, "fixed_network") @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> str: - """ - The fixed subnet that is attached to the cluster. - """ return pulumi.get(self, "fixed_subnet") @property @pulumi.getter def flavor(self) -> str: - """ - The flavor for the nodes of the cluster. - """ return pulumi.get(self, "flavor") @property @@ -208,123 +178,76 @@ def id(self) -> str: @property @pulumi.getter def keypair(self) -> str: - """ - The name of the Compute service SSH keypair. - """ return pulumi.get(self, "keypair") @property @pulumi.getter def kubeconfig(self) -> Mapping[str, str]: - """ - The Kubernetes cluster's credentials - """ return pulumi.get(self, "kubeconfig") @property @pulumi.getter def labels(self) -> Mapping[str, str]: - """ - The list of key value pairs representing additional properties of - the cluster. - """ return pulumi.get(self, "labels") @property @pulumi.getter(name="masterAddresses") def master_addresses(self) -> Sequence[str]: - """ - IP addresses of the master node of the cluster. - """ return pulumi.get(self, "master_addresses") @property @pulumi.getter(name="masterCount") def master_count(self) -> int: - """ - The number of master nodes for the cluster. - """ return pulumi.get(self, "master_count") @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> str: - """ - The flavor for the master nodes. - """ return pulumi.get(self, "master_flavor") @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> bool: - """ - Whether a load balancer is created for the master - cluster nodes. - """ return pulumi.get(self, "master_lb_enabled") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="nodeAddresses") def node_addresses(self) -> Sequence[str]: - """ - IP addresses of the node of the cluster. - """ return pulumi.get(self, "node_addresses") @property @pulumi.getter(name="nodeCount") def node_count(self) -> int: - """ - The number of nodes for the cluster. - """ return pulumi.get(self, "node_count") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The project of the cluster. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="stackId") def stack_id(self) -> str: - """ - UUID of the Orchestration service stack. - """ return pulumi.get(self, "stack_id") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time at which cluster was updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="userId") def user_id(self) -> str: - """ - The user of the cluster. - """ return pulumi.get(self, "user_id") @@ -368,22 +291,7 @@ def get_cluster(name: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetClusterResult: """ - Use this data source to get the ID of an available OpenStack Magnum cluster. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - cluster1 = openstack.containerinfra.get_cluster(name="cluster_1") - ``` - - - :param str name: The name of the cluster. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['name'] = name @@ -427,21 +335,6 @@ def get_cluster_output(name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetClusterResult]: """ - Use this data source to get the ID of an available OpenStack Magnum cluster. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - cluster1 = openstack.containerinfra.get_cluster(name="cluster_1") - ``` - - - :param str name: The name of the cluster. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/containerinfra/get_cluster_template.py b/sdk/python/pulumi_openstack/containerinfra/get_cluster_template.py index 9e9feb907..7aff895a1 100644 --- a/sdk/python/pulumi_openstack/containerinfra/get_cluster_template.py +++ b/sdk/python/pulumi_openstack/containerinfra/get_cluster_template.py @@ -128,128 +128,76 @@ def __init__(__self__, apiserver_port=None, cluster_distro=None, coe=None, creat @property @pulumi.getter(name="apiserverPort") def apiserver_port(self) -> int: - """ - The API server port for the Container Orchestration - Engine for this cluster template. - """ return pulumi.get(self, "apiserver_port") @property @pulumi.getter(name="clusterDistro") def cluster_distro(self) -> str: - """ - The distro for the cluster (fedora-atomic, coreos, etc.). - """ return pulumi.get(self, "cluster_distro") @property @pulumi.getter def coe(self) -> str: - """ - The Container Orchestration Engine for this cluster template. - """ return pulumi.get(self, "coe") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time at which cluster template was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="dnsNameserver") def dns_nameserver(self) -> str: - """ - Address of the DNS nameserver that is used in nodes of the - cluster. - """ return pulumi.get(self, "dns_nameserver") @property @pulumi.getter(name="dockerStorageDriver") def docker_storage_driver(self) -> str: - """ - Docker storage driver. Changing this updates the - Docker storage driver of the existing cluster template. - """ return pulumi.get(self, "docker_storage_driver") @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> int: - """ - The size (in GB) of the Docker volume. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> str: - """ - The ID of the external network that will be used for - the cluster. - """ return pulumi.get(self, "external_network_id") @property @pulumi.getter(name="fixedNetwork") def fixed_network(self) -> str: - """ - The fixed network that will be attached to the cluster. - """ return pulumi.get(self, "fixed_network") @property @pulumi.getter(name="fixedSubnet") def fixed_subnet(self) -> str: - """ - =The fixed subnet that will be attached to the cluster. - """ return pulumi.get(self, "fixed_subnet") @property @pulumi.getter def flavor(self) -> str: - """ - The flavor for the nodes of the cluster. - """ return pulumi.get(self, "flavor") @property @pulumi.getter(name="floatingIpEnabled") def floating_ip_enabled(self) -> bool: - """ - Indicates whether created cluster should create IP - floating IP for every node or not. - """ return pulumi.get(self, "floating_ip_enabled") @property @pulumi.getter def hidden(self) -> bool: - """ - Indicates whether the ClusterTemplate is hidden or not. - """ return pulumi.get(self, "hidden") @property @pulumi.getter(name="httpProxy") def http_proxy(self) -> str: - """ - The address of a proxy for receiving all HTTP requests and - relay them. - """ return pulumi.get(self, "http_proxy") @property @pulumi.getter(name="httpsProxy") def https_proxy(self) -> str: - """ - The address of a proxy for receiving all HTTPS requests and - relay them. - """ return pulumi.get(self, "https_proxy") @property @@ -263,150 +211,91 @@ def id(self) -> str: @property @pulumi.getter def image(self) -> str: - """ - The reference to an image that is used for nodes of the cluster. - """ return pulumi.get(self, "image") @property @pulumi.getter(name="insecureRegistry") def insecure_registry(self) -> str: - """ - The insecure registry URL for the cluster template. - """ return pulumi.get(self, "insecure_registry") @property @pulumi.getter(name="keypairId") def keypair_id(self) -> str: - """ - The name of the Compute service SSH keypair. - """ return pulumi.get(self, "keypair_id") @property @pulumi.getter def labels(self) -> Mapping[str, str]: - """ - The list of key value pairs representing additional properties - of the cluster template. - """ return pulumi.get(self, "labels") @property @pulumi.getter(name="masterFlavor") def master_flavor(self) -> str: - """ - The flavor for the master nodes. - """ return pulumi.get(self, "master_flavor") @property @pulumi.getter(name="masterLbEnabled") def master_lb_enabled(self) -> bool: - """ - Indicates whether created cluster should has a - loadbalancer for master nodes or not. - """ return pulumi.get(self, "master_lb_enabled") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkDriver") def network_driver(self) -> str: - """ - The name of the driver for the container network. - """ return pulumi.get(self, "network_driver") @property @pulumi.getter(name="noProxy") def no_proxy(self) -> str: - """ - A comma-separated list of IP addresses that shouldn't be used in - the cluster. - """ return pulumi.get(self, "no_proxy") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The project of the cluster template. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def public(self) -> bool: - """ - Indicates whether cluster template should be public. - """ return pulumi.get(self, "public") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="registryEnabled") def registry_enabled(self) -> bool: - """ - Indicates whether Docker registry is enabled in the - cluster. - """ return pulumi.get(self, "registry_enabled") @property @pulumi.getter(name="serverType") def server_type(self) -> str: - """ - The server type for the cluster template. - """ return pulumi.get(self, "server_type") @property @pulumi.getter(name="tlsDisabled") def tls_disabled(self) -> bool: - """ - Indicates whether the TLS should be disabled in the cluster. - """ return pulumi.get(self, "tls_disabled") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time at which cluster template was updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="userId") def user_id(self) -> str: - """ - The user of the cluster template. - """ return pulumi.get(self, "user_id") @property @pulumi.getter(name="volumeDriver") def volume_driver(self) -> str: - """ - The name of the driver that is used for the volumes of the - cluster nodes. - """ return pulumi.get(self, "volume_driver") @@ -456,23 +345,7 @@ def get_cluster_template(name: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetClusterTemplateResult: """ - Use this data source to get the ID of an available OpenStack Magnum cluster - template. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - clustertemplate1 = openstack.containerinfra.get_cluster_template(name="clustertemplate_1") - ``` - - - :param str name: The name of the cluster template. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['name'] = name @@ -522,22 +395,6 @@ def get_cluster_template_output(name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetClusterTemplateResult]: """ - Use this data source to get the ID of an available OpenStack Magnum cluster - template. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - clustertemplate1 = openstack.containerinfra.get_cluster_template(name="clustertemplate_1") - ``` - - - :param str name: The name of the cluster template. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/containerinfra/get_node_group.py b/sdk/python/pulumi_openstack/containerinfra/get_node_group.py index 3c47db775..694af66dc 100644 --- a/sdk/python/pulumi_openstack/containerinfra/get_node_group.py +++ b/sdk/python/pulumi_openstack/containerinfra/get_node_group.py @@ -76,25 +76,16 @@ def cluster_id(self) -> str: @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time at which the node group was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> int: - """ - The size (in GB) of the Docker volume. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter def flavor(self) -> str: - """ - The flavor for the nodes of the node group. - """ return pulumi.get(self, "flavor") @property @@ -108,82 +99,51 @@ def id(self) -> str: @property @pulumi.getter def image(self) -> str: - """ - The reference to an image that is used for nodes of the node group. - """ return pulumi.get(self, "image") @property @pulumi.getter def labels(self) -> Mapping[str, str]: - """ - The list of key value pairs representing additional properties of - the node group. - """ return pulumi.get(self, "labels") @property @pulumi.getter(name="maxNodeCount") def max_node_count(self) -> int: - """ - The maximum number of nodes for the node group. - """ return pulumi.get(self, "max_node_count") @property @pulumi.getter(name="minNodeCount") def min_node_count(self) -> int: - """ - The minimum number of nodes for the node group. - """ return pulumi.get(self, "min_node_count") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="nodeCount") def node_count(self) -> int: - """ - The number of nodes for the node group. - """ return pulumi.get(self, "node_count") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The project of the node group. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def role(self) -> str: - """ - The role of the node group. - """ return pulumi.get(self, "role") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time at which the node group was updated. - """ return pulumi.get(self, "updated_at") @@ -215,24 +175,7 @@ def get_node_group(cluster_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNodeGroupResult: """ - Use this data source to get information of an available OpenStack Magnum node group. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - nodegroup1 = openstack.containerinfra.get_node_group(cluster_id="cluster_1", - name="nodegroup_1") - ``` - - - :param str cluster_id: The name of the OpenStack Magnum cluster. - :param str name: The name of the node group. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['clusterId'] = cluster_id @@ -265,23 +208,6 @@ def get_node_group_output(cluster_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNodeGroupResult]: """ - Use this data source to get information of an available OpenStack Magnum node group. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - nodegroup1 = openstack.containerinfra.get_node_group(cluster_id="cluster_1", - name="nodegroup_1") - ``` - - - :param str cluster_id: The name of the OpenStack Magnum cluster. - :param str name: The name of the node group. - :param str region: The region in which to obtain the V1 Container Infra - client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/containerinfra/node_group.py b/sdk/python/pulumi_openstack/containerinfra/node_group.py index 66e35efa0..683c45bd1 100644 --- a/sdk/python/pulumi_openstack/containerinfra/node_group.py +++ b/sdk/python/pulumi_openstack/containerinfra/node_group.py @@ -28,34 +28,6 @@ def __init__(__self__, *, role: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a NodeGroup resource. - :param pulumi.Input[str] cluster_id: The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new node group. - :param pulumi.Input[str] flavor_id: The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - :param pulumi.Input[str] image_id: The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - :param pulumi.Input[int] max_node_count: The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - :param pulumi.Input[int] min_node_count: The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - :param pulumi.Input[str] name: The name of the node group. Changing this creates a new - node group. - :param pulumi.Input[int] node_count: The number of nodes for the node group. Changing - this update the number of nodes of the node group. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - :param pulumi.Input[str] role: The role of nodes in the node group. Changing this - creates a new node group. """ pulumi.set(__self__, "cluster_id", cluster_id) if docker_volume_size is not None: @@ -84,10 +56,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> pulumi.Input[str]: - """ - The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - """ return pulumi.get(self, "cluster_id") @cluster_id.setter @@ -97,10 +65,6 @@ def cluster_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new node group. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -110,11 +74,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -124,11 +83,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -138,10 +92,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - """ return pulumi.get(self, "labels") @labels.setter @@ -151,10 +101,6 @@ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]) @property @pulumi.getter(name="maxNodeCount") def max_node_count(self) -> Optional[pulumi.Input[int]]: - """ - The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - """ return pulumi.get(self, "max_node_count") @max_node_count.setter @@ -164,10 +110,6 @@ def max_node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - """ return pulumi.get(self, "merge_labels") @merge_labels.setter @@ -177,10 +119,6 @@ def merge_labels(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="minNodeCount") def min_node_count(self) -> Optional[pulumi.Input[int]]: - """ - The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - """ return pulumi.get(self, "min_node_count") @min_node_count.setter @@ -190,10 +128,6 @@ def min_node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the node group. Changing this creates a new - node group. - """ return pulumi.get(self, "name") @name.setter @@ -203,10 +137,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="nodeCount") def node_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of nodes for the node group. Changing - this update the number of nodes of the node group. - """ return pulumi.get(self, "node_count") @node_count.setter @@ -216,12 +146,6 @@ def node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - """ return pulumi.get(self, "region") @region.setter @@ -231,10 +155,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def role(self) -> Optional[pulumi.Input[str]]: - """ - The role of nodes in the node group. Changing this - creates a new node group. - """ return pulumi.get(self, "role") @role.setter @@ -262,37 +182,6 @@ def __init__(__self__, *, updated_at: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering NodeGroup resources. - :param pulumi.Input[str] cluster_id: The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new node group. - :param pulumi.Input[str] flavor_id: The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - :param pulumi.Input[str] image_id: The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - :param pulumi.Input[int] max_node_count: The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - :param pulumi.Input[int] min_node_count: The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - :param pulumi.Input[str] name: The name of the node group. Changing this creates a new - node group. - :param pulumi.Input[int] node_count: The number of nodes for the node group. Changing - this update the number of nodes of the node group. - :param pulumi.Input[str] project_id: The project of the node group. Required if admin - wants to create a cluster in another project. Changing this creates a new - node group. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - :param pulumi.Input[str] role: The role of nodes in the node group. Changing this - creates a new node group. """ if cluster_id is not None: pulumi.set(__self__, "cluster_id", cluster_id) @@ -328,10 +217,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - """ return pulumi.get(self, "cluster_id") @cluster_id.setter @@ -350,10 +235,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> Optional[pulumi.Input[int]]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new node group. - """ return pulumi.get(self, "docker_volume_size") @docker_volume_size.setter @@ -363,11 +244,6 @@ def docker_volume_size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -377,11 +253,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -391,10 +262,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - """ return pulumi.get(self, "labels") @labels.setter @@ -404,10 +271,6 @@ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]) @property @pulumi.getter(name="maxNodeCount") def max_node_count(self) -> Optional[pulumi.Input[int]]: - """ - The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - """ return pulumi.get(self, "max_node_count") @max_node_count.setter @@ -417,10 +280,6 @@ def max_node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - """ return pulumi.get(self, "merge_labels") @merge_labels.setter @@ -430,10 +289,6 @@ def merge_labels(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="minNodeCount") def min_node_count(self) -> Optional[pulumi.Input[int]]: - """ - The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - """ return pulumi.get(self, "min_node_count") @min_node_count.setter @@ -443,10 +298,6 @@ def min_node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the node group. Changing this creates a new - node group. - """ return pulumi.get(self, "name") @name.setter @@ -456,10 +307,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="nodeCount") def node_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of nodes for the node group. Changing - this update the number of nodes of the node group. - """ return pulumi.get(self, "node_count") @node_count.setter @@ -469,11 +316,6 @@ def node_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project of the node group. Required if admin - wants to create a cluster in another project. Changing this creates a new - node group. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -483,12 +325,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - """ return pulumi.get(self, "region") @region.setter @@ -498,10 +334,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def role(self) -> Optional[pulumi.Input[str]]: - """ - The role of nodes in the node group. Changing this - creates a new node group. - """ return pulumi.get(self, "role") @role.setter @@ -537,79 +369,9 @@ def __init__(__self__, role: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 Magnum node group resource within OpenStack. - - ## Example Usage - - ### Create a Nodegroup - - ```python - import pulumi - import pulumi_openstack as openstack - - nodegroup1 = openstack.containerinfra.NodeGroup("nodegroup_1", - name="nodegroup_1", - cluster_id="b9a45c5c-cd03-4958-82aa-b80bf93cb922", - node_count=5) - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which node group was created. - * `updated_at` - The time at which node group was created. - * `docker_volume_size` - See Argument Reference above. - * `role` - See Argument Reference above. - * `image_id` - See Argument Reference above. - * `flavor_id` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `node_count` - See Argument Reference above. - * `min_node_count` - See Argument Reference above. - * `max_node_count` - See Argument Reference above. - * `role` - See Argument Reference above. - - ## Import - - Node groups can be imported using the `id` (cluster_id/nodegroup_id), e.g. - - ```sh - $ pulumi import openstack:containerinfra/nodeGroup:NodeGroup nodegroup_1 b9a45c5c-cd03-4958-82aa-b80bf93cb922/ce0f9463-dd25-474b-9fe8-94de63e5e42b - ``` - + Create a NodeGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] cluster_id: The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new node group. - :param pulumi.Input[str] flavor_id: The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - :param pulumi.Input[str] image_id: The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - :param pulumi.Input[int] max_node_count: The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - :param pulumi.Input[int] min_node_count: The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - :param pulumi.Input[str] name: The name of the node group. Changing this creates a new - node group. - :param pulumi.Input[int] node_count: The number of nodes for the node group. Changing - this update the number of nodes of the node group. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - :param pulumi.Input[str] role: The role of nodes in the node group. Changing this - creates a new node group. """ ... @overload @@ -618,49 +380,7 @@ def __init__(__self__, args: NodeGroupArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 Magnum node group resource within OpenStack. - - ## Example Usage - - ### Create a Nodegroup - - ```python - import pulumi - import pulumi_openstack as openstack - - nodegroup1 = openstack.containerinfra.NodeGroup("nodegroup_1", - name="nodegroup_1", - cluster_id="b9a45c5c-cd03-4958-82aa-b80bf93cb922", - node_count=5) - ``` - - ## Attributes reference - - The following attributes are exported: - - * `region` - See Argument Reference above. - * `name` - See Argument Reference above. - * `project_id` - See Argument Reference above. - * `created_at` - The time at which node group was created. - * `updated_at` - The time at which node group was created. - * `docker_volume_size` - See Argument Reference above. - * `role` - See Argument Reference above. - * `image_id` - See Argument Reference above. - * `flavor_id` - See Argument Reference above. - * `labels` - See Argument Reference above. - * `node_count` - See Argument Reference above. - * `min_node_count` - See Argument Reference above. - * `max_node_count` - See Argument Reference above. - * `role` - See Argument Reference above. - - ## Import - - Node groups can be imported using the `id` (cluster_id/nodegroup_id), e.g. - - ```sh - $ pulumi import openstack:containerinfra/nodeGroup:NodeGroup nodegroup_1 b9a45c5c-cd03-4958-82aa-b80bf93cb922/ce0f9463-dd25-474b-9fe8-94de63e5e42b - ``` - + Create a NodeGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param NodeGroupArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -746,37 +466,6 @@ def get(resource_name: str, :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] cluster_id: The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - :param pulumi.Input[int] docker_volume_size: The size (in GB) of the Docker volume. - Changing this creates a new node group. - :param pulumi.Input[str] flavor_id: The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - :param pulumi.Input[str] image_id: The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - :param pulumi.Input[int] max_node_count: The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - :param pulumi.Input[bool] merge_labels: Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - :param pulumi.Input[int] min_node_count: The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - :param pulumi.Input[str] name: The name of the node group. Changing this creates a new - node group. - :param pulumi.Input[int] node_count: The number of nodes for the node group. Changing - this update the number of nodes of the node group. - :param pulumi.Input[str] project_id: The project of the node group. Required if admin - wants to create a cluster in another project. Changing this creates a new - node group. - :param pulumi.Input[str] region: The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - :param pulumi.Input[str] role: The role of nodes in the node group. Changing this - creates a new node group. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -802,10 +491,6 @@ def get(resource_name: str, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> pulumi.Output[str]: - """ - The UUID of the V1 Container Infra cluster. - Changing this creates a new node group. - """ return pulumi.get(self, "cluster_id") @property @@ -816,114 +501,61 @@ def created_at(self) -> pulumi.Output[str]: @property @pulumi.getter(name="dockerVolumeSize") def docker_volume_size(self) -> pulumi.Output[int]: - """ - The size (in GB) of the Docker volume. - Changing this creates a new node group. - """ return pulumi.get(self, "docker_volume_size") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - The flavor for the nodes of the node group. Can be set - via the `OS_MAGNUM_FLAVOR` environment variable. Changing this creates a new - node group. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: - """ - The reference to an image that is used for nodes of the - node group. Can be set via the `OS_MAGNUM_IMAGE` environment variable. - Changing this updates the image attribute of the existing node group. - """ return pulumi.get(self, "image_id") @property @pulumi.getter def labels(self) -> pulumi.Output[Mapping[str, str]]: - """ - The list of key value pairs representing additional - properties of the node group. Changing this creates a new node group. - """ return pulumi.get(self, "labels") @property @pulumi.getter(name="maxNodeCount") def max_node_count(self) -> pulumi.Output[Optional[int]]: - """ - The maximum number of nodes for the node group. - Changing this update the maximum number of nodes of the node group. - """ return pulumi.get(self, "max_node_count") @property @pulumi.getter(name="mergeLabels") def merge_labels(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the provided labels should be - merged with cluster labels. Changing this creates a new nodegroup. - """ return pulumi.get(self, "merge_labels") @property @pulumi.getter(name="minNodeCount") def min_node_count(self) -> pulumi.Output[int]: - """ - The minimum number of nodes for the node group. - Changing this update the minimum number of nodes of the node group. - """ return pulumi.get(self, "min_node_count") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the node group. Changing this creates a new - node group. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="nodeCount") def node_count(self) -> pulumi.Output[Optional[int]]: - """ - The number of nodes for the node group. Changing - this update the number of nodes of the node group. - """ return pulumi.get(self, "node_count") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The project of the node group. Required if admin - wants to create a cluster in another project. Changing this creates a new - node group. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 Container Infra - client. A Container Infra client is needed to create a cluster. If omitted, - the `region` argument of the provider is used. Changing this creates a new - node group. - """ return pulumi.get(self, "region") @property @pulumi.getter def role(self) -> pulumi.Output[str]: - """ - The role of nodes in the node group. Changing this - creates a new node group. - """ return pulumi.get(self, "role") @property diff --git a/sdk/python/pulumi_openstack/database/_inputs.py b/sdk/python/pulumi_openstack/database/_inputs.py index 0cf3d244d..81cbb2a1b 100644 --- a/sdk/python/pulumi_openstack/database/_inputs.py +++ b/sdk/python/pulumi_openstack/database/_inputs.py @@ -24,11 +24,6 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str], string_type: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[str] name: Configuration parameter name. Changing this creates a new resource. - :param pulumi.Input[str] value: Configuration parameter value. Changing this creates a new resource. - :param pulumi.Input[bool] string_type: Whether or not to store configuration parameter value as string. Changing this creates a new resource. See the below note for more information. - """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) if string_type is not None: @@ -37,9 +32,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> pulumi.Input[str]: - """ - Configuration parameter name. Changing this creates a new resource. - """ return pulumi.get(self, "name") @name.setter @@ -49,9 +41,6 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: - """ - Configuration parameter value. Changing this creates a new resource. - """ return pulumi.get(self, "value") @value.setter @@ -61,9 +50,6 @@ def value(self, value: pulumi.Input[str]): @property @pulumi.getter(name="stringType") def string_type(self) -> Optional[pulumi.Input[bool]]: - """ - Whether or not to store configuration parameter value as string. Changing this creates a new resource. See the below note for more information. - """ return pulumi.get(self, "string_type") @string_type.setter @@ -76,19 +62,12 @@ class ConfigurationDatastoreArgs: def __init__(__self__, *, type: pulumi.Input[str], version: pulumi.Input[str]): - """ - :param pulumi.Input[str] type: Database engine type to be used with this configuration. Changing this creates a new resource. - :param pulumi.Input[str] version: Version of database engine type to be used with this configuration. Changing this creates a new resource. - """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "version", version) @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - Database engine type to be used with this configuration. Changing this creates a new resource. - """ return pulumi.get(self, "type") @type.setter @@ -98,9 +77,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def version(self) -> pulumi.Input[str]: - """ - Version of database engine type to be used with this configuration. Changing this creates a new resource. - """ return pulumi.get(self, "version") @version.setter @@ -114,13 +90,6 @@ def __init__(__self__, *, name: pulumi.Input[str], charset: Optional[pulumi.Input[str]] = None, collate: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] name: Database to be created on new instance. Changing this creates a - new instance. - :param pulumi.Input[str] charset: Database character set. Changing this creates a - new instance. - :param pulumi.Input[str] collate: Database collation. Changing this creates a new instance. - """ pulumi.set(__self__, "name", name) if charset is not None: pulumi.set(__self__, "charset", charset) @@ -130,10 +99,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> pulumi.Input[str]: - """ - Database to be created on new instance. Changing this creates a - new instance. - """ return pulumi.get(self, "name") @name.setter @@ -143,10 +108,6 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def charset(self) -> Optional[pulumi.Input[str]]: - """ - Database character set. Changing this creates a - new instance. - """ return pulumi.get(self, "charset") @charset.setter @@ -156,9 +117,6 @@ def charset(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def collate(self) -> Optional[pulumi.Input[str]]: - """ - Database collation. Changing this creates a new instance. - """ return pulumi.get(self, "collate") @collate.setter @@ -171,22 +129,12 @@ class InstanceDatastoreArgs: def __init__(__self__, *, type: pulumi.Input[str], version: pulumi.Input[str]): - """ - :param pulumi.Input[str] type: Database engine type to be used in new instance. Changing this - creates a new instance. - :param pulumi.Input[str] version: Version of database engine type to be used in new instance. - Changing this creates a new instance. - """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "version", version) @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - Database engine type to be used in new instance. Changing this - creates a new instance. - """ return pulumi.get(self, "type") @type.setter @@ -196,10 +144,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def version(self) -> pulumi.Input[str]: - """ - Version of database engine type to be used in new instance. - Changing this creates a new instance. - """ return pulumi.get(self, "version") @version.setter @@ -214,16 +158,6 @@ def __init__(__self__, *, fixed_ip_v6: Optional[pulumi.Input[str]] = None, port: Optional[pulumi.Input[str]] = None, uuid: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] fixed_ip_v4: Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new instance. - :param pulumi.Input[str] fixed_ip_v6: Specifies a fixed IPv6 address to be used on this - network. Changing this creates a new instance. - :param pulumi.Input[str] port: The port UUID of a - network to attach to the instance. Changing this creates a new instance. - :param pulumi.Input[str] uuid: The network UUID to - attach to the instance. Changing this creates a new instance. - """ if fixed_ip_v4 is not None: pulumi.set(__self__, "fixed_ip_v4", fixed_ip_v4) if fixed_ip_v6 is not None: @@ -236,10 +170,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> Optional[pulumi.Input[str]]: - """ - Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new instance. - """ return pulumi.get(self, "fixed_ip_v4") @fixed_ip_v4.setter @@ -249,10 +179,6 @@ def fixed_ip_v4(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedIpV6") def fixed_ip_v6(self) -> Optional[pulumi.Input[str]]: - """ - Specifies a fixed IPv6 address to be used on this - network. Changing this creates a new instance. - """ return pulumi.get(self, "fixed_ip_v6") @fixed_ip_v6.setter @@ -262,10 +188,6 @@ def fixed_ip_v6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def port(self) -> Optional[pulumi.Input[str]]: - """ - The port UUID of a - network to attach to the instance. Changing this creates a new instance. - """ return pulumi.get(self, "port") @port.setter @@ -275,10 +197,6 @@ def port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def uuid(self) -> Optional[pulumi.Input[str]]: - """ - The network UUID to - attach to the instance. Changing this creates a new instance. - """ return pulumi.get(self, "uuid") @uuid.setter @@ -293,16 +211,6 @@ def __init__(__self__, *, databases: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, host: Optional[pulumi.Input[str]] = None, password: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] name: Username to be created on new instance. Changing this creates a - new instance. - :param pulumi.Input[Sequence[pulumi.Input[str]]] databases: A list of databases that user will have access to. If not specified, - user has access to all databases on th einstance. Changing this creates a new instance. - :param pulumi.Input[str] host: An ip address or % sign indicating what ip addresses can connect with - this user credentials. Changing this creates a new instance. - :param pulumi.Input[str] password: User's password. Changing this creates a - new instance. - """ pulumi.set(__self__, "name", name) if databases is not None: pulumi.set(__self__, "databases", databases) @@ -314,10 +222,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> pulumi.Input[str]: - """ - Username to be created on new instance. Changing this creates a - new instance. - """ return pulumi.get(self, "name") @name.setter @@ -327,10 +231,6 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def databases(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of databases that user will have access to. If not specified, - user has access to all databases on th einstance. Changing this creates a new instance. - """ return pulumi.get(self, "databases") @databases.setter @@ -340,10 +240,6 @@ def databases(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def host(self) -> Optional[pulumi.Input[str]]: - """ - An ip address or % sign indicating what ip addresses can connect with - this user credentials. Changing this creates a new instance. - """ return pulumi.get(self, "host") @host.setter @@ -353,10 +249,6 @@ def host(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - User's password. Changing this creates a - new instance. - """ return pulumi.get(self, "password") @password.setter diff --git a/sdk/python/pulumi_openstack/database/configuration.py b/sdk/python/pulumi_openstack/database/configuration.py index bc36d0610..15bcd5a5f 100644 --- a/sdk/python/pulumi_openstack/database/configuration.py +++ b/sdk/python/pulumi_openstack/database/configuration.py @@ -23,13 +23,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Configuration resource. - :param pulumi.Input['ConfigurationDatastoreArgs'] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - :param pulumi.Input[str] description: Description of the resource. - :param pulumi.Input[Sequence[pulumi.Input['ConfigurationConfigurationArgs']]] configurations: An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. """ pulumi.set(__self__, "datastore", datastore) pulumi.set(__self__, "description", description) @@ -43,10 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter def datastore(self) -> pulumi.Input['ConfigurationDatastoreArgs']: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - """ return pulumi.get(self, "datastore") @datastore.setter @@ -56,9 +45,6 @@ def datastore(self, value: pulumi.Input['ConfigurationDatastoreArgs']): @property @pulumi.getter def description(self) -> pulumi.Input[str]: - """ - Description of the resource. - """ return pulumi.get(self, "description") @description.setter @@ -68,9 +54,6 @@ def description(self, value: pulumi.Input[str]): @property @pulumi.getter def configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationConfigurationArgs']]]]: - """ - An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - """ return pulumi.get(self, "configurations") @configurations.setter @@ -80,9 +63,6 @@ def configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Con @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -92,10 +72,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") @region.setter @@ -113,13 +89,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Configuration resources. - :param pulumi.Input[Sequence[pulumi.Input['ConfigurationConfigurationArgs']]] configurations: An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - :param pulumi.Input['ConfigurationDatastoreArgs'] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - :param pulumi.Input[str] description: Description of the resource. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. """ if configurations is not None: pulumi.set(__self__, "configurations", configurations) @@ -135,9 +104,6 @@ def __init__(__self__, *, @property @pulumi.getter def configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationConfigurationArgs']]]]: - """ - An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - """ return pulumi.get(self, "configurations") @configurations.setter @@ -147,10 +113,6 @@ def configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Con @property @pulumi.getter def datastore(self) -> Optional[pulumi.Input['ConfigurationDatastoreArgs']]: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - """ return pulumi.get(self, "datastore") @datastore.setter @@ -160,9 +122,6 @@ def datastore(self, value: Optional[pulumi.Input['ConfigurationDatastoreArgs']]) @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Description of the resource. - """ return pulumi.get(self, "description") @description.setter @@ -172,9 +131,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -184,10 +140,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") @region.setter @@ -210,13 +162,6 @@ def __init__(__self__, Create a Configuration resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['ConfigurationConfigurationArgs', 'ConfigurationConfigurationArgsDict']]]] configurations: An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - :param pulumi.Input[Union['ConfigurationDatastoreArgs', 'ConfigurationDatastoreArgsDict']] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - :param pulumi.Input[str] description: Description of the resource. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. """ ... @overload @@ -286,13 +231,6 @@ def get(resource_name: str, :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['ConfigurationConfigurationArgs', 'ConfigurationConfigurationArgsDict']]]] configurations: An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - :param pulumi.Input[Union['ConfigurationDatastoreArgs', 'ConfigurationDatastoreArgsDict']] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - :param pulumi.Input[str] description: Description of the resource. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -308,42 +246,25 @@ def get(resource_name: str, @property @pulumi.getter def configurations(self) -> pulumi.Output[Optional[Sequence['outputs.ConfigurationConfiguration']]]: - """ - An array of configuration parameter name and value. Can be specified multiple times. The configuration object structure is documented below. - """ return pulumi.get(self, "configurations") @property @pulumi.getter def datastore(self) -> pulumi.Output['outputs.ConfigurationDatastore']: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates resource. - """ return pulumi.get(self, "datastore") @property @pulumi.getter def description(self) -> pulumi.Output[str]: - """ - Description of the resource. - """ return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/database/database.py b/sdk/python/pulumi_openstack/database/database.py index 51e55e8a6..34e977251 100644 --- a/sdk/python/pulumi_openstack/database/database.py +++ b/sdk/python/pulumi_openstack/database/database.py @@ -19,9 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Database resource. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: Openstack region resource is created in. """ pulumi.set(__self__, "instance_id", instance_id) if name is not None: @@ -32,9 +29,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Input[str]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -44,9 +38,6 @@ def instance_id(self, value: pulumi.Input[str]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -56,9 +47,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") @region.setter @@ -74,9 +62,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Database resources. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: Openstack region resource is created in. """ if instance_id is not None: pulumi.set(__self__, "instance_id", instance_id) @@ -88,9 +73,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -100,9 +82,6 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -112,9 +91,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") @region.setter @@ -132,34 +108,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 DB database resource within OpenStack. - - ## Example Usage - - ### Database - - ```python - import pulumi - import pulumi_openstack as openstack - - mydb = openstack.database.Database("mydb", - name="mydb", - instance_id=basic["id"]) - ``` - - ## Import - - Databases can be imported by using `instance-id/db-name`, e.g. - - ```sh - $ pulumi import openstack:database/database:Database mydb 7b9e3cd3-00d9-449c-b074-8439f8e274fa/mydb - ``` - + Create a Database resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: Openstack region resource is created in. """ ... @overload @@ -168,29 +119,7 @@ def __init__(__self__, args: DatabaseArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 DB database resource within OpenStack. - - ## Example Usage - - ### Database - - ```python - import pulumi - import pulumi_openstack as openstack - - mydb = openstack.database.Database("mydb", - name="mydb", - instance_id=basic["id"]) - ``` - - ## Import - - Databases can be imported by using `instance-id/db-name`, e.g. - - ```sh - $ pulumi import openstack:database/database:Database mydb 7b9e3cd3-00d9-449c-b074-8439f8e274fa/mydb - ``` - + Create a Database resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param DatabaseArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -243,9 +172,6 @@ def get(resource_name: str, :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] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: Openstack region resource is created in. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -259,24 +185,15 @@ def get(resource_name: str, @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/database/instance.py b/sdk/python/pulumi_openstack/database/instance.py index ec42f114b..f470ca340 100644 --- a/sdk/python/pulumi_openstack/database/instance.py +++ b/sdk/python/pulumi_openstack/database/instance.py @@ -27,23 +27,6 @@ def __init__(__self__, *, users: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]]] = None): """ The set of arguments for constructing a Instance resource. - :param pulumi.Input['InstanceDatastoreArgs'] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - :param pulumi.Input[int] size: Specifies the volume size in GB. Changing this creates new instance. - :param pulumi.Input[str] configuration_id: Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - :param pulumi.Input[Sequence[pulumi.Input['InstanceDatabaseArgs']]] databases: An array of database name, charset and collate. The database - object structure is documented below. - :param pulumi.Input[str] flavor_id: The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. - :param pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]] users: An array of username, password, host and databases. The user - object structure is documented below. """ pulumi.set(__self__, "datastore", datastore) pulumi.set(__self__, "size", size) @@ -65,10 +48,6 @@ def __init__(__self__, *, @property @pulumi.getter def datastore(self) -> pulumi.Input['InstanceDatastoreArgs']: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - """ return pulumi.get(self, "datastore") @datastore.setter @@ -78,9 +57,6 @@ def datastore(self, value: pulumi.Input['InstanceDatastoreArgs']): @property @pulumi.getter def size(self) -> pulumi.Input[int]: - """ - Specifies the volume size in GB. Changing this creates new instance. - """ return pulumi.get(self, "size") @size.setter @@ -90,10 +66,6 @@ def size(self, value: pulumi.Input[int]): @property @pulumi.getter(name="configurationId") def configuration_id(self) -> Optional[pulumi.Input[str]]: - """ - Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - """ return pulumi.get(self, "configuration_id") @configuration_id.setter @@ -103,10 +75,6 @@ def configuration_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def databases(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceDatabaseArgs']]]]: - """ - An array of database name, charset and collate. The database - object structure is documented below. - """ return pulumi.get(self, "databases") @databases.setter @@ -116,10 +84,6 @@ def databases(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Instance @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -129,9 +93,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -141,11 +102,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]]]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - """ return pulumi.get(self, "networks") @networks.setter @@ -155,10 +111,6 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceN @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") @region.setter @@ -168,10 +120,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]]]: - """ - An array of username, password, host and databases. The user - object structure is documented below. - """ return pulumi.get(self, "users") @users.setter @@ -194,24 +142,6 @@ def __init__(__self__, *, users: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]]] = None): """ Input properties used for looking up and filtering Instance resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] addresses: A list of IP addresses assigned to the instance. - :param pulumi.Input[str] configuration_id: Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - :param pulumi.Input[Sequence[pulumi.Input['InstanceDatabaseArgs']]] databases: An array of database name, charset and collate. The database - object structure is documented below. - :param pulumi.Input['InstanceDatastoreArgs'] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - :param pulumi.Input[str] flavor_id: The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. - :param pulumi.Input[int] size: Specifies the volume size in GB. Changing this creates new instance. - :param pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]] users: An array of username, password, host and databases. The user - object structure is documented below. """ if addresses is not None: pulumi.set(__self__, "addresses", addresses) @@ -237,9 +167,6 @@ def __init__(__self__, *, @property @pulumi.getter def addresses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of IP addresses assigned to the instance. - """ return pulumi.get(self, "addresses") @addresses.setter @@ -249,10 +176,6 @@ def addresses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="configurationId") def configuration_id(self) -> Optional[pulumi.Input[str]]: - """ - Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - """ return pulumi.get(self, "configuration_id") @configuration_id.setter @@ -262,10 +185,6 @@ def configuration_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def databases(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceDatabaseArgs']]]]: - """ - An array of database name, charset and collate. The database - object structure is documented below. - """ return pulumi.get(self, "databases") @databases.setter @@ -275,10 +194,6 @@ def databases(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Instance @property @pulumi.getter def datastore(self) -> Optional[pulumi.Input['InstanceDatastoreArgs']]: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - """ return pulumi.get(self, "datastore") @datastore.setter @@ -288,10 +203,6 @@ def datastore(self, value: Optional[pulumi.Input['InstanceDatastoreArgs']]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -301,9 +212,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -313,11 +221,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceNetworkArgs']]]]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - """ return pulumi.get(self, "networks") @networks.setter @@ -327,10 +230,6 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceN @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") @region.setter @@ -340,9 +239,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def size(self) -> Optional[pulumi.Input[int]]: - """ - Specifies the volume size in GB. Changing this creates new instance. - """ return pulumi.get(self, "size") @size.setter @@ -352,10 +248,6 @@ def size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceUserArgs']]]]: - """ - An array of username, password, host and databases. The user - object structure is documented below. - """ return pulumi.get(self, "users") @users.setter @@ -379,53 +271,9 @@ def __init__(__self__, users: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceUserArgs', 'InstanceUserArgsDict']]]]] = None, __props__=None): """ - Manages a V1 DB instance resource within OpenStack. - - > **Note:** All arguments including the instance user password will be stored - in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### Instance - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.database.Instance("test", - region="region-test", - name="test", - flavor_id="31792d21-c355-4587-9290-56c1ed0ca376", - size=8, - networks=[{ - "uuid": "c0612505-caf2-4fb0-b7cb-56a0240a2b12", - }], - datastore={ - "version": "mysql-5.7", - "type": "mysql", - }) - ``` - + Create a Instance resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] configuration_id: Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceDatabaseArgs', 'InstanceDatabaseArgsDict']]]] databases: An array of database name, charset and collate. The database - object structure is documented below. - :param pulumi.Input[Union['InstanceDatastoreArgs', 'InstanceDatastoreArgsDict']] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - :param pulumi.Input[str] flavor_id: The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceNetworkArgs', 'InstanceNetworkArgsDict']]]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. - :param pulumi.Input[int] size: Specifies the volume size in GB. Changing this creates new instance. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceUserArgs', 'InstanceUserArgsDict']]]] users: An array of username, password, host and databases. The user - object structure is documented below. """ ... @overload @@ -434,34 +282,7 @@ def __init__(__self__, args: InstanceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 DB instance resource within OpenStack. - - > **Note:** All arguments including the instance user password will be stored - in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### Instance - - ```python - import pulumi - import pulumi_openstack as openstack - - test = openstack.database.Instance("test", - region="region-test", - name="test", - flavor_id="31792d21-c355-4587-9290-56c1ed0ca376", - size=8, - networks=[{ - "uuid": "c0612505-caf2-4fb0-b7cb-56a0240a2b12", - }], - datastore={ - "version": "mysql-5.7", - "type": "mysql", - }) - ``` - + Create a Instance resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param InstanceArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -536,24 +357,6 @@ def get(resource_name: str, :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[str]]] addresses: A list of IP addresses assigned to the instance. - :param pulumi.Input[str] configuration_id: Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceDatabaseArgs', 'InstanceDatabaseArgsDict']]]] databases: An array of database name, charset and collate. The database - object structure is documented below. - :param pulumi.Input[Union['InstanceDatastoreArgs', 'InstanceDatastoreArgsDict']] datastore: An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - :param pulumi.Input[str] flavor_id: The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceNetworkArgs', 'InstanceNetworkArgsDict']]]] networks: An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - :param pulumi.Input[str] region: The region in which to create the db instance. Changing this - creates a new instance. - :param pulumi.Input[int] size: Specifies the volume size in GB. Changing this creates new instance. - :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceUserArgs', 'InstanceUserArgsDict']]]] users: An array of username, password, host and databases. The user - object structure is documented below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -574,88 +377,50 @@ def get(resource_name: str, @property @pulumi.getter def addresses(self) -> pulumi.Output[Sequence[str]]: - """ - A list of IP addresses assigned to the instance. - """ return pulumi.get(self, "addresses") @property @pulumi.getter(name="configurationId") def configuration_id(self) -> pulumi.Output[Optional[str]]: - """ - Configuration ID to be attached to the instance. Database instance - will be rebooted when configuration is detached. - """ return pulumi.get(self, "configuration_id") @property @pulumi.getter def databases(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceDatabase']]]: - """ - An array of database name, charset and collate. The database - object structure is documented below. - """ return pulumi.get(self, "databases") @property @pulumi.getter def datastore(self) -> pulumi.Output['outputs.InstanceDatastore']: - """ - An array of database engine type and version. The datastore - object structure is documented below. Changing this creates a new instance. - """ return pulumi.get(self, "datastore") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - The flavor ID of the desired flavor for the instance. - Changing this creates new instance. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @property @pulumi.getter def networks(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceNetwork']]]: - """ - An array of one or more networks to attach to the - instance. The network object structure is documented below. Changing this - creates a new instance. - """ return pulumi.get(self, "networks") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the db instance. Changing this - creates a new instance. - """ return pulumi.get(self, "region") @property @pulumi.getter def size(self) -> pulumi.Output[int]: - """ - Specifies the volume size in GB. Changing this creates new instance. - """ return pulumi.get(self, "size") @property @pulumi.getter def users(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceUser']]]: - """ - An array of username, password, host and databases. The user - object structure is documented below. - """ return pulumi.get(self, "users") diff --git a/sdk/python/pulumi_openstack/database/outputs.py b/sdk/python/pulumi_openstack/database/outputs.py index a258785c8..fc94bcf2c 100644 --- a/sdk/python/pulumi_openstack/database/outputs.py +++ b/sdk/python/pulumi_openstack/database/outputs.py @@ -41,11 +41,6 @@ def __init__(__self__, *, name: str, value: str, string_type: Optional[bool] = None): - """ - :param str name: Configuration parameter name. Changing this creates a new resource. - :param str value: Configuration parameter value. Changing this creates a new resource. - :param bool string_type: Whether or not to store configuration parameter value as string. Changing this creates a new resource. See the below note for more information. - """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) if string_type is not None: @@ -54,25 +49,16 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> str: - """ - Configuration parameter name. Changing this creates a new resource. - """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: - """ - Configuration parameter value. Changing this creates a new resource. - """ return pulumi.get(self, "value") @property @pulumi.getter(name="stringType") def string_type(self) -> Optional[bool]: - """ - Whether or not to store configuration parameter value as string. Changing this creates a new resource. See the below note for more information. - """ return pulumi.get(self, "string_type") @@ -81,27 +67,17 @@ class ConfigurationDatastore(dict): def __init__(__self__, *, type: str, version: str): - """ - :param str type: Database engine type to be used with this configuration. Changing this creates a new resource. - :param str version: Version of database engine type to be used with this configuration. Changing this creates a new resource. - """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "version", version) @property @pulumi.getter def type(self) -> str: - """ - Database engine type to be used with this configuration. Changing this creates a new resource. - """ return pulumi.get(self, "type") @property @pulumi.getter def version(self) -> str: - """ - Version of database engine type to be used with this configuration. Changing this creates a new resource. - """ return pulumi.get(self, "version") @@ -111,13 +87,6 @@ def __init__(__self__, *, name: str, charset: Optional[str] = None, collate: Optional[str] = None): - """ - :param str name: Database to be created on new instance. Changing this creates a - new instance. - :param str charset: Database character set. Changing this creates a - new instance. - :param str collate: Database collation. Changing this creates a new instance. - """ pulumi.set(__self__, "name", name) if charset is not None: pulumi.set(__self__, "charset", charset) @@ -127,27 +96,16 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> str: - """ - Database to be created on new instance. Changing this creates a - new instance. - """ return pulumi.get(self, "name") @property @pulumi.getter def charset(self) -> Optional[str]: - """ - Database character set. Changing this creates a - new instance. - """ return pulumi.get(self, "charset") @property @pulumi.getter def collate(self) -> Optional[str]: - """ - Database collation. Changing this creates a new instance. - """ return pulumi.get(self, "collate") @@ -156,31 +114,17 @@ class InstanceDatastore(dict): def __init__(__self__, *, type: str, version: str): - """ - :param str type: Database engine type to be used in new instance. Changing this - creates a new instance. - :param str version: Version of database engine type to be used in new instance. - Changing this creates a new instance. - """ pulumi.set(__self__, "type", type) pulumi.set(__self__, "version", version) @property @pulumi.getter def type(self) -> str: - """ - Database engine type to be used in new instance. Changing this - creates a new instance. - """ return pulumi.get(self, "type") @property @pulumi.getter def version(self) -> str: - """ - Version of database engine type to be used in new instance. - Changing this creates a new instance. - """ return pulumi.get(self, "version") @@ -210,16 +154,6 @@ def __init__(__self__, *, fixed_ip_v6: Optional[str] = None, port: Optional[str] = None, uuid: Optional[str] = None): - """ - :param str fixed_ip_v4: Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new instance. - :param str fixed_ip_v6: Specifies a fixed IPv6 address to be used on this - network. Changing this creates a new instance. - :param str port: The port UUID of a - network to attach to the instance. Changing this creates a new instance. - :param str uuid: The network UUID to - attach to the instance. Changing this creates a new instance. - """ if fixed_ip_v4 is not None: pulumi.set(__self__, "fixed_ip_v4", fixed_ip_v4) if fixed_ip_v6 is not None: @@ -232,37 +166,21 @@ def __init__(__self__, *, @property @pulumi.getter(name="fixedIpV4") def fixed_ip_v4(self) -> Optional[str]: - """ - Specifies a fixed IPv4 address to be used on this - network. Changing this creates a new instance. - """ return pulumi.get(self, "fixed_ip_v4") @property @pulumi.getter(name="fixedIpV6") def fixed_ip_v6(self) -> Optional[str]: - """ - Specifies a fixed IPv6 address to be used on this - network. Changing this creates a new instance. - """ return pulumi.get(self, "fixed_ip_v6") @property @pulumi.getter def port(self) -> Optional[str]: - """ - The port UUID of a - network to attach to the instance. Changing this creates a new instance. - """ return pulumi.get(self, "port") @property @pulumi.getter def uuid(self) -> Optional[str]: - """ - The network UUID to - attach to the instance. Changing this creates a new instance. - """ return pulumi.get(self, "uuid") @@ -273,16 +191,6 @@ def __init__(__self__, *, databases: Optional[Sequence[str]] = None, host: Optional[str] = None, password: Optional[str] = None): - """ - :param str name: Username to be created on new instance. Changing this creates a - new instance. - :param Sequence[str] databases: A list of databases that user will have access to. If not specified, - user has access to all databases on th einstance. Changing this creates a new instance. - :param str host: An ip address or % sign indicating what ip addresses can connect with - this user credentials. Changing this creates a new instance. - :param str password: User's password. Changing this creates a - new instance. - """ pulumi.set(__self__, "name", name) if databases is not None: pulumi.set(__self__, "databases", databases) @@ -294,37 +202,21 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> str: - """ - Username to be created on new instance. Changing this creates a - new instance. - """ return pulumi.get(self, "name") @property @pulumi.getter def databases(self) -> Optional[Sequence[str]]: - """ - A list of databases that user will have access to. If not specified, - user has access to all databases on th einstance. Changing this creates a new instance. - """ return pulumi.get(self, "databases") @property @pulumi.getter def host(self) -> Optional[str]: - """ - An ip address or % sign indicating what ip addresses can connect with - this user credentials. Changing this creates a new instance. - """ return pulumi.get(self, "host") @property @pulumi.getter def password(self) -> Optional[str]: - """ - User's password. Changing this creates a - new instance. - """ return pulumi.get(self, "password") diff --git a/sdk/python/pulumi_openstack/database/user.py b/sdk/python/pulumi_openstack/database/user.py index 23e2b549e..4b5ef9b4c 100644 --- a/sdk/python/pulumi_openstack/database/user.py +++ b/sdk/python/pulumi_openstack/database/user.py @@ -22,11 +22,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a User resource. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] password: User's password. - :param pulumi.Input[Sequence[pulumi.Input[str]]] databases: A list of database user should have access to. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] region: Openstack region resource is created in. """ pulumi.set(__self__, "instance_id", instance_id) pulumi.set(__self__, "password", password) @@ -42,9 +37,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Input[str]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -54,9 +46,6 @@ def instance_id(self, value: pulumi.Input[str]): @property @pulumi.getter def password(self) -> pulumi.Input[str]: - """ - User's password. - """ return pulumi.get(self, "password") @password.setter @@ -66,9 +55,6 @@ def password(self, value: pulumi.Input[str]): @property @pulumi.getter def databases(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of database user should have access to. - """ return pulumi.get(self, "databases") @databases.setter @@ -87,9 +73,6 @@ def host(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -99,9 +82,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") @region.setter @@ -120,11 +100,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering User resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] databases: A list of database user should have access to. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] password: User's password. - :param pulumi.Input[str] region: Openstack region resource is created in. """ if databases is not None: pulumi.set(__self__, "databases", databases) @@ -142,9 +117,6 @@ def __init__(__self__, *, @property @pulumi.getter def databases(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of database user should have access to. - """ return pulumi.get(self, "databases") @databases.setter @@ -163,9 +135,6 @@ def host(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @instance_id.setter @@ -175,9 +144,6 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @name.setter @@ -187,9 +153,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - User's password. - """ return pulumi.get(self, "password") @password.setter @@ -199,9 +162,6 @@ def password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") @region.setter @@ -222,34 +182,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 DB user resource within OpenStack. - - > **Note:** All arguments including the database password will be stored in the - raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### User - - ```python - import pulumi - import pulumi_openstack as openstack - - basic = openstack.database.User("basic", - name="basic", - instance_id=basic_openstack_db_instance_v1["id"], - password="password", - databases=["testdb"]) - ``` - + Create a User resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] databases: A list of database user should have access to. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] password: User's password. - :param pulumi.Input[str] region: Openstack region resource is created in. """ ... @overload @@ -258,27 +193,7 @@ def __init__(__self__, args: UserArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 DB user resource within OpenStack. - - > **Note:** All arguments including the database password will be stored in the - raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ### User - - ```python - import pulumi - import pulumi_openstack as openstack - - basic = openstack.database.User("basic", - name="basic", - instance_id=basic_openstack_db_instance_v1["id"], - password="password", - databases=["testdb"]) - ``` - + Create a User resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param UserArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -344,11 +259,6 @@ def get(resource_name: str, :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[str]]] databases: A list of database user should have access to. - :param pulumi.Input[str] instance_id: The ID for the database instance. - :param pulumi.Input[str] name: A unique name for the resource. - :param pulumi.Input[str] password: User's password. - :param pulumi.Input[str] region: Openstack region resource is created in. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -365,9 +275,6 @@ def get(resource_name: str, @property @pulumi.getter def databases(self) -> pulumi.Output[Sequence[str]]: - """ - A list of database user should have access to. - """ return pulumi.get(self, "databases") @property @@ -378,32 +285,20 @@ def host(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: - """ - The ID for the database instance. - """ return pulumi.get(self, "instance_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the resource. - """ return pulumi.get(self, "name") @property @pulumi.getter def password(self) -> pulumi.Output[str]: - """ - User's password. - """ return pulumi.get(self, "password") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - Openstack region resource is created in. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/dns/get_dns_zone.py b/sdk/python/pulumi_openstack/dns/get_dns_zone.py index 6cbd1d79a..a4b83a078 100644 --- a/sdk/python/pulumi_openstack/dns/get_dns_zone.py +++ b/sdk/python/pulumi_openstack/dns/get_dns_zone.py @@ -85,33 +85,21 @@ def all_projects(self) -> Optional[str]: @property @pulumi.getter def attributes(self) -> Mapping[str, str]: - """ - Attributes of the DNS Service scheduler. - """ return pulumi.get(self, "attributes") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time the zone was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter def email(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "email") @property @@ -125,97 +113,61 @@ def id(self) -> str: @property @pulumi.getter def masters(self) -> Sequence[str]: - """ - An array of master DNS servers. When `type` is `SECONDARY`. - """ return pulumi.get(self, "masters") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="poolId") def pool_id(self) -> str: - """ - The ID of the pool hosting the zone. - """ return pulumi.get(self, "pool_id") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The project ID that owns the zone. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def serial(self) -> int: - """ - The serial number of the zone. - """ return pulumi.get(self, "serial") @property @pulumi.getter def status(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="transferredAt") def transferred_at(self) -> str: - """ - The time the zone was transferred. - """ return pulumi.get(self, "transferred_at") @property @pulumi.getter def ttl(self) -> Optional[int]: - """ - See Argument Reference above. - """ return pulumi.get(self, "ttl") @property @pulumi.getter def type(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time the zone was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter def version(self) -> int: - """ - The version of the zone. - """ return pulumi.get(self, "version") @@ -264,39 +216,7 @@ def get_dns_zone(all_projects: Optional[str] = None, version: Optional[int] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDnsZoneResult: """ - Use this data source to get the ID of an available OpenStack DNS zone. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zone1 = openstack.dns.get_dns_zone(name="example.com") - ``` - - - :param str all_projects: Try to obtain zone ID by listing all projects - (requires admin role by default, depends on your policy configuration) - :param Mapping[str, str] attributes: Attributes of the DNS Service scheduler. - :param str created_at: The time the zone was created. - :param str description: A description of the zone. - :param str email: The email contact for the zone record. - :param Sequence[str] masters: An array of master DNS servers. When `type` is `SECONDARY`. - :param str name: The name of the zone. - :param str pool_id: The ID of the pool hosting the zone. - :param str project_id: The ID of the project the DNS zone is obtained from, - sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned user role in target project) - :param str region: The region in which to obtain the V2 DNS client. - A DNS client is needed to retrieve zone ids. If omitted, the - `region` argument of the provider is used. - :param int serial: The serial number of the zone. - :param str status: The zone's status. - :param str transferred_at: The time the zone was transferred. - :param int ttl: The time to live (TTL) of the zone. - :param str type: The type of the zone. Can either be `PRIMARY` or `SECONDARY`. - :param str updated_at: The time the zone was last updated. - :param int version: The version of the zone. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['allProjects'] = all_projects @@ -360,38 +280,6 @@ def get_dns_zone_output(all_projects: Optional[pulumi.Input[Optional[str]]] = No version: Optional[pulumi.Input[Optional[int]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDnsZoneResult]: """ - Use this data source to get the ID of an available OpenStack DNS zone. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zone1 = openstack.dns.get_dns_zone(name="example.com") - ``` - - - :param str all_projects: Try to obtain zone ID by listing all projects - (requires admin role by default, depends on your policy configuration) - :param Mapping[str, str] attributes: Attributes of the DNS Service scheduler. - :param str created_at: The time the zone was created. - :param str description: A description of the zone. - :param str email: The email contact for the zone record. - :param Sequence[str] masters: An array of master DNS servers. When `type` is `SECONDARY`. - :param str name: The name of the zone. - :param str pool_id: The ID of the pool hosting the zone. - :param str project_id: The ID of the project the DNS zone is obtained from, - sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned user role in target project) - :param str region: The region in which to obtain the V2 DNS client. - A DNS client is needed to retrieve zone ids. If omitted, the - `region` argument of the provider is used. - :param int serial: The serial number of the zone. - :param str status: The zone's status. - :param str transferred_at: The time the zone was transferred. - :param int ttl: The time to live (TTL) of the zone. - :param str type: The type of the zone. Can either be `PRIMARY` or `SECONDARY`. - :param str updated_at: The time the zone was last updated. - :param int version: The version of the zone. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/dns/record_set.py b/sdk/python/pulumi_openstack/dns/record_set.py index 8510bfaac..d606db4e4 100644 --- a/sdk/python/pulumi_openstack/dns/record_set.py +++ b/sdk/python/pulumi_openstack/dns/record_set.py @@ -26,26 +26,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a RecordSet resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] records: An array of DNS records. - :param pulumi.Input[str] zone_id: The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. - :param pulumi.Input[str] description: A description of the record set. - :param pulumi.Input[bool] disable_status_check: Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - :param pulumi.Input[str] name: The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[str] region: The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - :param pulumi.Input[int] ttl: The time to live (TTL) of the record set. - :param pulumi.Input[str] type: The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new record set. """ pulumi.set(__self__, "records", records) pulumi.set(__self__, "zone_id", zone_id) @@ -69,9 +49,6 @@ def __init__(__self__, *, @property @pulumi.getter def records(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - An array of DNS records. - """ return pulumi.get(self, "records") @records.setter @@ -81,10 +58,6 @@ def records(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @property @pulumi.getter(name="zoneId") def zone_id(self) -> pulumi.Input[str]: - """ - The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "zone_id") @zone_id.setter @@ -94,9 +67,6 @@ def zone_id(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the record set. - """ return pulumi.get(self, "description") @description.setter @@ -106,11 +76,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -120,10 +85,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "name") @name.setter @@ -133,11 +94,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @project_id.setter @@ -147,11 +103,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "region") @region.setter @@ -161,9 +112,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ttl(self) -> Optional[pulumi.Input[int]]: - """ - The time to live (TTL) of the record set. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -173,10 +121,6 @@ def ttl(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - """ return pulumi.get(self, "type") @type.setter @@ -186,10 +130,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new record set. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -212,26 +152,6 @@ def __init__(__self__, *, zone_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RecordSet resources. - :param pulumi.Input[str] description: A description of the record set. - :param pulumi.Input[bool] disable_status_check: Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - :param pulumi.Input[str] name: The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[Sequence[pulumi.Input[str]]] records: An array of DNS records. - :param pulumi.Input[str] region: The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - :param pulumi.Input[int] ttl: The time to live (TTL) of the record set. - :param pulumi.Input[str] type: The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new record set. - :param pulumi.Input[str] zone_id: The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. """ if description is not None: pulumi.set(__self__, "description", description) @@ -257,9 +177,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the record set. - """ return pulumi.get(self, "description") @description.setter @@ -269,11 +186,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -283,10 +195,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "name") @name.setter @@ -296,11 +204,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @project_id.setter @@ -310,9 +213,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def records(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of DNS records. - """ return pulumi.get(self, "records") @records.setter @@ -322,11 +222,6 @@ def records(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "region") @region.setter @@ -336,9 +231,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ttl(self) -> Optional[pulumi.Input[int]]: - """ - The time to live (TTL) of the record set. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -348,10 +240,6 @@ def ttl(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - """ return pulumi.get(self, "type") @type.setter @@ -361,10 +249,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new record set. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -374,10 +258,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="zoneId") def zone_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "zone_id") @zone_id.setter @@ -402,65 +282,9 @@ def __init__(__self__, zone_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a DNS record set in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="email2@example.com", - description="a zone", - ttl=6000, - type="PRIMARY") - rs_example_com = openstack.dns.RecordSet("rs_example_com", - zone_id=example_zone.id, - name="rs.example.com.", - description="An example record set", - ttl=3000, - type="A", - records=["10.0.0.1"]) - ``` - - ## Import - - This resource can be imported by specifying the zone ID and recordset ID with an optional project ID as a prefix: - - ```sh - $ pulumi import openstack:dns/recordSet:RecordSet recordset_1 project_id/zone_id/recordset_id - ``` - - ```sh - $ pulumi import openstack:dns/recordSet:RecordSet recordset_1 zone_id/recordset_id - ``` - + Create a RecordSet resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A description of the record set. - :param pulumi.Input[bool] disable_status_check: Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - :param pulumi.Input[str] name: The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[Sequence[pulumi.Input[str]]] records: An array of DNS records. - :param pulumi.Input[str] region: The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - :param pulumi.Input[int] ttl: The time to live (TTL) of the record set. - :param pulumi.Input[str] type: The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new record set. - :param pulumi.Input[str] zone_id: The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. """ ... @overload @@ -469,43 +293,7 @@ def __init__(__self__, args: RecordSetArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a DNS record set in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="email2@example.com", - description="a zone", - ttl=6000, - type="PRIMARY") - rs_example_com = openstack.dns.RecordSet("rs_example_com", - zone_id=example_zone.id, - name="rs.example.com.", - description="An example record set", - ttl=3000, - type="A", - records=["10.0.0.1"]) - ``` - - ## Import - - This resource can be imported by specifying the zone ID and recordset ID with an optional project ID as a prefix: - - ```sh - $ pulumi import openstack:dns/recordSet:RecordSet recordset_1 project_id/zone_id/recordset_id - ``` - - ```sh - $ pulumi import openstack:dns/recordSet:RecordSet recordset_1 zone_id/recordset_id - ``` - + Create a RecordSet resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RecordSetArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -581,26 +369,6 @@ def get(resource_name: str, :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] description: A description of the record set. - :param pulumi.Input[bool] disable_status_check: Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - :param pulumi.Input[str] name: The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[Sequence[pulumi.Input[str]]] records: An array of DNS records. - :param pulumi.Input[str] region: The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - :param pulumi.Input[int] ttl: The time to live (TTL) of the record set. - :param pulumi.Input[str] type: The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new record set. - :param pulumi.Input[str] zone_id: The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -621,90 +389,50 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the record set. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> pulumi.Output[Optional[bool]]: - """ - Disable wait for recordset to reach ACTIVE - status. This argumen is disabled by default. If it is set to true, the recordset - will be considered as created/updated/deleted if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the record set. Note the `.` at the end of the name. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @property @pulumi.getter def records(self) -> pulumi.Output[Sequence[str]]: - """ - An array of DNS records. - """ return pulumi.get(self, "records") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 DNS client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "region") @property @pulumi.getter def ttl(self) -> pulumi.Output[int]: - """ - The time to live (TTL) of the record set. - """ return pulumi.get(self, "ttl") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of record set. Examples: "A", "MX". - Changing this creates a new DNS record set. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. Changing this creates a - new record set. - """ return pulumi.get(self, "value_specs") @property @pulumi.getter(name="zoneId") def zone_id(self) -> pulumi.Output[str]: - """ - The ID of the zone in which to create the record set. - Changing this creates a new DNS record set. - """ return pulumi.get(self, "zone_id") diff --git a/sdk/python/pulumi_openstack/dns/transfer_accept.py b/sdk/python/pulumi_openstack/dns/transfer_accept.py index dc22f6fc7..2fe641f4d 100644 --- a/sdk/python/pulumi_openstack/dns/transfer_accept.py +++ b/sdk/python/pulumi_openstack/dns/transfer_accept.py @@ -21,17 +21,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a TransferAccept resource. - :param pulumi.Input[str] key: The transfer key. - :param pulumi.Input[str] zone_transfer_request_id: The ID of the zone transfer request. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer accept. """ pulumi.set(__self__, "key", key) pulumi.set(__self__, "zone_transfer_request_id", zone_transfer_request_id) @@ -45,9 +34,6 @@ def __init__(__self__, *, @property @pulumi.getter def key(self) -> pulumi.Input[str]: - """ - The transfer key. - """ return pulumi.get(self, "key") @key.setter @@ -57,9 +43,6 @@ def key(self, value: pulumi.Input[str]): @property @pulumi.getter(name="zoneTransferRequestId") def zone_transfer_request_id(self) -> pulumi.Input[str]: - """ - The ID of the zone transfer request. - """ return pulumi.get(self, "zone_transfer_request_id") @zone_transfer_request_id.setter @@ -69,11 +52,6 @@ def zone_transfer_request_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -83,12 +61,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -98,10 +70,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new transfer accept. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -119,17 +87,6 @@ def __init__(__self__, *, zone_transfer_request_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering TransferAccept resources. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - :param pulumi.Input[str] key: The transfer key. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer accept. - :param pulumi.Input[str] zone_transfer_request_id: The ID of the zone transfer request. """ if disable_status_check is not None: pulumi.set(__self__, "disable_status_check", disable_status_check) @@ -145,11 +102,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -159,9 +111,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: - """ - The transfer key. - """ return pulumi.get(self, "key") @key.setter @@ -171,12 +120,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -186,10 +129,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new transfer accept. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -199,9 +138,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="zoneTransferRequestId") def zone_transfer_request_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the zone transfer request. - """ return pulumi.get(self, "zone_transfer_request_id") @zone_transfer_request_id.setter @@ -221,51 +157,9 @@ def __init__(__self__, zone_transfer_request_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a DNS zone transfer accept in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - request1 = openstack.dns.TransferRequest("request_1", - zone_id=example_zone.id, - description="a transfer accept") - accept1 = openstack.dns.TransferAccept("accept_1", - zone_transfer_request_id=request1.id, - key=request1.key) - ``` - - ## Import - - This resource can be imported by specifying the transferAccept ID: - - ```sh - $ pulumi import openstack:dns/transferAccept:TransferAccept accept_1 accept_id - ``` - + Create a TransferAccept resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - :param pulumi.Input[str] key: The transfer key. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer accept. - :param pulumi.Input[str] zone_transfer_request_id: The ID of the zone transfer request. """ ... @overload @@ -274,38 +168,7 @@ def __init__(__self__, args: TransferAcceptArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a DNS zone transfer accept in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - request1 = openstack.dns.TransferRequest("request_1", - zone_id=example_zone.id, - description="a transfer accept") - accept1 = openstack.dns.TransferAccept("accept_1", - zone_transfer_request_id=request1.id, - key=request1.key) - ``` - - ## Import - - This resource can be imported by specifying the transferAccept ID: - - ```sh - $ pulumi import openstack:dns/transferAccept:TransferAccept accept_1 accept_id - ``` - + Create a TransferAccept resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param TransferAcceptArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -366,17 +229,6 @@ def get(resource_name: str, :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[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - :param pulumi.Input[str] key: The transfer key. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer accept. - :param pulumi.Input[str] zone_transfer_request_id: The ID of the zone transfer request. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -392,46 +244,25 @@ def get(resource_name: str, @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> pulumi.Output[Optional[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack accept returned success. - """ return pulumi.get(self, "disable_status_check") @property @pulumi.getter def key(self) -> pulumi.Output[str]: - """ - The transfer key. - """ return pulumi.get(self, "key") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. Changing this creates a - new transfer accept. - """ return pulumi.get(self, "value_specs") @property @pulumi.getter(name="zoneTransferRequestId") def zone_transfer_request_id(self) -> pulumi.Output[str]: - """ - The ID of the zone transfer request. - """ return pulumi.get(self, "zone_transfer_request_id") diff --git a/sdk/python/pulumi_openstack/dns/transfer_request.py b/sdk/python/pulumi_openstack/dns/transfer_request.py index 0210946fa..0bca8cc52 100644 --- a/sdk/python/pulumi_openstack/dns/transfer_request.py +++ b/sdk/python/pulumi_openstack/dns/transfer_request.py @@ -23,19 +23,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a TransferRequest resource. - :param pulumi.Input[str] zone_id: The ID of the zone for which to create the transfer - request. - :param pulumi.Input[str] description: A description of the zone tranfer request. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[str] target_project_id: The target Project ID to transfer to. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer request. """ pulumi.set(__self__, "zone_id", zone_id) if description is not None: @@ -54,10 +41,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="zoneId") def zone_id(self) -> pulumi.Input[str]: - """ - The ID of the zone for which to create the transfer - request. - """ return pulumi.get(self, "zone_id") @zone_id.setter @@ -67,9 +50,6 @@ def zone_id(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the zone tranfer request. - """ return pulumi.get(self, "description") @description.setter @@ -79,11 +59,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -102,12 +77,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -117,9 +86,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="targetProjectId") def target_project_id(self) -> Optional[pulumi.Input[str]]: - """ - The target Project ID to transfer to. - """ return pulumi.get(self, "target_project_id") @target_project_id.setter @@ -129,10 +95,6 @@ def target_project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new transfer request. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -152,19 +114,6 @@ def __init__(__self__, *, zone_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering TransferRequest resources. - :param pulumi.Input[str] description: A description of the zone tranfer request. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[str] target_project_id: The target Project ID to transfer to. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer request. - :param pulumi.Input[str] zone_id: The ID of the zone for which to create the transfer - request. """ if description is not None: pulumi.set(__self__, "description", description) @@ -184,9 +133,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the zone tranfer request. - """ return pulumi.get(self, "description") @description.setter @@ -196,11 +142,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -219,12 +160,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -234,9 +169,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="targetProjectId") def target_project_id(self) -> Optional[pulumi.Input[str]]: - """ - The target Project ID to transfer to. - """ return pulumi.get(self, "target_project_id") @target_project_id.setter @@ -246,10 +178,6 @@ def target_project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new transfer request. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -259,10 +187,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="zoneId") def zone_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the zone for which to create the transfer - request. - """ return pulumi.get(self, "zone_id") @zone_id.setter @@ -284,50 +208,9 @@ def __init__(__self__, zone_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a DNS zone transfer request in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - request1 = openstack.dns.TransferRequest("request_1", - zone_id=example_zone.id, - description="a transfer request") - ``` - - ## Import - - This resource can be imported by specifying the transferRequest ID: - - ```sh - $ pulumi import openstack:dns/transferRequest:TransferRequest request_1 request_id - ``` - + Create a TransferRequest resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A description of the zone tranfer request. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[str] target_project_id: The target Project ID to transfer to. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer request. - :param pulumi.Input[str] zone_id: The ID of the zone for which to create the transfer - request. """ ... @overload @@ -336,35 +219,7 @@ def __init__(__self__, args: TransferRequestArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a DNS zone transfer request in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_zone = openstack.dns.Zone("example_zone", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - request1 = openstack.dns.TransferRequest("request_1", - zone_id=example_zone.id, - description="a transfer request") - ``` - - ## Import - - This resource can be imported by specifying the transferRequest ID: - - ```sh - $ pulumi import openstack:dns/transferRequest:TransferRequest request_1 request_id - ``` - + Create a TransferRequest resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param TransferRequestArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -429,19 +284,6 @@ def get(resource_name: str, :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] description: A description of the zone tranfer request. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[str] target_project_id: The target Project ID to transfer to. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new transfer request. - :param pulumi.Input[str] zone_id: The ID of the zone for which to create the transfer - request. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -459,19 +301,11 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the zone tranfer request. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> pulumi.Output[Optional[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @property @@ -482,37 +316,20 @@ def key(self) -> pulumi.Output[str]: @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="targetProjectId") def target_project_id(self) -> pulumi.Output[str]: - """ - The target Project ID to transfer to. - """ return pulumi.get(self, "target_project_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. Changing this creates a - new transfer request. - """ return pulumi.get(self, "value_specs") @property @pulumi.getter(name="zoneId") def zone_id(self) -> pulumi.Output[str]: - """ - The ID of the zone for which to create the transfer - request. - """ return pulumi.get(self, "zone_id") diff --git a/sdk/python/pulumi_openstack/dns/zone.py b/sdk/python/pulumi_openstack/dns/zone.py index 1c7a69741..83c12ea36 100644 --- a/sdk/python/pulumi_openstack/dns/zone.py +++ b/sdk/python/pulumi_openstack/dns/zone.py @@ -27,29 +27,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Zone resource. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] attributes: Attributes for the DNS Service scheduler. - Changing this creates a new zone. - :param pulumi.Input[str] description: A description of the zone. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] email: The email contact for the zone record. - :param pulumi.Input[Sequence[pulumi.Input[str]]] masters: An array of master DNS servers. For when `type` is - `SECONDARY`. - :param pulumi.Input[str] name: The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[int] ttl: The time to live (TTL) of the zone. - :param pulumi.Input[str] type: The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new zone. """ if attributes is not None: pulumi.set(__self__, "attributes", attributes) @@ -77,10 +54,6 @@ def __init__(__self__, *, @property @pulumi.getter def attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Attributes for the DNS Service scheduler. - Changing this creates a new zone. - """ return pulumi.get(self, "attributes") @attributes.setter @@ -90,9 +63,6 @@ def attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the zone. - """ return pulumi.get(self, "description") @description.setter @@ -102,11 +72,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -116,9 +81,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def email(self) -> Optional[pulumi.Input[str]]: - """ - The email contact for the zone record. - """ return pulumi.get(self, "email") @email.setter @@ -128,10 +90,6 @@ def email(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def masters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of master DNS servers. For when `type` is - `SECONDARY`. - """ return pulumi.get(self, "masters") @masters.setter @@ -141,10 +99,6 @@ def masters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "name") @name.setter @@ -154,11 +108,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @project_id.setter @@ -168,12 +117,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -183,9 +126,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ttl(self) -> Optional[pulumi.Input[int]]: - """ - The time to live (TTL) of the zone. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -195,10 +135,6 @@ def ttl(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - """ return pulumi.get(self, "type") @type.setter @@ -208,10 +144,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new zone. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -235,29 +167,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Zone resources. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] attributes: Attributes for the DNS Service scheduler. - Changing this creates a new zone. - :param pulumi.Input[str] description: A description of the zone. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] email: The email contact for the zone record. - :param pulumi.Input[Sequence[pulumi.Input[str]]] masters: An array of master DNS servers. For when `type` is - `SECONDARY`. - :param pulumi.Input[str] name: The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[int] ttl: The time to live (TTL) of the zone. - :param pulumi.Input[str] type: The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new zone. """ if attributes is not None: pulumi.set(__self__, "attributes", attributes) @@ -285,10 +194,6 @@ def __init__(__self__, *, @property @pulumi.getter def attributes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Attributes for the DNS Service scheduler. - Changing this creates a new zone. - """ return pulumi.get(self, "attributes") @attributes.setter @@ -298,9 +203,6 @@ def attributes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the zone. - """ return pulumi.get(self, "description") @description.setter @@ -310,11 +212,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> Optional[pulumi.Input[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @disable_status_check.setter @@ -324,9 +221,6 @@ def disable_status_check(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def email(self) -> Optional[pulumi.Input[str]]: - """ - The email contact for the zone record. - """ return pulumi.get(self, "email") @email.setter @@ -336,10 +230,6 @@ def email(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def masters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of master DNS servers. For when `type` is - `SECONDARY`. - """ return pulumi.get(self, "masters") @masters.setter @@ -349,10 +239,6 @@ def masters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "name") @name.setter @@ -362,11 +248,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @project_id.setter @@ -376,12 +257,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @region.setter @@ -391,9 +266,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ttl(self) -> Optional[pulumi.Input[int]]: - """ - The time to live (TTL) of the zone. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -403,10 +275,6 @@ def ttl(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - """ return pulumi.get(self, "type") @type.setter @@ -416,10 +284,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. Changing this creates a - new zone. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -445,61 +309,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a DNS zone in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_com = openstack.dns.Zone("example_com", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - ``` - - ## Import - - This resource can be imported by specifying the zone ID with optional project ID: - - ```sh - $ pulumi import openstack:dns/zone:Zone zone_1 zone_id - ``` - - ```sh - $ pulumi import openstack:dns/zone:Zone zone_1 zone_id:project_id - ``` - + Create a Zone resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] attributes: Attributes for the DNS Service scheduler. - Changing this creates a new zone. - :param pulumi.Input[str] description: A description of the zone. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] email: The email contact for the zone record. - :param pulumi.Input[Sequence[pulumi.Input[str]]] masters: An array of master DNS servers. For when `type` is - `SECONDARY`. - :param pulumi.Input[str] name: The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[int] ttl: The time to live (TTL) of the zone. - :param pulumi.Input[str] type: The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new zone. """ ... @overload @@ -508,36 +320,7 @@ def __init__(__self__, args: Optional[ZoneArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a DNS zone in the OpenStack DNS Service. - - ## Example Usage - - ### Automatically detect the correct network - - ```python - import pulumi - import pulumi_openstack as openstack - - example_com = openstack.dns.Zone("example_com", - name="example.com.", - email="jdoe@example.com", - description="An example zone", - ttl=3000, - type="PRIMARY") - ``` - - ## Import - - This resource can be imported by specifying the zone ID with optional project ID: - - ```sh - $ pulumi import openstack:dns/zone:Zone zone_1 zone_id - ``` - - ```sh - $ pulumi import openstack:dns/zone:Zone zone_1 zone_id:project_id - ``` - + Create a Zone resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ZoneArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -612,29 +395,6 @@ def get(resource_name: str, :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[Mapping[str, pulumi.Input[str]]] attributes: Attributes for the DNS Service scheduler. - Changing this creates a new zone. - :param pulumi.Input[str] description: A description of the zone. - :param pulumi.Input[bool] disable_status_check: Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - :param pulumi.Input[str] email: The email contact for the zone record. - :param pulumi.Input[Sequence[pulumi.Input[str]]] masters: An array of master DNS servers. For when `type` is - `SECONDARY`. - :param pulumi.Input[str] name: The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - :param pulumi.Input[str] project_id: The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - :param pulumi.Input[str] region: The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - :param pulumi.Input[int] ttl: The time to live (TTL) of the zone. - :param pulumi.Input[str] type: The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. Changing this creates a - new zone. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -656,100 +416,55 @@ def get(resource_name: str, @property @pulumi.getter def attributes(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Attributes for the DNS Service scheduler. - Changing this creates a new zone. - """ return pulumi.get(self, "attributes") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the zone. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableStatusCheck") def disable_status_check(self) -> pulumi.Output[Optional[bool]]: - """ - Disable wait for zone to reach ACTIVE - status. The check is enabled by default. If this argument is true, zone - will be considered as created/updated if OpenStack request returned success. - """ return pulumi.get(self, "disable_status_check") @property @pulumi.getter def email(self) -> pulumi.Output[Optional[str]]: - """ - The email contact for the zone record. - """ return pulumi.get(self, "email") @property @pulumi.getter def masters(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - An array of master DNS servers. For when `type` is - `SECONDARY`. - """ return pulumi.get(self, "masters") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the zone. Note the `.` at the end of the name. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project DNS zone is created - for, sets `X-Auth-Sudo-Tenant-ID` header (requires an assigned - user role in target project) - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Compute client. - Keypairs are associated with accounts, but a Compute client is needed to - create one. If omitted, the `region` argument of the provider is used. - Changing this creates a new DNS zone. - """ return pulumi.get(self, "region") @property @pulumi.getter def ttl(self) -> pulumi.Output[int]: - """ - The time to live (TTL) of the zone. - """ return pulumi.get(self, "ttl") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of zone. Can either be `PRIMARY` or `SECONDARY`. - Changing this creates a new zone. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. Changing this creates a - new zone. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/firewall/__init__.py b/sdk/python/pulumi_openstack/firewall/__init__.py index f9cfe49c5..e6cade2ea 100644 --- a/sdk/python/pulumi_openstack/firewall/__init__.py +++ b/sdk/python/pulumi_openstack/firewall/__init__.py @@ -5,6 +5,9 @@ from .. import _utilities import typing # Export this package's modules as members: +from .get_group_v2 import * +from .get_policy_v2 import * +from .get_rule_v2 import * from .group_v2 import * from .policy_v2 import * from .rule_v2 import * diff --git a/sdk/python/pulumi_openstack/firewall/get_group_v2.py b/sdk/python/pulumi_openstack/firewall/get_group_v2.py new file mode 100644 index 000000000..14c7069f0 --- /dev/null +++ b/sdk/python/pulumi_openstack/firewall/get_group_v2.py @@ -0,0 +1,217 @@ +# 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__ = [ + 'GetGroupV2Result', + 'AwaitableGetGroupV2Result', + 'get_group_v2', + 'get_group_v2_output', +] + +@pulumi.output_type +class GetGroupV2Result: + """ + A collection of values returned by getGroupV2. + """ + def __init__(__self__, admin_state_up=None, description=None, egress_firewall_policy_id=None, group_id=None, id=None, ingress_firewall_policy_id=None, name=None, ports=None, project_id=None, region=None, shared=None, status=None, tenant_id=None): + if admin_state_up and not isinstance(admin_state_up, bool): + raise TypeError("Expected argument 'admin_state_up' to be a bool") + pulumi.set(__self__, "admin_state_up", admin_state_up) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if egress_firewall_policy_id and not isinstance(egress_firewall_policy_id, str): + raise TypeError("Expected argument 'egress_firewall_policy_id' to be a str") + pulumi.set(__self__, "egress_firewall_policy_id", egress_firewall_policy_id) + if group_id and not isinstance(group_id, str): + raise TypeError("Expected argument 'group_id' to be a str") + pulumi.set(__self__, "group_id", group_id) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if ingress_firewall_policy_id and not isinstance(ingress_firewall_policy_id, str): + raise TypeError("Expected argument 'ingress_firewall_policy_id' to be a str") + pulumi.set(__self__, "ingress_firewall_policy_id", ingress_firewall_policy_id) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if ports and not isinstance(ports, list): + raise TypeError("Expected argument 'ports' to be a list") + pulumi.set(__self__, "ports", ports) + if project_id and not isinstance(project_id, str): + raise TypeError("Expected argument 'project_id' to be a str") + pulumi.set(__self__, "project_id", project_id) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) + if shared and not isinstance(shared, bool): + raise TypeError("Expected argument 'shared' to be a bool") + pulumi.set(__self__, "shared", shared) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if tenant_id and not isinstance(tenant_id, str): + raise TypeError("Expected argument 'tenant_id' to be a str") + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter(name="adminStateUp") + def admin_state_up(self) -> bool: + return pulumi.get(self, "admin_state_up") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="egressFirewallPolicyId") + def egress_firewall_policy_id(self) -> Optional[str]: + return pulumi.get(self, "egress_firewall_policy_id") + + @property + @pulumi.getter(name="groupId") + def group_id(self) -> Optional[str]: + return pulumi.get(self, "group_id") + + @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="ingressFirewallPolicyId") + def ingress_firewall_policy_id(self) -> Optional[str]: + return pulumi.get(self, "ingress_firewall_policy_id") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def ports(self) -> Sequence[str]: + return pulumi.get(self, "ports") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> str: + return pulumi.get(self, "region") + + @property + @pulumi.getter + def shared(self) -> bool: + return pulumi.get(self, "shared") + + @property + @pulumi.getter + def status(self) -> str: + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> str: + return pulumi.get(self, "tenant_id") + + +class AwaitableGetGroupV2Result(GetGroupV2Result): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetGroupV2Result( + admin_state_up=self.admin_state_up, + description=self.description, + egress_firewall_policy_id=self.egress_firewall_policy_id, + group_id=self.group_id, + id=self.id, + ingress_firewall_policy_id=self.ingress_firewall_policy_id, + name=self.name, + ports=self.ports, + project_id=self.project_id, + region=self.region, + shared=self.shared, + status=self.status, + tenant_id=self.tenant_id) + + +def get_group_v2(admin_state_up: Optional[bool] = None, + description: Optional[str] = None, + egress_firewall_policy_id: Optional[str] = None, + group_id: Optional[str] = None, + ingress_firewall_policy_id: Optional[str] = None, + name: Optional[str] = None, + project_id: Optional[str] = None, + region: Optional[str] = None, + shared: Optional[bool] = None, + status: Optional[str] = None, + tenant_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetGroupV2Result: + """ + Use this data source to access information about an existing resource. + """ + __args__ = dict() + __args__['adminStateUp'] = admin_state_up + __args__['description'] = description + __args__['egressFirewallPolicyId'] = egress_firewall_policy_id + __args__['groupId'] = group_id + __args__['ingressFirewallPolicyId'] = ingress_firewall_policy_id + __args__['name'] = name + __args__['projectId'] = project_id + __args__['region'] = region + __args__['shared'] = shared + __args__['status'] = status + __args__['tenantId'] = tenant_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('openstack:firewall/getGroupV2:getGroupV2', __args__, opts=opts, typ=GetGroupV2Result).value + + return AwaitableGetGroupV2Result( + admin_state_up=pulumi.get(__ret__, 'admin_state_up'), + description=pulumi.get(__ret__, 'description'), + egress_firewall_policy_id=pulumi.get(__ret__, 'egress_firewall_policy_id'), + group_id=pulumi.get(__ret__, 'group_id'), + id=pulumi.get(__ret__, 'id'), + ingress_firewall_policy_id=pulumi.get(__ret__, 'ingress_firewall_policy_id'), + name=pulumi.get(__ret__, 'name'), + ports=pulumi.get(__ret__, 'ports'), + project_id=pulumi.get(__ret__, 'project_id'), + region=pulumi.get(__ret__, 'region'), + shared=pulumi.get(__ret__, 'shared'), + status=pulumi.get(__ret__, 'status'), + tenant_id=pulumi.get(__ret__, 'tenant_id')) + + +@_utilities.lift_output_func(get_group_v2) +def get_group_v2_output(admin_state_up: Optional[pulumi.Input[Optional[bool]]] = None, + description: Optional[pulumi.Input[Optional[str]]] = None, + egress_firewall_policy_id: Optional[pulumi.Input[Optional[str]]] = None, + group_id: Optional[pulumi.Input[Optional[str]]] = None, + ingress_firewall_policy_id: Optional[pulumi.Input[Optional[str]]] = None, + name: Optional[pulumi.Input[Optional[str]]] = None, + project_id: Optional[pulumi.Input[Optional[str]]] = None, + region: Optional[pulumi.Input[Optional[str]]] = None, + shared: Optional[pulumi.Input[Optional[bool]]] = None, + status: Optional[pulumi.Input[Optional[str]]] = None, + tenant_id: Optional[pulumi.Input[Optional[str]]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetGroupV2Result]: + """ + Use this data source to access information about an existing resource. + """ + ... diff --git a/sdk/python/pulumi_openstack/firewall/get_policy_v2.py b/sdk/python/pulumi_openstack/firewall/get_policy_v2.py new file mode 100644 index 000000000..36405dcff --- /dev/null +++ b/sdk/python/pulumi_openstack/firewall/get_policy_v2.py @@ -0,0 +1,178 @@ +# 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__ = [ + 'GetPolicyV2Result', + 'AwaitableGetPolicyV2Result', + 'get_policy_v2', + 'get_policy_v2_output', +] + +@pulumi.output_type +class GetPolicyV2Result: + """ + A collection of values returned by getPolicyV2. + """ + def __init__(__self__, audited=None, description=None, id=None, name=None, policy_id=None, project_id=None, region=None, rules=None, shared=None, tenant_id=None): + if audited and not isinstance(audited, bool): + raise TypeError("Expected argument 'audited' to be a bool") + pulumi.set(__self__, "audited", audited) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + 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 policy_id and not isinstance(policy_id, str): + raise TypeError("Expected argument 'policy_id' to be a str") + pulumi.set(__self__, "policy_id", policy_id) + if project_id and not isinstance(project_id, str): + raise TypeError("Expected argument 'project_id' to be a str") + pulumi.set(__self__, "project_id", project_id) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) + if rules and not isinstance(rules, list): + raise TypeError("Expected argument 'rules' to be a list") + pulumi.set(__self__, "rules", rules) + if shared and not isinstance(shared, bool): + raise TypeError("Expected argument 'shared' to be a bool") + pulumi.set(__self__, "shared", shared) + if tenant_id and not isinstance(tenant_id, str): + raise TypeError("Expected argument 'tenant_id' to be a str") + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter + def audited(self) -> bool: + return pulumi.get(self, "audited") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @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) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="policyId") + def policy_id(self) -> Optional[str]: + return pulumi.get(self, "policy_id") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def region(self) -> str: + return pulumi.get(self, "region") + + @property + @pulumi.getter + def rules(self) -> Sequence[str]: + return pulumi.get(self, "rules") + + @property + @pulumi.getter + def shared(self) -> bool: + return pulumi.get(self, "shared") + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> str: + return pulumi.get(self, "tenant_id") + + +class AwaitableGetPolicyV2Result(GetPolicyV2Result): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetPolicyV2Result( + audited=self.audited, + description=self.description, + id=self.id, + name=self.name, + policy_id=self.policy_id, + project_id=self.project_id, + region=self.region, + rules=self.rules, + shared=self.shared, + tenant_id=self.tenant_id) + + +def get_policy_v2(audited: Optional[bool] = None, + description: Optional[str] = None, + name: Optional[str] = None, + policy_id: Optional[str] = None, + project_id: Optional[str] = None, + region: Optional[str] = None, + shared: Optional[bool] = None, + tenant_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPolicyV2Result: + """ + Use this data source to access information about an existing resource. + """ + __args__ = dict() + __args__['audited'] = audited + __args__['description'] = description + __args__['name'] = name + __args__['policyId'] = policy_id + __args__['projectId'] = project_id + __args__['region'] = region + __args__['shared'] = shared + __args__['tenantId'] = tenant_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('openstack:firewall/getPolicyV2:getPolicyV2', __args__, opts=opts, typ=GetPolicyV2Result).value + + return AwaitableGetPolicyV2Result( + audited=pulumi.get(__ret__, 'audited'), + description=pulumi.get(__ret__, 'description'), + id=pulumi.get(__ret__, 'id'), + name=pulumi.get(__ret__, 'name'), + policy_id=pulumi.get(__ret__, 'policy_id'), + project_id=pulumi.get(__ret__, 'project_id'), + region=pulumi.get(__ret__, 'region'), + rules=pulumi.get(__ret__, 'rules'), + shared=pulumi.get(__ret__, 'shared'), + tenant_id=pulumi.get(__ret__, 'tenant_id')) + + +@_utilities.lift_output_func(get_policy_v2) +def get_policy_v2_output(audited: Optional[pulumi.Input[Optional[bool]]] = None, + description: Optional[pulumi.Input[Optional[str]]] = None, + name: Optional[pulumi.Input[Optional[str]]] = None, + policy_id: Optional[pulumi.Input[Optional[str]]] = None, + project_id: Optional[pulumi.Input[Optional[str]]] = None, + region: Optional[pulumi.Input[Optional[str]]] = None, + shared: Optional[pulumi.Input[Optional[bool]]] = None, + tenant_id: Optional[pulumi.Input[Optional[str]]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetPolicyV2Result]: + """ + Use this data source to access information about an existing resource. + """ + ... diff --git a/sdk/python/pulumi_openstack/firewall/get_rule_v2.py b/sdk/python/pulumi_openstack/firewall/get_rule_v2.py new file mode 100644 index 000000000..24ab80996 --- /dev/null +++ b/sdk/python/pulumi_openstack/firewall/get_rule_v2.py @@ -0,0 +1,272 @@ +# 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__ = [ + 'GetRuleV2Result', + 'AwaitableGetRuleV2Result', + 'get_rule_v2', + 'get_rule_v2_output', +] + +@pulumi.output_type +class GetRuleV2Result: + """ + A collection of values returned by getRuleV2. + """ + def __init__(__self__, action=None, description=None, destination_ip_address=None, destination_port=None, enabled=None, firewall_policy_ids=None, id=None, ip_version=None, name=None, project_id=None, protocol=None, region=None, rule_id=None, shared=None, source_ip_address=None, source_port=None, tenant_id=None): + if action and not isinstance(action, str): + raise TypeError("Expected argument 'action' to be a str") + pulumi.set(__self__, "action", action) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if destination_ip_address and not isinstance(destination_ip_address, str): + raise TypeError("Expected argument 'destination_ip_address' to be a str") + pulumi.set(__self__, "destination_ip_address", destination_ip_address) + if destination_port and not isinstance(destination_port, str): + raise TypeError("Expected argument 'destination_port' to be a str") + pulumi.set(__self__, "destination_port", destination_port) + if enabled and not isinstance(enabled, bool): + raise TypeError("Expected argument 'enabled' to be a bool") + pulumi.set(__self__, "enabled", enabled) + if firewall_policy_ids and not isinstance(firewall_policy_ids, list): + raise TypeError("Expected argument 'firewall_policy_ids' to be a list") + pulumi.set(__self__, "firewall_policy_ids", firewall_policy_ids) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if ip_version and not isinstance(ip_version, int): + raise TypeError("Expected argument 'ip_version' to be a int") + pulumi.set(__self__, "ip_version", ip_version) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if project_id and not isinstance(project_id, str): + raise TypeError("Expected argument 'project_id' to be a str") + pulumi.set(__self__, "project_id", project_id) + if protocol and not isinstance(protocol, str): + raise TypeError("Expected argument 'protocol' to be a str") + pulumi.set(__self__, "protocol", protocol) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) + if rule_id and not isinstance(rule_id, str): + raise TypeError("Expected argument 'rule_id' to be a str") + pulumi.set(__self__, "rule_id", rule_id) + if shared and not isinstance(shared, bool): + raise TypeError("Expected argument 'shared' to be a bool") + pulumi.set(__self__, "shared", shared) + if source_ip_address and not isinstance(source_ip_address, str): + raise TypeError("Expected argument 'source_ip_address' to be a str") + pulumi.set(__self__, "source_ip_address", source_ip_address) + if source_port and not isinstance(source_port, str): + raise TypeError("Expected argument 'source_port' to be a str") + pulumi.set(__self__, "source_port", source_port) + if tenant_id and not isinstance(tenant_id, str): + raise TypeError("Expected argument 'tenant_id' to be a str") + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter + def action(self) -> Optional[str]: + return pulumi.get(self, "action") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="destinationIpAddress") + def destination_ip_address(self) -> Optional[str]: + return pulumi.get(self, "destination_ip_address") + + @property + @pulumi.getter(name="destinationPort") + def destination_port(self) -> Optional[str]: + return pulumi.get(self, "destination_port") + + @property + @pulumi.getter + def enabled(self) -> bool: + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="firewallPolicyIds") + def firewall_policy_ids(self) -> Sequence[str]: + return pulumi.get(self, "firewall_policy_ids") + + @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="ipVersion") + def ip_version(self) -> Optional[int]: + return pulumi.get(self, "ip_version") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def protocol(self) -> Optional[str]: + return pulumi.get(self, "protocol") + + @property + @pulumi.getter + def region(self) -> str: + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="ruleId") + def rule_id(self) -> Optional[str]: + return pulumi.get(self, "rule_id") + + @property + @pulumi.getter + def shared(self) -> bool: + return pulumi.get(self, "shared") + + @property + @pulumi.getter(name="sourceIpAddress") + def source_ip_address(self) -> Optional[str]: + return pulumi.get(self, "source_ip_address") + + @property + @pulumi.getter(name="sourcePort") + def source_port(self) -> Optional[str]: + return pulumi.get(self, "source_port") + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> str: + return pulumi.get(self, "tenant_id") + + +class AwaitableGetRuleV2Result(GetRuleV2Result): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRuleV2Result( + action=self.action, + description=self.description, + destination_ip_address=self.destination_ip_address, + destination_port=self.destination_port, + enabled=self.enabled, + firewall_policy_ids=self.firewall_policy_ids, + id=self.id, + ip_version=self.ip_version, + name=self.name, + project_id=self.project_id, + protocol=self.protocol, + region=self.region, + rule_id=self.rule_id, + shared=self.shared, + source_ip_address=self.source_ip_address, + source_port=self.source_port, + tenant_id=self.tenant_id) + + +def get_rule_v2(action: Optional[str] = None, + description: Optional[str] = None, + destination_ip_address: Optional[str] = None, + destination_port: Optional[str] = None, + enabled: Optional[bool] = None, + firewall_policy_ids: Optional[Sequence[str]] = None, + ip_version: Optional[int] = None, + name: Optional[str] = None, + project_id: Optional[str] = None, + protocol: Optional[str] = None, + region: Optional[str] = None, + rule_id: Optional[str] = None, + shared: Optional[bool] = None, + source_ip_address: Optional[str] = None, + source_port: Optional[str] = None, + tenant_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRuleV2Result: + """ + Use this data source to access information about an existing resource. + """ + __args__ = dict() + __args__['action'] = action + __args__['description'] = description + __args__['destinationIpAddress'] = destination_ip_address + __args__['destinationPort'] = destination_port + __args__['enabled'] = enabled + __args__['firewallPolicyIds'] = firewall_policy_ids + __args__['ipVersion'] = ip_version + __args__['name'] = name + __args__['projectId'] = project_id + __args__['protocol'] = protocol + __args__['region'] = region + __args__['ruleId'] = rule_id + __args__['shared'] = shared + __args__['sourceIpAddress'] = source_ip_address + __args__['sourcePort'] = source_port + __args__['tenantId'] = tenant_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('openstack:firewall/getRuleV2:getRuleV2', __args__, opts=opts, typ=GetRuleV2Result).value + + return AwaitableGetRuleV2Result( + action=pulumi.get(__ret__, 'action'), + description=pulumi.get(__ret__, 'description'), + destination_ip_address=pulumi.get(__ret__, 'destination_ip_address'), + destination_port=pulumi.get(__ret__, 'destination_port'), + enabled=pulumi.get(__ret__, 'enabled'), + firewall_policy_ids=pulumi.get(__ret__, 'firewall_policy_ids'), + id=pulumi.get(__ret__, 'id'), + ip_version=pulumi.get(__ret__, 'ip_version'), + name=pulumi.get(__ret__, 'name'), + project_id=pulumi.get(__ret__, 'project_id'), + protocol=pulumi.get(__ret__, 'protocol'), + region=pulumi.get(__ret__, 'region'), + rule_id=pulumi.get(__ret__, 'rule_id'), + shared=pulumi.get(__ret__, 'shared'), + source_ip_address=pulumi.get(__ret__, 'source_ip_address'), + source_port=pulumi.get(__ret__, 'source_port'), + tenant_id=pulumi.get(__ret__, 'tenant_id')) + + +@_utilities.lift_output_func(get_rule_v2) +def get_rule_v2_output(action: Optional[pulumi.Input[Optional[str]]] = None, + description: Optional[pulumi.Input[Optional[str]]] = None, + destination_ip_address: Optional[pulumi.Input[Optional[str]]] = None, + destination_port: Optional[pulumi.Input[Optional[str]]] = None, + enabled: Optional[pulumi.Input[Optional[bool]]] = None, + firewall_policy_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, + ip_version: Optional[pulumi.Input[Optional[int]]] = None, + name: Optional[pulumi.Input[Optional[str]]] = None, + project_id: Optional[pulumi.Input[Optional[str]]] = None, + protocol: Optional[pulumi.Input[Optional[str]]] = None, + region: Optional[pulumi.Input[Optional[str]]] = None, + rule_id: Optional[pulumi.Input[Optional[str]]] = None, + shared: Optional[pulumi.Input[Optional[bool]]] = None, + source_ip_address: Optional[pulumi.Input[Optional[str]]] = None, + source_port: Optional[pulumi.Input[Optional[str]]] = None, + tenant_id: Optional[pulumi.Input[Optional[str]]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRuleV2Result]: + """ + Use this data source to access information about an existing resource. + """ + ... diff --git a/sdk/python/pulumi_openstack/firewall/group_v2.py b/sdk/python/pulumi_openstack/firewall/group_v2.py index aa3021ea5..09c962691 100644 --- a/sdk/python/pulumi_openstack/firewall/group_v2.py +++ b/sdk/python/pulumi_openstack/firewall/group_v2.py @@ -26,39 +26,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a GroupV2 resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - :param pulumi.Input[str] description: A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - :param pulumi.Input[str] egress_firewall_policy_id: The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] ingress_firewall_policy_id: The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] name: A name for the firewall group. Changing this - updates the `name` of an existing firewall. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - :param pulumi.Input[bool] shared: Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -84,11 +51,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -98,10 +60,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - """ return pulumi.get(self, "description") @description.setter @@ -111,11 +69,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="egressFirewallPolicyId") def egress_firewall_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "egress_firewall_policy_id") @egress_firewall_policy_id.setter @@ -125,11 +78,6 @@ def egress_firewall_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ingressFirewallPolicyId") def ingress_firewall_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "ingress_firewall_policy_id") @ingress_firewall_policy_id.setter @@ -139,10 +87,6 @@ def ingress_firewall_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name for the firewall group. Changing this - updates the `name` of an existing firewall. - """ return pulumi.get(self, "name") @name.setter @@ -152,11 +96,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - """ return pulumi.get(self, "ports") @ports.setter @@ -166,12 +105,6 @@ def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -181,12 +114,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - """ return pulumi.get(self, "region") @region.setter @@ -196,13 +123,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - """ return pulumi.get(self, "shared") @shared.setter @@ -212,12 +132,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -241,40 +155,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering GroupV2 resources. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - :param pulumi.Input[str] description: A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - :param pulumi.Input[str] egress_firewall_policy_id: The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] ingress_firewall_policy_id: The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] name: A name for the firewall group. Changing this - updates the `name` of an existing firewall. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - :param pulumi.Input[bool] shared: Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - :param pulumi.Input[str] status: The status of the firewall group. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -302,11 +182,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -316,10 +191,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - """ return pulumi.get(self, "description") @description.setter @@ -329,11 +200,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="egressFirewallPolicyId") def egress_firewall_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "egress_firewall_policy_id") @egress_firewall_policy_id.setter @@ -343,11 +209,6 @@ def egress_firewall_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ingressFirewallPolicyId") def ingress_firewall_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "ingress_firewall_policy_id") @ingress_firewall_policy_id.setter @@ -357,10 +218,6 @@ def ingress_firewall_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name for the firewall group. Changing this - updates the `name` of an existing firewall. - """ return pulumi.get(self, "name") @name.setter @@ -370,11 +227,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - """ return pulumi.get(self, "ports") @ports.setter @@ -384,12 +236,6 @@ def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -399,12 +245,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - """ return pulumi.get(self, "region") @region.setter @@ -414,13 +254,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - """ return pulumi.get(self, "shared") @shared.setter @@ -430,9 +263,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the firewall group. - """ return pulumi.get(self, "status") @status.setter @@ -442,12 +272,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -472,85 +296,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a v2 firewall group resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule1 = openstack.firewall.RuleV2("rule_1", - name="firewall_rule_2", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule_1", - description="drop NTP traffic", - action="deny", - protocol="udp", - destination_port="123", - enabled=False) - policy1 = openstack.firewall.PolicyV2("policy_1", - name="firewall_ingress_policy", - rules=[rule1.id]) - policy2 = openstack.firewall.PolicyV2("policy_2", - name="firewall_egress_policy", - rules=[rule2.id]) - group1 = openstack.firewall.GroupV2("group_1", - name="firewall_group", - ingress_firewall_policy_id=policy1.id, - egress_firewall_policy_id=policy2.id) - ``` - - ## Import - - Firewall groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/groupV2:GroupV2 group_1 c9e39fb2-ce20-46c8-a964-25f3898c7a97 - ``` - + Create a GroupV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - :param pulumi.Input[str] description: A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - :param pulumi.Input[str] egress_firewall_policy_id: The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] ingress_firewall_policy_id: The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] name: A name for the firewall group. Changing this - updates the `name` of an existing firewall. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - :param pulumi.Input[bool] shared: Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. """ ... @overload @@ -559,50 +307,7 @@ def __init__(__self__, args: Optional[GroupV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a v2 firewall group resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule1 = openstack.firewall.RuleV2("rule_1", - name="firewall_rule_2", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule_1", - description="drop NTP traffic", - action="deny", - protocol="udp", - destination_port="123", - enabled=False) - policy1 = openstack.firewall.PolicyV2("policy_1", - name="firewall_ingress_policy", - rules=[rule1.id]) - policy2 = openstack.firewall.PolicyV2("policy_2", - name="firewall_egress_policy", - rules=[rule2.id]) - group1 = openstack.firewall.GroupV2("group_1", - name="firewall_group", - ingress_firewall_policy_id=policy1.id, - egress_firewall_policy_id=policy2.id) - ``` - - ## Import - - Firewall groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/groupV2:GroupV2 group_1 c9e39fb2-ce20-46c8-a964-25f3898c7a97 - ``` - + Create a GroupV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param GroupV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -676,40 +381,6 @@ def get(resource_name: str, :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[bool] admin_state_up: Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - :param pulumi.Input[str] description: A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - :param pulumi.Input[str] egress_firewall_policy_id: The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] ingress_firewall_policy_id: The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - :param pulumi.Input[str] name: A name for the firewall group. Changing this - updates the `name` of an existing firewall. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ports: Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - :param pulumi.Input[bool] shared: Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - :param pulumi.Input[str] status: The status of the firewall group. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -731,111 +402,55 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - Administrative up/down status for the firewall - group (must be "true" or "false" if provided - defaults to "true"). - Changing this updates the `admin_state_up` of an existing firewall group. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description for the firewall group. Changing this - updates the `description` of an existing firewall group. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="egressFirewallPolicyId") def egress_firewall_policy_id(self) -> pulumi.Output[Optional[str]]: - """ - The egress firewall policy resource - id for the firewall group. Changing this updates the - `egress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "egress_firewall_policy_id") @property @pulumi.getter(name="ingressFirewallPolicyId") def ingress_firewall_policy_id(self) -> pulumi.Output[Optional[str]]: - """ - The ingress firewall policy resource - id for the firewall group. Changing this updates the - `ingress_firewall_policy_id` of an existing firewall group. - """ return pulumi.get(self, "ingress_firewall_policy_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A name for the firewall group. Changing this - updates the `name` of an existing firewall. - """ return pulumi.get(self, "name") @property @pulumi.getter def ports(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - Port(s) to associate this firewall group - with. Must be a list of strings. Changing this updates the associated ports - of an existing firewall group. - """ return pulumi.get(self, "ports") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. Required if admin wants - to create a firewall group for another project. Changing this creates a new - firewall group. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall group. - """ return pulumi.get(self, "region") @property @pulumi.getter def shared(self) -> pulumi.Output[Optional[bool]]: - """ - Sharing status of the firewall group (must be "true" - or "false" if provided). If this is "true" the firewall group is visible to, - and can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall group. Only administrative users - can specify if the firewall group should be shared. - """ return pulumi.get(self, "shared") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the firewall group. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable with - `project_id`. The owner of the firewall group. Required if admin wants to - create a firewall group for another tenant. Changing this creates a new - firewall group. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/firewall/policy_v2.py b/sdk/python/pulumi_openstack/firewall/policy_v2.py index 7a24dc152..6e0646a1d 100644 --- a/sdk/python/pulumi_openstack/firewall/policy_v2.py +++ b/sdk/python/pulumi_openstack/firewall/policy_v2.py @@ -24,35 +24,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a PolicyV2 resource. - :param pulumi.Input[bool] audited: Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - :param pulumi.Input[str] description: A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - :param pulumi.Input[str] name: A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] rules: An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - :param pulumi.Input[bool] shared: Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. """ if audited is not None: pulumi.set(__self__, "audited", audited) @@ -74,13 +45,6 @@ def __init__(__self__, *, @property @pulumi.getter def audited(self) -> Optional[pulumi.Input[bool]]: - """ - Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - """ return pulumi.get(self, "audited") @audited.setter @@ -90,10 +54,6 @@ def audited(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - """ return pulumi.get(self, "description") @description.setter @@ -103,10 +63,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - """ return pulumi.get(self, "name") @name.setter @@ -116,12 +72,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -131,12 +81,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "region") @region.setter @@ -146,11 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - """ return pulumi.get(self, "rules") @rules.setter @@ -160,13 +99,6 @@ def rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - """ return pulumi.get(self, "shared") @shared.setter @@ -176,12 +108,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -202,35 +128,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering PolicyV2 resources. - :param pulumi.Input[bool] audited: Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - :param pulumi.Input[str] description: A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - :param pulumi.Input[str] name: A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] rules: An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - :param pulumi.Input[bool] shared: Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. """ if audited is not None: pulumi.set(__self__, "audited", audited) @@ -252,13 +149,6 @@ def __init__(__self__, *, @property @pulumi.getter def audited(self) -> Optional[pulumi.Input[bool]]: - """ - Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - """ return pulumi.get(self, "audited") @audited.setter @@ -268,10 +158,6 @@ def audited(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - """ return pulumi.get(self, "description") @description.setter @@ -281,10 +167,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - """ return pulumi.get(self, "name") @name.setter @@ -294,12 +176,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -309,12 +185,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "region") @region.setter @@ -324,11 +194,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - """ return pulumi.get(self, "rules") @rules.setter @@ -338,13 +203,6 @@ def rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - """ return pulumi.get(self, "shared") @shared.setter @@ -354,12 +212,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -382,77 +234,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a v2 firewall policy resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule1 = openstack.firewall.RuleV2("rule_1", - name="firewall_rule_1", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule_2", - description="drop NTP traffic", - action="deny", - protocol="udp", - destination_port="123", - enabled=False) - policy1 = openstack.firewall.PolicyV2("policy_1", - name="firewall_policy", - rules=[ - rule1.id, - rule2.id, - ]) - ``` - - ## Import - - Firewall Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/policyV2:PolicyV2 policy_1 07f422e6-c596-474b-8b94-fe2c12506ce0 - ``` - + Create a PolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] audited: Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - :param pulumi.Input[str] description: A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - :param pulumi.Input[str] name: A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] rules: An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - :param pulumi.Input[bool] shared: Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. """ ... @overload @@ -461,46 +245,7 @@ def __init__(__self__, args: Optional[PolicyV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a v2 firewall policy resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule1 = openstack.firewall.RuleV2("rule_1", - name="firewall_rule_1", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule_2", - description="drop NTP traffic", - action="deny", - protocol="udp", - destination_port="123", - enabled=False) - policy1 = openstack.firewall.PolicyV2("policy_1", - name="firewall_policy", - rules=[ - rule1.id, - rule2.id, - ]) - ``` - - ## Import - - Firewall Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/policyV2:PolicyV2 policy_1 07f422e6-c596-474b-8b94-fe2c12506ce0 - ``` - + Create a PolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param PolicyV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -566,35 +311,6 @@ def get(resource_name: str, :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[bool] audited: Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - :param pulumi.Input[str] description: A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - :param pulumi.Input[str] name: A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] rules: An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - :param pulumi.Input[bool] shared: Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -613,85 +329,40 @@ def get(resource_name: str, @property @pulumi.getter def audited(self) -> pulumi.Output[Optional[bool]]: - """ - Audit status of the firewall policy - (must be "true" or "false" if provided - defaults to "false"). - This status is set to "false" whenever the firewall policy or any of its - rules are changed. Changing this updates the `audited` status of an existing - firewall policy. - """ return pulumi.get(self, "audited") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description for the firewall policy. Changing - this updates the `description` of an existing firewall policy. - """ return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A name for the firewall policy. Changing this - updates the `name` of an existing firewall policy. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another project. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "region") @property @pulumi.getter def rules(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - An array of one or more firewall rules that comprise - the policy. Changing this results in adding/removing rules from the - existing firewall policy. - """ return pulumi.get(self, "rules") @property @pulumi.getter def shared(self) -> pulumi.Output[Optional[bool]]: - """ - Sharing status of the firewall policy (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. Only administrative users - can specify if the policy should be shared. - """ return pulumi.get(self, "shared") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. Required if admin wants - to create a firewall policy for another tenant. Changing this creates a new - firewall policy. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/firewall/rule_v2.py b/sdk/python/pulumi_openstack/firewall/rule_v2.py index c4e016e5c..05c6220e8 100644 --- a/sdk/python/pulumi_openstack/firewall/rule_v2.py +++ b/sdk/python/pulumi_openstack/firewall/rule_v2.py @@ -30,50 +30,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RuleV2 resource. - :param pulumi.Input[str] action: Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - :param pulumi.Input[str] description: A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - :param pulumi.Input[str] destination_ip_address: The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - :param pulumi.Input[str] destination_port: The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[bool] enabled: Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - :param pulumi.Input[int] ip_version: IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - :param pulumi.Input[str] name: A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - :param pulumi.Input[str] protocol: (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - :param pulumi.Input[bool] shared: Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - :param pulumi.Input[str] source_ip_address: The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - :param pulumi.Input[str] source_port: The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. """ if action is not None: pulumi.set(__self__, "action", action) @@ -107,11 +63,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[pulumi.Input[str]]: - """ - Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - """ return pulumi.get(self, "action") @action.setter @@ -121,10 +72,6 @@ def action(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - """ return pulumi.get(self, "description") @description.setter @@ -134,11 +81,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationIpAddress") def destination_ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - """ return pulumi.get(self, "destination_ip_address") @destination_ip_address.setter @@ -148,11 +90,6 @@ def destination_ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationPort") def destination_port(self) -> Optional[pulumi.Input[str]]: - """ - The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "destination_port") @destination_port.setter @@ -162,11 +99,6 @@ def destination_port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -176,10 +108,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -189,10 +117,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - """ return pulumi.get(self, "name") @name.setter @@ -202,12 +126,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -217,12 +135,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -232,12 +144,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "region") @region.setter @@ -247,12 +153,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - """ return pulumi.get(self, "shared") @shared.setter @@ -262,11 +162,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="sourceIpAddress") def source_ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - """ return pulumi.get(self, "source_ip_address") @source_ip_address.setter @@ -276,11 +171,6 @@ def source_ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourcePort") def source_port(self) -> Optional[pulumi.Input[str]]: - """ - The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "source_port") @source_port.setter @@ -290,12 +180,6 @@ def source_port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -322,50 +206,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RuleV2 resources. - :param pulumi.Input[str] action: Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - :param pulumi.Input[str] description: A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - :param pulumi.Input[str] destination_ip_address: The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - :param pulumi.Input[str] destination_port: The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[bool] enabled: Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - :param pulumi.Input[int] ip_version: IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - :param pulumi.Input[str] name: A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - :param pulumi.Input[str] protocol: (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - :param pulumi.Input[bool] shared: Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - :param pulumi.Input[str] source_ip_address: The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - :param pulumi.Input[str] source_port: The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. """ if action is not None: pulumi.set(__self__, "action", action) @@ -399,11 +239,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[pulumi.Input[str]]: - """ - Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - """ return pulumi.get(self, "action") @action.setter @@ -413,10 +248,6 @@ def action(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - """ return pulumi.get(self, "description") @description.setter @@ -426,11 +257,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationIpAddress") def destination_ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - """ return pulumi.get(self, "destination_ip_address") @destination_ip_address.setter @@ -440,11 +266,6 @@ def destination_ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationPort") def destination_port(self) -> Optional[pulumi.Input[str]]: - """ - The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "destination_port") @destination_port.setter @@ -454,11 +275,6 @@ def destination_port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -468,10 +284,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -481,10 +293,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - """ return pulumi.get(self, "name") @name.setter @@ -494,12 +302,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -509,12 +311,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -524,12 +320,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "region") @region.setter @@ -539,12 +329,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - """ return pulumi.get(self, "shared") @shared.setter @@ -554,11 +338,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="sourceIpAddress") def source_ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - """ return pulumi.get(self, "source_ip_address") @source_ip_address.setter @@ -568,11 +347,6 @@ def source_ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sourcePort") def source_port(self) -> Optional[pulumi.Input[str]]: - """ - The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "source_port") @source_port.setter @@ -582,12 +356,6 @@ def source_port(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -616,79 +384,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a v2 firewall rule resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - ``` - - ## Import - - Firewall Rules can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/ruleV2:RuleV2 rule_1 8dbc0c28-e49c-463f-b712-5c5d1bbac327 - ``` - + Create a RuleV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] action: Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - :param pulumi.Input[str] description: A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - :param pulumi.Input[str] destination_ip_address: The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - :param pulumi.Input[str] destination_port: The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[bool] enabled: Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - :param pulumi.Input[int] ip_version: IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - :param pulumi.Input[str] name: A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - :param pulumi.Input[str] protocol: (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - :param pulumi.Input[bool] shared: Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - :param pulumi.Input[str] source_ip_address: The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - :param pulumi.Input[str] source_port: The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. """ ... @overload @@ -697,33 +395,7 @@ def __init__(__self__, args: Optional[RuleV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a v2 firewall rule resource within OpenStack. - - > **Note:** Firewall v2 has no support for OVN currently. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule2 = openstack.firewall.RuleV2("rule_2", - name="firewall_rule", - description="drop TELNET traffic", - action="deny", - protocol="tcp", - destination_port="23", - enabled=True) - ``` - - ## Import - - Firewall Rules can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:firewall/ruleV2:RuleV2 rule_1 8dbc0c28-e49c-463f-b712-5c5d1bbac327 - ``` - + Create a RuleV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RuleV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -807,50 +479,6 @@ def get(resource_name: str, :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 to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - :param pulumi.Input[str] description: A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - :param pulumi.Input[str] destination_ip_address: The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - :param pulumi.Input[str] destination_port: The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[bool] enabled: Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - :param pulumi.Input[int] ip_version: IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - :param pulumi.Input[str] name: A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - :param pulumi.Input[str] project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - :param pulumi.Input[str] protocol: (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - :param pulumi.Input[str] region: The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - :param pulumi.Input[bool] shared: Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - :param pulumi.Input[str] source_ip_address: The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - :param pulumi.Input[str] source_port: The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - :param pulumi.Input[str] tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -875,142 +503,70 @@ def get(resource_name: str, @property @pulumi.getter def action(self) -> pulumi.Output[Optional[str]]: - """ - Action to be taken (must be "allow", "deny" or "reject") - when the firewall rule matches. Changing this updates the `action` of an - existing firewall rule. Default is `deny`. - """ return pulumi.get(self, "action") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description for the firewall rule. Changing this - updates the `description` of an existing firewall rule. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="destinationIpAddress") def destination_ip_address(self) -> pulumi.Output[Optional[str]]: - """ - The destination IP address on which the - firewall rule operates. Changing this updates the `destination_ip_address` - of an existing firewall rule. - """ return pulumi.get(self, "destination_ip_address") @property @pulumi.getter(name="destinationPort") def destination_port(self) -> pulumi.Output[Optional[str]]: - """ - The destination port on which the firewall - rule operates. Changing this updates the `destination_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "destination_port") @property @pulumi.getter def enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Enabled status for the firewall rule (must be "true" - or "false" if provided - defaults to "true"). Changing this updates the - `enabled` status of an existing firewall rule. - """ return pulumi.get(self, "enabled") @property @pulumi.getter(name="ipVersion") def ip_version(self) -> pulumi.Output[Optional[int]]: - """ - IP version, either 4 or 6. Changing this - updates the `ip_version` of an existing firewall rule. Default is `4`. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the firewall rule. Changing this - updates the `name` of an existing firewall rule. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another project. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def protocol(self) -> pulumi.Output[Optional[str]]: - """ - (Optional; Required if `source_port` or `destination_port` is not - empty) The protocol type on which the firewall rule operates. - Valid values are: `tcp`, `udp`, `icmp`, and `any`. Changing this updates the - `protocol` of an existing firewall rule. Default is `any`. - """ return pulumi.get(self, "protocol") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the v2 networking client. - A networking client is needed to create a firewall rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "region") @property @pulumi.getter def shared(self) -> pulumi.Output[Optional[bool]]: - """ - Sharing status of the firewall rule (must be "true" - or "false" if provided). If this is "true" the policy is visible to, and - can be used in, firewalls in other tenants. Changing this updates the - `shared` status of an existing firewall policy. On - """ return pulumi.get(self, "shared") @property @pulumi.getter(name="sourceIpAddress") def source_ip_address(self) -> pulumi.Output[Optional[str]]: - """ - The source IP address on which the firewall - rule operates. Changing this updates the `source_ip_address` of an existing - firewall rule. - """ return pulumi.get(self, "source_ip_address") @property @pulumi.getter(name="sourcePort") def source_port(self) -> pulumi.Output[Optional[str]]: - """ - The source port on which the firewall - rule operates. Changing this updates the `source_port` of an existing - firewall rule. Require not `any` or empty protocol. - """ return pulumi.get(self, "source_port") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. Required if admin wants - to create a firewall rule for another tenant. Changing this creates a new - firewall rule. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/get_fw_group_v2.py b/sdk/python/pulumi_openstack/get_fw_group_v2.py index bf559e8c0..bf445ad66 100644 --- a/sdk/python/pulumi_openstack/get_fw_group_v2.py +++ b/sdk/python/pulumi_openstack/get_fw_group_v2.py @@ -16,6 +16,8 @@ 'get_fw_group_v2_output', ] +warnings.warn("""openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2""", DeprecationWarning) + @pulumi.output_type class GetFwGroupV2Result: """ @@ -65,33 +67,21 @@ def __init__(__self__, admin_state_up=None, description=None, egress_firewall_po @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="egressFirewallPolicyId") def egress_firewall_policy_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "egress_firewall_policy_id") @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "group_id") @property @@ -105,65 +95,41 @@ def id(self) -> str: @property @pulumi.getter(name="ingressFirewallPolicyId") def ingress_firewall_policy_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "ingress_firewall_policy_id") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def ports(self) -> Sequence[str]: - """ - Ports associated with the firewall group. - """ return pulumi.get(self, "ports") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def shared(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "shared") @property @pulumi.getter def status(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "tenant_id") @@ -201,34 +167,9 @@ def get_fw_group_v2(admin_state_up: Optional[bool] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFwGroupV2Result: """ - Use this data source to get information of an available OpenStack firewall group v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group = openstack.get_fw_group_v2(name="tf_test_group") - ``` - - - :param bool admin_state_up: Administrative up/down status for the firewall group. - :param str description: Human-readable description of the firewall group. - :param str egress_firewall_policy_id: The egress policy ID of the firewall group. - :param str group_id: The ID of the firewall group. - :param str ingress_firewall_policy_id: The ingress policy ID of the firewall group. - :param str name: The name of the firewall group. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall group ids. If omitted, the - `region` argument of the provider is used. - :param bool shared: The sharing status of the firewall group. - :param str status: Enabled status for the firewall group. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall group. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_group_v2 is deprecated: openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2""") __args__ = dict() __args__['adminStateUp'] = admin_state_up __args__['description'] = description @@ -274,32 +215,7 @@ def get_fw_group_v2_output(admin_state_up: Optional[pulumi.Input[Optional[bool]] tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFwGroupV2Result]: """ - Use this data source to get information of an available OpenStack firewall group v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group = openstack.get_fw_group_v2(name="tf_test_group") - ``` - - - :param bool admin_state_up: Administrative up/down status for the firewall group. - :param str description: Human-readable description of the firewall group. - :param str egress_firewall_policy_id: The egress policy ID of the firewall group. - :param str group_id: The ID of the firewall group. - :param str ingress_firewall_policy_id: The ingress policy ID of the firewall group. - :param str name: The name of the firewall group. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall group. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall group ids. If omitted, the - `region` argument of the provider is used. - :param bool shared: The sharing status of the firewall group. - :param str status: Enabled status for the firewall group. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall group. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_group_v2 is deprecated: openstack.index/getfwgroupv2.getFwGroupV2 has been deprecated in favor of openstack.firewall/getgroupv2.getGroupV2""") ... diff --git a/sdk/python/pulumi_openstack/get_fw_policy_v2.py b/sdk/python/pulumi_openstack/get_fw_policy_v2.py index 49b868a6f..dde12fc0b 100644 --- a/sdk/python/pulumi_openstack/get_fw_policy_v2.py +++ b/sdk/python/pulumi_openstack/get_fw_policy_v2.py @@ -16,6 +16,8 @@ 'get_fw_policy_v2_output', ] +warnings.warn("""openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2""", DeprecationWarning) + @pulumi.output_type class GetFwPolicyV2Result: """ @@ -56,9 +58,6 @@ def __init__(__self__, audited=None, description=None, id=None, name=None, polic @property @pulumi.getter def audited(self) -> bool: - """ - The audit status of the firewall policy. - """ return pulumi.get(self, "audited") @property @@ -77,57 +76,36 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="policyId") def policy_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "policy_id") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def rules(self) -> Sequence[str]: - """ - The array of one or more firewall rules that comprise the policy. - """ return pulumi.get(self, "rules") @property @pulumi.getter def shared(self) -> bool: - """ - The sharing status of the firewall policy. - """ return pulumi.get(self, "shared") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "tenant_id") @@ -159,31 +137,9 @@ def get_fw_policy_v2(audited: Optional[bool] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFwPolicyV2Result: """ - Use this data source to get information of an available OpenStack firewall policy v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy = openstack.get_fw_policy_v2(name="tf_test_policy") - ``` - - - :param bool audited: Whether this policy has been audited. - :param str description: Human-readable description of the policy. - :param str name: The name of the firewall policy. - :param str policy_id: The ID of the firewall policy. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall policy ids. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this policy is shared across all projects. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_policy_v2 is deprecated: openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2""") __args__ = dict() __args__['audited'] = audited __args__['description'] = description @@ -220,29 +176,7 @@ def get_fw_policy_v2_output(audited: Optional[pulumi.Input[Optional[bool]]] = No tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFwPolicyV2Result]: """ - Use this data source to get information of an available OpenStack firewall policy v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy = openstack.get_fw_policy_v2(name="tf_test_policy") - ``` - - - :param bool audited: Whether this policy has been audited. - :param str description: Human-readable description of the policy. - :param str name: The name of the firewall policy. - :param str policy_id: The ID of the firewall policy. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall policy. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall policy ids. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this policy is shared across all projects. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall policy. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_policy_v2 is deprecated: openstack.index/getfwpolicyv2.getFwPolicyV2 has been deprecated in favor of openstack.firewall/getpolicyv2.getPolicyV2""") ... diff --git a/sdk/python/pulumi_openstack/get_fw_rule_v2.py b/sdk/python/pulumi_openstack/get_fw_rule_v2.py index c61ded295..80e5540ad 100644 --- a/sdk/python/pulumi_openstack/get_fw_rule_v2.py +++ b/sdk/python/pulumi_openstack/get_fw_rule_v2.py @@ -16,6 +16,8 @@ 'get_fw_rule_v2_output', ] +warnings.warn("""openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2""", DeprecationWarning) + @pulumi.output_type class GetFwRuleV2Result: """ @@ -77,49 +79,31 @@ def __init__(__self__, action=None, description=None, destination_ip_address=Non @property @pulumi.getter def action(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "action") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="destinationIpAddress") def destination_ip_address(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "destination_ip_address") @property @pulumi.getter(name="destinationPort") def destination_port(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "destination_port") @property @pulumi.getter def enabled(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "enabled") @property @pulumi.getter(name="firewallPolicyIds") def firewall_policy_ids(self) -> Sequence[str]: - """ - The ID of the firewall policy the rule belongs to. - """ return pulumi.get(self, "firewall_policy_ids") @property @@ -133,81 +117,51 @@ def id(self) -> str: @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[int]: - """ - See Argument Reference above. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def protocol(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "protocol") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="ruleId") def rule_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "rule_id") @property @pulumi.getter def shared(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "shared") @property @pulumi.getter(name="sourceIpAddress") def source_ip_address(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "source_ip_address") @property @pulumi.getter(name="sourcePort") def source_port(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "source_port") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "tenant_id") @@ -254,43 +208,9 @@ def get_fw_rule_v2(action: Optional[str] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFwRuleV2Result: """ - Use this data source to get information of an available OpenStack firewall rule v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule = openstack.get_fw_rule_v2(name="tf_test_rule") - ``` - - - :param str action: Action to be taken when the firewall rule matches. - :param str description: The description of the firewall rule. - :param str destination_ip_address: The destination IP address on which the - firewall rule operates. - :param str destination_port: The destination port on which the firewall - rule operates. - :param bool enabled: Enabled status for the firewall rule. - :param Sequence[str] firewall_policy_ids: The ID of the firewall policy the rule belongs to. - :param int ip_version: IP version, either 4 (default) or 6. - :param str name: The name of the firewall rule. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. - :param str protocol: The protocol type on which the firewall rule operates. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall policy ids. If omitted, the - `region` argument of the provider is used. - :param str rule_id: The ID of the firewall rule. - :param bool shared: The sharing status of the firewall policy. - :param str source_ip_address: The source IP address on which the firewall - rule operates. - :param str source_port: The source port on which the firewall - rule operates. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_rule_v2 is deprecated: openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2""") __args__ = dict() __args__['action'] = action __args__['description'] = description @@ -350,41 +270,7 @@ def get_fw_rule_v2_output(action: Optional[pulumi.Input[Optional[str]]] = None, tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFwRuleV2Result]: """ - Use this data source to get information of an available OpenStack firewall rule v2. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rule = openstack.get_fw_rule_v2(name="tf_test_rule") - ``` - - - :param str action: Action to be taken when the firewall rule matches. - :param str description: The description of the firewall rule. - :param str destination_ip_address: The destination IP address on which the - firewall rule operates. - :param str destination_port: The destination port on which the firewall - rule operates. - :param bool enabled: Enabled status for the firewall rule. - :param Sequence[str] firewall_policy_ids: The ID of the firewall policy the rule belongs to. - :param int ip_version: IP version, either 4 (default) or 6. - :param str name: The name of the firewall rule. - :param str project_id: This argument conflicts and is interchangeable - with `tenant_id`. The owner of the firewall rule. - :param str protocol: The protocol type on which the firewall rule operates. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve firewall policy ids. If omitted, the - `region` argument of the provider is used. - :param str rule_id: The ID of the firewall rule. - :param bool shared: The sharing status of the firewall policy. - :param str source_ip_address: The source IP address on which the firewall - rule operates. - :param str source_port: The source port on which the firewall - rule operates. - :param str tenant_id: This argument conflicts and is interchangeable - with `project_id`. The owner of the firewall rule. + Use this data source to access information about an existing resource. """ + pulumi.log.warn("""get_fw_rule_v2 is deprecated: openstack.index/getfwrulev2.getFwRuleV2 has been deprecated in favor of openstack.firewall/getrulev2.getRuleV2""") ... diff --git a/sdk/python/pulumi_openstack/identity/_inputs.py b/sdk/python/pulumi_openstack/identity/_inputs.py index 567a42b8c..c93e6b56e 100644 --- a/sdk/python/pulumi_openstack/identity/_inputs.py +++ b/sdk/python/pulumi_openstack/identity/_inputs.py @@ -21,22 +21,6 @@ def __init__(__self__, *, path: pulumi.Input[str], service: pulumi.Input[str], id: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] method: The request method that the application credential is - permitted to use for a given API endpoint. Allowed values: `POST`, `GET`, - `HEAD`, `PATCH`, `PUT` and `DELETE`. - :param pulumi.Input[str] path: The API path that the application credential is permitted - to access. May use named wildcards such as **{tag}** or the unnamed wildcard - **\\*** to match against any string in the path up to a **/**, or the recursive - wildcard **\\*\\*** to include **/** in the matched path. - :param pulumi.Input[str] service: The service type identifier for the service that the - application credential is granted to access. Must be a service type that is - listed in the service catalog and not a code name for a service. E.g. - **identity**, **compute**, **volumev3**, **image**, **network**, - **object-store**, **sharev2**, **dns**, **key-manager**, **monitoring**, etc. - :param pulumi.Input[str] id: The ID of the existing access rule. The access rule ID of - another application credential can be provided. - """ pulumi.set(__self__, "method", method) pulumi.set(__self__, "path", path) pulumi.set(__self__, "service", service) @@ -46,11 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter def method(self) -> pulumi.Input[str]: - """ - The request method that the application credential is - permitted to use for a given API endpoint. Allowed values: `POST`, `GET`, - `HEAD`, `PATCH`, `PUT` and `DELETE`. - """ return pulumi.get(self, "method") @method.setter @@ -60,12 +39,6 @@ def method(self, value: pulumi.Input[str]): @property @pulumi.getter def path(self) -> pulumi.Input[str]: - """ - The API path that the application credential is permitted - to access. May use named wildcards such as **{tag}** or the unnamed wildcard - **\\*** to match against any string in the path up to a **/**, or the recursive - wildcard **\\*\\*** to include **/** in the matched path. - """ return pulumi.get(self, "path") @path.setter @@ -75,13 +48,6 @@ def path(self, value: pulumi.Input[str]): @property @pulumi.getter def service(self) -> pulumi.Input[str]: - """ - The service type identifier for the service that the - application credential is granted to access. Must be a service type that is - listed in the service catalog and not a code name for a service. E.g. - **identity**, **compute**, **volumev3**, **image**, **network**, - **object-store**, **sharev2**, **dns**, **key-manager**, **monitoring**, etc. - """ return pulumi.get(self, "service") @service.setter @@ -91,10 +57,6 @@ def service(self, value: pulumi.Input[str]): @property @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the existing access rule. The access rule ID of - another application credential can be provided. - """ return pulumi.get(self, "id") @id.setter @@ -106,19 +68,11 @@ def id(self, value: Optional[pulumi.Input[str]]): class UserMultiFactorAuthRuleArgs: def __init__(__self__, *, rules: pulumi.Input[Sequence[pulumi.Input[str]]]): - """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] rules: A list of authentication plugins that the user must - authenticate with. - """ pulumi.set(__self__, "rules", rules) @property @pulumi.getter def rules(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - A list of authentication plugins that the user must - authenticate with. - """ return pulumi.get(self, "rules") @rules.setter diff --git a/sdk/python/pulumi_openstack/identity/application_credential.py b/sdk/python/pulumi_openstack/identity/application_credential.py index afc5e1973..b10f6ed20 100644 --- a/sdk/python/pulumi_openstack/identity/application_credential.py +++ b/sdk/python/pulumi_openstack/identity/application_credential.py @@ -26,31 +26,6 @@ def __init__(__self__, *, unrestricted: Optional[pulumi.Input[bool]] = None): """ The set of arguments for constructing a ApplicationCredential resource. - :param pulumi.Input[Sequence[pulumi.Input['ApplicationCredentialAccessRuleArgs']]] access_rules: A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - :param pulumi.Input[str] description: A description of the application credential. - Changing this creates a new application credential. - :param pulumi.Input[str] expires_at: The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - :param pulumi.Input[str] name: A name of the application credential. Changing this - creates a new application credential. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - :param pulumi.Input[str] secret: The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - :param pulumi.Input[bool] unrestricted: A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. """ if access_rules is not None: pulumi.set(__self__, "access_rules", access_rules) @@ -72,11 +47,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessRules") def access_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationCredentialAccessRuleArgs']]]]: - """ - A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - """ return pulumi.get(self, "access_rules") @access_rules.setter @@ -86,10 +56,6 @@ def access_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Appli @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the application credential. - Changing this creates a new application credential. - """ return pulumi.get(self, "description") @description.setter @@ -99,12 +65,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="expiresAt") def expires_at(self) -> Optional[pulumi.Input[str]]: - """ - The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - """ return pulumi.get(self, "expires_at") @expires_at.setter @@ -114,10 +74,6 @@ def expires_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name of the application credential. Changing this - creates a new application credential. - """ return pulumi.get(self, "name") @name.setter @@ -127,11 +83,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - """ return pulumi.get(self, "region") @region.setter @@ -141,13 +92,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - """ return pulumi.get(self, "roles") @roles.setter @@ -157,11 +101,6 @@ def roles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def secret(self) -> Optional[pulumi.Input[str]]: - """ - The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - """ return pulumi.get(self, "secret") @secret.setter @@ -171,11 +110,6 @@ def secret(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def unrestricted(self) -> Optional[pulumi.Input[bool]]: - """ - A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. - """ return pulumi.get(self, "unrestricted") @unrestricted.setter @@ -197,34 +131,6 @@ def __init__(__self__, *, unrestricted: Optional[pulumi.Input[bool]] = None): """ Input properties used for looking up and filtering ApplicationCredential resources. - :param pulumi.Input[Sequence[pulumi.Input['ApplicationCredentialAccessRuleArgs']]] access_rules: A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - :param pulumi.Input[str] description: A description of the application credential. - Changing this creates a new application credential. - :param pulumi.Input[str] expires_at: The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - :param pulumi.Input[str] name: A name of the application credential. Changing this - creates a new application credential. - :param pulumi.Input[str] project_id: The ID of the project the application credential was created - for and that authentication requests using this application credential will - be scoped to. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - :param pulumi.Input[str] secret: The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - :param pulumi.Input[bool] unrestricted: A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. """ if access_rules is not None: pulumi.set(__self__, "access_rules", access_rules) @@ -248,11 +154,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessRules") def access_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationCredentialAccessRuleArgs']]]]: - """ - A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - """ return pulumi.get(self, "access_rules") @access_rules.setter @@ -262,10 +163,6 @@ def access_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Appli @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the application credential. - Changing this creates a new application credential. - """ return pulumi.get(self, "description") @description.setter @@ -275,12 +172,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="expiresAt") def expires_at(self) -> Optional[pulumi.Input[str]]: - """ - The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - """ return pulumi.get(self, "expires_at") @expires_at.setter @@ -290,10 +181,6 @@ def expires_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A name of the application credential. Changing this - creates a new application credential. - """ return pulumi.get(self, "name") @name.setter @@ -303,11 +190,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project the application credential was created - for and that authentication requests using this application credential will - be scoped to. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -317,11 +199,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - """ return pulumi.get(self, "region") @region.setter @@ -331,13 +208,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - """ return pulumi.get(self, "roles") @roles.setter @@ -347,11 +217,6 @@ def roles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def secret(self) -> Optional[pulumi.Input[str]]: - """ - The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - """ return pulumi.get(self, "secret") @secret.setter @@ -361,11 +226,6 @@ def secret(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def unrestricted(self) -> Optional[pulumi.Input[bool]]: - """ - A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. - """ return pulumi.get(self, "unrestricted") @unrestricted.setter @@ -388,115 +248,9 @@ def __init__(__self__, unrestricted: Optional[pulumi.Input[bool]] = None, __props__=None): """ - Manages a V3 Application Credential resource within OpenStack Keystone. - - > **Note:** All arguments including the application credential name and secret - will be stored in the raw state as plain-text. Read more about sensitive data - in state. - - > **Note:** An Application Credential is created within the authenticated user - project scope and is not visible by an admin or other accounts. - The Application Credential visibility is similar to - `compute.Keypair`. - - ## Example Usage - - ### Predefined secret - - Application credential below will have only one `swiftoperator` role. - - ```python - import pulumi - import pulumi_openstack as openstack - - swift = openstack.identity.ApplicationCredential("swift", - name="swift", - description="Swift technical application credential", - secret="supersecret", - roles=["swiftoperator"], - expires_at="2019-02-13T12:12:12Z") - ``` - - ### Unrestricted with autogenerated secret and unlimited TTL - - Application credential below will inherit all the current user's roles. - - !> **WARNING:** Restrictions on these Identity operations are deliberately - imposed as a safeguard to prevent a compromised application credential from - regenerating itself. Disabling this restriction poses an inherent added risk. - - ```python - import pulumi - import pulumi_openstack as openstack - - unrestricted = openstack.identity.ApplicationCredential("unrestricted", - name="unrestricted", - description="Unrestricted application credential", - unrestricted=True) - pulumi.export("applicationCredentialSecret", unrestricted.secret) - ``` - - ### Application credential with access rules - - > **Note:** Application Credential access rules are supported only in Keystone - starting from [Train](https://releases.openstack.org/train/highlights.html#keystone-identity-service) release. - - ```python - import pulumi - import pulumi_openstack as openstack - - monitoring = openstack.identity.ApplicationCredential("monitoring", - name="monitoring", - expires_at="2019-02-13T12:12:12Z", - access_rules=[ - { - "path": "/v2.0/metrics", - "service": "monitoring", - "method": "GET", - }, - { - "path": "/v2.0/metrics", - "service": "monitoring", - "method": "PUT", - }, - ]) - ``` - - ## Import - - Application Credentials can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/applicationCredential:ApplicationCredential application_credential_1 c17304b7-0953-4738-abb0-67005882b0a0 - ``` - + Create a ApplicationCredential resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['ApplicationCredentialAccessRuleArgs', 'ApplicationCredentialAccessRuleArgsDict']]]] access_rules: A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - :param pulumi.Input[str] description: A description of the application credential. - Changing this creates a new application credential. - :param pulumi.Input[str] expires_at: The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - :param pulumi.Input[str] name: A name of the application credential. Changing this - creates a new application credential. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - :param pulumi.Input[str] secret: The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - :param pulumi.Input[bool] unrestricted: A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. """ ... @overload @@ -505,88 +259,7 @@ def __init__(__self__, args: Optional[ApplicationCredentialArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Application Credential resource within OpenStack Keystone. - - > **Note:** All arguments including the application credential name and secret - will be stored in the raw state as plain-text. Read more about sensitive data - in state. - - > **Note:** An Application Credential is created within the authenticated user - project scope and is not visible by an admin or other accounts. - The Application Credential visibility is similar to - `compute.Keypair`. - - ## Example Usage - - ### Predefined secret - - Application credential below will have only one `swiftoperator` role. - - ```python - import pulumi - import pulumi_openstack as openstack - - swift = openstack.identity.ApplicationCredential("swift", - name="swift", - description="Swift technical application credential", - secret="supersecret", - roles=["swiftoperator"], - expires_at="2019-02-13T12:12:12Z") - ``` - - ### Unrestricted with autogenerated secret and unlimited TTL - - Application credential below will inherit all the current user's roles. - - !> **WARNING:** Restrictions on these Identity operations are deliberately - imposed as a safeguard to prevent a compromised application credential from - regenerating itself. Disabling this restriction poses an inherent added risk. - - ```python - import pulumi - import pulumi_openstack as openstack - - unrestricted = openstack.identity.ApplicationCredential("unrestricted", - name="unrestricted", - description="Unrestricted application credential", - unrestricted=True) - pulumi.export("applicationCredentialSecret", unrestricted.secret) - ``` - - ### Application credential with access rules - - > **Note:** Application Credential access rules are supported only in Keystone - starting from [Train](https://releases.openstack.org/train/highlights.html#keystone-identity-service) release. - - ```python - import pulumi - import pulumi_openstack as openstack - - monitoring = openstack.identity.ApplicationCredential("monitoring", - name="monitoring", - expires_at="2019-02-13T12:12:12Z", - access_rules=[ - { - "path": "/v2.0/metrics", - "service": "monitoring", - "method": "GET", - }, - { - "path": "/v2.0/metrics", - "service": "monitoring", - "method": "PUT", - }, - ]) - ``` - - ## Import - - Application Credentials can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/applicationCredential:ApplicationCredential application_credential_1 c17304b7-0953-4738-abb0-67005882b0a0 - ``` - + Create a ApplicationCredential resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ApplicationCredentialArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -656,34 +329,6 @@ def get(resource_name: str, :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['ApplicationCredentialAccessRuleArgs', 'ApplicationCredentialAccessRuleArgsDict']]]] access_rules: A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - :param pulumi.Input[str] description: A description of the application credential. - Changing this creates a new application credential. - :param pulumi.Input[str] expires_at: The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - :param pulumi.Input[str] name: A name of the application credential. Changing this - creates a new application credential. - :param pulumi.Input[str] project_id: The ID of the project the application credential was created - for and that authentication requests using this application credential will - be scoped to. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - :param pulumi.Input[str] secret: The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - :param pulumi.Input[bool] unrestricted: A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -703,91 +348,45 @@ def get(resource_name: str, @property @pulumi.getter(name="accessRules") def access_rules(self) -> pulumi.Output[Optional[Sequence['outputs.ApplicationCredentialAccessRule']]]: - """ - A collection of one or more access rules, which - this application credential allows to follow. The structure is described - below. Changing this creates a new application credential. - """ return pulumi.get(self, "access_rules") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the application credential. - Changing this creates a new application credential. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="expiresAt") def expires_at(self) -> pulumi.Output[Optional[str]]: - """ - The expiration time of the application credential - in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, - an application credential will never expire. Changing this creates a new - application credential. - """ return pulumi.get(self, "expires_at") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A name of the application credential. Changing this - creates a new application credential. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project the application credential was created - for and that authentication requests using this application credential will - be scoped to. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new application credential. - """ return pulumi.get(self, "region") @property @pulumi.getter def roles(self) -> pulumi.Output[Sequence[str]]: - """ - A collection of one or more role names, which this - application credential has to be associated with its project. If omitted, - all the current user's roles within the scoped project will be inherited by - a new application credential. Changing this creates a new application - credential. - """ return pulumi.get(self, "roles") @property @pulumi.getter def secret(self) -> pulumi.Output[str]: - """ - The secret for the application credential. If omitted, - it will be generated by the server. Changing this creates a new application - credential. - """ return pulumi.get(self, "secret") @property @pulumi.getter def unrestricted(self) -> pulumi.Output[Optional[bool]]: - """ - A flag indicating whether the application - credential may be used for creation or destruction of other application - credentials or trusts. Changing this creates a new application credential. - """ return pulumi.get(self, "unrestricted") diff --git a/sdk/python/pulumi_openstack/identity/ec2_credential_v3.py b/sdk/python/pulumi_openstack/identity/ec2_credential_v3.py index abcb4071f..d1ccbf020 100644 --- a/sdk/python/pulumi_openstack/identity/ec2_credential_v3.py +++ b/sdk/python/pulumi_openstack/identity/ec2_credential_v3.py @@ -19,16 +19,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Ec2CredentialV3 resource. - :param pulumi.Input[str] project_id: The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - :param pulumi.Input[str] user_id: The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. """ if project_id is not None: pulumi.set(__self__, "project_id", project_id) @@ -40,12 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -55,11 +39,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - """ return pulumi.get(self, "region") @region.setter @@ -69,11 +48,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -92,19 +66,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Ec2CredentialV3 resources. - :param pulumi.Input[str] access: contains an EC2 credential access UUID - :param pulumi.Input[str] project_id: The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - :param pulumi.Input[str] secret: contains an EC2 credential secret UUID - :param pulumi.Input[str] trust_id: contains an EC2 credential trust ID scope - :param pulumi.Input[str] user_id: The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. """ if access is not None: pulumi.set(__self__, "access", access) @@ -122,9 +83,6 @@ def __init__(__self__, *, @property @pulumi.getter def access(self) -> Optional[pulumi.Input[str]]: - """ - contains an EC2 credential access UUID - """ return pulumi.get(self, "access") @access.setter @@ -134,12 +92,6 @@ def access(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -149,11 +101,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - """ return pulumi.get(self, "region") @region.setter @@ -163,9 +110,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def secret(self) -> Optional[pulumi.Input[str]]: - """ - contains an EC2 credential secret UUID - """ return pulumi.get(self, "secret") @secret.setter @@ -175,9 +119,6 @@ def secret(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="trustId") def trust_id(self) -> Optional[pulumi.Input[str]]: - """ - contains an EC2 credential trust ID scope - """ return pulumi.get(self, "trust_id") @trust_id.setter @@ -187,11 +128,6 @@ def trust_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -209,57 +145,9 @@ def __init__(__self__, user_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 EC2 Credential resource within OpenStack Keystone. - EC2 credentials in OpenStack are used to access S3 compatible Swift/RadosGW - endpoints or to authenticate against Keystone. - - > **Note:** All arguments including the EC2 credential access key and secret - will be stored in the raw state as plain-text. Read more about sensitive data - in state. - - ## Example Usage - - ### EC2 credential in current project scope - - ```python - import pulumi - import pulumi_openstack as openstack - - ec2_key1 = openstack.identity.Ec2CredentialV3("ec2_key1") - ``` - - ### EC2 credential in pre-defined project scope - - This allows administrative users to create EC2 credentials for a scope different - from the current auth scope. - - ```python - import pulumi - import pulumi_openstack as openstack - - ec2_key1 = openstack.identity.Ec2CredentialV3("ec2_key1", project_id="f7ac731cc11f40efbc03a9f9e1d1d21f") - ``` - - ## Import - - EC2 Credentials can be imported using the `access`, e.g. - - ```sh - $ pulumi import openstack:identity/ec2CredentialV3:Ec2CredentialV3 ec2_cred_1 2d0ac4a2f81b4b0f9513ee49e780647d - ``` - + Create a Ec2CredentialV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] project_id: The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - :param pulumi.Input[str] user_id: The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. """ ... @overload @@ -268,45 +156,7 @@ def __init__(__self__, args: Optional[Ec2CredentialV3Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 EC2 Credential resource within OpenStack Keystone. - EC2 credentials in OpenStack are used to access S3 compatible Swift/RadosGW - endpoints or to authenticate against Keystone. - - > **Note:** All arguments including the EC2 credential access key and secret - will be stored in the raw state as plain-text. Read more about sensitive data - in state. - - ## Example Usage - - ### EC2 credential in current project scope - - ```python - import pulumi - import pulumi_openstack as openstack - - ec2_key1 = openstack.identity.Ec2CredentialV3("ec2_key1") - ``` - - ### EC2 credential in pre-defined project scope - - This allows administrative users to create EC2 credentials for a scope different - from the current auth scope. - - ```python - import pulumi - import pulumi_openstack as openstack - - ec2_key1 = openstack.identity.Ec2CredentialV3("ec2_key1", project_id="f7ac731cc11f40efbc03a9f9e1d1d21f") - ``` - - ## Import - - EC2 Credentials can be imported using the `access`, e.g. - - ```sh - $ pulumi import openstack:identity/ec2CredentialV3:Ec2CredentialV3 ec2_cred_1 2d0ac4a2f81b4b0f9513ee49e780647d - ``` - + Create a Ec2CredentialV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param Ec2CredentialV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -365,19 +215,6 @@ def get(resource_name: str, :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] access: contains an EC2 credential access UUID - :param pulumi.Input[str] project_id: The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - :param pulumi.Input[str] secret: contains an EC2 credential secret UUID - :param pulumi.Input[str] trust_id: contains an EC2 credential trust ID scope - :param pulumi.Input[str] user_id: The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -394,55 +231,30 @@ def get(resource_name: str, @property @pulumi.getter def access(self) -> pulumi.Output[str]: - """ - contains an EC2 credential access UUID - """ return pulumi.get(self, "access") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The ID of the project the EC2 credential is created - for and that authentication requests using this EC2 credential will - be scoped to. Only administrative users can specify a project ID different - from the current auth scope. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new EC2 credential. - """ return pulumi.get(self, "region") @property @pulumi.getter def secret(self) -> pulumi.Output[str]: - """ - contains an EC2 credential secret UUID - """ return pulumi.get(self, "secret") @property @pulumi.getter(name="trustId") def trust_id(self) -> pulumi.Output[str]: - """ - contains an EC2 credential trust ID scope - """ return pulumi.get(self, "trust_id") @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[str]: - """ - The ID of the user the EC2 credential is created for. - Only administrative users can specify a user ID different from the current - auth scope. - """ return pulumi.get(self, "user_id") diff --git a/sdk/python/pulumi_openstack/identity/endpoint_v3.py b/sdk/python/pulumi_openstack/identity/endpoint_v3.py index 1f12a72db..2aa23795a 100644 --- a/sdk/python/pulumi_openstack/identity/endpoint_v3.py +++ b/sdk/python/pulumi_openstack/identity/endpoint_v3.py @@ -22,15 +22,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a EndpointV3 resource. - :param pulumi.Input[str] endpoint_region: The endpoint region. The `region` and - `endpoint_region` can be different. - :param pulumi.Input[str] service_id: The endpoint service ID. - :param pulumi.Input[str] url: The endpoint url. - :param pulumi.Input[str] interface: The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - :param pulumi.Input[str] name: The endpoint name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. """ pulumi.set(__self__, "endpoint_region", endpoint_region) pulumi.set(__self__, "service_id", service_id) @@ -45,10 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="endpointRegion") def endpoint_region(self) -> pulumi.Input[str]: - """ - The endpoint region. The `region` and - `endpoint_region` can be different. - """ return pulumi.get(self, "endpoint_region") @endpoint_region.setter @@ -58,9 +45,6 @@ def endpoint_region(self, value: pulumi.Input[str]): @property @pulumi.getter(name="serviceId") def service_id(self) -> pulumi.Input[str]: - """ - The endpoint service ID. - """ return pulumi.get(self, "service_id") @service_id.setter @@ -70,9 +54,6 @@ def service_id(self, value: pulumi.Input[str]): @property @pulumi.getter def url(self) -> pulumi.Input[str]: - """ - The endpoint url. - """ return pulumi.get(self, "url") @url.setter @@ -82,10 +63,6 @@ def url(self, value: pulumi.Input[str]): @property @pulumi.getter def interface(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - """ return pulumi.get(self, "interface") @interface.setter @@ -95,9 +72,6 @@ def interface(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint name. - """ return pulumi.get(self, "name") @name.setter @@ -107,10 +81,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @region.setter @@ -131,17 +101,6 @@ def __init__(__self__, *, url: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering EndpointV3 resources. - :param pulumi.Input[str] endpoint_region: The endpoint region. The `region` and - `endpoint_region` can be different. - :param pulumi.Input[str] interface: The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - :param pulumi.Input[str] name: The endpoint name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] service_id: The endpoint service ID. - :param pulumi.Input[str] service_name: The service name of the endpoint. - :param pulumi.Input[str] service_type: The service type of the endpoint. - :param pulumi.Input[str] url: The endpoint url. """ if endpoint_region is not None: pulumi.set(__self__, "endpoint_region", endpoint_region) @@ -163,10 +122,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="endpointRegion") def endpoint_region(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint region. The `region` and - `endpoint_region` can be different. - """ return pulumi.get(self, "endpoint_region") @endpoint_region.setter @@ -176,10 +131,6 @@ def endpoint_region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def interface(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - """ return pulumi.get(self, "interface") @interface.setter @@ -189,9 +140,6 @@ def interface(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint name. - """ return pulumi.get(self, "name") @name.setter @@ -201,10 +149,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @region.setter @@ -214,9 +158,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceId") def service_id(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint service ID. - """ return pulumi.get(self, "service_id") @service_id.setter @@ -226,9 +167,6 @@ def service_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceName") def service_name(self) -> Optional[pulumi.Input[str]]: - """ - The service name of the endpoint. - """ return pulumi.get(self, "service_name") @service_name.setter @@ -238,9 +176,6 @@ def service_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceType") def service_type(self) -> Optional[pulumi.Input[str]]: - """ - The service type of the endpoint. - """ return pulumi.get(self, "service_type") @service_type.setter @@ -250,9 +185,6 @@ def service_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def url(self) -> Optional[pulumi.Input[str]]: - """ - The endpoint url. - """ return pulumi.get(self, "url") @url.setter @@ -273,45 +205,9 @@ def __init__(__self__, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 Endpoint resource within OpenStack Keystone. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.ServiceV3("service_1", - name="my-service", - type="my-service-type") - endpoint1 = openstack.identity.EndpointV3("endpoint_1", - name="my-endpoint", - service_id=service1.id, - endpoint_region=service1.region, - url="http://my-endpoint") - ``` - - ## Import - - Endpoints can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/endpointV3:EndpointV3 endpoint_1 5392472b-106a-4845-90c6-7c8445f18770 - ``` - + Create a EndpointV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] endpoint_region: The endpoint region. The `region` and - `endpoint_region` can be different. - :param pulumi.Input[str] interface: The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - :param pulumi.Input[str] name: The endpoint name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] service_id: The endpoint service ID. - :param pulumi.Input[str] url: The endpoint url. """ ... @overload @@ -320,34 +216,7 @@ def __init__(__self__, args: EndpointV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Endpoint resource within OpenStack Keystone. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.ServiceV3("service_1", - name="my-service", - type="my-service-type") - endpoint1 = openstack.identity.EndpointV3("endpoint_1", - name="my-endpoint", - service_id=service1.id, - endpoint_region=service1.region, - url="http://my-endpoint") - ``` - - ## Import - - Endpoints can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/endpointV3:EndpointV3 endpoint_1 5392472b-106a-4845-90c6-7c8445f18770 - ``` - + Create a EndpointV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param EndpointV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -417,17 +286,6 @@ def get(resource_name: str, :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] endpoint_region: The endpoint region. The `region` and - `endpoint_region` can be different. - :param pulumi.Input[str] interface: The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - :param pulumi.Input[str] name: The endpoint name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] service_id: The endpoint service ID. - :param pulumi.Input[str] service_name: The service name of the endpoint. - :param pulumi.Input[str] service_type: The service type of the endpoint. - :param pulumi.Input[str] url: The endpoint url. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -446,67 +304,40 @@ def get(resource_name: str, @property @pulumi.getter(name="endpointRegion") def endpoint_region(self) -> pulumi.Output[str]: - """ - The endpoint region. The `region` and - `endpoint_region` can be different. - """ return pulumi.get(self, "endpoint_region") @property @pulumi.getter def interface(self) -> pulumi.Output[Optional[str]]: - """ - The endpoint interface. Valid values are `public`, - `internal` and `admin`. Default value is `public` - """ return pulumi.get(self, "interface") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The endpoint name. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="serviceId") def service_id(self) -> pulumi.Output[str]: - """ - The endpoint service ID. - """ return pulumi.get(self, "service_id") @property @pulumi.getter(name="serviceName") def service_name(self) -> pulumi.Output[str]: - """ - The service name of the endpoint. - """ return pulumi.get(self, "service_name") @property @pulumi.getter(name="serviceType") def service_type(self) -> pulumi.Output[str]: - """ - The service type of the endpoint. - """ return pulumi.get(self, "service_type") @property @pulumi.getter def url(self) -> pulumi.Output[str]: - """ - The endpoint url. - """ return pulumi.get(self, "url") diff --git a/sdk/python/pulumi_openstack/identity/get_auth_scope.py b/sdk/python/pulumi_openstack/identity/get_auth_scope.py index 380cbbd8f..9bd51a1e2 100644 --- a/sdk/python/pulumi_openstack/identity/get_auth_scope.py +++ b/sdk/python/pulumi_openstack/identity/get_auth_scope.py @@ -78,17 +78,11 @@ def __init__(__self__, domain_id=None, domain_name=None, id=None, name=None, pro @property @pulumi.getter(name="domainId") def domain_id(self) -> str: - """ - The domain ID of the scope. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter(name="domainName") def domain_name(self) -> str: - """ - The domain name of the scope. - """ return pulumi.get(self, "domain_name") @property @@ -102,65 +96,41 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - The name of the service. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectDomainId") def project_domain_id(self) -> str: - """ - The domain ID of the project. - """ return pulumi.get(self, "project_domain_id") @property @pulumi.getter(name="projectDomainName") def project_domain_name(self) -> str: - """ - The domain name of the project. - """ return pulumi.get(self, "project_domain_name") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The project ID of the scope. - """ return pulumi.get(self, "project_id") @property @pulumi.getter(name="projectName") def project_name(self) -> str: - """ - The project name of the scope. - """ return pulumi.get(self, "project_name") @property @pulumi.getter def region(self) -> str: - """ - The region of the endpoint. - """ return pulumi.get(self, "region") @property @pulumi.getter def roles(self) -> Sequence['outputs.GetAuthScopeRoleResult']: - """ - A list of roles in the current scope. See reference below. - """ return pulumi.get(self, "roles") @property @pulumi.getter(name="serviceCatalogs") def service_catalogs(self) -> Sequence['outputs.GetAuthScopeServiceCatalogResult']: - """ - A list of service catalog entries returned with the token. - """ return pulumi.get(self, "service_catalogs") @property @@ -171,41 +141,26 @@ def set_token_id(self) -> Optional[bool]: @property @pulumi.getter(name="tokenId") def token_id(self) -> str: - """ - The token ID of the scope. - """ return pulumi.get(self, "token_id") @property @pulumi.getter(name="userDomainId") def user_domain_id(self) -> str: - """ - The domain ID of the user. - """ return pulumi.get(self, "user_domain_id") @property @pulumi.getter(name="userDomainName") def user_domain_name(self) -> str: - """ - The domain name of the user. - """ return pulumi.get(self, "user_domain_name") @property @pulumi.getter(name="userId") def user_id(self) -> str: - """ - The user ID the of the scope. - """ return pulumi.get(self, "user_id") @property @pulumi.getter(name="userName") def user_name(self) -> str: - """ - The username of the scope. - """ return pulumi.get(self, "user_name") @@ -240,18 +195,6 @@ def get_auth_scope(name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAuthScopeResult: """ Use this data source to access information about an existing resource. - - :param str name: The name of the scope. This is an arbitrary name which is - only used as a unique identifier so an actual token isn't used as the ID. - :param str region: The region in which to obtain the V3 Identity client. - A Identity client is needed to retrieve tokens IDs. If omitted, the - `region` argument of the provider is used. - :param bool set_token_id: A boolean argument that determines whether to - export the current auth scope token ID. When set to `true`, the `token_id` - attribute will contain an unencrypted token that can be used for further API - calls. **Warning**: please note that the leaked token may allow unauthorized - access to other OpenStack services within the current auth scope, so use this - option with caution. """ __args__ = dict() __args__['name'] = name @@ -287,17 +230,5 @@ def get_auth_scope_output(name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAuthScopeResult]: """ Use this data source to access information about an existing resource. - - :param str name: The name of the scope. This is an arbitrary name which is - only used as a unique identifier so an actual token isn't used as the ID. - :param str region: The region in which to obtain the V3 Identity client. - A Identity client is needed to retrieve tokens IDs. If omitted, the - `region` argument of the provider is used. - :param bool set_token_id: A boolean argument that determines whether to - export the current auth scope token ID. When set to `true`, the `token_id` - attribute will contain an unencrypted token that can be used for further API - calls. **Warning**: please note that the leaked token may allow unauthorized - access to other OpenStack services within the current auth scope, so use this - option with caution. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_endpoint.py b/sdk/python/pulumi_openstack/identity/get_endpoint.py index f40999dad..ce82b51b2 100644 --- a/sdk/python/pulumi_openstack/identity/get_endpoint.py +++ b/sdk/python/pulumi_openstack/identity/get_endpoint.py @@ -53,9 +53,6 @@ def __init__(__self__, endpoint_region=None, id=None, interface=None, name=None, @property @pulumi.getter(name="endpointRegion") def endpoint_region(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "endpoint_region") @property @@ -69,57 +66,36 @@ def id(self) -> str: @property @pulumi.getter def interface(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "interface") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="serviceId") def service_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "service_id") @property @pulumi.getter(name="serviceName") def service_name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "service_name") @property @pulumi.getter(name="serviceType") def service_type(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "service_type") @property @pulumi.getter def url(self) -> str: - """ - The endpoint URL. - """ return pulumi.get(self, "url") @@ -149,30 +125,7 @@ def get_endpoint(endpoint_region: Optional[str] = None, service_type: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetEndpointResult: """ - Use this data source to get the ID of an OpenStack endpoint. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - endpoint1 = openstack.identity.get_endpoint(service_name="demo") - ``` - - - :param str endpoint_region: The region the endpoint is assigned to. The - `region` and `endpoint_region` can be different. - :param str interface: The endpoint interface. Valid values are `public`, - `internal`, and `admin`. Default value is `public` - :param str name: The name of the endpoint. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param str service_id: The service id this endpoint belongs to. - :param str service_name: The service name of the endpoint. - :param str service_type: The service type of the endpoint. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['endpointRegion'] = endpoint_region @@ -207,29 +160,6 @@ def get_endpoint_output(endpoint_region: Optional[pulumi.Input[Optional[str]]] = service_type: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetEndpointResult]: """ - Use this data source to get the ID of an OpenStack endpoint. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - endpoint1 = openstack.identity.get_endpoint(service_name="demo") - ``` - - - :param str endpoint_region: The region the endpoint is assigned to. The - `region` and `endpoint_region` can be different. - :param str interface: The endpoint interface. Valid values are `public`, - `internal`, and `admin`. Default value is `public` - :param str name: The name of the endpoint. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param str service_id: The service id this endpoint belongs to. - :param str service_name: The service name of the endpoint. - :param str service_type: The service type of the endpoint. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_group.py b/sdk/python/pulumi_openstack/identity/get_group.py index a707b3754..7f951e12d 100644 --- a/sdk/python/pulumi_openstack/identity/get_group.py +++ b/sdk/python/pulumi_openstack/identity/get_group.py @@ -41,17 +41,11 @@ def __init__(__self__, description=None, domain_id=None, id=None, name=None, reg @property @pulumi.getter def description(self) -> str: - """ - A description of the group. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "domain_id") @property @@ -65,17 +59,11 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -97,25 +85,7 @@ def get_group(domain_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetGroupResult: """ - Use this data source to get the ID of an OpenStack group. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - admins = openstack.identity.get_group(name="admins") - ``` - - - :param str domain_id: The domain the group belongs to. - :param str name: The name of the group. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['domainId'] = domain_id @@ -138,24 +108,6 @@ def get_group_output(domain_id: Optional[pulumi.Input[Optional[str]]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetGroupResult]: """ - Use this data source to get the ID of an OpenStack group. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - admins = openstack.identity.get_group(name="admins") - ``` - - - :param str domain_id: The domain the group belongs to. - :param str name: The name of the group. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_project.py b/sdk/python/pulumi_openstack/identity/get_project.py index acd76e0f8..277b3d497 100644 --- a/sdk/python/pulumi_openstack/identity/get_project.py +++ b/sdk/python/pulumi_openstack/identity/get_project.py @@ -56,25 +56,16 @@ def __init__(__self__, description=None, domain_id=None, enabled=None, id=None, @property @pulumi.getter def description(self) -> str: - """ - The description of the project. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def enabled(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "enabled") @property @@ -88,49 +79,31 @@ def id(self) -> str: @property @pulumi.getter(name="isDomain") def is_domain(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "is_domain") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="parentId") def parent_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "parent_id") @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - The region the project is located in. - """ return pulumi.get(self, "region") @property @pulumi.getter def tags(self) -> Sequence[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "tags") @@ -161,28 +134,7 @@ def get_project(domain_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetProjectResult: """ - Use this data source to get the ID of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.get_project(name="demo") - ``` - - - :param str domain_id: The domain this project belongs to. - :param bool enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. - :param bool is_domain: Whether this project is a domain. Valid values - are `true` and `false`. - :param str name: The name of the project. - :param str parent_id: The parent of this project. - :param str project_id: The id of the project. Conflicts with any of the - above arguments. - :param str region: The region the project is located in. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['domainId'] = domain_id @@ -218,27 +170,6 @@ def get_project_output(domain_id: Optional[pulumi.Input[Optional[str]]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetProjectResult]: """ - Use this data source to get the ID of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.get_project(name="demo") - ``` - - - :param str domain_id: The domain this project belongs to. - :param bool enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. - :param bool is_domain: Whether this project is a domain. Valid values - are `true` and `false`. - :param str name: The name of the project. - :param str parent_id: The parent of this project. - :param str project_id: The id of the project. Conflicts with any of the - above arguments. - :param str region: The region the project is located in. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_project_ids_v3.py b/sdk/python/pulumi_openstack/identity/get_project_ids_v3.py index 3bc17c365..6dc69405c 100644 --- a/sdk/python/pulumi_openstack/identity/get_project_ids_v3.py +++ b/sdk/python/pulumi_openstack/identity/get_project_ids_v3.py @@ -144,32 +144,7 @@ def get_project_ids_v3(domain_id: Optional[str] = None, tags: Optional[Sequence[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetProjectIdsV3Result: """ - Use this data source to get a list of OpenStack Project IDs matching the - specified criteria. - - > **Note:** You _must_ have domain admin or cloud admin privileges in your OpenStack cloud to use - this datasource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - projects = openstack.identity.get_project_ids_v3(name_regex="^prod.*") - ``` - - - :param str domain_id: The domain projects belongs to. - :param bool enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param str name: The name of the project. - :param str name_regex: The regular expression of the name of the project. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str parent_id: The parent of the project. - :param Sequence[str] tags: Tags for the project. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['domainId'] = domain_id @@ -208,31 +183,6 @@ def get_project_ids_v3_output(domain_id: Optional[pulumi.Input[Optional[str]]] = tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetProjectIdsV3Result]: """ - Use this data source to get a list of OpenStack Project IDs matching the - specified criteria. - - > **Note:** You _must_ have domain admin or cloud admin privileges in your OpenStack cloud to use - this datasource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - projects = openstack.identity.get_project_ids_v3(name_regex="^prod.*") - ``` - - - :param str domain_id: The domain projects belongs to. - :param bool enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param str name: The name of the project. - :param str name_regex: The regular expression of the name of the project. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str parent_id: The parent of the project. - :param Sequence[str] tags: Tags for the project. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_role.py b/sdk/python/pulumi_openstack/identity/get_role.py index d9ea3392a..e8cd9d25a 100644 --- a/sdk/python/pulumi_openstack/identity/get_role.py +++ b/sdk/python/pulumi_openstack/identity/get_role.py @@ -38,9 +38,6 @@ def __init__(__self__, domain_id=None, id=None, name=None, region=None): @property @pulumi.getter(name="domainId") def domain_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "domain_id") @property @@ -54,17 +51,11 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -85,22 +76,7 @@ def get_role(domain_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRoleResult: """ - Use this data source to get the ID of an OpenStack role. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - admin = openstack.identity.get_role(name="admin") - ``` - - - :param str domain_id: The domain the role belongs to. - :param str name: The name of the role. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['domainId'] = domain_id @@ -122,21 +98,6 @@ def get_role_output(domain_id: Optional[pulumi.Input[Optional[str]]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRoleResult]: """ - Use this data source to get the ID of an OpenStack role. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - admin = openstack.identity.get_role(name="admin") - ``` - - - :param str domain_id: The domain the role belongs to. - :param str name: The name of the role. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_service.py b/sdk/python/pulumi_openstack/identity/get_service.py index 4a8dae60f..23e5fae29 100644 --- a/sdk/python/pulumi_openstack/identity/get_service.py +++ b/sdk/python/pulumi_openstack/identity/get_service.py @@ -44,17 +44,11 @@ def __init__(__self__, description=None, enabled=None, id=None, name=None, regio @property @pulumi.getter def description(self) -> str: - """ - The service description. - """ return pulumi.get(self, "description") @property @pulumi.getter def enabled(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "enabled") @property @@ -68,25 +62,16 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def type(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "type") @@ -110,25 +95,7 @@ def get_service(enabled: Optional[bool] = None, type: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetServiceResult: """ - Use this data source to get the ID of an OpenStack service. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.get_service(name="keystone") - ``` - - - :param bool enabled: The service status. - :param str name: The service name. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param str type: The service type. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['enabled'] = enabled @@ -154,24 +121,6 @@ def get_service_output(enabled: Optional[pulumi.Input[Optional[bool]]] = None, type: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServiceResult]: """ - Use this data source to get the ID of an OpenStack service. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.get_service(name="keystone") - ``` - - - :param bool enabled: The service status. - :param str name: The service name. - :param str region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param str type: The service type. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/get_user.py b/sdk/python/pulumi_openstack/identity/get_user.py index d286afff3..0dbdc4776 100644 --- a/sdk/python/pulumi_openstack/identity/get_user.py +++ b/sdk/python/pulumi_openstack/identity/get_user.py @@ -59,33 +59,21 @@ def __init__(__self__, default_project_id=None, description=None, domain_id=None @property @pulumi.getter(name="defaultProjectId") def default_project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "default_project_id") @property @pulumi.getter def description(self) -> str: - """ - A description of the user. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def enabled(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "enabled") @property @@ -99,49 +87,31 @@ def id(self) -> str: @property @pulumi.getter(name="idpId") def idp_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "idp_id") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="passwordExpiresAt") def password_expires_at(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "password_expires_at") @property @pulumi.getter(name="protocolId") def protocol_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "protocol_id") @property @pulumi.getter def region(self) -> str: - """ - The region the user is located in. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="uniqueId") def unique_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "unique_id") @@ -174,27 +144,7 @@ def get_user(domain_id: Optional[str] = None, unique_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUserResult: """ - Use this data source to get the ID of an OpenStack user. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - user1 = openstack.identity.get_user(name="user_1") - ``` - - - :param str domain_id: The domain this user belongs to. - :param bool enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param str idp_id: The identity provider ID of the user. - :param str name: The name of the user. - :param str password_expires_at: Query for expired passwords. See the [OpenStack API docs](https://developer.openstack.org/api-ref/identity/v3/#list-users) for more information on the query format. - :param str protocol_id: The protocol ID of the user. - :param str region: The region the user is located in. - :param str unique_id: The unique ID of the user. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['domainId'] = domain_id @@ -233,26 +183,6 @@ def get_user_output(domain_id: Optional[pulumi.Input[Optional[str]]] = None, unique_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUserResult]: """ - Use this data source to get the ID of an OpenStack user. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - user1 = openstack.identity.get_user(name="user_1") - ``` - - - :param str domain_id: The domain this user belongs to. - :param bool enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param str idp_id: The identity provider ID of the user. - :param str name: The name of the user. - :param str password_expires_at: Query for expired passwords. See the [OpenStack API docs](https://developer.openstack.org/api-ref/identity/v3/#list-users) for more information on the query format. - :param str protocol_id: The protocol ID of the user. - :param str region: The region the user is located in. - :param str unique_id: The unique ID of the user. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/identity/group_v3.py b/sdk/python/pulumi_openstack/identity/group_v3.py index 93444020e..d381f043b 100644 --- a/sdk/python/pulumi_openstack/identity/group_v3.py +++ b/sdk/python/pulumi_openstack/identity/group_v3.py @@ -20,12 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a GroupV3 resource. - :param pulumi.Input[str] description: A description of the group. - :param pulumi.Input[str] domain_id: The domain the group belongs to. - :param pulumi.Input[str] name: The name of the group. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. """ if description is not None: pulumi.set(__self__, "description", description) @@ -39,9 +33,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the group. - """ return pulumi.get(self, "description") @description.setter @@ -51,9 +42,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain the group belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -63,9 +51,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the group. - """ return pulumi.get(self, "name") @name.setter @@ -75,11 +60,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. - """ return pulumi.get(self, "region") @region.setter @@ -96,12 +76,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering GroupV3 resources. - :param pulumi.Input[str] description: A description of the group. - :param pulumi.Input[str] domain_id: The domain the group belongs to. - :param pulumi.Input[str] name: The name of the group. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. """ if description is not None: pulumi.set(__self__, "description", description) @@ -115,9 +89,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the group. - """ return pulumi.get(self, "description") @description.setter @@ -127,9 +98,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain the group belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -139,9 +107,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the group. - """ return pulumi.get(self, "name") @name.setter @@ -151,11 +116,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. - """ return pulumi.get(self, "region") @region.setter @@ -174,38 +134,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 group resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group1 = openstack.identity.GroupV3("group_1", - name="group_1", - description="group 1") - ``` - - ## Import - - groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/groupV3:GroupV3 group_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a GroupV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A description of the group. - :param pulumi.Input[str] domain_id: The domain the group belongs to. - :param pulumi.Input[str] name: The name of the group. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. """ ... @overload @@ -214,30 +145,7 @@ def __init__(__self__, args: Optional[GroupV3Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 group resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group1 = openstack.identity.GroupV3("group_1", - name="group_1", - description="group 1") - ``` - - ## Import - - groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/groupV3:GroupV3 group_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a GroupV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param GroupV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -291,12 +199,6 @@ def get(resource_name: str, :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] description: A description of the group. - :param pulumi.Input[str] domain_id: The domain the group belongs to. - :param pulumi.Input[str] name: The name of the group. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -311,34 +213,20 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the group. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[str]: - """ - The domain the group belongs to. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the group. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new group. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/identity/inherit_role_assignment.py b/sdk/python/pulumi_openstack/identity/inherit_role_assignment.py index 6051a8e4d..1f92eb6cc 100644 --- a/sdk/python/pulumi_openstack/identity/inherit_role_assignment.py +++ b/sdk/python/pulumi_openstack/identity/inherit_role_assignment.py @@ -22,12 +22,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a InheritRoleAssignment resource. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - The project should be able to containt child projects. - :param pulumi.Input[str] user_id: The user to assign the role to. """ pulumi.set(__self__, "role_id", role_id) if domain_id is not None: @@ -44,9 +38,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="roleId") def role_id(self) -> pulumi.Input[str]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @role_id.setter @@ -56,9 +47,6 @@ def role_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -68,9 +56,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[pulumi.Input[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -80,10 +65,6 @@ def group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project to assign the role in. - The project should be able to containt child projects. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -102,9 +83,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -123,12 +101,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering InheritRoleAssignment resources. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - The project should be able to containt child projects. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ if domain_id is not None: pulumi.set(__self__, "domain_id", domain_id) @@ -146,9 +118,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -158,9 +127,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[pulumi.Input[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -170,10 +136,6 @@ def group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project to assign the role in. - The project should be able to containt child projects. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -192,9 +154,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="roleId") def role_id(self) -> Optional[pulumi.Input[str]]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @role_id.setter @@ -204,9 +163,6 @@ def role_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -227,55 +183,9 @@ def __init__(__self__, user_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 Inherit Role assignment within OpenStack Keystone. This uses the - Openstack keystone `OS-INHERIT` api to created inherit roles within domains - and parent projects for users and groups. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - user1 = openstack.identity.User("user_1", - name="user_1", - domain_id="default") - role1 = openstack.identity.Role("role_1", - name="role_1", - domain_id="default") - role_assignment1 = openstack.identity.InheritRoleAssignment("role_assignment_1", - user_id=user1.id, - domain_id="default", - role_id=role1.id) - ``` - - ## Import - - Inherit role assignments can be imported using a constructed id. The id should - have the form of `domainID/projectID/groupID/userID/roleID`. When something is - not used then leave blank. - - For example this will import the inherit role assignment for: - projectID: 014395cd-89fc-4c9b-96b7-13d1ee79dad2, - userID: 4142e64b-1b35-44a0-9b1e-5affc7af1106, - roleID: ea257959-eeb1-4c10-8d33-26f0409a755d - ( domainID and groupID are left blank) - - ```sh - $ pulumi import openstack:identity/inheritRoleAssignment:InheritRoleAssignment role_assignment_1 /014395cd-89fc-4c9b-96b7-13d1ee79dad2//4142e64b-1b35-44a0-9b1e-5affc7af1106/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a InheritRoleAssignment resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - The project should be able to containt child projects. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ ... @overload @@ -284,47 +194,7 @@ def __init__(__self__, args: InheritRoleAssignmentArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Inherit Role assignment within OpenStack Keystone. This uses the - Openstack keystone `OS-INHERIT` api to created inherit roles within domains - and parent projects for users and groups. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - user1 = openstack.identity.User("user_1", - name="user_1", - domain_id="default") - role1 = openstack.identity.Role("role_1", - name="role_1", - domain_id="default") - role_assignment1 = openstack.identity.InheritRoleAssignment("role_assignment_1", - user_id=user1.id, - domain_id="default", - role_id=role1.id) - ``` - - ## Import - - Inherit role assignments can be imported using a constructed id. The id should - have the form of `domainID/projectID/groupID/userID/roleID`. When something is - not used then leave blank. - - For example this will import the inherit role assignment for: - projectID: 014395cd-89fc-4c9b-96b7-13d1ee79dad2, - userID: 4142e64b-1b35-44a0-9b1e-5affc7af1106, - roleID: ea257959-eeb1-4c10-8d33-26f0409a755d - ( domainID and groupID are left blank) - - ```sh - $ pulumi import openstack:identity/inheritRoleAssignment:InheritRoleAssignment role_assignment_1 /014395cd-89fc-4c9b-96b7-13d1ee79dad2//4142e64b-1b35-44a0-9b1e-5affc7af1106/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a InheritRoleAssignment resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param InheritRoleAssignmentArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -386,12 +256,6 @@ def get(resource_name: str, :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] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - The project should be able to containt child projects. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -408,26 +272,16 @@ def get(resource_name: str, @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[Optional[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Output[Optional[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[Optional[str]]: - """ - The project to assign the role in. - The project should be able to containt child projects. - """ return pulumi.get(self, "project_id") @property @@ -438,16 +292,10 @@ def region(self) -> pulumi.Output[str]: @property @pulumi.getter(name="roleId") def role_id(self) -> pulumi.Output[str]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[Optional[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") diff --git a/sdk/python/pulumi_openstack/identity/outputs.py b/sdk/python/pulumi_openstack/identity/outputs.py index 52f96de00..6b82ab0f6 100644 --- a/sdk/python/pulumi_openstack/identity/outputs.py +++ b/sdk/python/pulumi_openstack/identity/outputs.py @@ -25,22 +25,6 @@ def __init__(__self__, *, path: str, service: str, id: Optional[str] = None): - """ - :param str method: The request method that the application credential is - permitted to use for a given API endpoint. Allowed values: `POST`, `GET`, - `HEAD`, `PATCH`, `PUT` and `DELETE`. - :param str path: The API path that the application credential is permitted - to access. May use named wildcards such as **{tag}** or the unnamed wildcard - **\\*** to match against any string in the path up to a **/**, or the recursive - wildcard **\\*\\*** to include **/** in the matched path. - :param str service: The service type identifier for the service that the - application credential is granted to access. Must be a service type that is - listed in the service catalog and not a code name for a service. E.g. - **identity**, **compute**, **volumev3**, **image**, **network**, - **object-store**, **sharev2**, **dns**, **key-manager**, **monitoring**, etc. - :param str id: The ID of the existing access rule. The access rule ID of - another application credential can be provided. - """ pulumi.set(__self__, "method", method) pulumi.set(__self__, "path", path) pulumi.set(__self__, "service", service) @@ -50,43 +34,21 @@ def __init__(__self__, *, @property @pulumi.getter def method(self) -> str: - """ - The request method that the application credential is - permitted to use for a given API endpoint. Allowed values: `POST`, `GET`, - `HEAD`, `PATCH`, `PUT` and `DELETE`. - """ return pulumi.get(self, "method") @property @pulumi.getter def path(self) -> str: - """ - The API path that the application credential is permitted - to access. May use named wildcards such as **{tag}** or the unnamed wildcard - **\\*** to match against any string in the path up to a **/**, or the recursive - wildcard **\\*\\*** to include **/** in the matched path. - """ return pulumi.get(self, "path") @property @pulumi.getter def service(self) -> str: - """ - The service type identifier for the service that the - application credential is granted to access. Must be a service type that is - listed in the service catalog and not a code name for a service. E.g. - **identity**, **compute**, **volumev3**, **image**, **network**, - **object-store**, **sharev2**, **dns**, **key-manager**, **monitoring**, etc. - """ return pulumi.get(self, "service") @property @pulumi.getter def id(self) -> Optional[str]: - """ - The ID of the existing access rule. The access rule ID of - another application credential can be provided. - """ return pulumi.get(self, "id") @@ -94,19 +56,11 @@ def id(self) -> Optional[str]: class UserMultiFactorAuthRule(dict): def __init__(__self__, *, rules: Sequence[str]): - """ - :param Sequence[str] rules: A list of authentication plugins that the user must - authenticate with. - """ pulumi.set(__self__, "rules", rules) @property @pulumi.getter def rules(self) -> Sequence[str]: - """ - A list of authentication plugins that the user must - authenticate with. - """ return pulumi.get(self, "rules") @@ -115,27 +69,17 @@ class GetAuthScopeRoleResult(dict): def __init__(__self__, *, role_id: str, role_name: str): - """ - :param str role_id: The ID of the role. - :param str role_name: The name of the role. - """ pulumi.set(__self__, "role_id", role_id) pulumi.set(__self__, "role_name", role_name) @property @pulumi.getter(name="roleId") def role_id(self) -> str: - """ - The ID of the role. - """ return pulumi.get(self, "role_id") @property @pulumi.getter(name="roleName") def role_name(self) -> str: - """ - The name of the role. - """ return pulumi.get(self, "role_name") @@ -146,13 +90,6 @@ def __init__(__self__, *, id: str, name: str, type: str): - """ - :param Sequence['GetAuthScopeServiceCatalogEndpointArgs'] endpoints: A list of endpoints for the service. - :param str id: The ID of the endpoint. - :param str name: The name of the scope. This is an arbitrary name which is - only used as a unique identifier so an actual token isn't used as the ID. - :param str type: The type of the service. - """ pulumi.set(__self__, "endpoints", endpoints) pulumi.set(__self__, "id", id) pulumi.set(__self__, "name", name) @@ -161,34 +98,21 @@ def __init__(__self__, *, @property @pulumi.getter def endpoints(self) -> Sequence['outputs.GetAuthScopeServiceCatalogEndpointResult']: - """ - A list of endpoints for the service. - """ return pulumi.get(self, "endpoints") @property @pulumi.getter def id(self) -> str: - """ - The ID of the endpoint. - """ return pulumi.get(self, "id") @property @pulumi.getter def name(self) -> str: - """ - The name of the scope. This is an arbitrary name which is - only used as a unique identifier so an actual token isn't used as the ID. - """ return pulumi.get(self, "name") @property @pulumi.getter def type(self) -> str: - """ - The type of the service. - """ return pulumi.get(self, "type") @@ -200,15 +124,6 @@ def __init__(__self__, *, region: str, region_id: str, url: str): - """ - :param str id: The ID of the endpoint. - :param str interface: The interface of the endpoint. - :param str region: The region in which to obtain the V3 Identity client. - A Identity client is needed to retrieve tokens IDs. If omitted, the - `region` argument of the provider is used. - :param str region_id: The region ID of the endpoint. - :param str url: The URL of the endpoint. - """ pulumi.set(__self__, "id", id) pulumi.set(__self__, "interface", interface) pulumi.set(__self__, "region", region) @@ -218,43 +133,26 @@ def __init__(__self__, *, @property @pulumi.getter def id(self) -> str: - """ - The ID of the endpoint. - """ return pulumi.get(self, "id") @property @pulumi.getter def interface(self) -> str: - """ - The interface of the endpoint. - """ return pulumi.get(self, "interface") @property @pulumi.getter def region(self) -> str: - """ - The region in which to obtain the V3 Identity client. - A Identity client is needed to retrieve tokens IDs. If omitted, the - `region` argument of the provider is used. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="regionId") def region_id(self) -> str: - """ - The region ID of the endpoint. - """ return pulumi.get(self, "region_id") @property @pulumi.getter def url(self) -> str: - """ - The URL of the endpoint. - """ return pulumi.get(self, "url") diff --git a/sdk/python/pulumi_openstack/identity/project.py b/sdk/python/pulumi_openstack/identity/project.py index f0ee3901c..1e102ec3f 100644 --- a/sdk/python/pulumi_openstack/identity/project.py +++ b/sdk/python/pulumi_openstack/identity/project.py @@ -24,21 +24,6 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Project resource. - :param pulumi.Input[str] description: A description of the project. - :param pulumi.Input[str] domain_id: The domain this project belongs to. - :param pulumi.Input[bool] enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param pulumi.Input[bool] is_domain: Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - :param pulumi.Input[str] name: The name of the project. - :param pulumi.Input[str] parent_id: The parent of this project. Changing this creates - a new project. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags for the project. Changing this updates the existing - project. """ if description is not None: pulumi.set(__self__, "description", description) @@ -60,9 +45,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the project. - """ return pulumi.get(self, "description") @description.setter @@ -72,9 +54,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain this project belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -84,10 +63,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -97,11 +72,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="isDomain") def is_domain(self) -> Optional[pulumi.Input[bool]]: - """ - Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - """ return pulumi.get(self, "is_domain") @is_domain.setter @@ -111,9 +81,6 @@ def is_domain(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the project. - """ return pulumi.get(self, "name") @name.setter @@ -123,10 +90,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="parentId") def parent_id(self) -> Optional[pulumi.Input[str]]: - """ - The parent of this project. Changing this creates - a new project. - """ return pulumi.get(self, "parent_id") @parent_id.setter @@ -136,11 +99,6 @@ def parent_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - """ return pulumi.get(self, "region") @region.setter @@ -150,10 +108,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Tags for the project. Changing this updates the existing - project. - """ return pulumi.get(self, "tags") @tags.setter @@ -174,21 +128,6 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Project resources. - :param pulumi.Input[str] description: A description of the project. - :param pulumi.Input[str] domain_id: The domain this project belongs to. - :param pulumi.Input[bool] enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param pulumi.Input[bool] is_domain: Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - :param pulumi.Input[str] name: The name of the project. - :param pulumi.Input[str] parent_id: The parent of this project. Changing this creates - a new project. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags for the project. Changing this updates the existing - project. """ if description is not None: pulumi.set(__self__, "description", description) @@ -210,9 +149,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the project. - """ return pulumi.get(self, "description") @description.setter @@ -222,9 +158,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain this project belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -234,10 +167,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -247,11 +176,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="isDomain") def is_domain(self) -> Optional[pulumi.Input[bool]]: - """ - Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - """ return pulumi.get(self, "is_domain") @is_domain.setter @@ -261,9 +185,6 @@ def is_domain(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the project. - """ return pulumi.get(self, "name") @name.setter @@ -273,10 +194,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="parentId") def parent_id(self) -> Optional[pulumi.Input[str]]: - """ - The parent of this project. Changing this creates - a new project. - """ return pulumi.get(self, "parent_id") @parent_id.setter @@ -286,11 +203,6 @@ def parent_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - """ return pulumi.get(self, "region") @region.setter @@ -300,10 +212,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Tags for the project. Changing this updates the existing - project. - """ return pulumi.get(self, "tags") @tags.setter @@ -326,47 +234,9 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V3 Project resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", - name="project_1", - description="A project") - ``` - - ## Import - - Projects can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/project:Project project_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Project resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A description of the project. - :param pulumi.Input[str] domain_id: The domain this project belongs to. - :param pulumi.Input[bool] enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param pulumi.Input[bool] is_domain: Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - :param pulumi.Input[str] name: The name of the project. - :param pulumi.Input[str] parent_id: The parent of this project. Changing this creates - a new project. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags for the project. Changing this updates the existing - project. """ ... @overload @@ -375,30 +245,7 @@ def __init__(__self__, args: Optional[ProjectArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Project resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", - name="project_1", - description="A project") - ``` - - ## Import - - Projects can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/project:Project project_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Project resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ProjectArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -464,21 +311,6 @@ def get(resource_name: str, :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] description: A description of the project. - :param pulumi.Input[str] domain_id: The domain this project belongs to. - :param pulumi.Input[bool] enabled: Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - :param pulumi.Input[bool] is_domain: Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - :param pulumi.Input[str] name: The name of the project. - :param pulumi.Input[str] parent_id: The parent of this project. Changing this creates - a new project. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags for the project. Changing this updates the existing - project. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -497,71 +329,40 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the project. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[str]: - """ - The domain this project belongs to. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Whether the project is enabled or disabled. Valid - values are `true` and `false`. Default is `true`. - """ return pulumi.get(self, "enabled") @property @pulumi.getter(name="isDomain") def is_domain(self) -> pulumi.Output[Optional[bool]]: - """ - Whether this project is a domain. Valid values - are `true` and `false`. Default is `false`. Changing this creates a new - project/domain. - """ return pulumi.get(self, "is_domain") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the project. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="parentId") def parent_id(self) -> pulumi.Output[str]: - """ - The parent of this project. Changing this creates - a new project. - """ return pulumi.get(self, "parent_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new project. - """ return pulumi.get(self, "region") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - Tags for the project. Changing this updates the existing - project. - """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_openstack/identity/role.py b/sdk/python/pulumi_openstack/identity/role.py index 8e7148976..4643ca55d 100644 --- a/sdk/python/pulumi_openstack/identity/role.py +++ b/sdk/python/pulumi_openstack/identity/role.py @@ -19,11 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Role resource. - :param pulumi.Input[str] domain_id: The domain the role belongs to. - :param pulumi.Input[str] name: The name of the role. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. """ if domain_id is not None: pulumi.set(__self__, "domain_id", domain_id) @@ -35,9 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain the role belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -47,9 +39,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the role. - """ return pulumi.get(self, "name") @name.setter @@ -59,11 +48,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. - """ return pulumi.get(self, "region") @region.setter @@ -79,11 +63,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Role resources. - :param pulumi.Input[str] domain_id: The domain the role belongs to. - :param pulumi.Input[str] name: The name of the role. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. """ if domain_id is not None: pulumi.set(__self__, "domain_id", domain_id) @@ -95,9 +74,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain the role belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -107,9 +83,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the role. - """ return pulumi.get(self, "name") @name.setter @@ -119,11 +92,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. - """ return pulumi.get(self, "region") @region.setter @@ -141,35 +109,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 Role resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - role1 = openstack.identity.Role("role_1", name="role_1") - ``` - - ## Import - - Roles can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/role:Role role_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Role resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] domain_id: The domain the role belongs to. - :param pulumi.Input[str] name: The name of the role. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. """ ... @overload @@ -178,28 +120,7 @@ def __init__(__self__, args: Optional[RoleArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Role resource within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - role1 = openstack.identity.Role("role_1", name="role_1") - ``` - - ## Import - - Roles can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/role:Role role_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Role resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RoleArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -250,11 +171,6 @@ def get(resource_name: str, :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] domain_id: The domain the role belongs to. - :param pulumi.Input[str] name: The name of the role. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -268,26 +184,15 @@ def get(resource_name: str, @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[str]: - """ - The domain the role belongs to. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the role. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new Role. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/identity/role_assignment.py b/sdk/python/pulumi_openstack/identity/role_assignment.py index fafd76f2b..7a7ac08d8 100644 --- a/sdk/python/pulumi_openstack/identity/role_assignment.py +++ b/sdk/python/pulumi_openstack/identity/role_assignment.py @@ -22,11 +22,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RoleAssignment resource. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - :param pulumi.Input[str] user_id: The user to assign the role to. """ pulumi.set(__self__, "role_id", role_id) if domain_id is not None: @@ -43,9 +38,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="roleId") def role_id(self) -> pulumi.Input[str]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @role_id.setter @@ -55,9 +47,6 @@ def role_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -67,9 +56,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[pulumi.Input[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -79,9 +65,6 @@ def group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project to assign the role in. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -100,9 +83,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -121,11 +101,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RoleAssignment resources. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ if domain_id is not None: pulumi.set(__self__, "domain_id", domain_id) @@ -143,9 +118,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -155,9 +127,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[pulumi.Input[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -167,9 +136,6 @@ def group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project to assign the role in. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -188,9 +154,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="roleId") def role_id(self) -> Optional[pulumi.Input[str]]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @role_id.setter @@ -200,9 +163,6 @@ def role_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -223,50 +183,9 @@ def __init__(__self__, user_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 Role assignment within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - name="user_1", - default_project_id=project1.id) - role1 = openstack.identity.Role("role_1", name="role_1") - role_assignment1 = openstack.identity.RoleAssignment("role_assignment_1", - user_id=user1.id, - project_id=project1.id, - role_id=role1.id) - ``` - - ## Import - - Role assignments can be imported using a constructed id. The id should have the form of - `domainID/projectID/groupID/userID/roleID`. When something is not used then leave blank. - - For example this will import the role assignment for: - projectID: 014395cd-89fc-4c9b-96b7-13d1ee79dad2, - userID: 4142e64b-1b35-44a0-9b1e-5affc7af1106, - roleID: ea257959-eeb1-4c10-8d33-26f0409a755d - ( domainID and groupID are left blank) - - ```sh - $ pulumi import openstack:identity/roleAssignment:RoleAssignment role_assignment_1 /014395cd-89fc-4c9b-96b7-13d1ee79dad2//4142e64b-1b35-44a0-9b1e-5affc7af1106/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a RoleAssignment resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ ... @overload @@ -275,43 +194,7 @@ def __init__(__self__, args: RoleAssignmentArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Role assignment within OpenStack Keystone. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - name="user_1", - default_project_id=project1.id) - role1 = openstack.identity.Role("role_1", name="role_1") - role_assignment1 = openstack.identity.RoleAssignment("role_assignment_1", - user_id=user1.id, - project_id=project1.id, - role_id=role1.id) - ``` - - ## Import - - Role assignments can be imported using a constructed id. The id should have the form of - `domainID/projectID/groupID/userID/roleID`. When something is not used then leave blank. - - For example this will import the role assignment for: - projectID: 014395cd-89fc-4c9b-96b7-13d1ee79dad2, - userID: 4142e64b-1b35-44a0-9b1e-5affc7af1106, - roleID: ea257959-eeb1-4c10-8d33-26f0409a755d - ( domainID and groupID are left blank) - - ```sh - $ pulumi import openstack:identity/roleAssignment:RoleAssignment role_assignment_1 /014395cd-89fc-4c9b-96b7-13d1ee79dad2//4142e64b-1b35-44a0-9b1e-5affc7af1106/ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a RoleAssignment resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RoleAssignmentArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -373,11 +256,6 @@ def get(resource_name: str, :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] domain_id: The domain to assign the role in. - :param pulumi.Input[str] group_id: The group to assign the role to. - :param pulumi.Input[str] project_id: The project to assign the role in. - :param pulumi.Input[str] role_id: The role to assign. - :param pulumi.Input[str] user_id: The user to assign the role to. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -394,25 +272,16 @@ def get(resource_name: str, @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[Optional[str]]: - """ - The domain to assign the role in. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Output[Optional[str]]: - """ - The group to assign the role to. - """ return pulumi.get(self, "group_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[Optional[str]]: - """ - The project to assign the role in. - """ return pulumi.get(self, "project_id") @property @@ -423,16 +292,10 @@ def region(self) -> pulumi.Output[str]: @property @pulumi.getter(name="roleId") def role_id(self) -> pulumi.Output[str]: - """ - The role to assign. - """ return pulumi.get(self, "role_id") @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[Optional[str]]: - """ - The user to assign the role to. - """ return pulumi.get(self, "user_id") diff --git a/sdk/python/pulumi_openstack/identity/service_v3.py b/sdk/python/pulumi_openstack/identity/service_v3.py index 3c47e0764..2e67188fc 100644 --- a/sdk/python/pulumi_openstack/identity/service_v3.py +++ b/sdk/python/pulumi_openstack/identity/service_v3.py @@ -21,12 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ServiceV3 resource. - :param pulumi.Input[str] type: The service type. - :param pulumi.Input[str] description: The service description. - :param pulumi.Input[bool] enabled: The service status. Defaults to `true`. - :param pulumi.Input[str] name: The service name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. """ pulumi.set(__self__, "type", type) if description is not None: @@ -41,9 +35,6 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The service type. - """ return pulumi.get(self, "type") @type.setter @@ -53,9 +44,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The service description. - """ return pulumi.get(self, "description") @description.setter @@ -65,9 +53,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - The service status. Defaults to `true`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -77,9 +62,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The service name. - """ return pulumi.get(self, "name") @name.setter @@ -89,10 +71,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @region.setter @@ -110,12 +88,6 @@ def __init__(__self__, *, type: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ServiceV3 resources. - :param pulumi.Input[str] description: The service description. - :param pulumi.Input[bool] enabled: The service status. Defaults to `true`. - :param pulumi.Input[str] name: The service name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] type: The service type. """ if description is not None: pulumi.set(__self__, "description", description) @@ -131,9 +103,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The service description. - """ return pulumi.get(self, "description") @description.setter @@ -143,9 +112,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - The service status. Defaults to `true`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -155,9 +121,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The service name. - """ return pulumi.get(self, "name") @name.setter @@ -167,10 +130,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @region.setter @@ -180,9 +139,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The service type. - """ return pulumi.get(self, "type") @type.setter @@ -202,37 +158,9 @@ def __init__(__self__, type: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 Service resource within OpenStack Keystone. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.ServiceV3("service_1", - name="custom", - type="custom") - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/serviceV3:ServiceV3 service_1 6688e967-158a-496f-a224-cae3414e6b61 - ``` - + Create a ServiceV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The service description. - :param pulumi.Input[bool] enabled: The service status. Defaults to `true`. - :param pulumi.Input[str] name: The service name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] type: The service type. """ ... @overload @@ -241,29 +169,7 @@ def __init__(__self__, args: ServiceV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 Service resource within OpenStack Keystone. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.identity.ServiceV3("service_1", - name="custom", - type="custom") - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/serviceV3:ServiceV3 service_1 6688e967-158a-496f-a224-cae3414e6b61 - ``` - + Create a ServiceV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ServiceV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -322,12 +228,6 @@ def get(resource_name: str, :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] description: The service description. - :param pulumi.Input[bool] enabled: The service status. Defaults to `true`. - :param pulumi.Input[str] name: The service name. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - :param pulumi.Input[str] type: The service type. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -343,41 +243,25 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The service description. - """ return pulumi.get(self, "description") @property @pulumi.getter def enabled(self) -> pulumi.Output[Optional[bool]]: - """ - The service status. Defaults to `true`. - """ return pulumi.get(self, "enabled") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The service name. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. - """ return pulumi.get(self, "region") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The service type. - """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_openstack/identity/user.py b/sdk/python/pulumi_openstack/identity/user.py index 0e42c74fc..b623040b5 100644 --- a/sdk/python/pulumi_openstack/identity/user.py +++ b/sdk/python/pulumi_openstack/identity/user.py @@ -31,29 +31,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a User resource. - :param pulumi.Input[str] default_project_id: The default project this user belongs to. - :param pulumi.Input[str] description: A description of the user. - :param pulumi.Input[str] domain_id: The domain this user belongs to. - :param pulumi.Input[bool] enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra: Free-form key/value pairs of extra information. - :param pulumi.Input[bool] ignore_change_password_upon_first_use: User will not have to - change their password upon first use. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_lockout_failure_attempts: User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_password_expiry: User's password will not expire. - Valid values are `true` and `false`. - :param pulumi.Input[bool] multi_factor_auth_enabled: Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - :param pulumi.Input[Sequence[pulumi.Input['UserMultiFactorAuthRuleArgs']]] multi_factor_auth_rules: A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - :param pulumi.Input[str] name: The name of the user. - :param pulumi.Input[str] password: The password for the user. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. """ if default_project_id is not None: pulumi.set(__self__, "default_project_id", default_project_id) @@ -85,9 +62,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="defaultProjectId") def default_project_id(self) -> Optional[pulumi.Input[str]]: - """ - The default project this user belongs to. - """ return pulumi.get(self, "default_project_id") @default_project_id.setter @@ -97,9 +71,6 @@ def default_project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the user. - """ return pulumi.get(self, "description") @description.setter @@ -109,9 +80,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain this user belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -121,10 +89,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the user is enabled or disabled. Valid - values are `true` and `false`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -134,9 +98,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def extra(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Free-form key/value pairs of extra information. - """ return pulumi.get(self, "extra") @extra.setter @@ -146,10 +107,6 @@ def extra(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): @property @pulumi.getter(name="ignoreChangePasswordUponFirstUse") def ignore_change_password_upon_first_use(self) -> Optional[pulumi.Input[bool]]: - """ - User will not have to - change their password upon first use. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_change_password_upon_first_use") @ignore_change_password_upon_first_use.setter @@ -159,10 +116,6 @@ def ignore_change_password_upon_first_use(self, value: Optional[pulumi.Input[boo @property @pulumi.getter(name="ignoreLockoutFailureAttempts") def ignore_lockout_failure_attempts(self) -> Optional[pulumi.Input[bool]]: - """ - User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_lockout_failure_attempts") @ignore_lockout_failure_attempts.setter @@ -172,10 +125,6 @@ def ignore_lockout_failure_attempts(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ignorePasswordExpiry") def ignore_password_expiry(self) -> Optional[pulumi.Input[bool]]: - """ - User's password will not expire. - Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_password_expiry") @ignore_password_expiry.setter @@ -185,10 +134,6 @@ def ignore_password_expiry(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="multiFactorAuthEnabled") def multi_factor_auth_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - """ return pulumi.get(self, "multi_factor_auth_enabled") @multi_factor_auth_enabled.setter @@ -198,12 +143,6 @@ def multi_factor_auth_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="multiFactorAuthRules") def multi_factor_auth_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserMultiFactorAuthRuleArgs']]]]: - """ - A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - """ return pulumi.get(self, "multi_factor_auth_rules") @multi_factor_auth_rules.setter @@ -213,9 +152,6 @@ def multi_factor_auth_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the user. - """ return pulumi.get(self, "name") @name.setter @@ -225,9 +161,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - The password for the user. - """ return pulumi.get(self, "password") @password.setter @@ -237,11 +170,6 @@ def password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. - """ return pulumi.get(self, "region") @region.setter @@ -267,29 +195,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering User resources. - :param pulumi.Input[str] default_project_id: The default project this user belongs to. - :param pulumi.Input[str] description: A description of the user. - :param pulumi.Input[str] domain_id: The domain this user belongs to. - :param pulumi.Input[bool] enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra: Free-form key/value pairs of extra information. - :param pulumi.Input[bool] ignore_change_password_upon_first_use: User will not have to - change their password upon first use. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_lockout_failure_attempts: User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_password_expiry: User's password will not expire. - Valid values are `true` and `false`. - :param pulumi.Input[bool] multi_factor_auth_enabled: Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - :param pulumi.Input[Sequence[pulumi.Input['UserMultiFactorAuthRuleArgs']]] multi_factor_auth_rules: A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - :param pulumi.Input[str] name: The name of the user. - :param pulumi.Input[str] password: The password for the user. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. """ if default_project_id is not None: pulumi.set(__self__, "default_project_id", default_project_id) @@ -321,9 +226,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="defaultProjectId") def default_project_id(self) -> Optional[pulumi.Input[str]]: - """ - The default project this user belongs to. - """ return pulumi.get(self, "default_project_id") @default_project_id.setter @@ -333,9 +235,6 @@ def default_project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the user. - """ return pulumi.get(self, "description") @description.setter @@ -345,9 +244,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="domainId") def domain_id(self) -> Optional[pulumi.Input[str]]: - """ - The domain this user belongs to. - """ return pulumi.get(self, "domain_id") @domain_id.setter @@ -357,10 +253,6 @@ def domain_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the user is enabled or disabled. Valid - values are `true` and `false`. - """ return pulumi.get(self, "enabled") @enabled.setter @@ -370,9 +262,6 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def extra(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Free-form key/value pairs of extra information. - """ return pulumi.get(self, "extra") @extra.setter @@ -382,10 +271,6 @@ def extra(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): @property @pulumi.getter(name="ignoreChangePasswordUponFirstUse") def ignore_change_password_upon_first_use(self) -> Optional[pulumi.Input[bool]]: - """ - User will not have to - change their password upon first use. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_change_password_upon_first_use") @ignore_change_password_upon_first_use.setter @@ -395,10 +280,6 @@ def ignore_change_password_upon_first_use(self, value: Optional[pulumi.Input[boo @property @pulumi.getter(name="ignoreLockoutFailureAttempts") def ignore_lockout_failure_attempts(self) -> Optional[pulumi.Input[bool]]: - """ - User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_lockout_failure_attempts") @ignore_lockout_failure_attempts.setter @@ -408,10 +289,6 @@ def ignore_lockout_failure_attempts(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="ignorePasswordExpiry") def ignore_password_expiry(self) -> Optional[pulumi.Input[bool]]: - """ - User's password will not expire. - Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_password_expiry") @ignore_password_expiry.setter @@ -421,10 +298,6 @@ def ignore_password_expiry(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="multiFactorAuthEnabled") def multi_factor_auth_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - """ return pulumi.get(self, "multi_factor_auth_enabled") @multi_factor_auth_enabled.setter @@ -434,12 +307,6 @@ def multi_factor_auth_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="multiFactorAuthRules") def multi_factor_auth_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserMultiFactorAuthRuleArgs']]]]: - """ - A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - """ return pulumi.get(self, "multi_factor_auth_rules") @multi_factor_auth_rules.setter @@ -449,9 +316,6 @@ def multi_factor_auth_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the user. - """ return pulumi.get(self, "name") @name.setter @@ -461,9 +325,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - The password for the user. - """ return pulumi.get(self, "password") @password.setter @@ -473,11 +334,6 @@ def password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. - """ return pulumi.get(self, "region") @region.setter @@ -505,78 +361,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V3 User resource within OpenStack Keystone. - - > **Note:** All arguments including the user password will be stored in the - raw state as plain-text. Read more about sensitive data in - state. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - default_project_id=project1.id, - name="user_1", - description="A user", - password="password123", - ignore_change_password_upon_first_use=True, - multi_factor_auth_enabled=True, - multi_factor_auth_rules=[ - { - "rules": [ - "password", - "totp", - ], - }, - { - "rules": ["password"], - }, - ], - extra={ - "email": "user_1@foobar.com", - }) - ``` - - ## Import - - Users can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/user:User user_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a User resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] default_project_id: The default project this user belongs to. - :param pulumi.Input[str] description: A description of the user. - :param pulumi.Input[str] domain_id: The domain this user belongs to. - :param pulumi.Input[bool] enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra: Free-form key/value pairs of extra information. - :param pulumi.Input[bool] ignore_change_password_upon_first_use: User will not have to - change their password upon first use. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_lockout_failure_attempts: User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_password_expiry: User's password will not expire. - Valid values are `true` and `false`. - :param pulumi.Input[bool] multi_factor_auth_enabled: Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - :param pulumi.Input[Sequence[pulumi.Input[Union['UserMultiFactorAuthRuleArgs', 'UserMultiFactorAuthRuleArgsDict']]]] multi_factor_auth_rules: A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - :param pulumi.Input[str] name: The name of the user. - :param pulumi.Input[str] password: The password for the user. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. """ ... @overload @@ -585,53 +372,7 @@ def __init__(__self__, args: Optional[UserArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V3 User resource within OpenStack Keystone. - - > **Note:** All arguments including the user password will be stored in the - raw state as plain-text. Read more about sensitive data in - state. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - default_project_id=project1.id, - name="user_1", - description="A user", - password="password123", - ignore_change_password_upon_first_use=True, - multi_factor_auth_enabled=True, - multi_factor_auth_rules=[ - { - "rules": [ - "password", - "totp", - ], - }, - { - "rules": ["password"], - }, - ], - extra={ - "email": "user_1@foobar.com", - }) - ``` - - ## Import - - Users can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:identity/user:User user_1 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a User resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param UserArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -714,29 +455,6 @@ def get(resource_name: str, :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] default_project_id: The default project this user belongs to. - :param pulumi.Input[str] description: A description of the user. - :param pulumi.Input[str] domain_id: The domain this user belongs to. - :param pulumi.Input[bool] enabled: Whether the user is enabled or disabled. Valid - values are `true` and `false`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] extra: Free-form key/value pairs of extra information. - :param pulumi.Input[bool] ignore_change_password_upon_first_use: User will not have to - change their password upon first use. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_lockout_failure_attempts: User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - :param pulumi.Input[bool] ignore_password_expiry: User's password will not expire. - Valid values are `true` and `false`. - :param pulumi.Input[bool] multi_factor_auth_enabled: Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - :param pulumi.Input[Sequence[pulumi.Input[Union['UserMultiFactorAuthRuleArgs', 'UserMultiFactorAuthRuleArgsDict']]]] multi_factor_auth_rules: A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - :param pulumi.Input[str] name: The name of the user. - :param pulumi.Input[str] password: The password for the user. - :param pulumi.Input[str] region: The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -760,114 +478,65 @@ def get(resource_name: str, @property @pulumi.getter(name="defaultProjectId") def default_project_id(self) -> pulumi.Output[str]: - """ - The default project this user belongs to. - """ return pulumi.get(self, "default_project_id") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the user. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="domainId") def domain_id(self) -> pulumi.Output[str]: - """ - The domain this user belongs to. - """ return pulumi.get(self, "domain_id") @property @pulumi.getter def enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Whether the user is enabled or disabled. Valid - values are `true` and `false`. - """ return pulumi.get(self, "enabled") @property @pulumi.getter def extra(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Free-form key/value pairs of extra information. - """ return pulumi.get(self, "extra") @property @pulumi.getter(name="ignoreChangePasswordUponFirstUse") def ignore_change_password_upon_first_use(self) -> pulumi.Output[Optional[bool]]: - """ - User will not have to - change their password upon first use. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_change_password_upon_first_use") @property @pulumi.getter(name="ignoreLockoutFailureAttempts") def ignore_lockout_failure_attempts(self) -> pulumi.Output[Optional[bool]]: - """ - User will not have a failure - lockout placed on their account. Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_lockout_failure_attempts") @property @pulumi.getter(name="ignorePasswordExpiry") def ignore_password_expiry(self) -> pulumi.Output[Optional[bool]]: - """ - User's password will not expire. - Valid values are `true` and `false`. - """ return pulumi.get(self, "ignore_password_expiry") @property @pulumi.getter(name="multiFactorAuthEnabled") def multi_factor_auth_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to enable multi-factor - authentication. Valid values are `true` and `false`. - """ return pulumi.get(self, "multi_factor_auth_enabled") @property @pulumi.getter(name="multiFactorAuthRules") def multi_factor_auth_rules(self) -> pulumi.Output[Optional[Sequence['outputs.UserMultiFactorAuthRule']]]: - """ - A multi-factor authentication rule. - The structure is documented below. Please see the - [Ocata release notes](https://docs.openstack.org/releasenotes/keystone/ocata.html) - for more information on how to use mulit-factor rules. - """ return pulumi.get(self, "multi_factor_auth_rules") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the user. - """ return pulumi.get(self, "name") @property @pulumi.getter def password(self) -> pulumi.Output[Optional[str]]: - """ - The password for the user. - """ return pulumi.get(self, "password") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Keystone client. - If omitted, the `region` argument of the provider is used. Changing this - creates a new User. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/identity/user_membership_v3.py b/sdk/python/pulumi_openstack/identity/user_membership_v3.py index e64d8b81c..35ba8da85 100644 --- a/sdk/python/pulumi_openstack/identity/user_membership_v3.py +++ b/sdk/python/pulumi_openstack/identity/user_membership_v3.py @@ -19,12 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a UserMembershipV3 resource. - :param pulumi.Input[str] group_id: The UUID of group to which the user will be added. - Changing this creates a new user membership. - :param pulumi.Input[str] user_id: The UUID of user to use. Changing this creates a new user membership. - :param pulumi.Input[str] region: The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. """ pulumi.set(__self__, "group_id", group_id) pulumi.set(__self__, "user_id", user_id) @@ -34,10 +28,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Input[str]: - """ - The UUID of group to which the user will be added. - Changing this creates a new user membership. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -47,9 +37,6 @@ def group_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Input[str]: - """ - The UUID of user to use. Changing this creates a new user membership. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -59,11 +46,6 @@ def user_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - """ return pulumi.get(self, "region") @region.setter @@ -79,12 +61,6 @@ def __init__(__self__, *, user_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering UserMembershipV3 resources. - :param pulumi.Input[str] group_id: The UUID of group to which the user will be added. - Changing this creates a new user membership. - :param pulumi.Input[str] region: The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - :param pulumi.Input[str] user_id: The UUID of user to use. Changing this creates a new user membership. """ if group_id is not None: pulumi.set(__self__, "group_id", group_id) @@ -96,10 +72,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="groupId") def group_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of group to which the user will be added. - Changing this creates a new user membership. - """ return pulumi.get(self, "group_id") @group_id.setter @@ -109,11 +81,6 @@ def group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - """ return pulumi.get(self, "region") @region.setter @@ -123,9 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="userId") def user_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of user to use. Changing this creates a new user membership. - """ return pulumi.get(self, "user_id") @user_id.setter @@ -143,53 +107,9 @@ def __init__(__self__, user_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a user membership to group V3 resource within OpenStack. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - *** - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - name="user_1", - default_project_id=project1.id) - group1 = openstack.identity.GroupV3("group_1", - name="group_1", - description="group 1") - role1 = openstack.identity.Role("role_1", name="role_1") - user_membership1 = openstack.identity.UserMembershipV3("user_membership_1", - user_id=user1.id, - group_id=group1.id) - role_assignment1 = openstack.identity.RoleAssignment("role_assignment_1", - group_id=group1.id, - project_id=project1.id, - role_id=role1.id) - ``` - - ## Import - - This resource can be imported by specifying all two arguments, separated - by a forward slash: - - ```sh - $ pulumi import openstack:identity/userMembershipV3:UserMembershipV3 user_membership_1 user_id/group_id - ``` - + Create a UserMembershipV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] group_id: The UUID of group to which the user will be added. - Changing this creates a new user membership. - :param pulumi.Input[str] region: The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - :param pulumi.Input[str] user_id: The UUID of user to use. Changing this creates a new user membership. """ ... @overload @@ -198,45 +118,7 @@ def __init__(__self__, args: UserMembershipV3Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a user membership to group V3 resource within OpenStack. - - > **Note:** You _must_ have admin privileges in your OpenStack cloud to use - this resource. - - *** - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - user1 = openstack.identity.User("user_1", - name="user_1", - default_project_id=project1.id) - group1 = openstack.identity.GroupV3("group_1", - name="group_1", - description="group 1") - role1 = openstack.identity.Role("role_1", name="role_1") - user_membership1 = openstack.identity.UserMembershipV3("user_membership_1", - user_id=user1.id, - group_id=group1.id) - role_assignment1 = openstack.identity.RoleAssignment("role_assignment_1", - group_id=group1.id, - project_id=project1.id, - role_id=role1.id) - ``` - - ## Import - - This resource can be imported by specifying all two arguments, separated - by a forward slash: - - ```sh - $ pulumi import openstack:identity/userMembershipV3:UserMembershipV3 user_membership_1 user_id/group_id - ``` - + Create a UserMembershipV3 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param UserMembershipV3Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -291,12 +173,6 @@ def get(resource_name: str, :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] group_id: The UUID of group to which the user will be added. - Changing this creates a new user membership. - :param pulumi.Input[str] region: The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - :param pulumi.Input[str] user_id: The UUID of user to use. Changing this creates a new user membership. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -310,27 +186,15 @@ def get(resource_name: str, @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Output[str]: - """ - The UUID of group to which the user will be added. - Changing this creates a new user membership. - """ return pulumi.get(self, "group_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V3 Identity client. - If omitted, the `region` argument of the provider is used. - Changing this creates a new user membership. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="userId") def user_id(self) -> pulumi.Output[str]: - """ - The UUID of user to use. Changing this creates a new user membership. - """ return pulumi.get(self, "user_id") diff --git a/sdk/python/pulumi_openstack/images/get_image.py b/sdk/python/pulumi_openstack/images/get_image.py index 94c340fc7..daf0c345a 100644 --- a/sdk/python/pulumi_openstack/images/get_image.py +++ b/sdk/python/pulumi_openstack/images/get_image.py @@ -107,42 +107,26 @@ def __init__(__self__, checksum=None, container_format=None, created_at=None, di @property @pulumi.getter def checksum(self) -> str: - """ - The checksum of the data associated with the image. - """ return pulumi.get(self, "checksum") @property @pulumi.getter(name="containerFormat") def container_format(self) -> Optional[str]: - """ - The format of the image's container. - """ return pulumi.get(self, "container_format") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The date the image was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="diskFormat") def disk_format(self) -> Optional[str]: - """ - The format of the image's disk. - """ return pulumi.get(self, "disk_format") @property @pulumi.getter def file(self) -> str: - """ - the trailing path after the glance endpoint that represent the - location of the image or the path to retrieve it. - """ return pulumi.get(self, "file") @property @@ -166,27 +150,16 @@ def member_status(self) -> Optional[str]: @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - The metadata associated with the image. Image metadata allow for - meaningfully define the image properties and tags. See - https://docs.openstack.org/glance/latest/user/metadefs-concepts.html. - """ return pulumi.get(self, "metadata") @property @pulumi.getter(name="minDiskGb") def min_disk_gb(self) -> int: - """ - The minimum amount of disk space required to use the image. - """ return pulumi.get(self, "min_disk_gb") @property @pulumi.getter(name="minRamMb") def min_ram_mb(self) -> int: - """ - The minimum amount of ram required to use the image. - """ return pulumi.get(self, "min_ram_mb") @property @@ -212,17 +185,11 @@ def owner(self) -> Optional[str]: @property @pulumi.getter def properties(self) -> Optional[Mapping[str, str]]: - """ - Freeform information about the image. - """ return pulumi.get(self, "properties") @property @pulumi.getter def protected(self) -> bool: - """ - Whether or not the image is protected. - """ return pulumi.get(self, "protected") @property @@ -233,17 +200,11 @@ def region(self) -> str: @property @pulumi.getter def schema(self) -> str: - """ - The path to the JSON-schema that represent the image - """ return pulumi.get(self, "schema") @property @pulumi.getter(name="sizeBytes") def size_bytes(self) -> int: - """ - The size of the image (in bytes). - """ return pulumi.get(self, "size_bytes") @property @@ -269,17 +230,11 @@ def tag(self) -> Optional[str]: @property @pulumi.getter def tags(self) -> Sequence[str]: - """ - The tags list of the image. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The date the image was last updated. - """ return pulumi.get(self, "updated_at") @property @@ -341,56 +296,7 @@ def get_image(container_format: Optional[str] = None, visibility: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetImageResult: """ - Use this data source to get the ID of an available OpenStack image. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - ubuntu = openstack.images.get_image(name="Ubuntu 16.04", - most_recent=True, - properties={ - "key": "value", - }) - ``` - - - :param str container_format: The container format of the image. - :param str disk_format: The disk format of the image. - :param bool hidden: Whether or not the image is hidden from public list. - :param str member_status: The status of the image. Must be one of - "accepted", "pending", "rejected", or "all". - :param bool most_recent: If more than one result is returned, use the most - recent image. - :param str name: The name of the image. Cannot be used simultaneously with - `name_regex`. - :param str name_regex: The regular expressian of the name of the image. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str owner: The owner (UUID) of the image. - :param Mapping[str, str] properties: a map of key/value pairs to match an image with. - All specified properties must be matched. Unlike other options filtering by - `properties` does by client on the result of OpenStack search query. - Filtering is applied if server responce contains at least 2 images. In case - there is only one image the `properties` ignores. - :param str region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. - :param int size_max: The maximum size (in bytes) of the image to return. - :param int size_min: The minimum size (in bytes) of the image to return. - :param str sort: Sorts the response by one or more attribute and sort - direction combinations. You can also set multiple sort keys and directions. - Default direction is `desc`. Use the comma (,) character to separate multiple - values. For example expression `sort = "name:asc,status"` sorts ascending by - name and descending by status. - :param str tag: Search for images with a specific tag. - :param Sequence[str] tags: A list of tags required to be set on the image (all - specified tags must be in the images tag list for it to be matched). - :param str visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". Defaults to "private". + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['containerFormat'] = container_format @@ -461,55 +367,6 @@ def get_image_output(container_format: Optional[pulumi.Input[Optional[str]]] = N visibility: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImageResult]: """ - Use this data source to get the ID of an available OpenStack image. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - ubuntu = openstack.images.get_image(name="Ubuntu 16.04", - most_recent=True, - properties={ - "key": "value", - }) - ``` - - - :param str container_format: The container format of the image. - :param str disk_format: The disk format of the image. - :param bool hidden: Whether or not the image is hidden from public list. - :param str member_status: The status of the image. Must be one of - "accepted", "pending", "rejected", or "all". - :param bool most_recent: If more than one result is returned, use the most - recent image. - :param str name: The name of the image. Cannot be used simultaneously with - `name_regex`. - :param str name_regex: The regular expressian of the name of the image. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str owner: The owner (UUID) of the image. - :param Mapping[str, str] properties: a map of key/value pairs to match an image with. - All specified properties must be matched. Unlike other options filtering by - `properties` does by client on the result of OpenStack search query. - Filtering is applied if server responce contains at least 2 images. In case - there is only one image the `properties` ignores. - :param str region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. - :param int size_max: The maximum size (in bytes) of the image to return. - :param int size_min: The minimum size (in bytes) of the image to return. - :param str sort: Sorts the response by one or more attribute and sort - direction combinations. You can also set multiple sort keys and directions. - Default direction is `desc`. Use the comma (,) character to separate multiple - values. For example expression `sort = "name:asc,status"` sorts ascending by - name and descending by status. - :param str tag: Search for images with a specific tag. - :param Sequence[str] tags: A list of tags required to be set on the image (all - specified tags must be in the images tag list for it to be matched). - :param str visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". Defaults to "private". + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/images/get_image_ids.py b/sdk/python/pulumi_openstack/images/get_image_ids.py index 3a5c5edd6..67135f974 100644 --- a/sdk/python/pulumi_openstack/images/get_image_ids.py +++ b/sdk/python/pulumi_openstack/images/get_image_ids.py @@ -205,53 +205,7 @@ def get_image_ids(container_format: Optional[str] = None, visibility: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetImageIdsResult: """ - Use this data source to get a list of Openstack Image IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - images = openstack.images.get_image_ids(name_regex="^Ubuntu 16\\\\.04.*-amd64", - sort="updated_at", - properties={ - "key": "value", - }) - ``` - - - :param str container_format: The container format of the image. - :param str disk_format: The disk format of the image. - :param bool hidden: Whether or not the image is hidden from public list. - :param str member_status: The status of the image. Must be one of - "accepted", "pending", "rejected", or "all". - :param str name: The name of the image. Cannot be used simultaneously with - `name_regex`. - :param str name_regex: The regular expressian of the name of the image. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str owner: The owner (UUID) of the image. - :param Mapping[str, str] properties: a map of key/value pairs to match an image with. - All specified properties must be matched. Unlike other options filtering by - `properties` does by client on the result of OpenStack search query. - :param str region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. - :param int size_max: The maximum size (in bytes) of the image to return. - :param int size_min: The minimum size (in bytes) of the image to return. - :param str sort: Sorts the response by one or more attribute and sort - direction combinations. You can also set multiple sort keys and directions. - Default direction is `desc`. Use the comma (,) character to separate multiple - values. For example expression `sort = "name:asc,status"` sorts ascending by - name and descending by status. - :param str tag: Search for images with a specific tag. - :param Sequence[str] tags: A list of tags required to be set on the image (all - specified tags must be in the images tag list for it to be matched). - :param str visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". Defaults to "private". + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['containerFormat'] = container_format @@ -310,52 +264,6 @@ def get_image_ids_output(container_format: Optional[pulumi.Input[Optional[str]]] visibility: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImageIdsResult]: """ - Use this data source to get a list of Openstack Image IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - images = openstack.images.get_image_ids(name_regex="^Ubuntu 16\\\\.04.*-amd64", - sort="updated_at", - properties={ - "key": "value", - }) - ``` - - - :param str container_format: The container format of the image. - :param str disk_format: The disk format of the image. - :param bool hidden: Whether or not the image is hidden from public list. - :param str member_status: The status of the image. Must be one of - "accepted", "pending", "rejected", or "all". - :param str name: The name of the image. Cannot be used simultaneously with - `name_regex`. - :param str name_regex: The regular expressian of the name of the image. - Cannot be used simultaneously with `name`. Unlike filtering by `name` the - `name_regex` filtering does by client on the result of OpenStack search - query. - :param str owner: The owner (UUID) of the image. - :param Mapping[str, str] properties: a map of key/value pairs to match an image with. - All specified properties must be matched. Unlike other options filtering by - `properties` does by client on the result of OpenStack search query. - :param str region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. - :param int size_max: The maximum size (in bytes) of the image to return. - :param int size_min: The minimum size (in bytes) of the image to return. - :param str sort: Sorts the response by one or more attribute and sort - direction combinations. You can also set multiple sort keys and directions. - Default direction is `desc`. Use the comma (,) character to separate multiple - values. For example expression `sort = "name:asc,status"` sorts ascending by - name and descending by status. - :param str tag: Search for images with a specific tag. - :param Sequence[str] tags: A list of tags required to be set on the image (all - specified tags must be in the images tag list for it to be matched). - :param str visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". Defaults to "private". + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/images/image.py b/sdk/python/pulumi_openstack/images/image.py index 22f6b13de..031994b89 100644 --- a/sdk/python/pulumi_openstack/images/image.py +++ b/sdk/python/pulumi_openstack/images/image.py @@ -36,55 +36,6 @@ def __init__(__self__, *, web_download: Optional[pulumi.Input[bool]] = None): """ The set of arguments for constructing a Image resource. - :param pulumi.Input[str] container_format: The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - :param pulumi.Input[str] disk_format: The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - :param pulumi.Input[bool] decompress: If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - :param pulumi.Input[bool] hidden: If true, image will be hidden from public list. - Defaults to false. - :param pulumi.Input[str] image_id: Unique ID (valid UUID) of image to create. Changing - this creates a new image. - :param pulumi.Input[str] image_source_password: The password of basic auth to download - `image_source_url`. - :param pulumi.Input[str] image_source_url: This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - :param pulumi.Input[str] image_source_username: The username of basic auth to download - `image_source_url`. - :param pulumi.Input[str] local_file_path: This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - :param pulumi.Input[int] min_disk_gb: Amount of disk space (in GB) required to boot - image. Defaults to 0. - :param pulumi.Input[int] min_ram_mb: Amount of ram (in MB) required to boot image. - Defauts to 0. - :param pulumi.Input[str] name: The name of the image. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] properties: A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - :param pulumi.Input[bool] protected: If true, image will not be deletable. Defaults to - false. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - :param pulumi.Input[bool] verify_checksum: If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - :param pulumi.Input[str] visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - :param pulumi.Input[bool] web_download: If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. """ pulumi.set(__self__, "container_format", container_format) pulumi.set(__self__, "disk_format", disk_format) @@ -128,10 +79,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerFormat") def container_format(self) -> pulumi.Input[str]: - """ - The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - """ return pulumi.get(self, "container_format") @container_format.setter @@ -141,10 +88,6 @@ def container_format(self, value: pulumi.Input[str]): @property @pulumi.getter(name="diskFormat") def disk_format(self) -> pulumi.Input[str]: - """ - The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - """ return pulumi.get(self, "disk_format") @disk_format.setter @@ -154,13 +97,6 @@ def disk_format(self, value: pulumi.Input[str]): @property @pulumi.getter def decompress(self) -> Optional[pulumi.Input[bool]]: - """ - If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - """ return pulumi.get(self, "decompress") @decompress.setter @@ -170,10 +106,6 @@ def decompress(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def hidden(self) -> Optional[pulumi.Input[bool]]: - """ - If true, image will be hidden from public list. - Defaults to false. - """ return pulumi.get(self, "hidden") @hidden.setter @@ -192,10 +124,6 @@ def image_cache_path(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - Unique ID (valid UUID) of image to create. Changing - this creates a new image. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -205,10 +133,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourcePassword") def image_source_password(self) -> Optional[pulumi.Input[str]]: - """ - The password of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_password") @image_source_password.setter @@ -218,12 +142,6 @@ def image_source_password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourceUrl") def image_source_url(self) -> Optional[pulumi.Input[str]]: - """ - This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - """ return pulumi.get(self, "image_source_url") @image_source_url.setter @@ -233,10 +151,6 @@ def image_source_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourceUsername") def image_source_username(self) -> Optional[pulumi.Input[str]]: - """ - The username of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_username") @image_source_username.setter @@ -246,11 +160,6 @@ def image_source_username(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localFilePath") def local_file_path(self) -> Optional[pulumi.Input[str]]: - """ - This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - """ return pulumi.get(self, "local_file_path") @local_file_path.setter @@ -260,10 +169,6 @@ def local_file_path(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="minDiskGb") def min_disk_gb(self) -> Optional[pulumi.Input[int]]: - """ - Amount of disk space (in GB) required to boot - image. Defaults to 0. - """ return pulumi.get(self, "min_disk_gb") @min_disk_gb.setter @@ -273,10 +178,6 @@ def min_disk_gb(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="minRamMb") def min_ram_mb(self) -> Optional[pulumi.Input[int]]: - """ - Amount of ram (in MB) required to boot image. - Defauts to 0. - """ return pulumi.get(self, "min_ram_mb") @min_ram_mb.setter @@ -286,9 +187,6 @@ def min_ram_mb(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the image. - """ return pulumi.get(self, "name") @name.setter @@ -298,11 +196,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def properties(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - """ return pulumi.get(self, "properties") @properties.setter @@ -312,10 +205,6 @@ def properties(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def protected(self) -> Optional[pulumi.Input[bool]]: - """ - If true, image will not be deletable. Defaults to - false. - """ return pulumi.get(self, "protected") @protected.setter @@ -325,12 +214,6 @@ def protected(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - """ return pulumi.get(self, "region") @region.setter @@ -340,10 +223,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - """ return pulumi.get(self, "tags") @tags.setter @@ -353,11 +232,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="verifyChecksum") def verify_checksum(self) -> Optional[pulumi.Input[bool]]: - """ - If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - """ return pulumi.get(self, "verify_checksum") @verify_checksum.setter @@ -367,11 +241,6 @@ def verify_checksum(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def visibility(self) -> Optional[pulumi.Input[str]]: - """ - The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - """ return pulumi.get(self, "visibility") @visibility.setter @@ -381,11 +250,6 @@ def visibility(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="webDownload") def web_download(self) -> Optional[pulumi.Input[bool]]: - """ - If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. - """ return pulumi.get(self, "web_download") @web_download.setter @@ -427,70 +291,6 @@ def __init__(__self__, *, web_download: Optional[pulumi.Input[bool]] = None): """ Input properties used for looking up and filtering Image resources. - :param pulumi.Input[str] checksum: The checksum of the data associated with the image. - :param pulumi.Input[str] container_format: The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - :param pulumi.Input[str] created_at: The date the image was created. - :param pulumi.Input[bool] decompress: If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - :param pulumi.Input[str] disk_format: The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - :param pulumi.Input[str] file: the trailing path after the glance - endpoint that represent the location of the image - or the path to retrieve it. - :param pulumi.Input[bool] hidden: If true, image will be hidden from public list. - Defaults to false. - :param pulumi.Input[str] image_id: Unique ID (valid UUID) of image to create. Changing - this creates a new image. - :param pulumi.Input[str] image_source_password: The password of basic auth to download - `image_source_url`. - :param pulumi.Input[str] image_source_url: This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - :param pulumi.Input[str] image_source_username: The username of basic auth to download - `image_source_url`. - :param pulumi.Input[str] local_file_path: This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata associated with the image. - Image metadata allow for meaningfully define the image properties - and tags. See https://docs.openstack.org/glance/latest/user/metadefs-concepts.html. - :param pulumi.Input[int] min_disk_gb: Amount of disk space (in GB) required to boot - image. Defaults to 0. - :param pulumi.Input[int] min_ram_mb: Amount of ram (in MB) required to boot image. - Defauts to 0. - :param pulumi.Input[str] name: The name of the image. - :param pulumi.Input[str] owner: The id of the openstack user who owns the image. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] properties: A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - :param pulumi.Input[bool] protected: If true, image will not be deletable. Defaults to - false. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - :param pulumi.Input[str] schema: The path to the JSON-schema that represent - the image or image - :param pulumi.Input[int] size_bytes: The size in bytes of the data associated with the image. - :param pulumi.Input[str] status: The status of the image. It can be "queued", "active" - or "saving". - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - :param pulumi.Input[str] updated_at: The date the image was last updated. - :param pulumi.Input[bool] verify_checksum: If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - :param pulumi.Input[str] visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - :param pulumi.Input[bool] web_download: If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. """ if checksum is not None: pulumi.set(__self__, "checksum", checksum) @@ -554,9 +354,6 @@ def __init__(__self__, *, @property @pulumi.getter def checksum(self) -> Optional[pulumi.Input[str]]: - """ - The checksum of the data associated with the image. - """ return pulumi.get(self, "checksum") @checksum.setter @@ -566,10 +363,6 @@ def checksum(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerFormat") def container_format(self) -> Optional[pulumi.Input[str]]: - """ - The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - """ return pulumi.get(self, "container_format") @container_format.setter @@ -579,9 +372,6 @@ def container_format(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -591,13 +381,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def decompress(self) -> Optional[pulumi.Input[bool]]: - """ - If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - """ return pulumi.get(self, "decompress") @decompress.setter @@ -607,10 +390,6 @@ def decompress(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="diskFormat") def disk_format(self) -> Optional[pulumi.Input[str]]: - """ - The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - """ return pulumi.get(self, "disk_format") @disk_format.setter @@ -620,11 +399,6 @@ def disk_format(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def file(self) -> Optional[pulumi.Input[str]]: - """ - the trailing path after the glance - endpoint that represent the location of the image - or the path to retrieve it. - """ return pulumi.get(self, "file") @file.setter @@ -634,10 +408,6 @@ def file(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def hidden(self) -> Optional[pulumi.Input[bool]]: - """ - If true, image will be hidden from public list. - Defaults to false. - """ return pulumi.get(self, "hidden") @hidden.setter @@ -656,10 +426,6 @@ def image_cache_path(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - Unique ID (valid UUID) of image to create. Changing - this creates a new image. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -669,10 +435,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourcePassword") def image_source_password(self) -> Optional[pulumi.Input[str]]: - """ - The password of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_password") @image_source_password.setter @@ -682,12 +444,6 @@ def image_source_password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourceUrl") def image_source_url(self) -> Optional[pulumi.Input[str]]: - """ - This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - """ return pulumi.get(self, "image_source_url") @image_source_url.setter @@ -697,10 +453,6 @@ def image_source_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageSourceUsername") def image_source_username(self) -> Optional[pulumi.Input[str]]: - """ - The username of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_username") @image_source_username.setter @@ -710,11 +462,6 @@ def image_source_username(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localFilePath") def local_file_path(self) -> Optional[pulumi.Input[str]]: - """ - This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - """ return pulumi.get(self, "local_file_path") @local_file_path.setter @@ -724,11 +471,6 @@ def local_file_path(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The metadata associated with the image. - Image metadata allow for meaningfully define the image properties - and tags. See https://docs.openstack.org/glance/latest/user/metadefs-concepts.html. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -738,10 +480,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter(name="minDiskGb") def min_disk_gb(self) -> Optional[pulumi.Input[int]]: - """ - Amount of disk space (in GB) required to boot - image. Defaults to 0. - """ return pulumi.get(self, "min_disk_gb") @min_disk_gb.setter @@ -751,10 +489,6 @@ def min_disk_gb(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="minRamMb") def min_ram_mb(self) -> Optional[pulumi.Input[int]]: - """ - Amount of ram (in MB) required to boot image. - Defauts to 0. - """ return pulumi.get(self, "min_ram_mb") @min_ram_mb.setter @@ -764,9 +498,6 @@ def min_ram_mb(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the image. - """ return pulumi.get(self, "name") @name.setter @@ -776,9 +507,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def owner(self) -> Optional[pulumi.Input[str]]: - """ - The id of the openstack user who owns the image. - """ return pulumi.get(self, "owner") @owner.setter @@ -788,11 +516,6 @@ def owner(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def properties(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - """ return pulumi.get(self, "properties") @properties.setter @@ -802,10 +525,6 @@ def properties(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def protected(self) -> Optional[pulumi.Input[bool]]: - """ - If true, image will not be deletable. Defaults to - false. - """ return pulumi.get(self, "protected") @protected.setter @@ -815,12 +534,6 @@ def protected(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - """ return pulumi.get(self, "region") @region.setter @@ -830,10 +543,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def schema(self) -> Optional[pulumi.Input[str]]: - """ - The path to the JSON-schema that represent - the image or image - """ return pulumi.get(self, "schema") @schema.setter @@ -843,9 +552,6 @@ def schema(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sizeBytes") def size_bytes(self) -> Optional[pulumi.Input[int]]: - """ - The size in bytes of the data associated with the image. - """ return pulumi.get(self, "size_bytes") @size_bytes.setter @@ -855,10 +561,6 @@ def size_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the image. It can be "queued", "active" - or "saving". - """ return pulumi.get(self, "status") @status.setter @@ -868,10 +570,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - """ return pulumi.get(self, "tags") @tags.setter @@ -881,9 +579,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -893,11 +588,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="verifyChecksum") def verify_checksum(self) -> Optional[pulumi.Input[bool]]: - """ - If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - """ return pulumi.get(self, "verify_checksum") @verify_checksum.setter @@ -907,11 +597,6 @@ def verify_checksum(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def visibility(self) -> Optional[pulumi.Input[str]]: - """ - The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - """ return pulumi.get(self, "visibility") @visibility.setter @@ -921,11 +606,6 @@ def visibility(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="webDownload") def web_download(self) -> Optional[pulumi.Input[bool]]: - """ - If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. - """ return pulumi.get(self, "web_download") @web_download.setter @@ -960,103 +640,9 @@ def __init__(__self__, web_download: Optional[pulumi.Input[bool]] = None, __props__=None): """ - Manages a V2 Image resource within OpenStack Glance. - - > **Note:** All arguments including the source image URL password will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - properties={ - "key": "value", - }) - ``` - - ## Notes - - ### Properties - - This resource supports the ability to add properties to a resource during - creation as well as add, update, and delete properties during an update of this - resource. - - Newer versions of OpenStack are adding some read-only properties to each image. - These properties start with the prefix `os_`. If these properties are detected, - this resource will automatically reconcile these with the user-provided - properties. - - In addition, the `direct_url` and `stores` properties are also automatically reconciled if the - Image Service set it. - - ## Import - - Images can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:images/image:Image rancheros 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Image resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] container_format: The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - :param pulumi.Input[bool] decompress: If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - :param pulumi.Input[str] disk_format: The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - :param pulumi.Input[bool] hidden: If true, image will be hidden from public list. - Defaults to false. - :param pulumi.Input[str] image_id: Unique ID (valid UUID) of image to create. Changing - this creates a new image. - :param pulumi.Input[str] image_source_password: The password of basic auth to download - `image_source_url`. - :param pulumi.Input[str] image_source_url: This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - :param pulumi.Input[str] image_source_username: The username of basic auth to download - `image_source_url`. - :param pulumi.Input[str] local_file_path: This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - :param pulumi.Input[int] min_disk_gb: Amount of disk space (in GB) required to boot - image. Defaults to 0. - :param pulumi.Input[int] min_ram_mb: Amount of ram (in MB) required to boot image. - Defauts to 0. - :param pulumi.Input[str] name: The name of the image. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] properties: A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - :param pulumi.Input[bool] protected: If true, image will not be deletable. Defaults to - false. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - :param pulumi.Input[bool] verify_checksum: If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - :param pulumi.Input[str] visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - :param pulumi.Input[bool] web_download: If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. """ ... @overload @@ -1065,52 +651,7 @@ def __init__(__self__, args: ImageArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Image resource within OpenStack Glance. - - > **Note:** All arguments including the source image URL password will be - stored in the raw state as plain-text. Read more about sensitive data in - state. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - properties={ - "key": "value", - }) - ``` - - ## Notes - - ### Properties - - This resource supports the ability to add properties to a resource during - creation as well as add, update, and delete properties during an update of this - resource. - - Newer versions of OpenStack are adding some read-only properties to each image. - These properties start with the prefix `os_`. If these properties are detected, - this resource will automatically reconcile these with the user-provided - properties. - - In addition, the `direct_url` and `stores` properties are also automatically reconciled if the - Image Service set it. - - ## Import - - Images can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:images/image:Image rancheros 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a Image resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ImageArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1236,70 +777,6 @@ def get(resource_name: str, :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] checksum: The checksum of the data associated with the image. - :param pulumi.Input[str] container_format: The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - :param pulumi.Input[str] created_at: The date the image was created. - :param pulumi.Input[bool] decompress: If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - :param pulumi.Input[str] disk_format: The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - :param pulumi.Input[str] file: the trailing path after the glance - endpoint that represent the location of the image - or the path to retrieve it. - :param pulumi.Input[bool] hidden: If true, image will be hidden from public list. - Defaults to false. - :param pulumi.Input[str] image_id: Unique ID (valid UUID) of image to create. Changing - this creates a new image. - :param pulumi.Input[str] image_source_password: The password of basic auth to download - `image_source_url`. - :param pulumi.Input[str] image_source_url: This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - :param pulumi.Input[str] image_source_username: The username of basic auth to download - `image_source_url`. - :param pulumi.Input[str] local_file_path: This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata associated with the image. - Image metadata allow for meaningfully define the image properties - and tags. See https://docs.openstack.org/glance/latest/user/metadefs-concepts.html. - :param pulumi.Input[int] min_disk_gb: Amount of disk space (in GB) required to boot - image. Defaults to 0. - :param pulumi.Input[int] min_ram_mb: Amount of ram (in MB) required to boot image. - Defauts to 0. - :param pulumi.Input[str] name: The name of the image. - :param pulumi.Input[str] owner: The id of the openstack user who owns the image. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] properties: A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - :param pulumi.Input[bool] protected: If true, image will not be deletable. Defaults to - false. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - :param pulumi.Input[str] schema: The path to the JSON-schema that represent - the image or image - :param pulumi.Input[int] size_bytes: The size in bytes of the data associated with the image. - :param pulumi.Input[str] status: The status of the image. It can be "queued", "active" - or "saving". - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - :param pulumi.Input[str] updated_at: The date the image was last updated. - :param pulumi.Input[bool] verify_checksum: If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - :param pulumi.Input[str] visibility: The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - :param pulumi.Input[bool] web_download: If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1339,66 +816,36 @@ def get(resource_name: str, @property @pulumi.getter def checksum(self) -> pulumi.Output[str]: - """ - The checksum of the data associated with the image. - """ return pulumi.get(self, "checksum") @property @pulumi.getter(name="containerFormat") def container_format(self) -> pulumi.Output[str]: - """ - The container format. Must be one of "bare", - "ovf", "aki", "ari", "ami", "ova", "docker", "compressed". - """ return pulumi.get(self, "container_format") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The date the image was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter def decompress(self) -> pulumi.Output[Optional[bool]]: - """ - If true, this provider will decompress downloaded - image before uploading it to OpenStack. Decompression algorithm is chosen by - checking "Content-Type" or `Content-Disposition` header to detect the - filename extension. Supported algorithms are: gzip, bzip2, xz and zst. - Defaults to false. Changing this creates a new Image. - """ return pulumi.get(self, "decompress") @property @pulumi.getter(name="diskFormat") def disk_format(self) -> pulumi.Output[str]: - """ - The disk format. Must be one of "raw", "vhd", - "vhdx", "vmdk", "vdi", "iso", "ploop", "qcow2", "aki", "ari", "ami" - """ return pulumi.get(self, "disk_format") @property @pulumi.getter def file(self) -> pulumi.Output[str]: - """ - the trailing path after the glance - endpoint that represent the location of the image - or the path to retrieve it. - """ return pulumi.get(self, "file") @property @pulumi.getter def hidden(self) -> pulumi.Output[Optional[bool]]: - """ - If true, image will be hidden from public list. - Defaults to false. - """ return pulumi.get(self, "hidden") @property @@ -1409,195 +856,105 @@ def image_cache_path(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: - """ - Unique ID (valid UUID) of image to create. Changing - this creates a new image. - """ return pulumi.get(self, "image_id") @property @pulumi.getter(name="imageSourcePassword") def image_source_password(self) -> pulumi.Output[Optional[str]]: - """ - The password of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_password") @property @pulumi.getter(name="imageSourceUrl") def image_source_url(self) -> pulumi.Output[Optional[str]]: - """ - This is the url of the raw image. If - `web_download` is not used, then the image will be downloaded in the - `image_cache_path` before being uploaded to Glance. Conflicts with - `local_file_path`. - """ return pulumi.get(self, "image_source_url") @property @pulumi.getter(name="imageSourceUsername") def image_source_username(self) -> pulumi.Output[Optional[str]]: - """ - The username of basic auth to download - `image_source_url`. - """ return pulumi.get(self, "image_source_username") @property @pulumi.getter(name="localFilePath") def local_file_path(self) -> pulumi.Output[Optional[str]]: - """ - This is the filepath of the raw image file - that will be uploaded to Glance. Conflicts with `image_source_url` and - `web_download`. - """ return pulumi.get(self, "local_file_path") @property @pulumi.getter def metadata(self) -> pulumi.Output[Mapping[str, str]]: - """ - The metadata associated with the image. - Image metadata allow for meaningfully define the image properties - and tags. See https://docs.openstack.org/glance/latest/user/metadefs-concepts.html. - """ return pulumi.get(self, "metadata") @property @pulumi.getter(name="minDiskGb") def min_disk_gb(self) -> pulumi.Output[Optional[int]]: - """ - Amount of disk space (in GB) required to boot - image. Defaults to 0. - """ return pulumi.get(self, "min_disk_gb") @property @pulumi.getter(name="minRamMb") def min_ram_mb(self) -> pulumi.Output[Optional[int]]: - """ - Amount of ram (in MB) required to boot image. - Defauts to 0. - """ return pulumi.get(self, "min_ram_mb") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the image. - """ return pulumi.get(self, "name") @property @pulumi.getter def owner(self) -> pulumi.Output[str]: - """ - The id of the openstack user who owns the image. - """ return pulumi.get(self, "owner") @property @pulumi.getter def properties(self) -> pulumi.Output[Mapping[str, str]]: - """ - A map of key/value pairs to set freeform - information about an image. See the "Notes" section for further information - about properties. - """ return pulumi.get(self, "properties") @property @pulumi.getter def protected(self) -> pulumi.Output[Optional[bool]]: - """ - If true, image will not be deletable. Defaults to - false. - """ return pulumi.get(self, "protected") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Glance client. A - Glance client is needed to create an Image that can be used with a compute - instance. If omitted, the `region` argument of the provider is used. Changing - this creates a new Image. - """ return pulumi.get(self, "region") @property @pulumi.getter def schema(self) -> pulumi.Output[str]: - """ - The path to the JSON-schema that represent - the image or image - """ return pulumi.get(self, "schema") @property @pulumi.getter(name="sizeBytes") def size_bytes(self) -> pulumi.Output[int]: - """ - The size in bytes of the data associated with the image. - """ return pulumi.get(self, "size_bytes") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the image. It can be "queued", "active" - or "saving". - """ return pulumi.get(self, "status") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - The tags of the image. It must be a list of strings. At - this time, it is not possible to delete all tags of an image. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The date the image was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="verifyChecksum") def verify_checksum(self) -> pulumi.Output[Optional[bool]]: - """ - If false, the checksum will not be verified - once the image is finished uploading. Conflicts with `web_download`. Defaults - to true when not using `web_download`. - """ return pulumi.get(self, "verify_checksum") @property @pulumi.getter def visibility(self) -> pulumi.Output[Optional[str]]: - """ - The visibility of the image. Must be one of - "public", "private", "community", or "shared". The ability to set the - visibility depends upon the configuration of the OpenStack cloud. - """ return pulumi.get(self, "visibility") @property @pulumi.getter(name="webDownload") def web_download(self) -> pulumi.Output[Optional[bool]]: - """ - If true, the "web-download" import method will be - used to let Openstack download the image directly from the remote source. - Conflicts with `local_file_path`. Defaults to false. - """ return pulumi.get(self, "web_download") diff --git a/sdk/python/pulumi_openstack/images/image_access.py b/sdk/python/pulumi_openstack/images/image_access.py index 78c57c001..8d4c9ff0f 100644 --- a/sdk/python/pulumi_openstack/images/image_access.py +++ b/sdk/python/pulumi_openstack/images/image_access.py @@ -20,14 +20,6 @@ def __init__(__self__, *, status: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ImageAccess resource. - :param pulumi.Input[str] image_id: The image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - :param pulumi.Input[str] status: The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. """ pulumi.set(__self__, "image_id", image_id) pulumi.set(__self__, "member_id", member_id) @@ -39,9 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Input[str]: - """ - The image ID. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -51,9 +40,6 @@ def image_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="memberId") def member_id(self) -> pulumi.Input[str]: - """ - The member ID, e.g. the target project ID. - """ return pulumi.get(self, "member_id") @member_id.setter @@ -63,11 +49,6 @@ def member_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - """ return pulumi.get(self, "region") @region.setter @@ -77,11 +58,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. - """ return pulumi.get(self, "status") @status.setter @@ -101,17 +77,6 @@ def __init__(__self__, *, updated_at: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ImageAccess resources. - :param pulumi.Input[str] created_at: The date the image access was created. - :param pulumi.Input[str] image_id: The image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - :param pulumi.Input[str] schema: The member schema. - :param pulumi.Input[str] status: The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. - :param pulumi.Input[str] updated_at: The date the image access was last updated. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -131,9 +96,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image access was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -143,9 +105,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The image ID. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -155,9 +114,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="memberId") def member_id(self) -> Optional[pulumi.Input[str]]: - """ - The member ID, e.g. the target project ID. - """ return pulumi.get(self, "member_id") @member_id.setter @@ -167,11 +123,6 @@ def member_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - """ return pulumi.get(self, "region") @region.setter @@ -181,9 +132,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def schema(self) -> Optional[pulumi.Input[str]]: - """ - The member schema. - """ return pulumi.get(self, "schema") @schema.setter @@ -193,11 +141,6 @@ def schema(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. - """ return pulumi.get(self, "status") @status.setter @@ -207,9 +150,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image access was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -228,78 +168,9 @@ def __init__(__self__, status: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages members for the shared OpenStack Glance V2 Image within the source - project, which owns the Image. - - ## Example Usage - - ### Unprivileged user - - Create a shared image and propose a membership to the - `bed6b6cbb86a4e2d8dc2735c2f1000e4` project ID. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - visibility="shared", - properties={ - "key": "value", - }) - rancheros_member = openstack.images.ImageAccess("rancheros_member", - image_id=rancheros.id, - member_id="bed6b6cbb86a4e2d8dc2735c2f1000e4") - ``` - - ### Privileged user - - Create a shared image and set a membership to the - `bed6b6cbb86a4e2d8dc2735c2f1000e4` project ID. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - visibility="shared", - properties={ - "key": "value", - }) - rancheros_member = openstack.images.ImageAccess("rancheros_member", - image_id=rancheros.id, - member_id="bed6b6cbb86a4e2d8dc2735c2f1000e4", - status="accepted") - ``` - - ## Import - - Image access can be imported using the `image_id` and the `member_id`, - - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:images/imageAccess:ImageAccess openstack_images_image_access_v2 89c60255-9bd6-460c-822a-e2b959ede9d2/bed6b6cbb86a4e2d8dc2735c2f1000e4 - ``` - + Create a ImageAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] image_id: The image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - :param pulumi.Input[str] status: The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. """ ... @overload @@ -308,68 +179,7 @@ def __init__(__self__, args: ImageAccessArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages members for the shared OpenStack Glance V2 Image within the source - project, which owns the Image. - - ## Example Usage - - ### Unprivileged user - - Create a shared image and propose a membership to the - `bed6b6cbb86a4e2d8dc2735c2f1000e4` project ID. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - visibility="shared", - properties={ - "key": "value", - }) - rancheros_member = openstack.images.ImageAccess("rancheros_member", - image_id=rancheros.id, - member_id="bed6b6cbb86a4e2d8dc2735c2f1000e4") - ``` - - ### Privileged user - - Create a shared image and set a membership to the - `bed6b6cbb86a4e2d8dc2735c2f1000e4` project ID. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.Image("rancheros", - name="RancherOS", - image_source_url="https://releases.rancher.com/os/latest/rancheros-openstack.img", - container_format="bare", - disk_format="qcow2", - visibility="shared", - properties={ - "key": "value", - }) - rancheros_member = openstack.images.ImageAccess("rancheros_member", - image_id=rancheros.id, - member_id="bed6b6cbb86a4e2d8dc2735c2f1000e4", - status="accepted") - ``` - - ## Import - - Image access can be imported using the `image_id` and the `member_id`, - - separated by a slash, e.g. - - ```sh - $ pulumi import openstack:images/imageAccess:ImageAccess openstack_images_image_access_v2 89c60255-9bd6-460c-822a-e2b959ede9d2/bed6b6cbb86a4e2d8dc2735c2f1000e4 - ``` - + Create a ImageAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ImageAccessArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -433,17 +243,6 @@ def get(resource_name: str, :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] created_at: The date the image access was created. - :param pulumi.Input[str] image_id: The image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - :param pulumi.Input[str] schema: The member schema. - :param pulumi.Input[str] status: The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. - :param pulumi.Input[str] updated_at: The date the image access was last updated. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -461,60 +260,35 @@ def get(resource_name: str, @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The date the image access was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: - """ - The image ID. - """ return pulumi.get(self, "image_id") @property @pulumi.getter(name="memberId") def member_id(self) -> pulumi.Output[str]: - """ - The member ID, e.g. the target project ID. - """ return pulumi.get(self, "member_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image members. If omitted, the `region` - argument of the provider is used. Changing this creates a new resource. - """ return pulumi.get(self, "region") @property @pulumi.getter def schema(self) -> pulumi.Output[str]: - """ - The member schema. - """ return pulumi.get(self, "schema") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The member proposal status. Optional if admin wants to - force the member proposal acceptance. Can either be `accepted`, `rejected` or - `pending`. Defaults to `pending`. Foridden for non-admin users. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The date the image access was last updated. - """ return pulumi.get(self, "updated_at") diff --git a/sdk/python/pulumi_openstack/images/image_access_accept.py b/sdk/python/pulumi_openstack/images/image_access_accept.py index 948d50603..573e8a98b 100644 --- a/sdk/python/pulumi_openstack/images/image_access_accept.py +++ b/sdk/python/pulumi_openstack/images/image_access_accept.py @@ -20,15 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ImageAccessAccept resource. - :param pulumi.Input[str] image_id: The proposed image ID. - :param pulumi.Input[str] status: The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. """ pulumi.set(__self__, "image_id", image_id) pulumi.set(__self__, "status", status) @@ -40,9 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Input[str]: - """ - The proposed image ID. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -52,10 +40,6 @@ def image_id(self, value: pulumi.Input[str]): @property @pulumi.getter def status(self) -> pulumi.Input[str]: - """ - The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - """ return pulumi.get(self, "status") @status.setter @@ -65,10 +49,6 @@ def status(self, value: pulumi.Input[str]): @property @pulumi.getter(name="memberId") def member_id(self) -> Optional[pulumi.Input[str]]: - """ - The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - """ return pulumi.get(self, "member_id") @member_id.setter @@ -78,12 +58,6 @@ def member_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - """ return pulumi.get(self, "region") @region.setter @@ -103,18 +77,6 @@ def __init__(__self__, *, updated_at: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ImageAccessAccept resources. - :param pulumi.Input[str] created_at: The date the image membership was created. - :param pulumi.Input[str] image_id: The proposed image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - :param pulumi.Input[str] schema: The membership schema. - :param pulumi.Input[str] status: The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - :param pulumi.Input[str] updated_at: The date the image membership was last updated. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -134,9 +96,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image membership was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -146,9 +105,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[pulumi.Input[str]]: - """ - The proposed image ID. - """ return pulumi.get(self, "image_id") @image_id.setter @@ -158,10 +114,6 @@ def image_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="memberId") def member_id(self) -> Optional[pulumi.Input[str]]: - """ - The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - """ return pulumi.get(self, "member_id") @member_id.setter @@ -171,12 +123,6 @@ def member_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - """ return pulumi.get(self, "region") @region.setter @@ -186,9 +132,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def schema(self) -> Optional[pulumi.Input[str]]: - """ - The membership schema. - """ return pulumi.get(self, "schema") @schema.setter @@ -198,10 +141,6 @@ def schema(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - """ return pulumi.get(self, "status") @status.setter @@ -211,9 +150,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the image membership was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -232,44 +168,9 @@ def __init__(__self__, status: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages memberships status for the shared OpenStack Glance V2 Image within the - destination project, which has a member proposal. - - ## Example Usage - - Accept a shared image membershipship proposal within the current project. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.get_image(name="RancherOS", - visibility="shared", - member_status="all") - rancheros_member = openstack.images.ImageAccessAccept("rancheros_member", - image_id=rancheros.id, - status="accepted") - ``` - - ## Import - - Image access acceptance status can be imported using the `image_id`, e.g. - - ```sh - $ pulumi import openstack:images/imageAccessAccept:ImageAccessAccept openstack_images_image_access_accept_v2 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a ImageAccessAccept resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] image_id: The proposed image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - :param pulumi.Input[str] status: The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. """ ... @overload @@ -278,33 +179,7 @@ def __init__(__self__, args: ImageAccessAcceptArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages memberships status for the shared OpenStack Glance V2 Image within the - destination project, which has a member proposal. - - ## Example Usage - - Accept a shared image membershipship proposal within the current project. - - ```python - import pulumi - import pulumi_openstack as openstack - - rancheros = openstack.images.get_image(name="RancherOS", - visibility="shared", - member_status="all") - rancheros_member = openstack.images.ImageAccessAccept("rancheros_member", - image_id=rancheros.id, - status="accepted") - ``` - - ## Import - - Image access acceptance status can be imported using the `image_id`, e.g. - - ```sh - $ pulumi import openstack:images/imageAccessAccept:ImageAccessAccept openstack_images_image_access_accept_v2 89c60255-9bd6-460c-822a-e2b959ede9d2 - ``` - + Create a ImageAccessAccept resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ImageAccessAcceptArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -368,18 +243,6 @@ def get(resource_name: str, :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] created_at: The date the image membership was created. - :param pulumi.Input[str] image_id: The proposed image ID. - :param pulumi.Input[str] member_id: The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - :param pulumi.Input[str] region: The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - :param pulumi.Input[str] schema: The membership schema. - :param pulumi.Input[str] status: The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - :param pulumi.Input[str] updated_at: The date the image membership was last updated. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -397,61 +260,35 @@ def get(resource_name: str, @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The date the image membership was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: - """ - The proposed image ID. - """ return pulumi.get(self, "image_id") @property @pulumi.getter(name="memberId") def member_id(self) -> pulumi.Output[str]: - """ - The member ID, e.g. the target project ID. Optional - for admin accounts. Defaults to the current scope project ID. - """ return pulumi.get(self, "member_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Glance client. - A Glance client is needed to manage Image memberships. If omitted, the - `region` argument of the provider is used. Changing this creates a new - membership. - """ return pulumi.get(self, "region") @property @pulumi.getter def schema(self) -> pulumi.Output[str]: - """ - The membership schema. - """ return pulumi.get(self, "schema") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The membership proposal status. Can either be - `accepted`, `rejected` or `pending`. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The date the image membership was last updated. - """ return pulumi.get(self, "updated_at") diff --git a/sdk/python/pulumi_openstack/keymanager/_inputs.py b/sdk/python/pulumi_openstack/keymanager/_inputs.py index 091deaa43..cec4c9fcc 100644 --- a/sdk/python/pulumi_openstack/keymanager/_inputs.py +++ b/sdk/python/pulumi_openstack/keymanager/_inputs.py @@ -43,14 +43,6 @@ def __init__(__self__, *, project_access: Optional[pulumi.Input[bool]] = None, updated_at: Optional[pulumi.Input[str]] = None, users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): - """ - :param pulumi.Input[str] created_at: The date the container was created. - :param pulumi.Input[bool] project_access: Whether the container is accessible project wide. - Defaults to `true`. - :param pulumi.Input[str] updated_at: The date the container was last updated. - :param pulumi.Input[Sequence[pulumi.Input[str]]] users: The list of user IDs, which are allowed to access the - container, when `project_access` is set to `false`. - """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) if project_access is not None: @@ -63,9 +55,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the container was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -75,10 +64,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the container is accessible project wide. - Defaults to `true`. - """ return pulumi.get(self, "project_access") @project_access.setter @@ -88,9 +73,6 @@ def project_access(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the container was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -100,10 +82,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of user IDs, which are allowed to access the - container, when `project_access` is set to `false`. - """ return pulumi.get(self, "users") @users.setter @@ -116,11 +94,6 @@ class ContainerV1ConsumerArgs: def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] name: Human-readable name for the Container. Does not have - to be unique. - :param pulumi.Input[str] url: The consumer URL. - """ if name is not None: pulumi.set(__self__, "name", name) if url is not None: @@ -129,10 +102,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Container. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -142,9 +111,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def url(self) -> Optional[pulumi.Input[str]]: - """ - The consumer URL. - """ return pulumi.get(self, "url") @url.setter @@ -157,10 +123,6 @@ class ContainerV1SecretRefArgs: def __init__(__self__, *, secret_ref: pulumi.Input[str], name: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] secret_ref: The secret reference / where to find the secret, URL. - :param pulumi.Input[str] name: The name of the secret reference. The reference names must correspond the container type, more details are available [here](https://docs.openstack.org/barbican/stein/api/reference/containers.html). - """ pulumi.set(__self__, "secret_ref", secret_ref) if name is not None: pulumi.set(__self__, "name", name) @@ -168,9 +130,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="secretRef") def secret_ref(self) -> pulumi.Input[str]: - """ - The secret reference / where to find the secret, URL. - """ return pulumi.get(self, "secret_ref") @secret_ref.setter @@ -180,9 +139,6 @@ def secret_ref(self, value: pulumi.Input[str]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the secret reference. The reference names must correspond the container type, more details are available [here](https://docs.openstack.org/barbican/stein/api/reference/containers.html). - """ return pulumi.get(self, "name") @name.setter @@ -199,14 +155,6 @@ def __init__(__self__, *, mode: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, payload_content_type: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] algorithm: Algorithm to use for key generation. - :param pulumi.Input[int] bit_length: Bit lenght of key to be generated. - :param pulumi.Input[str] expiration: This is a UTC timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ. If set, the secret will not be available after this time. - :param pulumi.Input[str] mode: The mode to use for key generation. - :param pulumi.Input[str] name: The name of the secret set by the user. - :param pulumi.Input[str] payload_content_type: The media type for the content of the secrets payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ pulumi.set(__self__, "algorithm", algorithm) pulumi.set(__self__, "bit_length", bit_length) if expiration is not None: @@ -221,9 +169,6 @@ def __init__(__self__, *, @property @pulumi.getter def algorithm(self) -> pulumi.Input[str]: - """ - Algorithm to use for key generation. - """ return pulumi.get(self, "algorithm") @algorithm.setter @@ -233,9 +178,6 @@ def algorithm(self, value: pulumi.Input[str]): @property @pulumi.getter(name="bitLength") def bit_length(self) -> pulumi.Input[int]: - """ - Bit lenght of key to be generated. - """ return pulumi.get(self, "bit_length") @bit_length.setter @@ -245,9 +187,6 @@ def bit_length(self, value: pulumi.Input[int]): @property @pulumi.getter def expiration(self) -> Optional[pulumi.Input[str]]: - """ - This is a UTC timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ. If set, the secret will not be available after this time. - """ return pulumi.get(self, "expiration") @expiration.setter @@ -257,9 +196,6 @@ def expiration(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: - """ - The mode to use for key generation. - """ return pulumi.get(self, "mode") @mode.setter @@ -269,9 +205,6 @@ def mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the secret set by the user. - """ return pulumi.get(self, "name") @name.setter @@ -281,9 +214,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> Optional[pulumi.Input[str]]: - """ - The media type for the content of the secrets payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ return pulumi.get(self, "payload_content_type") @payload_content_type.setter @@ -315,14 +245,6 @@ def __init__(__self__, *, project_access: Optional[pulumi.Input[bool]] = None, updated_at: Optional[pulumi.Input[str]] = None, users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): - """ - :param pulumi.Input[str] created_at: The date the secret was created. - :param pulumi.Input[bool] project_access: Whether the secret is accessible project wide. - Defaults to `true`. - :param pulumi.Input[str] updated_at: The date the secret was last updated. - :param pulumi.Input[Sequence[pulumi.Input[str]]] users: The list of user IDs, which are allowed to access the - secret, when `project_access` is set to `false`. - """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) if project_access is not None: @@ -335,9 +257,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the secret was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -347,10 +266,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[pulumi.Input[bool]]: - """ - Whether the secret is accessible project wide. - Defaults to `true`. - """ return pulumi.get(self, "project_access") @project_access.setter @@ -360,9 +275,6 @@ def project_access(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the secret was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -372,10 +284,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of user IDs, which are allowed to access the - secret, when `project_access` is set to `false`. - """ return pulumi.get(self, "users") @users.setter diff --git a/sdk/python/pulumi_openstack/keymanager/container_v1.py b/sdk/python/pulumi_openstack/keymanager/container_v1.py index 11cf561f7..e0f58da7b 100644 --- a/sdk/python/pulumi_openstack/keymanager/container_v1.py +++ b/sdk/python/pulumi_openstack/keymanager/container_v1.py @@ -23,18 +23,6 @@ def __init__(__self__, *, secret_refs: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerV1SecretRefArgs']]]] = None): """ The set of arguments for constructing a ContainerV1 resource. - :param pulumi.Input[str] type: Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - :param pulumi.Input['ContainerV1AclArgs'] acl: Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - :param pulumi.Input[str] name: Human-readable name for the Container. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - :param pulumi.Input[Sequence[pulumi.Input['ContainerV1SecretRefArgs']]] secret_refs: A set of dictionaries containing references to secrets. The structure is described - below. """ pulumi.set(__self__, "type", type) if acl is not None: @@ -49,9 +37,6 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - """ return pulumi.get(self, "type") @type.setter @@ -61,11 +46,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def acl(self) -> Optional[pulumi.Input['ContainerV1AclArgs']]: - """ - Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - """ return pulumi.get(self, "acl") @acl.setter @@ -75,10 +55,6 @@ def acl(self, value: Optional[pulumi.Input['ContainerV1AclArgs']]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Container. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -88,12 +64,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - """ return pulumi.get(self, "region") @region.setter @@ -103,10 +73,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretRefs") def secret_refs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerV1SecretRefArgs']]]]: - """ - A set of dictionaries containing references to secrets. The structure is described - below. - """ return pulumi.get(self, "secret_refs") @secret_refs.setter @@ -130,24 +96,6 @@ def __init__(__self__, *, updated_at: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ContainerV1 resources. - :param pulumi.Input['ContainerV1AclArgs'] acl: Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - :param pulumi.Input[Sequence[pulumi.Input['ContainerV1ConsumerArgs']]] consumers: The list of the container consumers. The structure is described below. - :param pulumi.Input[str] container_ref: The container reference / where to find the container. - :param pulumi.Input[str] created_at: The date the container was created. - :param pulumi.Input[str] creator_id: The creator of the container. - :param pulumi.Input[str] name: Human-readable name for the Container. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - :param pulumi.Input[Sequence[pulumi.Input['ContainerV1SecretRefArgs']]] secret_refs: A set of dictionaries containing references to secrets. The structure is described - below. - :param pulumi.Input[str] status: The status of the container. - :param pulumi.Input[str] type: Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - :param pulumi.Input[str] updated_at: The date the container was last updated. """ if acl is not None: pulumi.set(__self__, "acl", acl) @@ -175,11 +123,6 @@ def __init__(__self__, *, @property @pulumi.getter def acl(self) -> Optional[pulumi.Input['ContainerV1AclArgs']]: - """ - Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - """ return pulumi.get(self, "acl") @acl.setter @@ -189,9 +132,6 @@ def acl(self, value: Optional[pulumi.Input['ContainerV1AclArgs']]): @property @pulumi.getter def consumers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerV1ConsumerArgs']]]]: - """ - The list of the container consumers. The structure is described below. - """ return pulumi.get(self, "consumers") @consumers.setter @@ -201,9 +141,6 @@ def consumers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Containe @property @pulumi.getter(name="containerRef") def container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The container reference / where to find the container. - """ return pulumi.get(self, "container_ref") @container_ref.setter @@ -213,9 +150,6 @@ def container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the container was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -225,9 +159,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="creatorId") def creator_id(self) -> Optional[pulumi.Input[str]]: - """ - The creator of the container. - """ return pulumi.get(self, "creator_id") @creator_id.setter @@ -237,10 +168,6 @@ def creator_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Container. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -250,12 +177,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - """ return pulumi.get(self, "region") @region.setter @@ -265,10 +186,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretRefs") def secret_refs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerV1SecretRefArgs']]]]: - """ - A set of dictionaries containing references to secrets. The structure is described - below. - """ return pulumi.get(self, "secret_refs") @secret_refs.setter @@ -278,9 +195,6 @@ def secret_refs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Contai @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the container. - """ return pulumi.get(self, "status") @status.setter @@ -290,9 +204,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - """ return pulumi.get(self, "type") @type.setter @@ -302,9 +213,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the container was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -324,111 +232,9 @@ def __init__(__self__, type: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 Barbican container resource within OpenStack. - - ## Example Usage - - ### Simple container - - A container with the TLS certificates. - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - certificate1 = openstack.keymanager.SecretV1("certificate_1", - name="certificate", - payload=std.file(input="cert.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - private_key1 = openstack.keymanager.SecretV1("private_key_1", - name="private_key", - payload=std.file(input="cert-key.pem").result, - secret_type="private", - payload_content_type="text/plain") - intermediate1 = openstack.keymanager.SecretV1("intermediate_1", - name="intermediate", - payload=std.file(input="intermediate-ca.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - tls1 = openstack.keymanager.ContainerV1("tls_1", - name="tls", - type="certificate", - secret_refs=[ - { - "name": "certificate", - "secret_ref": certificate1.secret_ref, - }, - { - "name": "private_key", - "secret_ref": private_key1.secret_ref, - }, - { - "name": "intermediates", - "secret_ref": intermediate1.secret_ref, - }, - ]) - ``` - - ### Container with the ACL - - > **Note** Only read ACLs are supported - - ```python - import pulumi - import pulumi_openstack as openstack - - tls1 = openstack.keymanager.ContainerV1("tls_1", - name="tls", - type="certificate", - secret_refs=[ - { - "name": "certificate", - "secret_ref": certificate1["secretRef"], - }, - { - "name": "private_key", - "secret_ref": private_key1["secretRef"], - }, - { - "name": "intermediates", - "secret_ref": intermediate1["secretRef"], - }, - ], - acl={ - "read": { - "project_access": False, - "users": [ - "userid1", - "userid2", - ], - }, - }) - ``` - - ## Import - - Containers can be imported using the container id (the last part of the container reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/containerV1:ContainerV1 container_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953 - ``` - + Create a ContainerV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Union['ContainerV1AclArgs', 'ContainerV1AclArgsDict']] acl: Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - :param pulumi.Input[str] name: Human-readable name for the Container. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerV1SecretRefArgs', 'ContainerV1SecretRefArgsDict']]]] secret_refs: A set of dictionaries containing references to secrets. The structure is described - below. - :param pulumi.Input[str] type: Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. """ ... @overload @@ -437,97 +243,7 @@ def __init__(__self__, args: ContainerV1Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 Barbican container resource within OpenStack. - - ## Example Usage - - ### Simple container - - A container with the TLS certificates. - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - certificate1 = openstack.keymanager.SecretV1("certificate_1", - name="certificate", - payload=std.file(input="cert.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - private_key1 = openstack.keymanager.SecretV1("private_key_1", - name="private_key", - payload=std.file(input="cert-key.pem").result, - secret_type="private", - payload_content_type="text/plain") - intermediate1 = openstack.keymanager.SecretV1("intermediate_1", - name="intermediate", - payload=std.file(input="intermediate-ca.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - tls1 = openstack.keymanager.ContainerV1("tls_1", - name="tls", - type="certificate", - secret_refs=[ - { - "name": "certificate", - "secret_ref": certificate1.secret_ref, - }, - { - "name": "private_key", - "secret_ref": private_key1.secret_ref, - }, - { - "name": "intermediates", - "secret_ref": intermediate1.secret_ref, - }, - ]) - ``` - - ### Container with the ACL - - > **Note** Only read ACLs are supported - - ```python - import pulumi - import pulumi_openstack as openstack - - tls1 = openstack.keymanager.ContainerV1("tls_1", - name="tls", - type="certificate", - secret_refs=[ - { - "name": "certificate", - "secret_ref": certificate1["secretRef"], - }, - { - "name": "private_key", - "secret_ref": private_key1["secretRef"], - }, - { - "name": "intermediates", - "secret_ref": intermediate1["secretRef"], - }, - ], - acl={ - "read": { - "project_access": False, - "users": [ - "userid1", - "userid2", - ], - }, - }) - ``` - - ## Import - - Containers can be imported using the container id (the last part of the container reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/containerV1:ContainerV1 container_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953 - ``` - + Create a ContainerV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ContainerV1Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -598,24 +314,6 @@ def get(resource_name: str, :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[Union['ContainerV1AclArgs', 'ContainerV1AclArgsDict']] acl: Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerV1ConsumerArgs', 'ContainerV1ConsumerArgsDict']]]] consumers: The list of the container consumers. The structure is described below. - :param pulumi.Input[str] container_ref: The container reference / where to find the container. - :param pulumi.Input[str] created_at: The date the container was created. - :param pulumi.Input[str] creator_id: The creator of the container. - :param pulumi.Input[str] name: Human-readable name for the Container. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerV1SecretRefArgs', 'ContainerV1SecretRefArgsDict']]]] secret_refs: A set of dictionaries containing references to secrets. The structure is described - below. - :param pulumi.Input[str] status: The status of the container. - :param pulumi.Input[str] type: Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - :param pulumi.Input[str] updated_at: The date the container was last updated. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -637,95 +335,55 @@ def get(resource_name: str, @property @pulumi.getter def acl(self) -> pulumi.Output['outputs.ContainerV1Acl']: - """ - Allows to control an access to a container. Currently only - the `read` operation is supported. If not specified, the container is - accessible project wide. The `read` structure is described below. - """ return pulumi.get(self, "acl") @property @pulumi.getter def consumers(self) -> pulumi.Output[Sequence['outputs.ContainerV1Consumer']]: - """ - The list of the container consumers. The structure is described below. - """ return pulumi.get(self, "consumers") @property @pulumi.getter(name="containerRef") def container_ref(self) -> pulumi.Output[str]: - """ - The container reference / where to find the container. - """ return pulumi.get(self, "container_ref") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The date the container was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="creatorId") def creator_id(self) -> pulumi.Output[str]: - """ - The creator of the container. - """ return pulumi.get(self, "creator_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the Container. Does not have - to be unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a container. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 container. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="secretRefs") def secret_refs(self) -> pulumi.Output[Optional[Sequence['outputs.ContainerV1SecretRef']]]: - """ - A set of dictionaries containing references to secrets. The structure is described - below. - """ return pulumi.get(self, "secret_refs") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the container. - """ return pulumi.get(self, "status") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The date the container was last updated. - """ return pulumi.get(self, "updated_at") diff --git a/sdk/python/pulumi_openstack/keymanager/get_container.py b/sdk/python/pulumi_openstack/keymanager/get_container.py index 8bb1df8e5..a0d3a8238 100644 --- a/sdk/python/pulumi_openstack/keymanager/get_container.py +++ b/sdk/python/pulumi_openstack/keymanager/get_container.py @@ -63,43 +63,26 @@ def __init__(__self__, acls=None, consumers=None, container_ref=None, created_at @property @pulumi.getter def acls(self) -> Sequence['outputs.GetContainerAclResult']: - """ - The list of ACLs assigned to a container. The `read` structure is - described below. - """ return pulumi.get(self, "acls") @property @pulumi.getter def consumers(self) -> Sequence['outputs.GetContainerConsumerResult']: - """ - The list of the container consumers. The structure is described - below. - """ return pulumi.get(self, "consumers") @property @pulumi.getter(name="containerRef") def container_ref(self) -> str: - """ - The container reference / where to find the container. - """ return pulumi.get(self, "container_ref") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The date the container ACL was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="creatorId") def creator_id(self) -> str: - """ - The creator of the container. - """ return pulumi.get(self, "creator_id") @property @@ -113,50 +96,31 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> Optional[str]: - """ - The name of the consumer. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="secretRefs") def secret_refs(self) -> Sequence['outputs.GetContainerSecretRefResult']: - """ - A set of dictionaries containing references to secrets. The - structure is described below. - """ return pulumi.get(self, "secret_refs") @property @pulumi.getter def status(self) -> str: - """ - The status of the container. - """ return pulumi.get(self, "status") @property @pulumi.getter def type(self) -> str: - """ - The container type. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The date the container ACL was last updated. - """ return pulumi.get(self, "updated_at") @@ -184,22 +148,7 @@ def get_container(name: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetContainerResult: """ - Use this data source to get the ID of an available Barbican container. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - example = openstack.keymanager.get_container(name="my_container") - ``` - - - :param str name: The Container name. - :param str region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to fetch a container. If omitted, the `region` - argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['name'] = name @@ -227,21 +176,6 @@ def get_container_output(name: Optional[pulumi.Input[Optional[str]]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetContainerResult]: """ - Use this data source to get the ID of an available Barbican container. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - example = openstack.keymanager.get_container(name="my_container") - ``` - - - :param str name: The Container name. - :param str region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to fetch a container. If omitted, the `region` - argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/keymanager/get_secret.py b/sdk/python/pulumi_openstack/keymanager/get_secret.py index 950a934c9..642a5392f 100644 --- a/sdk/python/pulumi_openstack/keymanager/get_secret.py +++ b/sdk/python/pulumi_openstack/keymanager/get_secret.py @@ -96,81 +96,51 @@ def __init__(__self__, acl_only=None, acls=None, algorithm=None, bit_length=None @property @pulumi.getter(name="aclOnly") def acl_only(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "acl_only") @property @pulumi.getter def acls(self) -> Sequence['outputs.GetSecretAclResult']: - """ - The list of ACLs assigned to a secret. The `read` structure is described below. - """ return pulumi.get(self, "acls") @property @pulumi.getter def algorithm(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "algorithm") @property @pulumi.getter(name="bitLength") def bit_length(self) -> Optional[int]: - """ - See Argument Reference above. - """ return pulumi.get(self, "bit_length") @property @pulumi.getter(name="contentTypes") def content_types(self) -> Mapping[str, str]: - """ - The map of the content types, assigned on the secret. - """ return pulumi.get(self, "content_types") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The date the secret ACL was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="createdAtFilter") def created_at_filter(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "created_at_filter") @property @pulumi.getter(name="creatorId") def creator_id(self) -> str: - """ - The creator of the secret. - """ return pulumi.get(self, "creator_id") @property @pulumi.getter def expiration(self) -> str: - """ - The date the secret will expire. - """ return pulumi.get(self, "expiration") @property @pulumi.getter(name="expirationFilter") def expiration_filter(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "expiration_filter") @property @@ -184,98 +154,61 @@ def id(self) -> str: @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - The map of metadata, assigned on the secret, which has been - explicitly and implicitly added. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def mode(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "mode") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def payload(self) -> str: - """ - The secret payload. - """ return pulumi.get(self, "payload") @property @pulumi.getter(name="payloadContentEncoding") def payload_content_encoding(self) -> str: - """ - The Secret encoding. - """ return pulumi.get(self, "payload_content_encoding") @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> str: - """ - The Secret content type. - """ return pulumi.get(self, "payload_content_type") @property @pulumi.getter def region(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="secretRef") def secret_ref(self) -> str: - """ - The secret reference / where to find the secret. - """ return pulumi.get(self, "secret_ref") @property @pulumi.getter(name="secretType") def secret_type(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "secret_type") @property @pulumi.getter def status(self) -> str: - """ - The status of the secret. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The date the secret ACL was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="updatedAtFilter") def updated_at_filter(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "updated_at_filter") @@ -322,57 +255,7 @@ def get_secret(acl_only: Optional[bool] = None, updated_at_filter: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSecretResult: """ - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - example = openstack.keymanager.get_secret(mode="cbc", - secret_type="passphrase") - ``` - - ## Date Filters - - The values for the `expiration_filter`, `created_at_filter`, and - `updated_at_filter` parameters are comma-separated lists of time stamps in - RFC3339 format. The time stamps can be prefixed with any of these comparison - operators: *gt:* (greater-than), *gte:* (greater-than-or-equal), *lt:* - (less-than), *lte:* (less-than-or-equal). - - For example, to get a passphrase a Secret with CBC moda, that will expire in - January of 2020: - - ```python - import pulumi - import pulumi_openstack as openstack - - date_filter_example = openstack.keymanager.get_secret(mode="cbc", - secret_type="passphrase", - expiration_filter="gt:2020-01-01T00:00:00Z") - ``` - - - :param bool acl_only: Select the Secret with an ACL that contains the user. - Project scope is ignored. Defaults to `false`. - :param str algorithm: The Secret algorithm. - :param int bit_length: The Secret bit length. - :param str created_at_filter: Date filter to select the Secret with - created matching the specified criteria. See Date Filters below for more - detail. - :param str expiration_filter: Date filter to select the Secret with - expiration matching the specified criteria. See Date Filters below for more - detail. - :param str mode: The Secret mode. - :param str name: The Secret name. - :param str region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to fetch a secret. If omitted, the `region` - argument of the provider is used. - :param str secret_type: The Secret type. For more information see - [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - :param str updated_at_filter: Date filter to select the Secret with - updated matching the specified criteria. See Date Filters below for more - detail. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['aclOnly'] = acl_only @@ -427,56 +310,6 @@ def get_secret_output(acl_only: Optional[pulumi.Input[Optional[bool]]] = None, updated_at_filter: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSecretResult]: """ - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - example = openstack.keymanager.get_secret(mode="cbc", - secret_type="passphrase") - ``` - - ## Date Filters - - The values for the `expiration_filter`, `created_at_filter`, and - `updated_at_filter` parameters are comma-separated lists of time stamps in - RFC3339 format. The time stamps can be prefixed with any of these comparison - operators: *gt:* (greater-than), *gte:* (greater-than-or-equal), *lt:* - (less-than), *lte:* (less-than-or-equal). - - For example, to get a passphrase a Secret with CBC moda, that will expire in - January of 2020: - - ```python - import pulumi - import pulumi_openstack as openstack - - date_filter_example = openstack.keymanager.get_secret(mode="cbc", - secret_type="passphrase", - expiration_filter="gt:2020-01-01T00:00:00Z") - ``` - - - :param bool acl_only: Select the Secret with an ACL that contains the user. - Project scope is ignored. Defaults to `false`. - :param str algorithm: The Secret algorithm. - :param int bit_length: The Secret bit length. - :param str created_at_filter: Date filter to select the Secret with - created matching the specified criteria. See Date Filters below for more - detail. - :param str expiration_filter: Date filter to select the Secret with - expiration matching the specified criteria. See Date Filters below for more - detail. - :param str mode: The Secret mode. - :param str name: The Secret name. - :param str region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to fetch a secret. If omitted, the `region` - argument of the provider is used. - :param str secret_type: The Secret type. For more information see - [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - :param str updated_at_filter: Date filter to select the Secret with - updated matching the specified criteria. See Date Filters below for more - detail. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/keymanager/order_v1.py b/sdk/python/pulumi_openstack/keymanager/order_v1.py index 2cf0d6957..988fbc4d0 100644 --- a/sdk/python/pulumi_openstack/keymanager/order_v1.py +++ b/sdk/python/pulumi_openstack/keymanager/order_v1.py @@ -21,12 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a OrderV1 resource. - :param pulumi.Input['OrderV1MetaArgs'] meta: Dictionary containing the order metadata used to generate the order. The structure is described below. - :param pulumi.Input[str] type: The type of key to be generated. Must be one of `asymmetric`, `key`. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. """ pulumi.set(__self__, "meta", meta) pulumi.set(__self__, "type", type) @@ -36,9 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter def meta(self) -> pulumi.Input['OrderV1MetaArgs']: - """ - Dictionary containing the order metadata used to generate the order. The structure is described below. - """ return pulumi.get(self, "meta") @meta.setter @@ -48,9 +39,6 @@ def meta(self, value: pulumi.Input['OrderV1MetaArgs']): @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The type of key to be generated. Must be one of `asymmetric`, `key`. - """ return pulumi.get(self, "type") @type.setter @@ -60,12 +48,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - """ return pulumi.get(self, "region") @region.setter @@ -90,21 +72,6 @@ def __init__(__self__, *, updated: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering OrderV1 resources. - :param pulumi.Input[str] container_ref: The container reference / where to find the container. - :param pulumi.Input[str] created: The date the order was created. - :param pulumi.Input[str] creator_id: The creator of the order. - :param pulumi.Input['OrderV1MetaArgs'] meta: Dictionary containing the order metadata used to generate the order. The structure is described below. - :param pulumi.Input[str] order_ref: The order reference / where to find the order. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - :param pulumi.Input[str] secret_ref: The secret reference / where to find the secret. - :param pulumi.Input[str] status: The status of the order. - :param pulumi.Input[str] sub_status: The sub status of the order. - :param pulumi.Input[str] sub_status_message: The sub status message of the order. - :param pulumi.Input[str] type: The type of key to be generated. Must be one of `asymmetric`, `key`. - :param pulumi.Input[str] updated: The date the order was last updated. """ if container_ref is not None: pulumi.set(__self__, "container_ref", container_ref) @@ -134,9 +101,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerRef") def container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The container reference / where to find the container. - """ return pulumi.get(self, "container_ref") @container_ref.setter @@ -146,9 +110,6 @@ def container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def created(self) -> Optional[pulumi.Input[str]]: - """ - The date the order was created. - """ return pulumi.get(self, "created") @created.setter @@ -158,9 +119,6 @@ def created(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="creatorId") def creator_id(self) -> Optional[pulumi.Input[str]]: - """ - The creator of the order. - """ return pulumi.get(self, "creator_id") @creator_id.setter @@ -170,9 +128,6 @@ def creator_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def meta(self) -> Optional[pulumi.Input['OrderV1MetaArgs']]: - """ - Dictionary containing the order metadata used to generate the order. The structure is described below. - """ return pulumi.get(self, "meta") @meta.setter @@ -182,9 +137,6 @@ def meta(self, value: Optional[pulumi.Input['OrderV1MetaArgs']]): @property @pulumi.getter(name="orderRef") def order_ref(self) -> Optional[pulumi.Input[str]]: - """ - The order reference / where to find the order. - """ return pulumi.get(self, "order_ref") @order_ref.setter @@ -194,12 +146,6 @@ def order_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - """ return pulumi.get(self, "region") @region.setter @@ -209,9 +155,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretRef") def secret_ref(self) -> Optional[pulumi.Input[str]]: - """ - The secret reference / where to find the secret. - """ return pulumi.get(self, "secret_ref") @secret_ref.setter @@ -221,9 +164,6 @@ def secret_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the order. - """ return pulumi.get(self, "status") @status.setter @@ -233,9 +173,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subStatus") def sub_status(self) -> Optional[pulumi.Input[str]]: - """ - The sub status of the order. - """ return pulumi.get(self, "sub_status") @sub_status.setter @@ -245,9 +182,6 @@ def sub_status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subStatusMessage") def sub_status_message(self) -> Optional[pulumi.Input[str]]: - """ - The sub status message of the order. - """ return pulumi.get(self, "sub_status_message") @sub_status_message.setter @@ -257,9 +191,6 @@ def sub_status_message(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of key to be generated. Must be one of `asymmetric`, `key`. - """ return pulumi.get(self, "type") @type.setter @@ -269,9 +200,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def updated(self) -> Optional[pulumi.Input[str]]: - """ - The date the order was last updated. - """ return pulumi.get(self, "updated") @updated.setter @@ -289,57 +217,9 @@ def __init__(__self__, type: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 Barbican order resource within OpenStack. - - ## Example Usage - - ### Symmetric key order - - ```python - import pulumi - import pulumi_openstack as openstack - - order1 = openstack.keymanager.OrderV1("order_1", - type="key", - meta={ - "algorithm": "aes", - "bit_length": 256, - "name": "mysecret", - "mode": "cbc", - }) - ``` - - ### Asymmetric key pair order - - ```python - import pulumi - import pulumi_openstack as openstack - - order1 = openstack.keymanager.OrderV1("order_1", - type="asymmetric", - meta={ - "algorithm": "rsa", - "bit_length": 4096, - "name": "mysecret", - }) - ``` - - ## Import - - Orders can be imported using the order id (the last part of the order reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/orderV1:OrderV1 order_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953 - ``` - + Create a OrderV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Union['OrderV1MetaArgs', 'OrderV1MetaArgsDict']] meta: Dictionary containing the order metadata used to generate the order. The structure is described below. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - :param pulumi.Input[str] type: The type of key to be generated. Must be one of `asymmetric`, `key`. """ ... @overload @@ -348,49 +228,7 @@ def __init__(__self__, args: OrderV1Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 Barbican order resource within OpenStack. - - ## Example Usage - - ### Symmetric key order - - ```python - import pulumi - import pulumi_openstack as openstack - - order1 = openstack.keymanager.OrderV1("order_1", - type="key", - meta={ - "algorithm": "aes", - "bit_length": 256, - "name": "mysecret", - "mode": "cbc", - }) - ``` - - ### Asymmetric key pair order - - ```python - import pulumi - import pulumi_openstack as openstack - - order1 = openstack.keymanager.OrderV1("order_1", - type="asymmetric", - meta={ - "algorithm": "rsa", - "bit_length": 4096, - "name": "mysecret", - }) - ``` - - ## Import - - Orders can be imported using the order id (the last part of the order reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/orderV1:OrderV1 order_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953 - ``` - + Create a OrderV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param OrderV1Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -463,21 +301,6 @@ def get(resource_name: str, :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] container_ref: The container reference / where to find the container. - :param pulumi.Input[str] created: The date the order was created. - :param pulumi.Input[str] creator_id: The creator of the order. - :param pulumi.Input[Union['OrderV1MetaArgs', 'OrderV1MetaArgsDict']] meta: Dictionary containing the order metadata used to generate the order. The structure is described below. - :param pulumi.Input[str] order_ref: The order reference / where to find the order. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - :param pulumi.Input[str] secret_ref: The secret reference / where to find the secret. - :param pulumi.Input[str] status: The status of the order. - :param pulumi.Input[str] sub_status: The sub status of the order. - :param pulumi.Input[str] sub_status_message: The sub status message of the order. - :param pulumi.Input[str] type: The type of key to be generated. Must be one of `asymmetric`, `key`. - :param pulumi.Input[str] updated: The date the order was last updated. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -500,99 +323,60 @@ def get(resource_name: str, @property @pulumi.getter(name="containerRef") def container_ref(self) -> pulumi.Output[str]: - """ - The container reference / where to find the container. - """ return pulumi.get(self, "container_ref") @property @pulumi.getter def created(self) -> pulumi.Output[str]: - """ - The date the order was created. - """ return pulumi.get(self, "created") @property @pulumi.getter(name="creatorId") def creator_id(self) -> pulumi.Output[str]: - """ - The creator of the order. - """ return pulumi.get(self, "creator_id") @property @pulumi.getter def meta(self) -> pulumi.Output['outputs.OrderV1Meta']: - """ - Dictionary containing the order metadata used to generate the order. The structure is described below. - """ return pulumi.get(self, "meta") @property @pulumi.getter(name="orderRef") def order_ref(self) -> pulumi.Output[str]: - """ - The order reference / where to find the order. - """ return pulumi.get(self, "order_ref") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a order. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 order. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="secretRef") def secret_ref(self) -> pulumi.Output[str]: - """ - The secret reference / where to find the secret. - """ return pulumi.get(self, "secret_ref") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the order. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="subStatus") def sub_status(self) -> pulumi.Output[str]: - """ - The sub status of the order. - """ return pulumi.get(self, "sub_status") @property @pulumi.getter(name="subStatusMessage") def sub_status_message(self) -> pulumi.Output[str]: - """ - The sub status message of the order. - """ return pulumi.get(self, "sub_status_message") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of key to be generated. Must be one of `asymmetric`, `key`. - """ return pulumi.get(self, "type") @property @pulumi.getter def updated(self) -> pulumi.Output[str]: - """ - The date the order was last updated. - """ return pulumi.get(self, "updated") diff --git a/sdk/python/pulumi_openstack/keymanager/outputs.py b/sdk/python/pulumi_openstack/keymanager/outputs.py index d7d8eaa50..746bf8fe6 100644 --- a/sdk/python/pulumi_openstack/keymanager/outputs.py +++ b/sdk/python/pulumi_openstack/keymanager/outputs.py @@ -67,14 +67,6 @@ def __init__(__self__, *, project_access: Optional[bool] = None, updated_at: Optional[str] = None, users: Optional[Sequence[str]] = None): - """ - :param str created_at: The date the container was created. - :param bool project_access: Whether the container is accessible project wide. - Defaults to `true`. - :param str updated_at: The date the container was last updated. - :param Sequence[str] users: The list of user IDs, which are allowed to access the - container, when `project_access` is set to `false`. - """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) if project_access is not None: @@ -87,35 +79,21 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[str]: - """ - The date the container was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[bool]: - """ - Whether the container is accessible project wide. - Defaults to `true`. - """ return pulumi.get(self, "project_access") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[str]: - """ - The date the container was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter def users(self) -> Optional[Sequence[str]]: - """ - The list of user IDs, which are allowed to access the - container, when `project_access` is set to `false`. - """ return pulumi.get(self, "users") @@ -124,11 +102,6 @@ class ContainerV1Consumer(dict): def __init__(__self__, *, name: Optional[str] = None, url: Optional[str] = None): - """ - :param str name: Human-readable name for the Container. Does not have - to be unique. - :param str url: The consumer URL. - """ if name is not None: pulumi.set(__self__, "name", name) if url is not None: @@ -137,18 +110,11 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[str]: - """ - Human-readable name for the Container. Does not have - to be unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def url(self) -> Optional[str]: - """ - The consumer URL. - """ return pulumi.get(self, "url") @@ -174,10 +140,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, secret_ref: str, name: Optional[str] = None): - """ - :param str secret_ref: The secret reference / where to find the secret, URL. - :param str name: The name of the secret reference. The reference names must correspond the container type, more details are available [here](https://docs.openstack.org/barbican/stein/api/reference/containers.html). - """ pulumi.set(__self__, "secret_ref", secret_ref) if name is not None: pulumi.set(__self__, "name", name) @@ -185,17 +147,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="secretRef") def secret_ref(self) -> str: - """ - The secret reference / where to find the secret, URL. - """ return pulumi.get(self, "secret_ref") @property @pulumi.getter def name(self) -> Optional[str]: - """ - The name of the secret reference. The reference names must correspond the container type, more details are available [here](https://docs.openstack.org/barbican/stein/api/reference/containers.html). - """ return pulumi.get(self, "name") @@ -227,14 +183,6 @@ def __init__(__self__, *, mode: Optional[str] = None, name: Optional[str] = None, payload_content_type: Optional[str] = None): - """ - :param str algorithm: Algorithm to use for key generation. - :param int bit_length: Bit lenght of key to be generated. - :param str expiration: This is a UTC timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ. If set, the secret will not be available after this time. - :param str mode: The mode to use for key generation. - :param str name: The name of the secret set by the user. - :param str payload_content_type: The media type for the content of the secrets payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ pulumi.set(__self__, "algorithm", algorithm) pulumi.set(__self__, "bit_length", bit_length) if expiration is not None: @@ -249,49 +197,31 @@ def __init__(__self__, *, @property @pulumi.getter def algorithm(self) -> str: - """ - Algorithm to use for key generation. - """ return pulumi.get(self, "algorithm") @property @pulumi.getter(name="bitLength") def bit_length(self) -> int: - """ - Bit lenght of key to be generated. - """ return pulumi.get(self, "bit_length") @property @pulumi.getter def expiration(self) -> Optional[str]: - """ - This is a UTC timestamp in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ. If set, the secret will not be available after this time. - """ return pulumi.get(self, "expiration") @property @pulumi.getter def mode(self) -> Optional[str]: - """ - The mode to use for key generation. - """ return pulumi.get(self, "mode") @property @pulumi.getter def name(self) -> Optional[str]: - """ - The name of the secret set by the user. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> Optional[str]: - """ - The media type for the content of the secrets payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ return pulumi.get(self, "payload_content_type") @@ -336,14 +266,6 @@ def __init__(__self__, *, project_access: Optional[bool] = None, updated_at: Optional[str] = None, users: Optional[Sequence[str]] = None): - """ - :param str created_at: The date the secret was created. - :param bool project_access: Whether the secret is accessible project wide. - Defaults to `true`. - :param str updated_at: The date the secret was last updated. - :param Sequence[str] users: The list of user IDs, which are allowed to access the - secret, when `project_access` is set to `false`. - """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) if project_access is not None: @@ -356,35 +278,21 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[str]: - """ - The date the secret was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[bool]: - """ - Whether the secret is accessible project wide. - Defaults to `true`. - """ return pulumi.get(self, "project_access") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[str]: - """ - The date the secret was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter def users(self) -> Optional[Sequence[str]]: - """ - The list of user IDs, which are allowed to access the - secret, when `project_access` is set to `false`. - """ return pulumi.get(self, "users") @@ -407,13 +315,6 @@ def __init__(__self__, *, updated_at: str, project_access: Optional[bool] = None, users: Optional[Sequence[str]] = None): - """ - :param str created_at: The date the container ACL was created. - :param str updated_at: The date the container ACL was last updated. - :param bool project_access: Whether the container is accessible project wide. - :param Sequence[str] users: The list of user IDs, which are allowed to access the container, - when `project_access` is set to `false`. - """ pulumi.set(__self__, "created_at", created_at) pulumi.set(__self__, "updated_at", updated_at) if project_access is not None: @@ -424,34 +325,21 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The date the container ACL was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The date the container ACL was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[bool]: - """ - Whether the container is accessible project wide. - """ return pulumi.get(self, "project_access") @property @pulumi.getter def users(self) -> Optional[Sequence[str]]: - """ - The list of user IDs, which are allowed to access the container, - when `project_access` is set to `false`. - """ return pulumi.get(self, "users") @@ -460,10 +348,6 @@ class GetContainerConsumerResult(dict): def __init__(__self__, *, name: Optional[str] = None, url: Optional[str] = None): - """ - :param str name: The Container name. - :param str url: The consumer URL. - """ if name is not None: pulumi.set(__self__, "name", name) if url is not None: @@ -472,17 +356,11 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[str]: - """ - The Container name. - """ return pulumi.get(self, "name") @property @pulumi.getter def url(self) -> Optional[str]: - """ - The consumer URL. - """ return pulumi.get(self, "url") @@ -491,10 +369,6 @@ class GetContainerSecretRefResult(dict): def __init__(__self__, *, name: Optional[str] = None, secret_ref: Optional[str] = None): - """ - :param str name: The Container name. - :param str secret_ref: The secret reference / where to find the secret, URL. - """ if name is not None: pulumi.set(__self__, "name", name) if secret_ref is not None: @@ -503,17 +377,11 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> Optional[str]: - """ - The Container name. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="secretRef") def secret_ref(self) -> Optional[str]: - """ - The secret reference / where to find the secret, URL. - """ return pulumi.get(self, "secret_ref") @@ -536,13 +404,6 @@ def __init__(__self__, *, updated_at: str, project_access: Optional[bool] = None, users: Optional[Sequence[str]] = None): - """ - :param str created_at: The date the secret ACL was created. - :param str updated_at: The date the secret ACL was last updated. - :param bool project_access: Whether the secret is accessible project wide. - :param Sequence[str] users: The list of user IDs, which are allowed to access the secret, when - `project_access` is set to `false`. - """ pulumi.set(__self__, "created_at", created_at) pulumi.set(__self__, "updated_at", updated_at) if project_access is not None: @@ -553,34 +414,21 @@ def __init__(__self__, *, @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The date the secret ACL was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The date the secret ACL was last updated. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="projectAccess") def project_access(self) -> Optional[bool]: - """ - Whether the secret is accessible project wide. - """ return pulumi.get(self, "project_access") @property @pulumi.getter def users(self) -> Optional[Sequence[str]]: - """ - The list of user IDs, which are allowed to access the secret, when - `project_access` is set to `false`. - """ return pulumi.get(self, "users") diff --git a/sdk/python/pulumi_openstack/keymanager/secret_v1.py b/sdk/python/pulumi_openstack/keymanager/secret_v1.py index 280b4d9b8..cbe01b60e 100644 --- a/sdk/python/pulumi_openstack/keymanager/secret_v1.py +++ b/sdk/python/pulumi_openstack/keymanager/secret_v1.py @@ -30,24 +30,6 @@ def __init__(__self__, *, secret_type: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a SecretV1 resource. - :param pulumi.Input['SecretV1AclArgs'] acl: Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - :param pulumi.Input[str] algorithm: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[int] bit_length: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] expiration: The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Additional Metadata for the secret. - :param pulumi.Input[str] mode: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] name: Human-readable name for the Secret. Does not have - to be unique. - :param pulumi.Input[str] payload: The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - :param pulumi.Input[str] payload_content_encoding: (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - :param pulumi.Input[str] payload_content_type: (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - :param pulumi.Input[str] secret_type: Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). """ if acl is not None: pulumi.set(__self__, "acl", acl) @@ -77,11 +59,6 @@ def __init__(__self__, *, @property @pulumi.getter def acl(self) -> Optional[pulumi.Input['SecretV1AclArgs']]: - """ - Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - """ return pulumi.get(self, "acl") @acl.setter @@ -91,9 +68,6 @@ def acl(self, value: Optional[pulumi.Input['SecretV1AclArgs']]): @property @pulumi.getter def algorithm(self) -> Optional[pulumi.Input[str]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "algorithm") @algorithm.setter @@ -103,9 +77,6 @@ def algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="bitLength") def bit_length(self) -> Optional[pulumi.Input[int]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "bit_length") @bit_length.setter @@ -115,9 +86,6 @@ def bit_length(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def expiration(self) -> Optional[pulumi.Input[str]]: - """ - The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - """ return pulumi.get(self, "expiration") @expiration.setter @@ -127,9 +95,6 @@ def expiration(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Additional Metadata for the secret. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -139,9 +104,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "mode") @mode.setter @@ -151,10 +113,6 @@ def mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Secret. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -164,9 +122,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def payload(self) -> Optional[pulumi.Input[str]]: - """ - The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - """ return pulumi.get(self, "payload") @payload.setter @@ -176,9 +131,6 @@ def payload(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="payloadContentEncoding") def payload_content_encoding(self) -> Optional[pulumi.Input[str]]: - """ - (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - """ return pulumi.get(self, "payload_content_encoding") @payload_content_encoding.setter @@ -188,9 +140,6 @@ def payload_content_encoding(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> Optional[pulumi.Input[str]]: - """ - (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ return pulumi.get(self, "payload_content_type") @payload_content_type.setter @@ -200,12 +149,6 @@ def payload_content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - """ return pulumi.get(self, "region") @region.setter @@ -215,9 +158,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretType") def secret_type(self) -> Optional[pulumi.Input[str]]: - """ - Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - """ return pulumi.get(self, "secret_type") @secret_type.setter @@ -249,32 +189,6 @@ def __init__(__self__, *, updated_at: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SecretV1 resources. - :param pulumi.Input['SecretV1AclArgs'] acl: Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - :param pulumi.Input[str] algorithm: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] all_metadata: The map of metadata, assigned on the secret, which has been - explicitly and implicitly added. - :param pulumi.Input[int] bit_length: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] content_types: The map of the content types, assigned on the secret. - :param pulumi.Input[str] created_at: The date the secret was created. - :param pulumi.Input[str] creator_id: The creator of the secret. - :param pulumi.Input[str] expiration: The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Additional Metadata for the secret. - :param pulumi.Input[str] mode: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] name: Human-readable name for the Secret. Does not have - to be unique. - :param pulumi.Input[str] payload: The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - :param pulumi.Input[str] payload_content_encoding: (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - :param pulumi.Input[str] payload_content_type: (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - :param pulumi.Input[str] secret_ref: The secret reference / where to find the secret. - :param pulumi.Input[str] secret_type: Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - :param pulumi.Input[str] status: The status of the secret. - :param pulumi.Input[str] updated_at: The date the secret was last updated. """ if acl is not None: pulumi.set(__self__, "acl", acl) @@ -318,11 +232,6 @@ def __init__(__self__, *, @property @pulumi.getter def acl(self) -> Optional[pulumi.Input['SecretV1AclArgs']]: - """ - Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - """ return pulumi.get(self, "acl") @acl.setter @@ -332,9 +241,6 @@ def acl(self, value: Optional[pulumi.Input['SecretV1AclArgs']]): @property @pulumi.getter def algorithm(self) -> Optional[pulumi.Input[str]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "algorithm") @algorithm.setter @@ -344,10 +250,6 @@ def algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="allMetadata") def all_metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The map of metadata, assigned on the secret, which has been - explicitly and implicitly added. - """ return pulumi.get(self, "all_metadata") @all_metadata.setter @@ -357,9 +259,6 @@ def all_metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[st @property @pulumi.getter(name="bitLength") def bit_length(self) -> Optional[pulumi.Input[int]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "bit_length") @bit_length.setter @@ -369,9 +268,6 @@ def bit_length(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="contentTypes") def content_types(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The map of the content types, assigned on the secret. - """ return pulumi.get(self, "content_types") @content_types.setter @@ -381,9 +277,6 @@ def content_types(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[s @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the secret was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -393,9 +286,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="creatorId") def creator_id(self) -> Optional[pulumi.Input[str]]: - """ - The creator of the secret. - """ return pulumi.get(self, "creator_id") @creator_id.setter @@ -405,9 +295,6 @@ def creator_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def expiration(self) -> Optional[pulumi.Input[str]]: - """ - The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - """ return pulumi.get(self, "expiration") @expiration.setter @@ -417,9 +304,6 @@ def expiration(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Additional Metadata for the secret. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -429,9 +313,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "mode") @mode.setter @@ -441,10 +322,6 @@ def mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Secret. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -454,9 +331,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def payload(self) -> Optional[pulumi.Input[str]]: - """ - The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - """ return pulumi.get(self, "payload") @payload.setter @@ -466,9 +340,6 @@ def payload(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="payloadContentEncoding") def payload_content_encoding(self) -> Optional[pulumi.Input[str]]: - """ - (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - """ return pulumi.get(self, "payload_content_encoding") @payload_content_encoding.setter @@ -478,9 +349,6 @@ def payload_content_encoding(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> Optional[pulumi.Input[str]]: - """ - (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ return pulumi.get(self, "payload_content_type") @payload_content_type.setter @@ -490,12 +358,6 @@ def payload_content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - """ return pulumi.get(self, "region") @region.setter @@ -505,9 +367,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretRef") def secret_ref(self) -> Optional[pulumi.Input[str]]: - """ - The secret reference / where to find the secret. - """ return pulumi.get(self, "secret_ref") @secret_ref.setter @@ -517,9 +376,6 @@ def secret_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="secretType") def secret_type(self) -> Optional[pulumi.Input[str]]: - """ - Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - """ return pulumi.get(self, "secret_type") @secret_type.setter @@ -529,9 +385,6 @@ def secret_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the secret. - """ return pulumi.get(self, "status") @status.setter @@ -541,9 +394,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The date the secret was last updated. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -570,101 +420,9 @@ def __init__(__self__, secret_type: Optional[pulumi.Input[str]] = None, __props__=None): """ - ## Example Usage - - ### Simple secret - - ```python - import pulumi - import pulumi_openstack as openstack - - secret1 = openstack.keymanager.SecretV1("secret_1", - algorithm="aes", - bit_length=256, - mode="cbc", - name="mysecret", - payload="foobar", - payload_content_type="text/plain", - secret_type="passphrase", - metadata={ - "key": "foo", - }) - ``` - - ### Secret with whitespaces - - > **Note** If you want to store payload with leading or trailing whitespaces, - it's recommended to store it in a base64 encoding. Plain text payload can also - work, but further addind or removing of the leading or trailing whitespaces - won't be detected as a state change, e.g. changing plain text payload from - ` password ` to `password` won't recreate the secret. - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - secret1 = openstack.keymanager.SecretV1("secret_1", - name="password", - payload=std.base64encode(input="password with the whitespace at the end ").result, - secret_type="passphrase", - payload_content_type="application/octet-stream", - payload_content_encoding="base64") - ``` - - ### Secret with the ACL - - > **Note** Only read ACLs are supported - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - secret1 = openstack.keymanager.SecretV1("secret_1", - name="certificate", - payload=std.file(input="certificate.pem").result, - secret_type="certificate", - payload_content_type="text/plain", - acl={ - "read": { - "project_access": False, - "users": [ - "userid1", - "userid2", - ], - }, - }) - ``` - - ## Import - - Secrets can be imported using the secret id (the last part of the secret reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/secretV1:SecretV1 secret_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74 - ``` - + Create a SecretV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Union['SecretV1AclArgs', 'SecretV1AclArgsDict']] acl: Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - :param pulumi.Input[str] algorithm: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[int] bit_length: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] expiration: The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Additional Metadata for the secret. - :param pulumi.Input[str] mode: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] name: Human-readable name for the Secret. Does not have - to be unique. - :param pulumi.Input[str] payload: The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - :param pulumi.Input[str] payload_content_encoding: (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - :param pulumi.Input[str] payload_content_type: (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - :param pulumi.Input[str] secret_type: Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). """ ... @overload @@ -673,81 +431,7 @@ def __init__(__self__, args: Optional[SecretV1Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Example Usage - - ### Simple secret - - ```python - import pulumi - import pulumi_openstack as openstack - - secret1 = openstack.keymanager.SecretV1("secret_1", - algorithm="aes", - bit_length=256, - mode="cbc", - name="mysecret", - payload="foobar", - payload_content_type="text/plain", - secret_type="passphrase", - metadata={ - "key": "foo", - }) - ``` - - ### Secret with whitespaces - - > **Note** If you want to store payload with leading or trailing whitespaces, - it's recommended to store it in a base64 encoding. Plain text payload can also - work, but further addind or removing of the leading or trailing whitespaces - won't be detected as a state change, e.g. changing plain text payload from - ` password ` to `password` won't recreate the secret. - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - secret1 = openstack.keymanager.SecretV1("secret_1", - name="password", - payload=std.base64encode(input="password with the whitespace at the end ").result, - secret_type="passphrase", - payload_content_type="application/octet-stream", - payload_content_encoding="base64") - ``` - - ### Secret with the ACL - - > **Note** Only read ACLs are supported - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - secret1 = openstack.keymanager.SecretV1("secret_1", - name="certificate", - payload=std.file(input="certificate.pem").result, - secret_type="certificate", - payload_content_type="text/plain", - acl={ - "read": { - "project_access": False, - "users": [ - "userid1", - "userid2", - ], - }, - }) - ``` - - ## Import - - Secrets can be imported using the secret id (the last part of the secret reference), e.g.: - - ```sh - $ pulumi import openstack:keymanager/secretV1:SecretV1 secret_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74 - ``` - + Create a SecretV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SecretV1Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -841,32 +525,6 @@ def get(resource_name: str, :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[Union['SecretV1AclArgs', 'SecretV1AclArgsDict']] acl: Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - :param pulumi.Input[str] algorithm: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] all_metadata: The map of metadata, assigned on the secret, which has been - explicitly and implicitly added. - :param pulumi.Input[int] bit_length: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] content_types: The map of the content types, assigned on the secret. - :param pulumi.Input[str] created_at: The date the secret was created. - :param pulumi.Input[str] creator_id: The creator of the secret. - :param pulumi.Input[str] expiration: The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Additional Metadata for the secret. - :param pulumi.Input[str] mode: Metadata provided by a user or system for informational purposes. - :param pulumi.Input[str] name: Human-readable name for the Secret. Does not have - to be unique. - :param pulumi.Input[str] payload: The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - :param pulumi.Input[str] payload_content_encoding: (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - :param pulumi.Input[str] payload_content_type: (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - :param pulumi.Input[str] region: The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - :param pulumi.Input[str] secret_ref: The secret reference / where to find the secret. - :param pulumi.Input[str] secret_type: Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - :param pulumi.Input[str] status: The status of the secret. - :param pulumi.Input[str] updated_at: The date the secret was last updated. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -896,159 +554,95 @@ def get(resource_name: str, @property @pulumi.getter def acl(self) -> pulumi.Output['outputs.SecretV1Acl']: - """ - Allows to control an access to a secret. Currently only the - `read` operation is supported. If not specified, the secret is accessible - project wide. - """ return pulumi.get(self, "acl") @property @pulumi.getter def algorithm(self) -> pulumi.Output[str]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "algorithm") @property @pulumi.getter(name="allMetadata") def all_metadata(self) -> pulumi.Output[Mapping[str, str]]: - """ - The map of metadata, assigned on the secret, which has been - explicitly and implicitly added. - """ return pulumi.get(self, "all_metadata") @property @pulumi.getter(name="bitLength") def bit_length(self) -> pulumi.Output[int]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "bit_length") @property @pulumi.getter(name="contentTypes") def content_types(self) -> pulumi.Output[Mapping[str, str]]: - """ - The map of the content types, assigned on the secret. - """ return pulumi.get(self, "content_types") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The date the secret was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="creatorId") def creator_id(self) -> pulumi.Output[str]: - """ - The creator of the secret. - """ return pulumi.get(self, "creator_id") @property @pulumi.getter def expiration(self) -> pulumi.Output[Optional[str]]: - """ - The expiration time of the secret in the RFC3339 timestamp format (e.g. `2019-03-09T12:58:49Z`). If omitted, a secret will never expire. Changing this creates a new secret. - """ return pulumi.get(self, "expiration") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Additional Metadata for the secret. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def mode(self) -> pulumi.Output[str]: - """ - Metadata provided by a user or system for informational purposes. - """ return pulumi.get(self, "mode") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the Secret. Does not have - to be unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def payload(self) -> pulumi.Output[Optional[str]]: - """ - The secret's data to be stored. **payload\\_content\\_type** must also be supplied if **payload** is included. - """ return pulumi.get(self, "payload") @property @pulumi.getter(name="payloadContentEncoding") def payload_content_encoding(self) -> pulumi.Output[Optional[str]]: - """ - (required if **payload** is encoded) The encoding used for the payload to be able to include it in the JSON request. Must be either `base64` or `binary`. - """ return pulumi.get(self, "payload_content_encoding") @property @pulumi.getter(name="payloadContentType") def payload_content_type(self) -> pulumi.Output[Optional[str]]: - """ - (required if **payload** is included) The media type for the content of the payload. Must be one of `text/plain`, `text/plain;charset=utf-8`, `text/plain; charset=utf-8`, `application/octet-stream`, `application/pkcs8`. - """ return pulumi.get(self, "payload_content_type") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V1 KeyManager client. - A KeyManager client is needed to create a secret. If omitted, the - `region` argument of the provider is used. Changing this creates a new - V1 secret. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="secretRef") def secret_ref(self) -> pulumi.Output[str]: - """ - The secret reference / where to find the secret. - """ return pulumi.get(self, "secret_ref") @property @pulumi.getter(name="secretType") def secret_type(self) -> pulumi.Output[str]: - """ - Used to indicate the type of secret being stored. For more information see [Secret types](https://docs.openstack.org/barbican/latest/api/reference/secret_types.html). - """ return pulumi.get(self, "secret_type") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the secret. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The date the secret was last updated. - """ return pulumi.get(self, "updated_at") diff --git a/sdk/python/pulumi_openstack/lb_flavorprofile_v2.py b/sdk/python/pulumi_openstack/lb_flavorprofile_v2.py index c7bc23487..b1690200f 100644 --- a/sdk/python/pulumi_openstack/lb_flavorprofile_v2.py +++ b/sdk/python/pulumi_openstack/lb_flavorprofile_v2.py @@ -20,14 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a LbFlavorprofileV2 resource. - :param pulumi.Input[str] flavor_data: String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - :param pulumi.Input[str] provider_name: The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. - :param pulumi.Input[str] name: Name of the flavorprofile. Changing this updates the existing - flavorprofile. """ pulumi.set(__self__, "flavor_data", flavor_data) pulumi.set(__self__, "provider_name", provider_name) @@ -39,12 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="flavorData") def flavor_data(self) -> pulumi.Input[str]: - """ - String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "flavor_data") @flavor_data.setter @@ -54,10 +40,6 @@ def flavor_data(self, value: pulumi.Input[str]): @property @pulumi.getter(name="providerName") def provider_name(self) -> pulumi.Input[str]: - """ - The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "provider_name") @provider_name.setter @@ -67,10 +49,6 @@ def provider_name(self, value: pulumi.Input[str]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the flavorprofile. Changing this updates the existing - flavorprofile. - """ return pulumi.get(self, "name") @name.setter @@ -96,14 +74,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering LbFlavorprofileV2 resources. - :param pulumi.Input[str] flavor_data: String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - :param pulumi.Input[str] name: Name of the flavorprofile. Changing this updates the existing - flavorprofile. - :param pulumi.Input[str] provider_name: The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. """ if flavor_data is not None: pulumi.set(__self__, "flavor_data", flavor_data) @@ -117,12 +87,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="flavorData") def flavor_data(self) -> Optional[pulumi.Input[str]]: - """ - String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "flavor_data") @flavor_data.setter @@ -132,10 +96,6 @@ def flavor_data(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Name of the flavorprofile. Changing this updates the existing - flavorprofile. - """ return pulumi.get(self, "name") @name.setter @@ -145,10 +105,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="providerName") def provider_name(self) -> Optional[pulumi.Input[str]]: - """ - The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "provider_name") @provider_name.setter @@ -165,7 +121,12 @@ def region(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "region", value) +warnings.warn("""openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2""", DeprecationWarning) + + class LbFlavorprofileV2(pulumi.CustomResource): + warnings.warn("""openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -176,57 +137,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 load balancer flavorprofile resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ### Using jsonencode - - ```python - import pulumi - import json - import pulumi_openstack as openstack - - flavorprofile1 = openstack.LbFlavorprofileV2("flavorprofile_1", - name="amphora-single-profile", - provider_name="amphora", - flavor_data=json.dumps({ - "loadbalancer_topology": "SINGLE", - })) - ``` - - ### Using plain string - - ```python - import pulumi - import pulumi_openstack as openstack - - flavorprofile1 = openstack.LbFlavorprofileV2("flavorprofile_1", - name="amphora-single-profile", - provider_name="amphora", - flavor_data="{\\"loadbalancer_topology\\": \\"SINGLE\\"}") - ``` - - ## Import - - flavorprofiles can be imported using their `id`. Example: - - ```sh - $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b - ``` - + Create a LbFlavorprofileV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] flavor_data: String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - :param pulumi.Input[str] name: Name of the flavorprofile. Changing this updates the existing - flavorprofile. - :param pulumi.Input[str] provider_name: The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. """ ... @overload @@ -235,47 +148,7 @@ def __init__(__self__, args: LbFlavorprofileV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 load balancer flavorprofile resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - ## Example Usage - - ### Using jsonencode - - ```python - import pulumi - import json - import pulumi_openstack as openstack - - flavorprofile1 = openstack.LbFlavorprofileV2("flavorprofile_1", - name="amphora-single-profile", - provider_name="amphora", - flavor_data=json.dumps({ - "loadbalancer_topology": "SINGLE", - })) - ``` - - ### Using plain string - - ```python - import pulumi - import pulumi_openstack as openstack - - flavorprofile1 = openstack.LbFlavorprofileV2("flavorprofile_1", - name="amphora-single-profile", - provider_name="amphora", - flavor_data="{\\"loadbalancer_topology\\": \\"SINGLE\\"}") - ``` - - ## Import - - flavorprofiles can be imported using their `id`. Example: - - ```sh - $ pulumi import openstack:index/lbFlavorprofileV2:LbFlavorprofileV2 flavorprofile_1 2a0f2240-c5e6-41de-896d-e80d97428d6b - ``` - + Create a LbFlavorprofileV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param LbFlavorprofileV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -296,6 +169,7 @@ def _internal_init(__self__, provider_name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, __props__=None): + pulumi.log.warn("""LbFlavorprofileV2 is deprecated: openstack.index/lbflavorprofilev2.LbFlavorprofileV2 has been deprecated in favor of openstack.loadbalancer/flavorprofilev2.FlavorprofileV2""") 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') @@ -333,14 +207,6 @@ def get(resource_name: str, :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] flavor_data: String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - :param pulumi.Input[str] name: Name of the flavorprofile. Changing this updates the existing - flavorprofile. - :param pulumi.Input[str] provider_name: The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -355,30 +221,16 @@ def get(resource_name: str, @property @pulumi.getter(name="flavorData") def flavor_data(self) -> pulumi.Output[str]: - """ - String that passes the flavor_data for the flavorprofile. - The data that are allowed depend on the `provider_name` that is passed. jsonencode - can be used for readability as shown in the example above. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "flavor_data") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Name of the flavorprofile. Changing this updates the existing - flavorprofile. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="providerName") def provider_name(self) -> pulumi.Output[str]: - """ - The provider_name that the flavor_profile will use. - Changing this updates the existing flavorprofile. - """ return pulumi.get(self, "provider_name") @property diff --git a/sdk/python/pulumi_openstack/lb_loadbalancer_v2.py b/sdk/python/pulumi_openstack/lb_loadbalancer_v2.py index 6053a1827..451c1f5e3 100644 --- a/sdk/python/pulumi_openstack/lb_loadbalancer_v2.py +++ b/sdk/python/pulumi_openstack/lb_loadbalancer_v2.py @@ -31,47 +31,6 @@ def __init__(__self__, *, vip_subnet_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a LbLoadbalancerV2 resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] availability_zone: The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - :param pulumi.Input[str] description: Human-readable description for the Loadbalancer. - :param pulumi.Input[str] flavor_id: The UUID of a flavor. Changing this creates a new - loadbalancer. - :param pulumi.Input[str] loadbalancer_provider: The name of the provider. Changing this - creates a new loadbalancer. - :param pulumi.Input[str] name: Human-readable name for the Loadbalancer. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_address: The ip address of the load balancer. - Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_network_id: The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_port_id: The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_qos_policy_id: The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - :param pulumi.Input[str] vip_subnet_id: The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -107,10 +66,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -120,11 +75,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -134,9 +84,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the Loadbalancer. - """ return pulumi.get(self, "description") @description.setter @@ -146,10 +93,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of a flavor. Changing this creates a new - loadbalancer. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -159,10 +102,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="loadbalancerProvider") def loadbalancer_provider(self) -> Optional[pulumi.Input[str]]: - """ - The name of the provider. Changing this - creates a new loadbalancer. - """ return pulumi.get(self, "loadbalancer_provider") @loadbalancer_provider.setter @@ -172,10 +111,6 @@ def loadbalancer_provider(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Loadbalancer. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -185,12 +120,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - """ return pulumi.get(self, "region") @region.setter @@ -200,11 +129,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -214,10 +138,6 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @tags.setter @@ -227,11 +147,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -241,10 +156,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipAddress") def vip_address(self) -> Optional[pulumi.Input[str]]: - """ - The ip address of the load balancer. - Changing this creates a new loadbalancer. - """ return pulumi.get(self, "vip_address") @vip_address.setter @@ -254,13 +165,6 @@ def vip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipNetworkId") def vip_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_network_id") @vip_network_id.setter @@ -270,11 +174,6 @@ def vip_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipPortId") def vip_port_id(self) -> Optional[pulumi.Input[str]]: - """ - The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_port_id") @vip_port_id.setter @@ -284,10 +183,6 @@ def vip_port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipQosPolicyId") def vip_qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - """ return pulumi.get(self, "vip_qos_policy_id") @vip_qos_policy_id.setter @@ -297,13 +192,6 @@ def vip_qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipSubnetId") def vip_subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_subnet_id") @vip_subnet_id.setter @@ -331,47 +219,6 @@ def __init__(__self__, *, vip_subnet_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering LbLoadbalancerV2 resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] availability_zone: The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - :param pulumi.Input[str] description: Human-readable description for the Loadbalancer. - :param pulumi.Input[str] flavor_id: The UUID of a flavor. Changing this creates a new - loadbalancer. - :param pulumi.Input[str] loadbalancer_provider: The name of the provider. Changing this - creates a new loadbalancer. - :param pulumi.Input[str] name: Human-readable name for the Loadbalancer. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_address: The ip address of the load balancer. - Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_network_id: The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_port_id: The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_qos_policy_id: The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - :param pulumi.Input[str] vip_subnet_id: The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -407,10 +254,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -420,11 +263,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -434,9 +272,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the Loadbalancer. - """ return pulumi.get(self, "description") @description.setter @@ -446,10 +281,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="flavorId") def flavor_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of a flavor. Changing this creates a new - loadbalancer. - """ return pulumi.get(self, "flavor_id") @flavor_id.setter @@ -459,10 +290,6 @@ def flavor_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="loadbalancerProvider") def loadbalancer_provider(self) -> Optional[pulumi.Input[str]]: - """ - The name of the provider. Changing this - creates a new loadbalancer. - """ return pulumi.get(self, "loadbalancer_provider") @loadbalancer_provider.setter @@ -472,10 +299,6 @@ def loadbalancer_provider(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Loadbalancer. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -485,12 +308,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - """ return pulumi.get(self, "region") @region.setter @@ -500,11 +317,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -514,10 +326,6 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @tags.setter @@ -527,11 +335,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -541,10 +344,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipAddress") def vip_address(self) -> Optional[pulumi.Input[str]]: - """ - The ip address of the load balancer. - Changing this creates a new loadbalancer. - """ return pulumi.get(self, "vip_address") @vip_address.setter @@ -554,13 +353,6 @@ def vip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipNetworkId") def vip_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_network_id") @vip_network_id.setter @@ -570,11 +362,6 @@ def vip_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipPortId") def vip_port_id(self) -> Optional[pulumi.Input[str]]: - """ - The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_port_id") @vip_port_id.setter @@ -584,10 +371,6 @@ def vip_port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipQosPolicyId") def vip_qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - """ return pulumi.get(self, "vip_qos_policy_id") @vip_qos_policy_id.setter @@ -597,13 +380,6 @@ def vip_qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vipSubnetId") def vip_subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_subnet_id") @vip_subnet_id.setter @@ -611,7 +387,12 @@ def vip_subnet_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "vip_subnet_id", value) +warnings.warn("""openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer""", DeprecationWarning) + + class LbLoadbalancerV2(pulumi.CustomResource): + warnings.warn("""openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer""", DeprecationWarning) + @overload def __init__(__self__, resource_name: str, @@ -633,71 +414,9 @@ def __init__(__self__, vip_subnet_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 loadbalancer resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - lb1 = openstack.LbLoadbalancerV2("lb_1", vip_subnet_id="d9415786-5f1a-428b-b35f-2f1523e146d2") - ``` - - ## Import - - Load Balancer can be imported using the Load Balancer ID, e.g.: - - ```sh - $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 - ``` - + Create a LbLoadbalancerV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] availability_zone: The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - :param pulumi.Input[str] description: Human-readable description for the Loadbalancer. - :param pulumi.Input[str] flavor_id: The UUID of a flavor. Changing this creates a new - loadbalancer. - :param pulumi.Input[str] loadbalancer_provider: The name of the provider. Changing this - creates a new loadbalancer. - :param pulumi.Input[str] name: Human-readable name for the Loadbalancer. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_address: The ip address of the load balancer. - Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_network_id: The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_port_id: The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_qos_policy_id: The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - :param pulumi.Input[str] vip_subnet_id: The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. """ ... @overload @@ -706,28 +425,7 @@ def __init__(__self__, args: Optional[LbLoadbalancerV2Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 loadbalancer resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - lb1 = openstack.LbLoadbalancerV2("lb_1", vip_subnet_id="d9415786-5f1a-428b-b35f-2f1523e146d2") - ``` - - ## Import - - Load Balancer can be imported using the Load Balancer ID, e.g.: - - ```sh - $ pulumi import openstack:index/lbLoadbalancerV2:LbLoadbalancerV2 loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76 - ``` - + Create a LbLoadbalancerV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param LbLoadbalancerV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -759,6 +457,7 @@ def _internal_init(__self__, vip_qos_policy_id: Optional[pulumi.Input[str]] = None, vip_subnet_id: Optional[pulumi.Input[str]] = None, __props__=None): + pulumi.log.warn("""LbLoadbalancerV2 is deprecated: openstack.index/lbloadbalancerv2.LbLoadbalancerV2 has been deprecated in favor of openstack.loadbalancer/loadbalancer.LoadBalancer""") 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') @@ -782,8 +481,6 @@ def _internal_init(__self__, __props__.__dict__["vip_port_id"] = vip_port_id __props__.__dict__["vip_qos_policy_id"] = vip_qos_policy_id __props__.__dict__["vip_subnet_id"] = vip_subnet_id - alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:loadbalancer/loadBalancer:LoadBalancer")]) - opts = pulumi.ResourceOptions.merge(opts, alias_opts) super(LbLoadbalancerV2, __self__).__init__( 'openstack:index/lbLoadbalancerV2:LbLoadbalancerV2', resource_name, @@ -816,47 +513,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] availability_zone: The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - :param pulumi.Input[str] description: Human-readable description for the Loadbalancer. - :param pulumi.Input[str] flavor_id: The UUID of a flavor. Changing this creates a new - loadbalancer. - :param pulumi.Input[str] loadbalancer_provider: The name of the provider. Changing this - creates a new loadbalancer. - :param pulumi.Input[str] name: Human-readable name for the Loadbalancer. Does not have - to be unique. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_address: The ip address of the load balancer. - Changing this creates a new loadbalancer. - :param pulumi.Input[str] vip_network_id: The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_port_id: The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - :param pulumi.Input[str] vip_qos_policy_id: The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - :param pulumi.Input[str] vip_subnet_id: The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -882,146 +538,75 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the Loadbalancer. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> pulumi.Output[Optional[str]]: - """ - The availability zone of the Loadbalancer. - Changing this creates a new loadbalancer. Available only for Octavia - **minor version 2.14 or later**. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the Loadbalancer. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> pulumi.Output[str]: - """ - The UUID of a flavor. Changing this creates a new - loadbalancer. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="loadbalancerProvider") def loadbalancer_provider(self) -> pulumi.Output[str]: - """ - The name of the provider. Changing this - creates a new loadbalancer. - """ return pulumi.get(self, "loadbalancer_provider") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the Loadbalancer. Does not have - to be unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an LB member. If omitted, the - `region` argument of the provider is used. Changing this creates a new - LB member. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> pulumi.Output[Sequence[str]]: - """ - A list of security group IDs to apply to the - loadbalancer. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of simple strings assigned to the loadbalancer. - Available only for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the Loadbalancer. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new loadbalancer. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="vipAddress") def vip_address(self) -> pulumi.Output[str]: - """ - The ip address of the load balancer. - Changing this creates a new loadbalancer. - """ return pulumi.get(self, "vip_address") @property @pulumi.getter(name="vipNetworkId") def vip_network_id(self) -> pulumi.Output[str]: - """ - The network on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_network_id") @property @pulumi.getter(name="vipPortId") def vip_port_id(self) -> pulumi.Output[str]: - """ - The port UUID that the loadbalancer will use. - Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_port_id") @property @pulumi.getter(name="vipQosPolicyId") def vip_qos_policy_id(self) -> pulumi.Output[Optional[str]]: - """ - The ID of the QoS Policy which will - be applied to the Virtual IP (VIP). - """ return pulumi.get(self, "vip_qos_policy_id") @property @pulumi.getter(name="vipSubnetId") def vip_subnet_id(self) -> pulumi.Output[str]: - """ - The subnet on which to allocate the - Loadbalancer's address. A tenant can only create Loadbalancers on networks - authorized by policy (e.g. networks that belong to them or networks that - are shared). Changing this creates a new loadbalancer. Exactly one of - `vip_subnet_id`, `vip_network_id` or `vip_port_id` has to be defined. - """ return pulumi.get(self, "vip_subnet_id") diff --git a/sdk/python/pulumi_openstack/loadbalancer/__init__.py b/sdk/python/pulumi_openstack/loadbalancer/__init__.py index 3ada7e6a7..8623c041d 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/__init__.py +++ b/sdk/python/pulumi_openstack/loadbalancer/__init__.py @@ -5,10 +5,12 @@ from .. import _utilities import typing # Export this package's modules as members: +from .flavorprofile_v2 import * from .get_flavor_v2 import * from .l7_policy_v2 import * from .l7_rule_v2 import * from .listener import * +from .load_balancer import * from .member import * from .members import * from .monitor import * diff --git a/sdk/python/pulumi_openstack/loadbalancer/_inputs.py b/sdk/python/pulumi_openstack/loadbalancer/_inputs.py index 9c83dfdcc..1438b1c5c 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/_inputs.py +++ b/sdk/python/pulumi_openstack/loadbalancer/_inputs.py @@ -27,26 +27,6 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, subnet_id: Optional[pulumi.Input[str]] = None, weight: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[str] address: The IP address of the members to receive traffic from - the load balancer. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - :param pulumi.Input[bool] admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param pulumi.Input[bool] backup: A bool that indicates whether the member is - backup. **Requires octavia minor version 2.1 or later**. - :param pulumi.Input[str] id: The unique ID for the members. - :param pulumi.Input[str] monitor_address: An alternate IP address used for health - monitoring a backend member. - :param pulumi.Input[int] monitor_port: An alternate protocol port used for health - monitoring a backend member. - :param pulumi.Input[str] name: Human-readable name for the member. - :param pulumi.Input[str] subnet_id: The subnet in which to access the member. - :param pulumi.Input[int] weight: A positive integer value that indicates the relative - portion of traffic that this members should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ pulumi.set(__self__, "address", address) pulumi.set(__self__, "protocol_port", protocol_port) if admin_state_up is not None: @@ -69,10 +49,6 @@ def __init__(__self__, *, @property @pulumi.getter def address(self) -> pulumi.Input[str]: - """ - The IP address of the members to receive traffic from - the load balancer. - """ return pulumi.get(self, "address") @address.setter @@ -82,9 +58,6 @@ def address(self, value: pulumi.Input[str]): @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> pulumi.Input[int]: - """ - The port on which to listen for client traffic. - """ return pulumi.get(self, "protocol_port") @protocol_port.setter @@ -94,10 +67,6 @@ def protocol_port(self, value: pulumi.Input[int]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -107,10 +76,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def backup(self) -> Optional[pulumi.Input[bool]]: - """ - A bool that indicates whether the member is - backup. **Requires octavia minor version 2.1 or later**. - """ return pulumi.get(self, "backup") @backup.setter @@ -120,9 +85,6 @@ def backup(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: - """ - The unique ID for the members. - """ return pulumi.get(self, "id") @id.setter @@ -132,10 +94,6 @@ def id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="monitorAddress") def monitor_address(self) -> Optional[pulumi.Input[str]]: - """ - An alternate IP address used for health - monitoring a backend member. - """ return pulumi.get(self, "monitor_address") @monitor_address.setter @@ -145,10 +103,6 @@ def monitor_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="monitorPort") def monitor_port(self) -> Optional[pulumi.Input[int]]: - """ - An alternate protocol port used for health - monitoring a backend member. - """ return pulumi.get(self, "monitor_port") @monitor_port.setter @@ -158,9 +112,6 @@ def monitor_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the member. - """ return pulumi.get(self, "name") @name.setter @@ -170,9 +121,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet in which to access the member. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -182,12 +130,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def weight(self) -> Optional[pulumi.Input[int]]: - """ - A positive integer value that indicates the relative - portion of traffic that this members should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ return pulumi.get(self, "weight") @weight.setter @@ -200,12 +142,6 @@ class PoolPersistenceArgs: def __init__(__self__, *, type: pulumi.Input[str], cookie_name: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] type: The type of persistence mode. The current specification - supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. - :param pulumi.Input[str] cookie_name: The name of the cookie if persistence mode is set - appropriately. Required if `type = APP_COOKIE`. - """ pulumi.set(__self__, "type", type) if cookie_name is not None: pulumi.set(__self__, "cookie_name", cookie_name) @@ -213,10 +149,6 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The type of persistence mode. The current specification - supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. - """ return pulumi.get(self, "type") @type.setter @@ -226,10 +158,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="cookieName") def cookie_name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the cookie if persistence mode is set - appropriately. Required if `type = APP_COOKIE`. - """ return pulumi.get(self, "cookie_name") @cookie_name.setter diff --git a/sdk/python/pulumi_openstack/loadbalancer/flavorprofile_v2.py b/sdk/python/pulumi_openstack/loadbalancer/flavorprofile_v2.py new file mode 100644 index 000000000..66785f480 --- /dev/null +++ b/sdk/python/pulumi_openstack/loadbalancer/flavorprofile_v2.py @@ -0,0 +1,236 @@ +# 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__ = ['FlavorprofileV2Args', 'FlavorprofileV2'] + +@pulumi.input_type +class FlavorprofileV2Args: + def __init__(__self__, *, + flavor_data: pulumi.Input[str], + provider_name: pulumi.Input[str], + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a FlavorprofileV2 resource. + """ + pulumi.set(__self__, "flavor_data", flavor_data) + pulumi.set(__self__, "provider_name", provider_name) + if name is not None: + pulumi.set(__self__, "name", name) + if region is not None: + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="flavorData") + def flavor_data(self) -> pulumi.Input[str]: + return pulumi.get(self, "flavor_data") + + @flavor_data.setter + def flavor_data(self, value: pulumi.Input[str]): + pulumi.set(self, "flavor_data", value) + + @property + @pulumi.getter(name="providerName") + def provider_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "provider_name") + + @provider_name.setter + def provider_name(self, value: pulumi.Input[str]): + pulumi.set(self, "provider_name", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + +@pulumi.input_type +class _FlavorprofileV2State: + def __init__(__self__, *, + flavor_data: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering FlavorprofileV2 resources. + """ + if flavor_data is not None: + pulumi.set(__self__, "flavor_data", flavor_data) + if name is not None: + pulumi.set(__self__, "name", name) + if provider_name is not None: + pulumi.set(__self__, "provider_name", provider_name) + if region is not None: + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="flavorData") + def flavor_data(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "flavor_data") + + @flavor_data.setter + def flavor_data(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "flavor_data", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="providerName") + def provider_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "provider_name") + + @provider_name.setter + def provider_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "provider_name", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + +class FlavorprofileV2(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + flavor_data: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Create a FlavorprofileV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: FlavorprofileV2Args, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a FlavorprofileV2 resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param FlavorprofileV2Args 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(FlavorprofileV2Args, 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, + flavor_data: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, + region: 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__ = FlavorprofileV2Args.__new__(FlavorprofileV2Args) + + if flavor_data is None and not opts.urn: + raise TypeError("Missing required property 'flavor_data'") + __props__.__dict__["flavor_data"] = flavor_data + __props__.__dict__["name"] = name + if provider_name is None and not opts.urn: + raise TypeError("Missing required property 'provider_name'") + __props__.__dict__["provider_name"] = provider_name + __props__.__dict__["region"] = region + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/lbFlavorprofileV2:LbFlavorprofileV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(FlavorprofileV2, __self__).__init__( + 'openstack:loadbalancer/flavorprofileV2:FlavorprofileV2', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + flavor_data: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + provider_name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None) -> 'FlavorprofileV2': + """ + Get an existing FlavorprofileV2 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _FlavorprofileV2State.__new__(_FlavorprofileV2State) + + __props__.__dict__["flavor_data"] = flavor_data + __props__.__dict__["name"] = name + __props__.__dict__["provider_name"] = provider_name + __props__.__dict__["region"] = region + return FlavorprofileV2(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="flavorData") + def flavor_data(self) -> pulumi.Output[str]: + return pulumi.get(self, "flavor_data") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="providerName") + def provider_name(self) -> pulumi.Output[str]: + return pulumi.get(self, "provider_name") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + diff --git a/sdk/python/pulumi_openstack/loadbalancer/get_flavor_v2.py b/sdk/python/pulumi_openstack/loadbalancer/get_flavor_v2.py index 783e4953d..eb20e936d 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/get_flavor_v2.py +++ b/sdk/python/pulumi_openstack/loadbalancer/get_flavor_v2.py @@ -47,33 +47,21 @@ def __init__(__self__, description=None, enabled=None, flavor_id=None, flavor_pr @property @pulumi.getter def description(self) -> str: - """ - The description of the flavor. - """ return pulumi.get(self, "description") @property @pulumi.getter def enabled(self) -> bool: - """ - Is the flavor enabled. - """ return pulumi.get(self, "enabled") @property @pulumi.getter(name="flavorId") def flavor_id(self) -> str: - """ - The ID of the flavor. - """ return pulumi.get(self, "flavor_id") @property @pulumi.getter(name="flavorProfileId") def flavor_profile_id(self) -> str: - """ - The ID of the flavor profile. - """ return pulumi.get(self, "flavor_profile_id") @property @@ -87,9 +75,6 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - The name of the flavor. - """ return pulumi.get(self, "name") @property @@ -118,22 +103,7 @@ def get_flavor_v2(flavor_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFlavorV2Result: """ - Use this data source to get the ID of an OpenStack Load Balancer flavor. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - flavor1 = openstack.loadbalancer.get_flavor_v2(name="flavor_1") - ``` - - - :param str flavor_id: The ID of the flavor. Exactly one of `name`, `flavor_id` is required to be set. - :param str name: The name of the flavor. Exactly one of `name`, `flavor_id` is required to be set. - :param str region: The region in which to obtain the V2 Load Balancer client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['flavorId'] = flavor_id @@ -158,21 +128,6 @@ def get_flavor_v2_output(flavor_id: Optional[pulumi.Input[Optional[str]]] = None region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFlavorV2Result]: """ - Use this data source to get the ID of an OpenStack Load Balancer flavor. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - flavor1 = openstack.loadbalancer.get_flavor_v2(name="flavor_1") - ``` - - - :param str flavor_id: The ID of the flavor. Exactly one of `name`, `flavor_id` is required to be set. - :param str name: The name of the flavor. Exactly one of `name`, `flavor_id` is required to be set. - :param str region: The region in which to obtain the V2 Load Balancer client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/loadbalancer/l7_policy_v2.py b/sdk/python/pulumi_openstack/loadbalancer/l7_policy_v2.py index b61e411db..bb3e225c9 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/l7_policy_v2.py +++ b/sdk/python/pulumi_openstack/loadbalancer/l7_policy_v2.py @@ -28,33 +28,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a L7PolicyV2 resource. - :param pulumi.Input[str] action: The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - :param pulumi.Input[str] listener_id: The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] description: Human-readable description for the L7 Policy. - :param pulumi.Input[str] name: Human-readable name for the L7 Policy. Does not have - to be unique. - :param pulumi.Input[int] position: The position of this policy on the listener. Positions start at 1. - :param pulumi.Input[int] redirect_http_code: Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - :param pulumi.Input[str] redirect_pool_id: Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - :param pulumi.Input[str] redirect_prefix: Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - :param pulumi.Input[str] redirect_url: Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. """ pulumi.set(__self__, "action", action) pulumi.set(__self__, "listener_id", listener_id) @@ -82,10 +55,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> pulumi.Input[str]: - """ - The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - """ return pulumi.get(self, "action") @action.setter @@ -95,10 +64,6 @@ def action(self, value: pulumi.Input[str]): @property @pulumi.getter(name="listenerId") def listener_id(self) -> pulumi.Input[str]: - """ - The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - """ return pulumi.get(self, "listener_id") @listener_id.setter @@ -108,10 +73,6 @@ def listener_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -121,9 +82,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the L7 Policy. - """ return pulumi.get(self, "description") @description.setter @@ -133,10 +91,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the L7 Policy. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -146,9 +100,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def position(self) -> Optional[pulumi.Input[int]]: - """ - The position of this policy on the listener. Positions start at 1. - """ return pulumi.get(self, "position") @position.setter @@ -158,12 +109,6 @@ def position(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="redirectHttpCode") def redirect_http_code(self) -> Optional[pulumi.Input[int]]: - """ - Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - """ return pulumi.get(self, "redirect_http_code") @redirect_http_code.setter @@ -173,10 +118,6 @@ def redirect_http_code(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="redirectPoolId") def redirect_pool_id(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - """ return pulumi.get(self, "redirect_pool_id") @redirect_pool_id.setter @@ -186,10 +127,6 @@ def redirect_pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="redirectPrefix") def redirect_prefix(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - """ return pulumi.get(self, "redirect_prefix") @redirect_prefix.setter @@ -199,10 +136,6 @@ def redirect_prefix(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="redirectUrl") def redirect_url(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - """ return pulumi.get(self, "redirect_url") @redirect_url.setter @@ -212,12 +145,6 @@ def redirect_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - """ return pulumi.get(self, "region") @region.setter @@ -227,11 +154,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -256,33 +178,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering L7PolicyV2 resources. - :param pulumi.Input[str] action: The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] description: Human-readable description for the L7 Policy. - :param pulumi.Input[str] listener_id: The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - :param pulumi.Input[str] name: Human-readable name for the L7 Policy. Does not have - to be unique. - :param pulumi.Input[int] position: The position of this policy on the listener. Positions start at 1. - :param pulumi.Input[int] redirect_http_code: Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - :param pulumi.Input[str] redirect_pool_id: Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - :param pulumi.Input[str] redirect_prefix: Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - :param pulumi.Input[str] redirect_url: Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. """ if action is not None: pulumi.set(__self__, "action", action) @@ -312,10 +207,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[pulumi.Input[str]]: - """ - The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - """ return pulumi.get(self, "action") @action.setter @@ -325,10 +216,6 @@ def action(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -338,9 +225,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the L7 Policy. - """ return pulumi.get(self, "description") @description.setter @@ -350,10 +234,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="listenerId") def listener_id(self) -> Optional[pulumi.Input[str]]: - """ - The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - """ return pulumi.get(self, "listener_id") @listener_id.setter @@ -363,10 +243,6 @@ def listener_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the L7 Policy. Does not have - to be unique. - """ return pulumi.get(self, "name") @name.setter @@ -376,9 +252,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def position(self) -> Optional[pulumi.Input[int]]: - """ - The position of this policy on the listener. Positions start at 1. - """ return pulumi.get(self, "position") @position.setter @@ -388,12 +261,6 @@ def position(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="redirectHttpCode") def redirect_http_code(self) -> Optional[pulumi.Input[int]]: - """ - Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - """ return pulumi.get(self, "redirect_http_code") @redirect_http_code.setter @@ -403,10 +270,6 @@ def redirect_http_code(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="redirectPoolId") def redirect_pool_id(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - """ return pulumi.get(self, "redirect_pool_id") @redirect_pool_id.setter @@ -416,10 +279,6 @@ def redirect_pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="redirectPrefix") def redirect_prefix(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - """ return pulumi.get(self, "redirect_prefix") @redirect_prefix.setter @@ -429,10 +288,6 @@ def redirect_prefix(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="redirectUrl") def redirect_url(self) -> Optional[pulumi.Input[str]]: - """ - Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - """ return pulumi.get(self, "redirect_url") @redirect_url.setter @@ -442,12 +297,6 @@ def redirect_url(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - """ return pulumi.get(self, "region") @region.setter @@ -457,11 +306,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -488,81 +332,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a Load Balancer L7 Policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - loadbalancer1 = openstack.LbLoadbalancerV2("loadbalancer_1", - name="loadbalancer_1", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id=loadbalancer1.id) - pool1 = openstack.loadbalancer.Pool("pool_1", - name="pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - loadbalancer_id=loadbalancer1.id) - l7policy1 = openstack.loadbalancer.L7PolicyV2("l7policy_1", - name="test", - action="REDIRECT_TO_POOL", - description="test l7 policy", - position=1, - listener_id=listener1.id, - redirect_pool_id=pool1.id) - ``` - - ## Import - - Load Balancer L7 Policy can be imported using the L7 Policy ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/l7PolicyV2:L7PolicyV2 l7policy_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74 - ``` - + Create a L7PolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] action: The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] description: Human-readable description for the L7 Policy. - :param pulumi.Input[str] listener_id: The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - :param pulumi.Input[str] name: Human-readable name for the L7 Policy. Does not have - to be unique. - :param pulumi.Input[int] position: The position of this policy on the listener. Positions start at 1. - :param pulumi.Input[int] redirect_http_code: Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - :param pulumi.Input[str] redirect_pool_id: Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - :param pulumi.Input[str] redirect_prefix: Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - :param pulumi.Input[str] redirect_url: Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. """ ... @overload @@ -571,52 +343,7 @@ def __init__(__self__, args: L7PolicyV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a Load Balancer L7 Policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - loadbalancer1 = openstack.LbLoadbalancerV2("loadbalancer_1", - name="loadbalancer_1", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id=loadbalancer1.id) - pool1 = openstack.loadbalancer.Pool("pool_1", - name="pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - loadbalancer_id=loadbalancer1.id) - l7policy1 = openstack.loadbalancer.L7PolicyV2("l7policy_1", - name="test", - action="REDIRECT_TO_POOL", - description="test l7 policy", - position=1, - listener_id=listener1.id, - redirect_pool_id=pool1.id) - ``` - - ## Import - - Load Balancer L7 Policy can be imported using the L7 Policy ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/l7PolicyV2:L7PolicyV2 l7policy_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74 - ``` - + Create a L7PolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param L7PolicyV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -698,33 +425,6 @@ def get(resource_name: str, :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: The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] description: Human-readable description for the L7 Policy. - :param pulumi.Input[str] listener_id: The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - :param pulumi.Input[str] name: Human-readable name for the L7 Policy. Does not have - to be unique. - :param pulumi.Input[int] position: The position of this policy on the listener. Positions start at 1. - :param pulumi.Input[int] redirect_http_code: Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - :param pulumi.Input[str] redirect_pool_id: Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - :param pulumi.Input[str] redirect_prefix: Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - :param pulumi.Input[str] redirect_url: Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -747,111 +447,60 @@ def get(resource_name: str, @property @pulumi.getter def action(self) -> pulumi.Output[str]: - """ - The L7 Policy action - can either be REDIRECT\\_TO\\_POOL, - REDIRECT\\_TO\\_URL or REJECT. - """ return pulumi.get(self, "action") @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the L7 Policy. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the L7 Policy. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="listenerId") def listener_id(self) -> pulumi.Output[str]: - """ - The Listener on which the L7 Policy will be associated with. - Changing this creates a new L7 Policy. - """ return pulumi.get(self, "listener_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the L7 Policy. Does not have - to be unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def position(self) -> pulumi.Output[int]: - """ - The position of this policy on the listener. Positions start at 1. - """ return pulumi.get(self, "position") @property @pulumi.getter(name="redirectHttpCode") def redirect_http_code(self) -> pulumi.Output[int]: - """ - Integer. Requests matching this policy will be - redirected to the specified URL or Prefix URL with the HTTP response code. - Valid if action is REDIRECT\\_TO\\_URL or REDIRECT\\_PREFIX. Valid options are: - 301, 302, 303, 307, or 308. Default is 302. New in octavia version 2.9 - """ return pulumi.get(self, "redirect_http_code") @property @pulumi.getter(name="redirectPoolId") def redirect_pool_id(self) -> pulumi.Output[Optional[str]]: - """ - Requests matching this policy will be redirected to the - pool with this ID. Only valid if action is REDIRECT\\_TO\\_POOL. - """ return pulumi.get(self, "redirect_pool_id") @property @pulumi.getter(name="redirectPrefix") def redirect_prefix(self) -> pulumi.Output[Optional[str]]: - """ - Requests matching this policy will be redirected to - this Prefix URL. Only valid if action is REDIRECT\\_PREFIX. - """ return pulumi.get(self, "redirect_prefix") @property @pulumi.getter(name="redirectUrl") def redirect_url(self) -> pulumi.Output[Optional[str]]: - """ - Requests matching this policy will be redirected to this URL. - Only valid if action is REDIRECT\\_TO\\_URL. - """ return pulumi.get(self, "redirect_url") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Policy. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Policy. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Policy. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/loadbalancer/l7_rule_v2.py b/sdk/python/pulumi_openstack/loadbalancer/l7_rule_v2.py index bdc5a8c57..cea0cfc8c 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/l7_rule_v2.py +++ b/sdk/python/pulumi_openstack/loadbalancer/l7_rule_v2.py @@ -25,27 +25,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a L7RuleV2 resource. - :param pulumi.Input[str] compare_type: The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - :param pulumi.Input[str] l7policy_id: The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] type: The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - :param pulumi.Input[str] value: The value to use for the comparison. For example, the file type to - compare. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[bool] invert: When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - :param pulumi.Input[str] key: The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. """ pulumi.set(__self__, "compare_type", compare_type) pulumi.set(__self__, "l7policy_id", l7policy_id) @@ -65,10 +44,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="compareType") def compare_type(self) -> pulumi.Input[str]: - """ - The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - """ return pulumi.get(self, "compare_type") @compare_type.setter @@ -78,10 +53,6 @@ def compare_type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="l7policyId") def l7policy_id(self) -> pulumi.Input[str]: - """ - The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "l7policy_id") @l7policy_id.setter @@ -91,10 +62,6 @@ def l7policy_id(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - """ return pulumi.get(self, "type") @type.setter @@ -104,10 +71,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: - """ - The value to use for the comparison. For example, the file type to - compare. - """ return pulumi.get(self, "value") @value.setter @@ -117,10 +80,6 @@ def value(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -130,10 +89,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def invert(self) -> Optional[pulumi.Input[bool]]: - """ - When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - """ return pulumi.get(self, "invert") @invert.setter @@ -143,10 +98,6 @@ def invert(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: - """ - The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - """ return pulumi.get(self, "key") @key.setter @@ -156,12 +107,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "region") @region.setter @@ -171,11 +116,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -198,28 +138,6 @@ def __init__(__self__, *, value: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering L7RuleV2 resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] compare_type: The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - :param pulumi.Input[bool] invert: When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - :param pulumi.Input[str] key: The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - :param pulumi.Input[str] l7policy_id: The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] listener_id: The ID of the Listener owning this resource. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - :param pulumi.Input[str] type: The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - :param pulumi.Input[str] value: The value to use for the comparison. For example, the file type to - compare. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -245,10 +163,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -258,10 +172,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="compareType") def compare_type(self) -> Optional[pulumi.Input[str]]: - """ - The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - """ return pulumi.get(self, "compare_type") @compare_type.setter @@ -271,10 +181,6 @@ def compare_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def invert(self) -> Optional[pulumi.Input[bool]]: - """ - When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - """ return pulumi.get(self, "invert") @invert.setter @@ -284,10 +190,6 @@ def invert(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: - """ - The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - """ return pulumi.get(self, "key") @key.setter @@ -297,10 +199,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="l7policyId") def l7policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "l7policy_id") @l7policy_id.setter @@ -310,9 +208,6 @@ def l7policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="listenerId") def listener_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Listener owning this resource. - """ return pulumi.get(self, "listener_id") @listener_id.setter @@ -322,12 +217,6 @@ def listener_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "region") @region.setter @@ -337,11 +226,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -351,10 +235,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - """ return pulumi.get(self, "type") @type.setter @@ -364,10 +244,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def value(self) -> Optional[pulumi.Input[str]]: - """ - The value to use for the comparison. For example, the file type to - compare. - """ return pulumi.get(self, "value") @value.setter @@ -391,81 +267,9 @@ def __init__(__self__, value: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 L7 Rule resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - loadbalancer1 = openstack.LbLoadbalancerV2("loadbalancer_1", - name="loadbalancer_1", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id=loadbalancer1.id) - pool1 = openstack.loadbalancer.Pool("pool_1", - name="pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - loadbalancer_id=loadbalancer1.id) - l7policy1 = openstack.loadbalancer.L7PolicyV2("l7policy_1", - name="test", - action="REDIRECT_TO_URL", - description="test description", - position=1, - listener_id=listener1.id, - redirect_url="http://www.example.com") - l7rule1 = openstack.loadbalancer.L7RuleV2("l7rule_1", - l7policy_id=l7policy1.id, - type="PATH", - compare_type="EQUAL_TO", - value="/api") - ``` - - ## Import - - Load Balancer L7 Rule can be imported using the L7 Policy ID and L7 Rule ID - separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/l7RuleV2:L7RuleV2 l7rule_1 e0bd694a-abbe-450e-b329-0931fd1cc5eb/4086b0c9-b18c-4d1c-b6b8-4c56c3ad2a9e - ``` - + Create a L7RuleV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] compare_type: The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - :param pulumi.Input[bool] invert: When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - :param pulumi.Input[str] key: The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - :param pulumi.Input[str] l7policy_id: The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - :param pulumi.Input[str] type: The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - :param pulumi.Input[str] value: The value to use for the comparison. For example, the file type to - compare. """ ... @overload @@ -474,58 +278,7 @@ def __init__(__self__, args: L7RuleV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 L7 Rule resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - loadbalancer1 = openstack.LbLoadbalancerV2("loadbalancer_1", - name="loadbalancer_1", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id=loadbalancer1.id) - pool1 = openstack.loadbalancer.Pool("pool_1", - name="pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - loadbalancer_id=loadbalancer1.id) - l7policy1 = openstack.loadbalancer.L7PolicyV2("l7policy_1", - name="test", - action="REDIRECT_TO_URL", - description="test description", - position=1, - listener_id=listener1.id, - redirect_url="http://www.example.com") - l7rule1 = openstack.loadbalancer.L7RuleV2("l7rule_1", - l7policy_id=l7policy1.id, - type="PATH", - compare_type="EQUAL_TO", - value="/api") - ``` - - ## Import - - Load Balancer L7 Rule can be imported using the L7 Policy ID and L7 Rule ID - separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/l7RuleV2:L7RuleV2 l7rule_1 e0bd694a-abbe-450e-b329-0931fd1cc5eb/4086b0c9-b18c-4d1c-b6b8-4c56c3ad2a9e - ``` - + Create a L7RuleV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param L7RuleV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -604,28 +357,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] compare_type: The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - :param pulumi.Input[bool] invert: When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - :param pulumi.Input[str] key: The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - :param pulumi.Input[str] l7policy_id: The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] listener_id: The ID of the Listener owning this resource. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - :param pulumi.Input[str] type: The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - :param pulumi.Input[str] value: The value to use for the comparison. For example, the file type to - compare. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -646,92 +377,50 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the L7 Rule. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="compareType") def compare_type(self) -> pulumi.Output[str]: - """ - The comparison type for the L7 rule - can either be - CONTAINS, STARTS\\_WITH, ENDS_WITH, EQUAL_TO or REGEX - """ return pulumi.get(self, "compare_type") @property @pulumi.getter def invert(self) -> pulumi.Output[Optional[bool]]: - """ - When true the logic of the rule is inverted. For example, with invert - true, equal to would become not equal to. Default is false. - """ return pulumi.get(self, "invert") @property @pulumi.getter def key(self) -> pulumi.Output[Optional[str]]: - """ - The key to use for the comparison. For example, the name of the cookie to - evaluate. Valid when `type` is set to COOKIE or HEADER. - """ return pulumi.get(self, "key") @property @pulumi.getter(name="l7policyId") def l7policy_id(self) -> pulumi.Output[str]: - """ - The ID of the L7 Policy to query. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "l7policy_id") @property @pulumi.getter(name="listenerId") def listener_id(self) -> pulumi.Output[str]: - """ - The ID of the Listener owning this resource. - """ return pulumi.get(self, "listener_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an L7 rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new - L7 Rule. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the L7 Rule. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new L7 Rule. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The L7 Rule type - can either be COOKIE, FILE\\_TYPE, HEADER, - HOST\\_NAME, PATH, SSL\\_CONN\\_HAS\\_CERT, SSL\\_VERIFY\\_RESULT or SSL\\_DN\\_FIELD. - """ return pulumi.get(self, "type") @property @pulumi.getter def value(self) -> pulumi.Output[str]: - """ - The value to use for the comparison. For example, the file type to - compare. - """ return pulumi.get(self, "value") diff --git a/sdk/python/pulumi_openstack/loadbalancer/listener.py b/sdk/python/pulumi_openstack/loadbalancer/listener.py index e5d6c92ae..6e95b3e19 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/listener.py +++ b/sdk/python/pulumi_openstack/loadbalancer/listener.py @@ -44,92 +44,6 @@ def __init__(__self__, *, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Listener resource. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - Listener. Changing this creates a new Listener. - :param pulumi.Input[str] protocol: The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - * Changing this creates a new Listener. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_cidrs: A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - :param pulumi.Input[str] client_authentication: The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] client_ca_tls_container_ref: The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - :param pulumi.Input[str] client_crl_container_ref: The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[int] connection_limit: The maximum number of connections allowed for - the Listener. - :param pulumi.Input[str] default_pool_id: The ID of the default pool with which the - Listener is associated. - :param pulumi.Input[str] default_tls_container_ref: A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[str] description: Human-readable description for the Listener. - :param pulumi.Input[bool] hsts_include_subdomains: Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[int] hsts_max_age: The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[bool] hsts_preload: Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] insert_headers: The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - :param pulumi.Input[str] name: Human-readable name for the Listener. Does not have to be - unique. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - :param pulumi.Input[Sequence[pulumi.Input[str]]] sni_container_refs: A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - :param pulumi.Input[int] timeout_client_data: The client inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_connect: The member connection timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_data: The member inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_tcp_inspect: The time in milliseconds, to wait for - additional TCP packets for content inspection. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ pulumi.set(__self__, "loadbalancer_id", loadbalancer_id) pulumi.set(__self__, "protocol", protocol) @@ -188,10 +102,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> pulumi.Input[str]: - """ - The load balancer on which to provision this - Listener. Changing this creates a new Listener. - """ return pulumi.get(self, "loadbalancer_id") @loadbalancer_id.setter @@ -201,12 +111,6 @@ def loadbalancer_id(self, value: pulumi.Input[str]): @property @pulumi.getter def protocol(self) -> pulumi.Input[str]: - """ - The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -216,10 +120,6 @@ def protocol(self, value: pulumi.Input[str]): @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> pulumi.Input[int]: - """ - The port on which to listen for client traffic. - * Changing this creates a new Listener. - """ return pulumi.get(self, "protocol_port") @protocol_port.setter @@ -229,10 +129,6 @@ def protocol_port(self, value: pulumi.Input[int]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -242,11 +138,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allowedCidrs") def allowed_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - """ return pulumi.get(self, "allowed_cidrs") @allowed_cidrs.setter @@ -256,11 +147,6 @@ def allowed_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - """ return pulumi.get(self, "alpn_protocols") @alpn_protocols.setter @@ -270,12 +156,6 @@ def alpn_protocols(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="clientAuthentication") def client_authentication(self) -> Optional[pulumi.Input[str]]: - """ - The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_authentication") @client_authentication.setter @@ -285,13 +165,6 @@ def client_authentication(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="clientCaTlsContainerRef") def client_ca_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - """ return pulumi.get(self, "client_ca_tls_container_ref") @client_ca_tls_container_ref.setter @@ -301,11 +174,6 @@ def client_ca_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="clientCrlContainerRef") def client_crl_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_crl_container_ref") @client_crl_container_ref.setter @@ -315,10 +183,6 @@ def client_crl_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="connectionLimit") def connection_limit(self) -> Optional[pulumi.Input[int]]: - """ - The maximum number of connections allowed for - the Listener. - """ return pulumi.get(self, "connection_limit") @connection_limit.setter @@ -328,10 +192,6 @@ def connection_limit(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="defaultPoolId") def default_pool_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the default pool with which the - Listener is associated. - """ return pulumi.get(self, "default_pool_id") @default_pool_id.setter @@ -341,13 +201,6 @@ def default_pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="defaultTlsContainerRef") def default_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "default_tls_container_ref") @default_tls_container_ref.setter @@ -357,9 +210,6 @@ def default_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the Listener. - """ return pulumi.get(self, "description") @description.setter @@ -369,14 +219,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="hstsIncludeSubdomains") def hsts_include_subdomains(self) -> Optional[pulumi.Input[bool]]: - """ - Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_include_subdomains") @hsts_include_subdomains.setter @@ -386,13 +228,6 @@ def hsts_include_subdomains(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="hstsMaxAge") def hsts_max_age(self) -> Optional[pulumi.Input[int]]: - """ - The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_max_age") @hsts_max_age.setter @@ -402,13 +237,6 @@ def hsts_max_age(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="hstsPreload") def hsts_preload(self) -> Optional[pulumi.Input[bool]]: - """ - Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - """ return pulumi.get(self, "hsts_preload") @hsts_preload.setter @@ -418,11 +246,6 @@ def hsts_preload(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="insertHeaders") def insert_headers(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - """ return pulumi.get(self, "insert_headers") @insert_headers.setter @@ -432,10 +255,6 @@ def insert_headers(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[ @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Listener. Does not have to be - unique. - """ return pulumi.get(self, "name") @name.setter @@ -445,11 +264,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - """ return pulumi.get(self, "region") @region.setter @@ -459,12 +273,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sniContainerRefs") def sni_container_refs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "sni_container_refs") @sni_container_refs.setter @@ -474,10 +282,6 @@ def sni_container_refs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @tags.setter @@ -487,11 +291,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -501,10 +300,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="timeoutClientData") def timeout_client_data(self) -> Optional[pulumi.Input[int]]: - """ - The client inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_client_data") @timeout_client_data.setter @@ -514,10 +309,6 @@ def timeout_client_data(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutMemberConnect") def timeout_member_connect(self) -> Optional[pulumi.Input[int]]: - """ - The member connection timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_connect") @timeout_member_connect.setter @@ -527,10 +318,6 @@ def timeout_member_connect(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutMemberData") def timeout_member_data(self) -> Optional[pulumi.Input[int]]: - """ - The member inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_data") @timeout_member_data.setter @@ -540,10 +327,6 @@ def timeout_member_data(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutTcpInspect") def timeout_tcp_inspect(self) -> Optional[pulumi.Input[int]]: - """ - The time in milliseconds, to wait for - additional TCP packets for content inspection. - """ return pulumi.get(self, "timeout_tcp_inspect") @timeout_tcp_inspect.setter @@ -553,12 +336,6 @@ def timeout_tcp_inspect(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> Optional[pulumi.Input[str]]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @tls_ciphers.setter @@ -568,11 +345,6 @@ def tls_ciphers(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") @tls_versions.setter @@ -613,92 +385,6 @@ def __init__(__self__, *, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Listener resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_cidrs: A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - :param pulumi.Input[str] client_authentication: The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] client_ca_tls_container_ref: The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - :param pulumi.Input[str] client_crl_container_ref: The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[int] connection_limit: The maximum number of connections allowed for - the Listener. - :param pulumi.Input[str] default_pool_id: The ID of the default pool with which the - Listener is associated. - :param pulumi.Input[str] default_tls_container_ref: A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[str] description: Human-readable description for the Listener. - :param pulumi.Input[bool] hsts_include_subdomains: Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[int] hsts_max_age: The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[bool] hsts_preload: Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] insert_headers: The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - Listener. Changing this creates a new Listener. - :param pulumi.Input[str] name: Human-readable name for the Listener. Does not have to be - unique. - :param pulumi.Input[str] protocol: The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - * Changing this creates a new Listener. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - :param pulumi.Input[Sequence[pulumi.Input[str]]] sni_container_refs: A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - :param pulumi.Input[int] timeout_client_data: The client inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_connect: The member connection timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_data: The member inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_tcp_inspect: The time in milliseconds, to wait for - additional TCP packets for content inspection. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -760,10 +446,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -773,11 +455,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allowedCidrs") def allowed_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - """ return pulumi.get(self, "allowed_cidrs") @allowed_cidrs.setter @@ -787,11 +464,6 @@ def allowed_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - """ return pulumi.get(self, "alpn_protocols") @alpn_protocols.setter @@ -801,12 +473,6 @@ def alpn_protocols(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="clientAuthentication") def client_authentication(self) -> Optional[pulumi.Input[str]]: - """ - The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_authentication") @client_authentication.setter @@ -816,13 +482,6 @@ def client_authentication(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="clientCaTlsContainerRef") def client_ca_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - """ return pulumi.get(self, "client_ca_tls_container_ref") @client_ca_tls_container_ref.setter @@ -832,11 +491,6 @@ def client_ca_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="clientCrlContainerRef") def client_crl_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_crl_container_ref") @client_crl_container_ref.setter @@ -846,10 +500,6 @@ def client_crl_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="connectionLimit") def connection_limit(self) -> Optional[pulumi.Input[int]]: - """ - The maximum number of connections allowed for - the Listener. - """ return pulumi.get(self, "connection_limit") @connection_limit.setter @@ -859,10 +509,6 @@ def connection_limit(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="defaultPoolId") def default_pool_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the default pool with which the - Listener is associated. - """ return pulumi.get(self, "default_pool_id") @default_pool_id.setter @@ -872,13 +518,6 @@ def default_pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="defaultTlsContainerRef") def default_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "default_tls_container_ref") @default_tls_container_ref.setter @@ -888,9 +527,6 @@ def default_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the Listener. - """ return pulumi.get(self, "description") @description.setter @@ -900,14 +536,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="hstsIncludeSubdomains") def hsts_include_subdomains(self) -> Optional[pulumi.Input[bool]]: - """ - Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_include_subdomains") @hsts_include_subdomains.setter @@ -917,13 +545,6 @@ def hsts_include_subdomains(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="hstsMaxAge") def hsts_max_age(self) -> Optional[pulumi.Input[int]]: - """ - The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_max_age") @hsts_max_age.setter @@ -933,13 +554,6 @@ def hsts_max_age(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="hstsPreload") def hsts_preload(self) -> Optional[pulumi.Input[bool]]: - """ - Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - """ return pulumi.get(self, "hsts_preload") @hsts_preload.setter @@ -949,11 +563,6 @@ def hsts_preload(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="insertHeaders") def insert_headers(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - """ return pulumi.get(self, "insert_headers") @insert_headers.setter @@ -963,10 +572,6 @@ def insert_headers(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[ @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> Optional[pulumi.Input[str]]: - """ - The load balancer on which to provision this - Listener. Changing this creates a new Listener. - """ return pulumi.get(self, "loadbalancer_id") @loadbalancer_id.setter @@ -976,10 +581,6 @@ def loadbalancer_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the Listener. Does not have to be - unique. - """ return pulumi.get(self, "name") @name.setter @@ -989,12 +590,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -1004,10 +599,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> Optional[pulumi.Input[int]]: - """ - The port on which to listen for client traffic. - * Changing this creates a new Listener. - """ return pulumi.get(self, "protocol_port") @protocol_port.setter @@ -1017,11 +608,6 @@ def protocol_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - """ return pulumi.get(self, "region") @region.setter @@ -1031,12 +617,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="sniContainerRefs") def sni_container_refs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "sni_container_refs") @sni_container_refs.setter @@ -1046,10 +626,6 @@ def sni_container_refs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @tags.setter @@ -1059,11 +635,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -1073,10 +644,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="timeoutClientData") def timeout_client_data(self) -> Optional[pulumi.Input[int]]: - """ - The client inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_client_data") @timeout_client_data.setter @@ -1086,10 +653,6 @@ def timeout_client_data(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutMemberConnect") def timeout_member_connect(self) -> Optional[pulumi.Input[int]]: - """ - The member connection timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_connect") @timeout_member_connect.setter @@ -1099,10 +662,6 @@ def timeout_member_connect(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutMemberData") def timeout_member_data(self) -> Optional[pulumi.Input[int]]: - """ - The member inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_data") @timeout_member_data.setter @@ -1112,10 +671,6 @@ def timeout_member_data(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="timeoutTcpInspect") def timeout_tcp_inspect(self) -> Optional[pulumi.Input[int]]: - """ - The time in milliseconds, to wait for - additional TCP packets for content inspection. - """ return pulumi.get(self, "timeout_tcp_inspect") @timeout_tcp_inspect.setter @@ -1125,12 +680,6 @@ def timeout_tcp_inspect(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> Optional[pulumi.Input[str]]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @tls_ciphers.setter @@ -1140,11 +689,6 @@ def tls_ciphers(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") @tls_versions.setter @@ -1187,155 +731,9 @@ def __init__(__self__, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 listener resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ### Simple listener - - ```python - import pulumi - import pulumi_openstack as openstack - - listener1 = openstack.loadbalancer.Listener("listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id="d9415786-5f1a-428b-b35f-2f1523e146d2", - insert_headers={ - "X-Forwarded-For": "true", - }) - ``` - - ### Listener with TLS and client certificate authentication - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - certificate1 = openstack.keymanager.SecretV1("certificate_1", - name="certificate", - payload=std.filebase64(input="snakeoil.p12").result, - payload_content_encoding="base64", - payload_content_type="application/octet-stream") - ca_certificate1 = openstack.keymanager.SecretV1("ca_certificate_1", - name="certificate", - payload=std.file(input="CA.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - subnet1 = openstack.networking.get_subnet(name="my-subnet") - lb1 = openstack.LbLoadbalancerV2("lb_1", - name="loadbalancer", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="https", - protocol="TERMINATED_HTTPS", - protocol_port=443, - loadbalancer_id=lb1.id, - default_tls_container_ref=certificate1, - client_authentication="OPTIONAL", - client_ca_tls_container_ref=ca_certificate2["secretRef"]) - ``` - - ## Import - - Load Balancer Listener can be imported using the Listener ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/listener:Listener listener_1 b67ce64e-8b26-405d-afeb-4a078901f15a - ``` - + Create a Listener resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_cidrs: A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - :param pulumi.Input[str] client_authentication: The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] client_ca_tls_container_ref: The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - :param pulumi.Input[str] client_crl_container_ref: The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[int] connection_limit: The maximum number of connections allowed for - the Listener. - :param pulumi.Input[str] default_pool_id: The ID of the default pool with which the - Listener is associated. - :param pulumi.Input[str] default_tls_container_ref: A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[str] description: Human-readable description for the Listener. - :param pulumi.Input[bool] hsts_include_subdomains: Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[int] hsts_max_age: The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[bool] hsts_preload: Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] insert_headers: The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - Listener. Changing this creates a new Listener. - :param pulumi.Input[str] name: Human-readable name for the Listener. Does not have to be - unique. - :param pulumi.Input[str] protocol: The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - * Changing this creates a new Listener. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - :param pulumi.Input[Sequence[pulumi.Input[str]]] sni_container_refs: A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - :param pulumi.Input[int] timeout_client_data: The client inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_connect: The member connection timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_data: The member inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_tcp_inspect: The time in milliseconds, to wait for - additional TCP packets for content inspection. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ ... @overload @@ -1344,67 +742,7 @@ def __init__(__self__, args: ListenerArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 listener resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ### Simple listener - - ```python - import pulumi - import pulumi_openstack as openstack - - listener1 = openstack.loadbalancer.Listener("listener_1", - protocol="HTTP", - protocol_port=8080, - loadbalancer_id="d9415786-5f1a-428b-b35f-2f1523e146d2", - insert_headers={ - "X-Forwarded-For": "true", - }) - ``` - - ### Listener with TLS and client certificate authentication - - ```python - import pulumi - import pulumi_openstack as openstack - import pulumi_std as std - - certificate1 = openstack.keymanager.SecretV1("certificate_1", - name="certificate", - payload=std.filebase64(input="snakeoil.p12").result, - payload_content_encoding="base64", - payload_content_type="application/octet-stream") - ca_certificate1 = openstack.keymanager.SecretV1("ca_certificate_1", - name="certificate", - payload=std.file(input="CA.pem").result, - secret_type="certificate", - payload_content_type="text/plain") - subnet1 = openstack.networking.get_subnet(name="my-subnet") - lb1 = openstack.LbLoadbalancerV2("lb_1", - name="loadbalancer", - vip_subnet_id=subnet1.id) - listener1 = openstack.loadbalancer.Listener("listener_1", - name="https", - protocol="TERMINATED_HTTPS", - protocol_port=443, - loadbalancer_id=lb1.id, - default_tls_container_ref=certificate1, - client_authentication="OPTIONAL", - client_ca_tls_container_ref=ca_certificate2["secretRef"]) - ``` - - ## Import - - Load Balancer Listener can be imported using the Listener ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/listener:Listener listener_1 b67ce64e-8b26-405d-afeb-4a078901f15a - ``` - + Create a Listener resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ListenerArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1536,92 +874,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_cidrs: A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - :param pulumi.Input[str] client_authentication: The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] client_ca_tls_container_ref: The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - :param pulumi.Input[str] client_crl_container_ref: The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[int] connection_limit: The maximum number of connections allowed for - the Listener. - :param pulumi.Input[str] default_pool_id: The ID of the default pool with which the - Listener is associated. - :param pulumi.Input[str] default_tls_container_ref: A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[str] description: Human-readable description for the Listener. - :param pulumi.Input[bool] hsts_include_subdomains: Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[int] hsts_max_age: The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - :param pulumi.Input[bool] hsts_preload: Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] insert_headers: The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - Listener. Changing this creates a new Listener. - :param pulumi.Input[str] name: Human-readable name for the Listener. Does not have to be - unique. - :param pulumi.Input[str] protocol: The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - * Changing this creates a new Listener. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - :param pulumi.Input[Sequence[pulumi.Input[str]]] sni_container_refs: A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - :param pulumi.Input[int] timeout_client_data: The client inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_connect: The member connection timeout in - milliseconds. - :param pulumi.Input[int] timeout_member_data: The member inactivity timeout in - milliseconds. - :param pulumi.Input[int] timeout_tcp_inspect: The time in milliseconds, to wait for - additional TCP packets for content inspection. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1660,282 +912,140 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the Listener. A - valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allowedCidrs") def allowed_cidrs(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of CIDR blocks that are permitted to - connect to this listener, denying all other source addresses. If not present, - defaults to allow all. - """ return pulumi.get(self, "allowed_cidrs") @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> pulumi.Output[Sequence[str]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.20**. - """ return pulumi.get(self, "alpn_protocols") @property @pulumi.getter(name="clientAuthentication") def client_authentication(self) -> pulumi.Output[Optional[str]]: - """ - The TLS client authentication mode. - Available options: `NONE`, `OPTIONAL` or `MANDATORY`. Requires - `TERMINATED_HTTPS` listener protocol and the `client_ca_tls_container_ref`. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_authentication") @property @pulumi.getter(name="clientCaTlsContainerRef") def client_ca_tls_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - The ref of the key manager service - secret containing a PEM format client CA certificate bundle for - `TERMINATED_HTTPS` listeners. Required if `client_authentication` is - `OPTIONAL` or `MANDATORY`. Supported only in **Octavia minor version >= - 2.8**. - """ return pulumi.get(self, "client_ca_tls_container_ref") @property @pulumi.getter(name="clientCrlContainerRef") def client_crl_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - The URI of the key manager service - secret containing a PEM format CA revocation list file for `TERMINATED_HTTPS` - listeners. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "client_crl_container_ref") @property @pulumi.getter(name="connectionLimit") def connection_limit(self) -> pulumi.Output[int]: - """ - The maximum number of connections allowed for - the Listener. - """ return pulumi.get(self, "connection_limit") @property @pulumi.getter(name="defaultPoolId") def default_pool_id(self) -> pulumi.Output[str]: - """ - The ID of the default pool with which the - Listener is associated. - """ return pulumi.get(self, "default_pool_id") @property @pulumi.getter(name="defaultTlsContainerRef") def default_tls_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - A reference to a Barbican Secrets - container which stores TLS information. This is required if the protocol is - `TERMINATED_HTTPS`. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "default_tls_container_ref") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the Listener. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="hstsIncludeSubdomains") def hsts_include_subdomains(self) -> pulumi.Output[Optional[bool]]: - """ - Defines whether the - **includeSubDomains** directive should be added to the - Strict-Transport-Security HTTP response header. This requires setting the - `hsts_max_age` option as well in order to become effective. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_include_subdomains") @property @pulumi.getter(name="hstsMaxAge") def hsts_max_age(self) -> pulumi.Output[Optional[int]]: - """ - The value of the **max_age** directive for the - Strict-Transport-Security HTTP response header. Setting this enables HTTP - Strict Transport Security (HSTS) for the TLS-terminated listener. Requires - `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia minor - version >= 2.27**. - """ return pulumi.get(self, "hsts_max_age") @property @pulumi.getter(name="hstsPreload") def hsts_preload(self) -> pulumi.Output[Optional[bool]]: - """ - Defines whether the **preload** directive should - be added to the Strict-Transport-Security HTTP response header. This requires - setting the `hsts_max_age` option as well in order to become effective. - Requires `TERMINATED_HTTPS` listener protocol. Supported only in **Octavia - minor version >= 2.27**. - """ return pulumi.get(self, "hsts_preload") @property @pulumi.getter(name="insertHeaders") def insert_headers(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - The list of key value pairs representing - headers to insert into the request before it is sent to the backend members. - Changing this updates the headers of the existing listener. - """ return pulumi.get(self, "insert_headers") @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> pulumi.Output[str]: - """ - The load balancer on which to provision this - Listener. Changing this creates a new Listener. - """ return pulumi.get(self, "loadbalancer_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the Listener. Does not have to be - unique. - """ return pulumi.get(self, "name") @property @pulumi.getter def protocol(self) -> pulumi.Output[str]: - """ - The protocol can be either `TCP`, `HTTP`, `HTTPS`, - `TERMINATED_HTTPS`, `UDP`, `SCTP` (supported only in **Octavia minor version - \\>= 2.23**), or `PROMETHEUS` (supported only in **Octavia minor version >= - 2.25**). Changing this creates a new Listener. - """ return pulumi.get(self, "protocol") @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> pulumi.Output[int]: - """ - The port on which to listen for client traffic. - * Changing this creates a new Listener. - """ return pulumi.get(self, "protocol_port") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a listener. If omitted, the `region` - argument of the provider is used. Changing this creates a new Listener. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="sniContainerRefs") def sni_container_refs(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of references to Barbican Secrets - containers which store SNI information. See - [here](https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html#deploy-a-tls-terminated-https-load-balancer) - for more information. - """ return pulumi.get(self, "sni_container_refs") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of simple strings assigned to the pool. Available - for Octavia **minor version 2.5 or later**. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the Listener. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new Listener. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="timeoutClientData") def timeout_client_data(self) -> pulumi.Output[int]: - """ - The client inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_client_data") @property @pulumi.getter(name="timeoutMemberConnect") def timeout_member_connect(self) -> pulumi.Output[int]: - """ - The member connection timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_connect") @property @pulumi.getter(name="timeoutMemberData") def timeout_member_data(self) -> pulumi.Output[int]: - """ - The member inactivity timeout in - milliseconds. - """ return pulumi.get(self, "timeout_member_data") @property @pulumi.getter(name="timeoutTcpInspect") def timeout_tcp_inspect(self) -> pulumi.Output[int]: - """ - The time in milliseconds, to wait for - additional TCP packets for content inspection. - """ return pulumi.get(self, "timeout_tcp_inspect") @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> pulumi.Output[str]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> pulumi.Output[Sequence[str]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") diff --git a/sdk/python/pulumi_openstack/loadbalancer/load_balancer.py b/sdk/python/pulumi_openstack/loadbalancer/load_balancer.py new file mode 100644 index 000000000..e082324f6 --- /dev/null +++ b/sdk/python/pulumi_openstack/loadbalancer/load_balancer.py @@ -0,0 +1,608 @@ +# 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__ = ['LoadBalancerArgs', 'LoadBalancer'] + +@pulumi.input_type +class LoadBalancerArgs: + def __init__(__self__, *, + admin_state_up: Optional[pulumi.Input[bool]] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + flavor_id: Optional[pulumi.Input[str]] = None, + loadbalancer_provider: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + vip_address: Optional[pulumi.Input[str]] = None, + vip_network_id: Optional[pulumi.Input[str]] = None, + vip_port_id: Optional[pulumi.Input[str]] = None, + vip_qos_policy_id: Optional[pulumi.Input[str]] = None, + vip_subnet_id: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a LoadBalancer resource. + """ + if admin_state_up is not None: + pulumi.set(__self__, "admin_state_up", admin_state_up) + if availability_zone is not None: + pulumi.set(__self__, "availability_zone", availability_zone) + if description is not None: + pulumi.set(__self__, "description", description) + if flavor_id is not None: + pulumi.set(__self__, "flavor_id", flavor_id) + if loadbalancer_provider is not None: + pulumi.set(__self__, "loadbalancer_provider", loadbalancer_provider) + if name is not None: + pulumi.set(__self__, "name", name) + if region is not None: + pulumi.set(__self__, "region", region) + if security_group_ids is not None: + pulumi.set(__self__, "security_group_ids", security_group_ids) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tenant_id is not None: + pulumi.set(__self__, "tenant_id", tenant_id) + if vip_address is not None: + pulumi.set(__self__, "vip_address", vip_address) + if vip_network_id is not None: + pulumi.set(__self__, "vip_network_id", vip_network_id) + if vip_port_id is not None: + pulumi.set(__self__, "vip_port_id", vip_port_id) + if vip_qos_policy_id is not None: + pulumi.set(__self__, "vip_qos_policy_id", vip_qos_policy_id) + if vip_subnet_id is not None: + pulumi.set(__self__, "vip_subnet_id", vip_subnet_id) + + @property + @pulumi.getter(name="adminStateUp") + def admin_state_up(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "admin_state_up") + + @admin_state_up.setter + def admin_state_up(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "admin_state_up", value) + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "availability_zone") + + @availability_zone.setter + def availability_zone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "availability_zone", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="flavorId") + def flavor_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "flavor_id") + + @flavor_id.setter + def flavor_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "flavor_id", value) + + @property + @pulumi.getter(name="loadbalancerProvider") + def loadbalancer_provider(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "loadbalancer_provider") + + @loadbalancer_provider.setter + def loadbalancer_provider(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "loadbalancer_provider", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "security_group_ids") + + @security_group_ids.setter + def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "security_group_ids", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "tenant_id") + + @tenant_id.setter + def tenant_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "tenant_id", value) + + @property + @pulumi.getter(name="vipAddress") + def vip_address(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_address") + + @vip_address.setter + def vip_address(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_address", value) + + @property + @pulumi.getter(name="vipNetworkId") + def vip_network_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_network_id") + + @vip_network_id.setter + def vip_network_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_network_id", value) + + @property + @pulumi.getter(name="vipPortId") + def vip_port_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_port_id") + + @vip_port_id.setter + def vip_port_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_port_id", value) + + @property + @pulumi.getter(name="vipQosPolicyId") + def vip_qos_policy_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_qos_policy_id") + + @vip_qos_policy_id.setter + def vip_qos_policy_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_qos_policy_id", value) + + @property + @pulumi.getter(name="vipSubnetId") + def vip_subnet_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_subnet_id") + + @vip_subnet_id.setter + def vip_subnet_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_subnet_id", value) + + +@pulumi.input_type +class _LoadBalancerState: + def __init__(__self__, *, + admin_state_up: Optional[pulumi.Input[bool]] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + flavor_id: Optional[pulumi.Input[str]] = None, + loadbalancer_provider: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + vip_address: Optional[pulumi.Input[str]] = None, + vip_network_id: Optional[pulumi.Input[str]] = None, + vip_port_id: Optional[pulumi.Input[str]] = None, + vip_qos_policy_id: Optional[pulumi.Input[str]] = None, + vip_subnet_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering LoadBalancer resources. + """ + if admin_state_up is not None: + pulumi.set(__self__, "admin_state_up", admin_state_up) + if availability_zone is not None: + pulumi.set(__self__, "availability_zone", availability_zone) + if description is not None: + pulumi.set(__self__, "description", description) + if flavor_id is not None: + pulumi.set(__self__, "flavor_id", flavor_id) + if loadbalancer_provider is not None: + pulumi.set(__self__, "loadbalancer_provider", loadbalancer_provider) + if name is not None: + pulumi.set(__self__, "name", name) + if region is not None: + pulumi.set(__self__, "region", region) + if security_group_ids is not None: + pulumi.set(__self__, "security_group_ids", security_group_ids) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tenant_id is not None: + pulumi.set(__self__, "tenant_id", tenant_id) + if vip_address is not None: + pulumi.set(__self__, "vip_address", vip_address) + if vip_network_id is not None: + pulumi.set(__self__, "vip_network_id", vip_network_id) + if vip_port_id is not None: + pulumi.set(__self__, "vip_port_id", vip_port_id) + if vip_qos_policy_id is not None: + pulumi.set(__self__, "vip_qos_policy_id", vip_qos_policy_id) + if vip_subnet_id is not None: + pulumi.set(__self__, "vip_subnet_id", vip_subnet_id) + + @property + @pulumi.getter(name="adminStateUp") + def admin_state_up(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "admin_state_up") + + @admin_state_up.setter + def admin_state_up(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "admin_state_up", value) + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "availability_zone") + + @availability_zone.setter + def availability_zone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "availability_zone", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="flavorId") + def flavor_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "flavor_id") + + @flavor_id.setter + def flavor_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "flavor_id", value) + + @property + @pulumi.getter(name="loadbalancerProvider") + def loadbalancer_provider(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "loadbalancer_provider") + + @loadbalancer_provider.setter + def loadbalancer_provider(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "loadbalancer_provider", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "security_group_ids") + + @security_group_ids.setter + def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "security_group_ids", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "tenant_id") + + @tenant_id.setter + def tenant_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "tenant_id", value) + + @property + @pulumi.getter(name="vipAddress") + def vip_address(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_address") + + @vip_address.setter + def vip_address(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_address", value) + + @property + @pulumi.getter(name="vipNetworkId") + def vip_network_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_network_id") + + @vip_network_id.setter + def vip_network_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_network_id", value) + + @property + @pulumi.getter(name="vipPortId") + def vip_port_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_port_id") + + @vip_port_id.setter + def vip_port_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_port_id", value) + + @property + @pulumi.getter(name="vipQosPolicyId") + def vip_qos_policy_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_qos_policy_id") + + @vip_qos_policy_id.setter + def vip_qos_policy_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_qos_policy_id", value) + + @property + @pulumi.getter(name="vipSubnetId") + def vip_subnet_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "vip_subnet_id") + + @vip_subnet_id.setter + def vip_subnet_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vip_subnet_id", value) + + +class LoadBalancer(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + admin_state_up: Optional[pulumi.Input[bool]] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + flavor_id: Optional[pulumi.Input[str]] = None, + loadbalancer_provider: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + vip_address: Optional[pulumi.Input[str]] = None, + vip_network_id: Optional[pulumi.Input[str]] = None, + vip_port_id: Optional[pulumi.Input[str]] = None, + vip_qos_policy_id: Optional[pulumi.Input[str]] = None, + vip_subnet_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Create a LoadBalancer resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[LoadBalancerArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a LoadBalancer resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param LoadBalancerArgs 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(LoadBalancerArgs, 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, + admin_state_up: Optional[pulumi.Input[bool]] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + flavor_id: Optional[pulumi.Input[str]] = None, + loadbalancer_provider: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + vip_address: Optional[pulumi.Input[str]] = None, + vip_network_id: Optional[pulumi.Input[str]] = None, + vip_port_id: Optional[pulumi.Input[str]] = None, + vip_qos_policy_id: Optional[pulumi.Input[str]] = None, + vip_subnet_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__ = LoadBalancerArgs.__new__(LoadBalancerArgs) + + __props__.__dict__["admin_state_up"] = admin_state_up + __props__.__dict__["availability_zone"] = availability_zone + __props__.__dict__["description"] = description + __props__.__dict__["flavor_id"] = flavor_id + __props__.__dict__["loadbalancer_provider"] = loadbalancer_provider + __props__.__dict__["name"] = name + __props__.__dict__["region"] = region + __props__.__dict__["security_group_ids"] = security_group_ids + __props__.__dict__["tags"] = tags + __props__.__dict__["tenant_id"] = tenant_id + __props__.__dict__["vip_address"] = vip_address + __props__.__dict__["vip_network_id"] = vip_network_id + __props__.__dict__["vip_port_id"] = vip_port_id + __props__.__dict__["vip_qos_policy_id"] = vip_qos_policy_id + __props__.__dict__["vip_subnet_id"] = vip_subnet_id + alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="openstack:index/lbLoadbalancerV2:LbLoadbalancerV2")]) + opts = pulumi.ResourceOptions.merge(opts, alias_opts) + super(LoadBalancer, __self__).__init__( + 'openstack:loadbalancer/loadBalancer:LoadBalancer', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + admin_state_up: Optional[pulumi.Input[bool]] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + flavor_id: Optional[pulumi.Input[str]] = None, + loadbalancer_provider: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + vip_address: Optional[pulumi.Input[str]] = None, + vip_network_id: Optional[pulumi.Input[str]] = None, + vip_port_id: Optional[pulumi.Input[str]] = None, + vip_qos_policy_id: Optional[pulumi.Input[str]] = None, + vip_subnet_id: Optional[pulumi.Input[str]] = None) -> 'LoadBalancer': + """ + Get an existing LoadBalancer 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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LoadBalancerState.__new__(_LoadBalancerState) + + __props__.__dict__["admin_state_up"] = admin_state_up + __props__.__dict__["availability_zone"] = availability_zone + __props__.__dict__["description"] = description + __props__.__dict__["flavor_id"] = flavor_id + __props__.__dict__["loadbalancer_provider"] = loadbalancer_provider + __props__.__dict__["name"] = name + __props__.__dict__["region"] = region + __props__.__dict__["security_group_ids"] = security_group_ids + __props__.__dict__["tags"] = tags + __props__.__dict__["tenant_id"] = tenant_id + __props__.__dict__["vip_address"] = vip_address + __props__.__dict__["vip_network_id"] = vip_network_id + __props__.__dict__["vip_port_id"] = vip_port_id + __props__.__dict__["vip_qos_policy_id"] = vip_qos_policy_id + __props__.__dict__["vip_subnet_id"] = vip_subnet_id + return LoadBalancer(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="adminStateUp") + def admin_state_up(self) -> pulumi.Output[Optional[bool]]: + return pulumi.get(self, "admin_state_up") + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "availability_zone") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="flavorId") + def flavor_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "flavor_id") + + @property + @pulumi.getter(name="loadbalancerProvider") + def loadbalancer_provider(self) -> pulumi.Output[str]: + return pulumi.get(self, "loadbalancer_provider") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> pulumi.Output[Sequence[str]]: + return pulumi.get(self, "security_group_ids") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "tenant_id") + + @property + @pulumi.getter(name="vipAddress") + def vip_address(self) -> pulumi.Output[str]: + return pulumi.get(self, "vip_address") + + @property + @pulumi.getter(name="vipNetworkId") + def vip_network_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "vip_network_id") + + @property + @pulumi.getter(name="vipPortId") + def vip_port_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "vip_port_id") + + @property + @pulumi.getter(name="vipQosPolicyId") + def vip_qos_policy_id(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "vip_qos_policy_id") + + @property + @pulumi.getter(name="vipSubnetId") + def vip_subnet_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "vip_subnet_id") + diff --git a/sdk/python/pulumi_openstack/loadbalancer/member.py b/sdk/python/pulumi_openstack/loadbalancer/member.py index 8d5ece2a0..e534a817a 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/member.py +++ b/sdk/python/pulumi_openstack/loadbalancer/member.py @@ -29,35 +29,6 @@ def __init__(__self__, *, weight: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a Member resource. - :param pulumi.Input[str] address: The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - :param pulumi.Input[str] pool_id: The id of the pool that this member will be assigned - to. Changing this creates a new member. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - Changing this creates a new member. - :param pulumi.Input[bool] admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param pulumi.Input[bool] backup: Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - :param pulumi.Input[str] monitor_address: An alternate IP address used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[int] monitor_port: An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[str] name: Human-readable name for the member. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - :param pulumi.Input[str] subnet_id: The subnet in which to access the member. Changing - this creates a new member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - :param pulumi.Input[int] weight: A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. """ pulumi.set(__self__, "address", address) pulumi.set(__self__, "pool_id", pool_id) @@ -86,10 +57,6 @@ def __init__(__self__, *, @property @pulumi.getter def address(self) -> pulumi.Input[str]: - """ - The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - """ return pulumi.get(self, "address") @address.setter @@ -99,10 +66,6 @@ def address(self, value: pulumi.Input[str]): @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Input[str]: - """ - The id of the pool that this member will be assigned - to. Changing this creates a new member. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -112,10 +75,6 @@ def pool_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> pulumi.Input[int]: - """ - The port on which to listen for client traffic. - Changing this creates a new member. - """ return pulumi.get(self, "protocol_port") @protocol_port.setter @@ -125,10 +84,6 @@ def protocol_port(self, value: pulumi.Input[int]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -138,10 +93,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def backup(self) -> Optional[pulumi.Input[bool]]: - """ - Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - """ return pulumi.get(self, "backup") @backup.setter @@ -151,10 +102,6 @@ def backup(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="monitorAddress") def monitor_address(self) -> Optional[pulumi.Input[str]]: - """ - An alternate IP address used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_address") @monitor_address.setter @@ -164,10 +111,6 @@ def monitor_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="monitorPort") def monitor_port(self) -> Optional[pulumi.Input[int]]: - """ - An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_port") @monitor_port.setter @@ -177,9 +120,6 @@ def monitor_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the member. - """ return pulumi.get(self, "name") @name.setter @@ -189,11 +129,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - """ return pulumi.get(self, "region") @region.setter @@ -203,10 +138,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet in which to access the member. Changing - this creates a new member. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -216,10 +147,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - """ return pulumi.get(self, "tags") @tags.setter @@ -229,11 +156,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -243,12 +165,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def weight(self) -> Optional[pulumi.Input[int]]: - """ - A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ return pulumi.get(self, "weight") @weight.setter @@ -274,35 +190,6 @@ def __init__(__self__, *, weight: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering Member resources. - :param pulumi.Input[str] address: The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - :param pulumi.Input[bool] admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param pulumi.Input[bool] backup: Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - :param pulumi.Input[str] monitor_address: An alternate IP address used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[int] monitor_port: An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[str] name: Human-readable name for the member. - :param pulumi.Input[str] pool_id: The id of the pool that this member will be assigned - to. Changing this creates a new member. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - Changing this creates a new member. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - :param pulumi.Input[str] subnet_id: The subnet in which to access the member. Changing - this creates a new member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - :param pulumi.Input[int] weight: A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. """ if address is not None: pulumi.set(__self__, "address", address) @@ -334,10 +221,6 @@ def __init__(__self__, *, @property @pulumi.getter def address(self) -> Optional[pulumi.Input[str]]: - """ - The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - """ return pulumi.get(self, "address") @address.setter @@ -347,10 +230,6 @@ def address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -360,10 +239,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def backup(self) -> Optional[pulumi.Input[bool]]: - """ - Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - """ return pulumi.get(self, "backup") @backup.setter @@ -373,10 +248,6 @@ def backup(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="monitorAddress") def monitor_address(self) -> Optional[pulumi.Input[str]]: - """ - An alternate IP address used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_address") @monitor_address.setter @@ -386,10 +257,6 @@ def monitor_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="monitorPort") def monitor_port(self) -> Optional[pulumi.Input[int]]: - """ - An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_port") @monitor_port.setter @@ -399,9 +266,6 @@ def monitor_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the member. - """ return pulumi.get(self, "name") @name.setter @@ -411,10 +275,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="poolId") def pool_id(self) -> Optional[pulumi.Input[str]]: - """ - The id of the pool that this member will be assigned - to. Changing this creates a new member. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -424,10 +284,6 @@ def pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> Optional[pulumi.Input[int]]: - """ - The port on which to listen for client traffic. - Changing this creates a new member. - """ return pulumi.get(self, "protocol_port") @protocol_port.setter @@ -437,11 +293,6 @@ def protocol_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - """ return pulumi.get(self, "region") @region.setter @@ -451,10 +302,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet in which to access the member. Changing - this creates a new member. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -464,10 +311,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - """ return pulumi.get(self, "tags") @tags.setter @@ -477,11 +320,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -491,12 +329,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def weight(self) -> Optional[pulumi.Input[int]]: - """ - A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ return pulumi.get(self, "weight") @weight.setter @@ -524,60 +356,9 @@ def __init__(__self__, weight: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V2 member resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - member1 = openstack.loadbalancer.Member("member_1", - pool_id="935685fb-a896-40f9-9ff4-ae531a3a00fe", - address="192.168.199.23", - protocol_port=8080) - ``` - - ## Import - - Load Balancer Pool Member can be imported using the Pool ID and Member ID - separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/member:Member member_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5/9563b79c-8460-47da-8a95-2711b746510f - ``` - + Create a Member resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] address: The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - :param pulumi.Input[bool] admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param pulumi.Input[bool] backup: Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - :param pulumi.Input[str] monitor_address: An alternate IP address used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[int] monitor_port: An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[str] name: Human-readable name for the member. - :param pulumi.Input[str] pool_id: The id of the pool that this member will be assigned - to. Changing this creates a new member. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - Changing this creates a new member. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - :param pulumi.Input[str] subnet_id: The subnet in which to access the member. Changing - this creates a new member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - :param pulumi.Input[int] weight: A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. """ ... @overload @@ -586,29 +367,7 @@ def __init__(__self__, args: MemberArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 member resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - member1 = openstack.loadbalancer.Member("member_1", - pool_id="935685fb-a896-40f9-9ff4-ae531a3a00fe", - address="192.168.199.23", - protocol_port=8080) - ``` - - ## Import - - Load Balancer Pool Member can be imported using the Pool ID and Member ID - separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/member:Member member_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5/9563b79c-8460-47da-8a95-2711b746510f - ``` - + Create a Member resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param MemberArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -695,35 +454,6 @@ def get(resource_name: str, :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] address: The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - :param pulumi.Input[bool] admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param pulumi.Input[bool] backup: Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - :param pulumi.Input[str] monitor_address: An alternate IP address used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[int] monitor_port: An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - :param pulumi.Input[str] name: Human-readable name for the member. - :param pulumi.Input[str] pool_id: The id of the pool that this member will be assigned - to. Changing this creates a new member. - :param pulumi.Input[int] protocol_port: The port on which to listen for client traffic. - Changing this creates a new member. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - :param pulumi.Input[str] subnet_id: The subnet in which to access the member. Changing - this creates a new member. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - :param pulumi.Input[int] weight: A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -747,120 +477,65 @@ def get(resource_name: str, @property @pulumi.getter def address(self) -> pulumi.Output[str]: - """ - The IP address of the member to receive traffic from - the load balancer. Changing this creates a new member. - """ return pulumi.get(self, "address") @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def backup(self) -> pulumi.Output[Optional[bool]]: - """ - Boolean that indicates whether that member works as a backup or not. Available - only for Octavia >= 2.1. - """ return pulumi.get(self, "backup") @property @pulumi.getter(name="monitorAddress") def monitor_address(self) -> pulumi.Output[Optional[str]]: - """ - An alternate IP address used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_address") @property @pulumi.getter(name="monitorPort") def monitor_port(self) -> pulumi.Output[Optional[int]]: - """ - An alternate protocol port used for health monitoring a backend member. - Available only for Octavia - """ return pulumi.get(self, "monitor_port") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the member. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Output[str]: - """ - The id of the pool that this member will be assigned - to. Changing this creates a new member. - """ return pulumi.get(self, "pool_id") @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> pulumi.Output[int]: - """ - The port on which to listen for client traffic. - Changing this creates a new member. - """ return pulumi.get(self, "protocol_port") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a member. If omitted, the `region` - argument of the provider is used. Changing this creates a new member. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Output[Optional[str]]: - """ - The subnet in which to access the member. Changing - this creates a new member. - """ return pulumi.get(self, "subnet_id") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of simple strings assigned to the member. - Available only for Octavia >= 2.5. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the member. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new member. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter def weight(self) -> pulumi.Output[int]: - """ - A positive integer value that indicates the relative - portion of traffic that this member should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ return pulumi.get(self, "weight") diff --git a/sdk/python/pulumi_openstack/loadbalancer/members.py b/sdk/python/pulumi_openstack/loadbalancer/members.py index ae89108af..a56c8900f 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/members.py +++ b/sdk/python/pulumi_openstack/loadbalancer/members.py @@ -21,14 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Members resource. - :param pulumi.Input[str] pool_id: The id of the pool that members will be assigned to. - Changing this creates a new members resource. - :param pulumi.Input[Sequence[pulumi.Input['MembersMemberArgs']]] members: A set of dictionaries containing member parameters. The - structure is described below. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. """ pulumi.set(__self__, "pool_id", pool_id) if members is not None: @@ -39,10 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Input[str]: - """ - The id of the pool that members will be assigned to. - Changing this creates a new members resource. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -52,10 +40,6 @@ def pool_id(self, value: pulumi.Input[str]): @property @pulumi.getter def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MembersMemberArgs']]]]: - """ - A set of dictionaries containing member parameters. The - structure is described below. - """ return pulumi.get(self, "members") @members.setter @@ -65,12 +49,6 @@ def members(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MembersMem @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. - """ return pulumi.get(self, "region") @region.setter @@ -86,14 +64,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Members resources. - :param pulumi.Input[Sequence[pulumi.Input['MembersMemberArgs']]] members: A set of dictionaries containing member parameters. The - structure is described below. - :param pulumi.Input[str] pool_id: The id of the pool that members will be assigned to. - Changing this creates a new members resource. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. """ if members is not None: pulumi.set(__self__, "members", members) @@ -105,10 +75,6 @@ def __init__(__self__, *, @property @pulumi.getter def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MembersMemberArgs']]]]: - """ - A set of dictionaries containing member parameters. The - structure is described below. - """ return pulumi.get(self, "members") @members.setter @@ -118,10 +84,6 @@ def members(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MembersMem @property @pulumi.getter(name="poolId") def pool_id(self) -> Optional[pulumi.Input[str]]: - """ - The id of the pool that members will be assigned to. - Changing this creates a new members resource. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -131,12 +93,6 @@ def pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. - """ return pulumi.get(self, "region") @region.setter @@ -154,49 +110,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 members resource within OpenStack (batch members update). - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - members1 = openstack.loadbalancer.Members("members_1", - pool_id="935685fb-a896-40f9-9ff4-ae531a3a00fe", - members=[ - { - "address": "192.168.199.23", - "protocol_port": 8080, - }, - { - "address": "192.168.199.24", - "protocol_port": 8080, - }, - ]) - ``` - - ## Import - - Load Balancer Pool Members can be imported using the Pool ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/members:Members members_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5 - ``` - + Create a Members resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['MembersMemberArgs', 'MembersMemberArgsDict']]]] members: A set of dictionaries containing member parameters. The - structure is described below. - :param pulumi.Input[str] pool_id: The id of the pool that members will be assigned to. - Changing this creates a new members resource. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. """ ... @overload @@ -205,39 +121,7 @@ def __init__(__self__, args: MembersArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 members resource within OpenStack (batch members update). - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - members1 = openstack.loadbalancer.Members("members_1", - pool_id="935685fb-a896-40f9-9ff4-ae531a3a00fe", - members=[ - { - "address": "192.168.199.23", - "protocol_port": 8080, - }, - { - "address": "192.168.199.24", - "protocol_port": 8080, - }, - ]) - ``` - - ## Import - - Load Balancer Pool Members can be imported using the Pool ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/members:Members members_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5 - ``` - + Create a Members resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param MembersArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -290,14 +174,6 @@ def get(resource_name: str, :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['MembersMemberArgs', 'MembersMemberArgsDict']]]] members: A set of dictionaries containing member parameters. The - structure is described below. - :param pulumi.Input[str] pool_id: The id of the pool that members will be assigned to. - Changing this creates a new members resource. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -311,29 +187,15 @@ def get(resource_name: str, @property @pulumi.getter def members(self) -> pulumi.Output[Optional[Sequence['outputs.MembersMember']]]: - """ - A set of dictionaries containing member parameters. The - structure is described below. - """ return pulumi.get(self, "members") @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Output[str]: - """ - The id of the pool that members will be assigned to. - Changing this creates a new members resource. - """ return pulumi.get(self, "pool_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create pool members. If omitted, the - `region` argument of the provider is used. Changing this creates a new - members resource. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/loadbalancer/monitor.py b/sdk/python/pulumi_openstack/loadbalancer/monitor.py index a6d9c5ddc..fcba9df6a 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/monitor.py +++ b/sdk/python/pulumi_openstack/loadbalancer/monitor.py @@ -31,45 +31,6 @@ def __init__(__self__, *, url_path: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Monitor resource. - :param pulumi.Input[int] delay: The time, in seconds, between sending probes to members. - :param pulumi.Input[int] max_retries: Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - :param pulumi.Input[str] pool_id: The id of the pool that this monitor will be assigned to. - :param pulumi.Input[int] timeout: Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - :param pulumi.Input[str] type: The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - :param pulumi.Input[bool] admin_state_up: The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[str] domain_name: The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - :param pulumi.Input[str] expected_codes: Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - :param pulumi.Input[str] http_method: Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - :param pulumi.Input[str] http_version: Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - :param pulumi.Input[int] max_retries_down: Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - :param pulumi.Input[str] name: The Name of the Monitor. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - :param pulumi.Input[str] url_path: Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. """ pulumi.set(__self__, "delay", delay) pulumi.set(__self__, "max_retries", max_retries) @@ -100,9 +61,6 @@ def __init__(__self__, *, @property @pulumi.getter def delay(self) -> pulumi.Input[int]: - """ - The time, in seconds, between sending probes to members. - """ return pulumi.get(self, "delay") @delay.setter @@ -112,11 +70,6 @@ def delay(self, value: pulumi.Input[int]): @property @pulumi.getter(name="maxRetries") def max_retries(self) -> pulumi.Input[int]: - """ - Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - """ return pulumi.get(self, "max_retries") @max_retries.setter @@ -126,9 +79,6 @@ def max_retries(self, value: pulumi.Input[int]): @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Input[str]: - """ - The id of the pool that this monitor will be assigned to. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -138,11 +88,6 @@ def pool_id(self, value: pulumi.Input[str]): @property @pulumi.getter def timeout(self) -> pulumi.Input[int]: - """ - Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - """ return pulumi.get(self, "timeout") @timeout.setter @@ -152,11 +97,6 @@ def timeout(self, value: pulumi.Input[int]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - """ return pulumi.get(self, "type") @type.setter @@ -166,10 +106,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -179,10 +115,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="domainName") def domain_name(self) -> Optional[pulumi.Input[str]]: - """ - The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - """ return pulumi.get(self, "domain_name") @domain_name.setter @@ -192,11 +124,6 @@ def domain_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="expectedCodes") def expected_codes(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - """ return pulumi.get(self, "expected_codes") @expected_codes.setter @@ -206,11 +133,6 @@ def expected_codes(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpMethod") def http_method(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - """ return pulumi.get(self, "http_method") @http_method.setter @@ -220,12 +142,6 @@ def http_method(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpVersion") def http_version(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - """ return pulumi.get(self, "http_version") @http_version.setter @@ -235,12 +151,6 @@ def http_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxRetriesDown") def max_retries_down(self) -> Optional[pulumi.Input[int]]: - """ - Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - """ return pulumi.get(self, "max_retries_down") @max_retries_down.setter @@ -250,9 +160,6 @@ def max_retries_down(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The Name of the Monitor. - """ return pulumi.get(self, "name") @name.setter @@ -262,12 +169,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - """ return pulumi.get(self, "region") @region.setter @@ -277,11 +178,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -291,10 +187,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="urlPath") def url_path(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. - """ return pulumi.get(self, "url_path") @url_path.setter @@ -322,45 +214,6 @@ def __init__(__self__, *, url_path: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Monitor resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[int] delay: The time, in seconds, between sending probes to members. - :param pulumi.Input[str] domain_name: The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - :param pulumi.Input[str] expected_codes: Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - :param pulumi.Input[str] http_method: Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - :param pulumi.Input[str] http_version: Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - :param pulumi.Input[int] max_retries: Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - :param pulumi.Input[int] max_retries_down: Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - :param pulumi.Input[str] name: The Name of the Monitor. - :param pulumi.Input[str] pool_id: The id of the pool that this monitor will be assigned to. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - :param pulumi.Input[int] timeout: Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - :param pulumi.Input[str] type: The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - :param pulumi.Input[str] url_path: Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -396,10 +249,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -409,9 +258,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def delay(self) -> Optional[pulumi.Input[int]]: - """ - The time, in seconds, between sending probes to members. - """ return pulumi.get(self, "delay") @delay.setter @@ -421,10 +267,6 @@ def delay(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="domainName") def domain_name(self) -> Optional[pulumi.Input[str]]: - """ - The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - """ return pulumi.get(self, "domain_name") @domain_name.setter @@ -434,11 +276,6 @@ def domain_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="expectedCodes") def expected_codes(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - """ return pulumi.get(self, "expected_codes") @expected_codes.setter @@ -448,11 +285,6 @@ def expected_codes(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpMethod") def http_method(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - """ return pulumi.get(self, "http_method") @http_method.setter @@ -462,12 +294,6 @@ def http_method(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="httpVersion") def http_version(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - """ return pulumi.get(self, "http_version") @http_version.setter @@ -477,11 +303,6 @@ def http_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxRetries") def max_retries(self) -> Optional[pulumi.Input[int]]: - """ - Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - """ return pulumi.get(self, "max_retries") @max_retries.setter @@ -491,12 +312,6 @@ def max_retries(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="maxRetriesDown") def max_retries_down(self) -> Optional[pulumi.Input[int]]: - """ - Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - """ return pulumi.get(self, "max_retries_down") @max_retries_down.setter @@ -506,9 +321,6 @@ def max_retries_down(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The Name of the Monitor. - """ return pulumi.get(self, "name") @name.setter @@ -518,9 +330,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="poolId") def pool_id(self) -> Optional[pulumi.Input[str]]: - """ - The id of the pool that this monitor will be assigned to. - """ return pulumi.get(self, "pool_id") @pool_id.setter @@ -530,12 +339,6 @@ def pool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - """ return pulumi.get(self, "region") @region.setter @@ -545,11 +348,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -559,11 +357,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def timeout(self) -> Optional[pulumi.Input[int]]: - """ - Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - """ return pulumi.get(self, "timeout") @timeout.setter @@ -573,11 +366,6 @@ def timeout(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - """ return pulumi.get(self, "type") @type.setter @@ -587,10 +375,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="urlPath") def url_path(self) -> Optional[pulumi.Input[str]]: - """ - Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. - """ return pulumi.get(self, "url_path") @url_path.setter @@ -620,76 +404,9 @@ def __init__(__self__, url_path: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 monitor resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - monitor1 = openstack.loadbalancer.Monitor("monitor_1", - pool_id=pool1["id"], - type="PING", - delay=20, - timeout=10, - max_retries=5) - ``` - - ## Import - - Load Balancer Pool Monitor can be imported using the Monitor ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2 - ``` - In case of using OpenContrail, the import may not work properly. If you face an issue, try to import the monitor providing its parent pool ID: - - ```sh - $ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2/708bc224-0f8c-4981-ac82-97095fe051b6 - ``` - + Create a Monitor resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[int] delay: The time, in seconds, between sending probes to members. - :param pulumi.Input[str] domain_name: The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - :param pulumi.Input[str] expected_codes: Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - :param pulumi.Input[str] http_method: Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - :param pulumi.Input[str] http_version: Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - :param pulumi.Input[int] max_retries: Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - :param pulumi.Input[int] max_retries_down: Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - :param pulumi.Input[str] name: The Name of the Monitor. - :param pulumi.Input[str] pool_id: The id of the pool that this monitor will be assigned to. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - :param pulumi.Input[int] timeout: Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - :param pulumi.Input[str] type: The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - :param pulumi.Input[str] url_path: Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. """ ... @overload @@ -698,35 +415,7 @@ def __init__(__self__, args: MonitorArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 monitor resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - monitor1 = openstack.loadbalancer.Monitor("monitor_1", - pool_id=pool1["id"], - type="PING", - delay=20, - timeout=10, - max_retries=5) - ``` - - ## Import - - Load Balancer Pool Monitor can be imported using the Monitor ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2 - ``` - In case of using OpenContrail, the import may not work properly. If you face an issue, try to import the monitor providing its parent pool ID: - - ```sh - $ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2/708bc224-0f8c-4981-ac82-97095fe051b6 - ``` - + Create a Monitor resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param MonitorArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -823,45 +512,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - :param pulumi.Input[int] delay: The time, in seconds, between sending probes to members. - :param pulumi.Input[str] domain_name: The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - :param pulumi.Input[str] expected_codes: Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - :param pulumi.Input[str] http_method: Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - :param pulumi.Input[str] http_version: Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - :param pulumi.Input[int] max_retries: Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - :param pulumi.Input[int] max_retries_down: Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - :param pulumi.Input[str] name: The Name of the Monitor. - :param pulumi.Input[str] pool_id: The id of the pool that this monitor will be assigned to. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - :param pulumi.Input[int] timeout: Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - :param pulumi.Input[str] type: The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - :param pulumi.Input[str] url_path: Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -887,144 +537,75 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the monitor. - A valid value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def delay(self) -> pulumi.Output[int]: - """ - The time, in seconds, between sending probes to members. - """ return pulumi.get(self, "delay") @property @pulumi.getter(name="domainName") def domain_name(self) -> pulumi.Output[Optional[str]]: - """ - The domain name to use in the HTTP host header - health monitor requests. Supported in Octavia API version 2.10 or later. - """ return pulumi.get(self, "domain_name") @property @pulumi.getter(name="expectedCodes") def expected_codes(self) -> pulumi.Output[str]: - """ - Required for HTTP(S) types. Expected HTTP codes - for a passing HTTP(S) monitor. You can either specify a single status like - "200", a list like "200, 202" or a range like "200-202". Default is "200". - """ return pulumi.get(self, "expected_codes") @property @pulumi.getter(name="httpMethod") def http_method(self) -> pulumi.Output[str]: - """ - Required for HTTP(S) types. The HTTP method that - the health monitor uses for requests. One of CONNECT, DELETE, GET, HEAD, - OPTIONS, PATCH, POST, PUT, or TRACE. The default is GET. - """ return pulumi.get(self, "http_method") @property @pulumi.getter(name="httpVersion") def http_version(self) -> pulumi.Output[Optional[str]]: - """ - Required for HTTP(S) types. The HTTP version that - the health monitor uses for requests. One of `1.0` or 1.1` is supported - for HTTP(S) monitors. The default is `1.0`. Supported in Octavia API version - 2.10 or later. - """ return pulumi.get(self, "http_version") @property @pulumi.getter(name="maxRetries") def max_retries(self) -> pulumi.Output[int]: - """ - Number of permissible ping failures before - changing the member's status to INACTIVE. Must be a number between 1 - and 10. - """ return pulumi.get(self, "max_retries") @property @pulumi.getter(name="maxRetriesDown") def max_retries_down(self) -> pulumi.Output[int]: - """ - Number of permissible ping failures before - changing the member's status to ERROR. Must be a number between 1 and 10. - The default is 3. Changing this updates the max_retries_down of the - existing monitor. - """ return pulumi.get(self, "max_retries_down") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The Name of the Monitor. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="poolId") def pool_id(self) -> pulumi.Output[str]: - """ - The id of the pool that this monitor will be assigned to. - """ return pulumi.get(self, "pool_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a monitor. If omitted, the - `region` argument of the provider is used. Changing this creates a new - monitor. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the monitor. Only administrative users can specify a tenant UUID - other than their own. Changing this creates a new monitor. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter def timeout(self) -> pulumi.Output[int]: - """ - Maximum number of seconds for a monitor to wait for a - ping reply before it times out. The value must be less than the delay - value. - """ return pulumi.get(self, "timeout") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of probe, which is PING, TCP, HTTP, HTTPS, - TLS-HELLO, SCTP or UDP-CONNECT, that is sent by the loadbalancer to - verify the member state. Changing this creates a new monitor. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="urlPath") def url_path(self) -> pulumi.Output[str]: - """ - Required for HTTP(S) types. URI path that will be - accessed if monitor type is HTTP or HTTPS. Default is `/`. - """ return pulumi.get(self, "url_path") diff --git a/sdk/python/pulumi_openstack/loadbalancer/outputs.py b/sdk/python/pulumi_openstack/loadbalancer/outputs.py index a74ac434e..926434ced 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/outputs.py +++ b/sdk/python/pulumi_openstack/loadbalancer/outputs.py @@ -52,26 +52,6 @@ def __init__(__self__, *, name: Optional[str] = None, subnet_id: Optional[str] = None, weight: Optional[int] = None): - """ - :param str address: The IP address of the members to receive traffic from - the load balancer. - :param int protocol_port: The port on which to listen for client traffic. - :param bool admin_state_up: The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - :param bool backup: A bool that indicates whether the member is - backup. **Requires octavia minor version 2.1 or later**. - :param str id: The unique ID for the members. - :param str monitor_address: An alternate IP address used for health - monitoring a backend member. - :param int monitor_port: An alternate protocol port used for health - monitoring a backend member. - :param str name: Human-readable name for the member. - :param str subnet_id: The subnet in which to access the member. - :param int weight: A positive integer value that indicates the relative - portion of traffic that this members should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ pulumi.set(__self__, "address", address) pulumi.set(__self__, "protocol_port", protocol_port) if admin_state_up is not None: @@ -94,89 +74,51 @@ def __init__(__self__, *, @property @pulumi.getter def address(self) -> str: - """ - The IP address of the members to receive traffic from - the load balancer. - """ return pulumi.get(self, "address") @property @pulumi.getter(name="protocolPort") def protocol_port(self) -> int: - """ - The port on which to listen for client traffic. - """ return pulumi.get(self, "protocol_port") @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[bool]: - """ - The administrative state of the member. - A valid value is true (UP) or false (DOWN). Defaults to true. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def backup(self) -> Optional[bool]: - """ - A bool that indicates whether the member is - backup. **Requires octavia minor version 2.1 or later**. - """ return pulumi.get(self, "backup") @property @pulumi.getter def id(self) -> Optional[str]: - """ - The unique ID for the members. - """ return pulumi.get(self, "id") @property @pulumi.getter(name="monitorAddress") def monitor_address(self) -> Optional[str]: - """ - An alternate IP address used for health - monitoring a backend member. - """ return pulumi.get(self, "monitor_address") @property @pulumi.getter(name="monitorPort") def monitor_port(self) -> Optional[int]: - """ - An alternate protocol port used for health - monitoring a backend member. - """ return pulumi.get(self, "monitor_port") @property @pulumi.getter def name(self) -> Optional[str]: - """ - Human-readable name for the member. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[str]: - """ - The subnet in which to access the member. - """ return pulumi.get(self, "subnet_id") @property @pulumi.getter def weight(self) -> Optional[int]: - """ - A positive integer value that indicates the relative - portion of traffic that this members should receive from the pool. For - example, a member with a weight of 10 receives five times as much traffic - as a member with a weight of 2. Defaults to 1. - """ return pulumi.get(self, "weight") @@ -202,12 +144,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, type: str, cookie_name: Optional[str] = None): - """ - :param str type: The type of persistence mode. The current specification - supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. - :param str cookie_name: The name of the cookie if persistence mode is set - appropriately. Required if `type = APP_COOKIE`. - """ pulumi.set(__self__, "type", type) if cookie_name is not None: pulumi.set(__self__, "cookie_name", cookie_name) @@ -215,19 +151,11 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> str: - """ - The type of persistence mode. The current specification - supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="cookieName") def cookie_name(self) -> Optional[str]: - """ - The name of the cookie if persistence mode is set - appropriately. Required if `type = APP_COOKIE`. - """ return pulumi.get(self, "cookie_name") diff --git a/sdk/python/pulumi_openstack/loadbalancer/pool.py b/sdk/python/pulumi_openstack/loadbalancer/pool.py index 2a9290bf4..69a547ccf 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/pool.py +++ b/sdk/python/pulumi_openstack/loadbalancer/pool.py @@ -36,54 +36,6 @@ def __init__(__self__, *, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Pool resource. - :param pulumi.Input[str] lb_method: The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - :param pulumi.Input[str] protocol: The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - :param pulumi.Input[bool] admin_state_up: The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - :param pulumi.Input[str] ca_tls_container_ref: The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] crl_container_ref: The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] description: Human-readable description for the pool. - :param pulumi.Input[str] listener_id: The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - :param pulumi.Input[str] name: Human-readable name for the pool. - :param pulumi.Input['PoolPersistenceArgs'] persistence: Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[str] tls_container_ref: The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - :param pulumi.Input[bool] tls_enabled: When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ pulumi.set(__self__, "lb_method", lb_method) pulumi.set(__self__, "protocol", protocol) @@ -123,11 +75,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="lbMethod") def lb_method(self) -> pulumi.Input[str]: - """ - The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - """ return pulumi.get(self, "lb_method") @lb_method.setter @@ -137,11 +84,6 @@ def lb_method(self, value: pulumi.Input[str]): @property @pulumi.getter def protocol(self) -> pulumi.Input[str]: - """ - The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -151,10 +93,6 @@ def protocol(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -164,11 +102,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - """ return pulumi.get(self, "alpn_protocols") @alpn_protocols.setter @@ -178,11 +111,6 @@ def alpn_protocols(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="caTlsContainerRef") def ca_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "ca_tls_container_ref") @ca_tls_container_ref.setter @@ -192,11 +120,6 @@ def ca_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="crlContainerRef") def crl_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "crl_container_ref") @crl_container_ref.setter @@ -206,9 +129,6 @@ def crl_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the pool. - """ return pulumi.get(self, "description") @description.setter @@ -218,11 +138,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="listenerId") def listener_id(self) -> Optional[pulumi.Input[str]]: - """ - The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - """ return pulumi.get(self, "listener_id") @listener_id.setter @@ -232,11 +147,6 @@ def listener_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> Optional[pulumi.Input[str]]: - """ - The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - """ return pulumi.get(self, "loadbalancer_id") @loadbalancer_id.setter @@ -246,9 +156,6 @@ def loadbalancer_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the pool. - """ return pulumi.get(self, "name") @name.setter @@ -258,11 +165,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def persistence(self) -> Optional[pulumi.Input['PoolPersistenceArgs']]: - """ - Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - """ return pulumi.get(self, "persistence") @persistence.setter @@ -272,11 +174,6 @@ def persistence(self, value: Optional[pulumi.Input['PoolPersistenceArgs']]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - """ return pulumi.get(self, "region") @region.setter @@ -295,11 +192,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -309,12 +201,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> Optional[pulumi.Input[str]]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @tls_ciphers.setter @@ -324,12 +210,6 @@ def tls_ciphers(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsContainerRef") def tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "tls_container_ref") @tls_container_ref.setter @@ -339,11 +219,6 @@ def tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsEnabled") def tls_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - """ return pulumi.get(self, "tls_enabled") @tls_enabled.setter @@ -353,11 +228,6 @@ def tls_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") @tls_versions.setter @@ -388,54 +258,6 @@ def __init__(__self__, *, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Pool resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - :param pulumi.Input[str] ca_tls_container_ref: The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] crl_container_ref: The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] description: Human-readable description for the pool. - :param pulumi.Input[str] lb_method: The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - :param pulumi.Input[str] listener_id: The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - :param pulumi.Input[str] name: Human-readable name for the pool. - :param pulumi.Input['PoolPersistenceArgs'] persistence: Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - :param pulumi.Input[str] protocol: The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[str] tls_container_ref: The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - :param pulumi.Input[bool] tls_enabled: When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -477,10 +299,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -490,11 +308,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - """ return pulumi.get(self, "alpn_protocols") @alpn_protocols.setter @@ -504,11 +317,6 @@ def alpn_protocols(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] @property @pulumi.getter(name="caTlsContainerRef") def ca_tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "ca_tls_container_ref") @ca_tls_container_ref.setter @@ -518,11 +326,6 @@ def ca_tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="crlContainerRef") def crl_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "crl_container_ref") @crl_container_ref.setter @@ -532,9 +335,6 @@ def crl_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the pool. - """ return pulumi.get(self, "description") @description.setter @@ -544,11 +344,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="lbMethod") def lb_method(self) -> Optional[pulumi.Input[str]]: - """ - The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - """ return pulumi.get(self, "lb_method") @lb_method.setter @@ -558,11 +353,6 @@ def lb_method(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="listenerId") def listener_id(self) -> Optional[pulumi.Input[str]]: - """ - The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - """ return pulumi.get(self, "listener_id") @listener_id.setter @@ -572,11 +362,6 @@ def listener_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> Optional[pulumi.Input[str]]: - """ - The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - """ return pulumi.get(self, "loadbalancer_id") @loadbalancer_id.setter @@ -586,9 +371,6 @@ def loadbalancer_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable name for the pool. - """ return pulumi.get(self, "name") @name.setter @@ -598,11 +380,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def persistence(self) -> Optional[pulumi.Input['PoolPersistenceArgs']]: - """ - Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - """ return pulumi.get(self, "persistence") @persistence.setter @@ -612,11 +389,6 @@ def persistence(self, value: Optional[pulumi.Input['PoolPersistenceArgs']]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -626,11 +398,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - """ return pulumi.get(self, "region") @region.setter @@ -649,11 +416,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -663,12 +425,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> Optional[pulumi.Input[str]]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @tls_ciphers.setter @@ -678,12 +434,6 @@ def tls_ciphers(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsContainerRef") def tls_container_ref(self) -> Optional[pulumi.Input[str]]: - """ - The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "tls_container_ref") @tls_container_ref.setter @@ -693,11 +443,6 @@ def tls_container_ref(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tlsEnabled") def tls_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - """ return pulumi.get(self, "tls_enabled") @tls_enabled.setter @@ -707,11 +452,6 @@ def tls_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") @tls_versions.setter @@ -744,85 +484,9 @@ def __init__(__self__, tls_versions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 pool resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - pool1 = openstack.loadbalancer.Pool("pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - listener_id="d9415786-5f1a-428b-b35f-2f1523e146d2", - persistence={ - "type": "APP_COOKIE", - "cookie_name": "testCookie", - }) - ``` - - ## Import - - Load Balancer Pool can be imported using the Pool ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/pool:Pool pool_1 60ad9ee4-249a-4d60-a45b-aa60e046c513 - ``` - + Create a Pool resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - :param pulumi.Input[str] ca_tls_container_ref: The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] crl_container_ref: The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] description: Human-readable description for the pool. - :param pulumi.Input[str] lb_method: The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - :param pulumi.Input[str] listener_id: The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - :param pulumi.Input[str] name: Human-readable name for the pool. - :param pulumi.Input[Union['PoolPersistenceArgs', 'PoolPersistenceArgsDict']] persistence: Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - :param pulumi.Input[str] protocol: The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[str] tls_container_ref: The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - :param pulumi.Input[bool] tls_enabled: When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ ... @overload @@ -831,35 +495,7 @@ def __init__(__self__, args: PoolArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 pool resource within OpenStack. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - pool1 = openstack.loadbalancer.Pool("pool_1", - protocol="HTTP", - lb_method="ROUND_ROBIN", - listener_id="d9415786-5f1a-428b-b35f-2f1523e146d2", - persistence={ - "type": "APP_COOKIE", - "cookie_name": "testCookie", - }) - ``` - - ## Import - - Load Balancer Pool can be imported using the Pool ID, e.g.: - - ```sh - $ pulumi import openstack:loadbalancer/pool:Pool pool_1 60ad9ee4-249a-4d60-a45b-aa60e046c513 - ``` - + Create a Pool resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param PoolArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -959,54 +595,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - :param pulumi.Input[Sequence[pulumi.Input[str]]] alpn_protocols: A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - :param pulumi.Input[str] ca_tls_container_ref: The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] crl_container_ref: The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - :param pulumi.Input[str] description: Human-readable description for the pool. - :param pulumi.Input[str] lb_method: The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - :param pulumi.Input[str] listener_id: The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - :param pulumi.Input[str] loadbalancer_id: The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - :param pulumi.Input[str] name: Human-readable name for the pool. - :param pulumi.Input[Union['PoolPersistenceArgs', 'PoolPersistenceArgsDict']] persistence: Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - :param pulumi.Input[str] protocol: The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - :param pulumi.Input[str] tenant_id: Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - :param pulumi.Input[str] tls_ciphers: List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - :param pulumi.Input[str] tls_container_ref: The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - :param pulumi.Input[bool] tls_enabled: When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tls_versions: A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1035,116 +623,61 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the pool. A valid - value is true (UP) or false (DOWN). - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="alpnProtocols") def alpn_protocols(self) -> pulumi.Output[Sequence[str]]: - """ - A list of ALPN protocols. Available protocols: - `http/1.0`, `http/1.1`, `h2`. Supported only in **Octavia minor version >= - 2.24**. - """ return pulumi.get(self, "alpn_protocols") @property @pulumi.getter(name="caTlsContainerRef") def ca_tls_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA certificate bundle for `tls_enabled` pools. - Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "ca_tls_container_ref") @property @pulumi.getter(name="crlContainerRef") def crl_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - The reference of the key manager service - secret containing a PEM format CA revocation list file for `tls_enabled` - pools. Supported only in **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "crl_container_ref") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the pool. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="lbMethod") def lb_method(self) -> pulumi.Output[str]: - """ - The load balancing algorithm to distribute traffic - to the pool's members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, - SOURCE_IP, or SOURCE_IP_PORT. - """ return pulumi.get(self, "lb_method") @property @pulumi.getter(name="listenerId") def listener_id(self) -> pulumi.Output[Optional[str]]: - """ - The Listener on which the members of the pool will - be associated with. Changing this creates a new pool. Note: One of - LoadbalancerID or ListenerID must be provided. - """ return pulumi.get(self, "listener_id") @property @pulumi.getter(name="loadbalancerId") def loadbalancer_id(self) -> pulumi.Output[Optional[str]]: - """ - The load balancer on which to provision this - pool. Changing this creates a new pool. Note: One of LoadbalancerID or - ListenerID must be provided. - """ return pulumi.get(self, "loadbalancer_id") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - Human-readable name for the pool. - """ return pulumi.get(self, "name") @property @pulumi.getter def persistence(self) -> pulumi.Output[Optional['outputs.PoolPersistence']]: - """ - Omit this field to prevent session persistence. - Indicates whether connections in the same session will be processed by the - same Pool member or not. Changing this creates a new pool. - """ return pulumi.get(self, "persistence") @property @pulumi.getter def protocol(self) -> pulumi.Output[str]: - """ - The protocol - can either be TCP, HTTP, HTTPS, PROXY, - UDP, PROXYV2 (**Octavia minor version >= 2.22**) or SCTP (**Octavia minor - version >= 2.23**). Changing this creates a new pool. - """ return pulumi.get(self, "protocol") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a pool. If omitted, the `region` - argument of the provider is used. Changing this creates a new pool. - """ return pulumi.get(self, "region") @property @@ -1155,52 +688,25 @@ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - Required for admins. The UUID of the tenant who owns - the pool. Only administrative users can specify a tenant UUID other than - their own. Changing this creates a new pool. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="tlsCiphers") def tls_ciphers(self) -> pulumi.Output[str]: - """ - List of ciphers in OpenSSL format - (colon-separated). See - https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. - Supported only in **Octavia minor version >= 2.15**. - """ return pulumi.get(self, "tls_ciphers") @property @pulumi.getter(name="tlsContainerRef") def tls_container_ref(self) -> pulumi.Output[Optional[str]]: - """ - The reference to the key manager service - secret containing a PKCS12 format certificate/key bundle for `tls_enabled` - pools for TLS client authentication to the member servers. Supported only in - **Octavia minor version >= 2.8**. - """ return pulumi.get(self, "tls_container_ref") @property @pulumi.getter(name="tlsEnabled") def tls_enabled(self) -> pulumi.Output[Optional[bool]]: - """ - When true connections to backend member servers - will use TLS encryption. Default is false. Supported only in **Octavia minor - version >= 2.8**. - """ return pulumi.get(self, "tls_enabled") @property @pulumi.getter(name="tlsVersions") def tls_versions(self) -> pulumi.Output[Sequence[str]]: - """ - A list of TLS protocol versions. Available - versions: `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. Supported only in - **Octavia minor version >= 2.17**. - """ return pulumi.get(self, "tls_versions") diff --git a/sdk/python/pulumi_openstack/loadbalancer/quota.py b/sdk/python/pulumi_openstack/loadbalancer/quota.py index b18be6df1..a2b04a6d9 100644 --- a/sdk/python/pulumi_openstack/loadbalancer/quota.py +++ b/sdk/python/pulumi_openstack/loadbalancer/quota.py @@ -25,26 +25,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Quota resource. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quota. - :param pulumi.Input[int] health_monitor: Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] l7_policy: Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] l7_rule: Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] listener: Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] loadbalancer: Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] member: Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] pool: Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[str] region: Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. """ pulumi.set(__self__, "project_id", project_id) if health_monitor is not None: @@ -67,10 +47,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: - """ - ID of the project to manage quotas. Changing this - creates a new quota. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -80,10 +56,6 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="healthMonitor") def health_monitor(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "health_monitor") @health_monitor.setter @@ -93,11 +65,6 @@ def health_monitor(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="l7Policy") def l7_policy(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_policy") @l7_policy.setter @@ -107,11 +74,6 @@ def l7_policy(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="l7Rule") def l7_rule(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_rule") @l7_rule.setter @@ -121,10 +83,6 @@ def l7_rule(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def listener(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "listener") @listener.setter @@ -134,10 +92,6 @@ def listener(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def loadbalancer(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "loadbalancer") @loadbalancer.setter @@ -147,10 +101,6 @@ def loadbalancer(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def member(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "member") @member.setter @@ -160,10 +110,6 @@ def member(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def pool(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "pool") @pool.setter @@ -173,10 +119,6 @@ def pool(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. - """ return pulumi.get(self, "region") @region.setter @@ -198,26 +140,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Quota resources. - :param pulumi.Input[int] health_monitor: Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] l7_policy: Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] l7_rule: Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] listener: Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] loadbalancer: Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] member: Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] pool: Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quota. - :param pulumi.Input[str] region: Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. """ if health_monitor is not None: pulumi.set(__self__, "health_monitor", health_monitor) @@ -241,10 +163,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="healthMonitor") def health_monitor(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "health_monitor") @health_monitor.setter @@ -254,11 +172,6 @@ def health_monitor(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="l7Policy") def l7_policy(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_policy") @l7_policy.setter @@ -268,11 +181,6 @@ def l7_policy(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="l7Rule") def l7_rule(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_rule") @l7_rule.setter @@ -282,10 +190,6 @@ def l7_rule(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def listener(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "listener") @listener.setter @@ -295,10 +199,6 @@ def listener(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def loadbalancer(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "loadbalancer") @loadbalancer.setter @@ -308,10 +208,6 @@ def loadbalancer(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def member(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "member") @member.setter @@ -321,10 +217,6 @@ def member(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def pool(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "pool") @pool.setter @@ -334,10 +226,6 @@ def pool(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the project to manage quotas. Changing this - creates a new quota. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -347,10 +235,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. - """ return pulumi.get(self, "region") @region.setter @@ -374,68 +258,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 load balancer quota resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack - API in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - quota1 = openstack.loadbalancer.Quota("quota_1", - project_id=project1.id, - loadbalancer=6, - listener=7, - member=8, - pool=9, - health_monitor=10, - l7_policy=11, - l7_rule=12) - ``` - - ## Import - - Quotas can be imported using the `project_id/region_name`, where region_name is the - one defined is the Openstack credentials that are in use. E.g. - - ```sh - $ pulumi import openstack:loadbalancer/quota:Quota quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a Quota resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] health_monitor: Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] l7_policy: Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] l7_rule: Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] listener: Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] loadbalancer: Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] member: Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] pool: Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quota. - :param pulumi.Input[str] region: Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. """ ... @overload @@ -444,46 +269,7 @@ def __init__(__self__, args: QuotaArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 load balancer quota resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack - API in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - > **Note:** This resource has attributes that depend on octavia minor versions. - Please ensure your Openstack cloud supports the required minor version. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - project1 = openstack.identity.Project("project_1", name="project_1") - quota1 = openstack.loadbalancer.Quota("quota_1", - project_id=project1.id, - loadbalancer=6, - listener=7, - member=8, - pool=9, - health_monitor=10, - l7_policy=11, - l7_rule=12) - ``` - - ## Import - - Quotas can be imported using the `project_id/region_name`, where region_name is the - one defined is the Openstack credentials that are in use. E.g. - - ```sh - $ pulumi import openstack:loadbalancer/quota:Quota quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a Quota resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QuotaArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -554,26 +340,6 @@ def get(resource_name: str, :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[int] health_monitor: Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] l7_policy: Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] l7_rule: Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - :param pulumi.Input[int] listener: Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] loadbalancer: Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] member: Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[int] pool: Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - :param pulumi.Input[str] project_id: ID of the project to manage quotas. Changing this - creates a new quota. - :param pulumi.Input[str] region: Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -593,83 +359,45 @@ def get(resource_name: str, @property @pulumi.getter(name="healthMonitor") def health_monitor(self) -> pulumi.Output[int]: - """ - Quota value for health_monitors. Changing - this updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "health_monitor") @property @pulumi.getter(name="l7Policy") def l7_policy(self) -> pulumi.Output[int]: - """ - Quota value for l7_policies. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_policy") @property @pulumi.getter(name="l7Rule") def l7_rule(self) -> pulumi.Output[int]: - """ - Quota value for l7_rules. Changing this - updates the existing quota. Omitting it sets it to 0. Available in - **Octavia minor version 2.19**. - """ return pulumi.get(self, "l7_rule") @property @pulumi.getter def listener(self) -> pulumi.Output[int]: - """ - Quota value for listeners. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "listener") @property @pulumi.getter def loadbalancer(self) -> pulumi.Output[int]: - """ - Quota value for loadbalancers. Changing this - updates the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "loadbalancer") @property @pulumi.getter def member(self) -> pulumi.Output[int]: - """ - Quota value for members. Changing this updates - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "member") @property @pulumi.getter def pool(self) -> pulumi.Output[int]: - """ - Quota value for pools. Changing this updates the - the existing quota. Omitting it sets it to 0. - """ return pulumi.get(self, "pool") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - ID of the project to manage quotas. Changing this - creates a new quota. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - Region in which to manage quotas. Changing this - creates a new quota. If ommited, the region of the credentials is used. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/_inputs.py b/sdk/python/pulumi_openstack/networking/_inputs.py index 7368e65f0..4273d526c 100644 --- a/sdk/python/pulumi_openstack/networking/_inputs.py +++ b/sdk/python/pulumi_openstack/networking/_inputs.py @@ -27,11 +27,6 @@ def __init__(__self__, *, network_type: Optional[pulumi.Input[str]] = None, physical_network: Optional[pulumi.Input[str]] = None, segmentation_id: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[str] network_type: The type of physical network. - :param pulumi.Input[str] physical_network: The physical network where this network is implemented. - :param pulumi.Input[int] segmentation_id: An isolated segment on the physical network. - """ if network_type is not None: pulumi.set(__self__, "network_type", network_type) if physical_network is not None: @@ -42,9 +37,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="networkType") def network_type(self) -> Optional[pulumi.Input[str]]: - """ - The type of physical network. - """ return pulumi.get(self, "network_type") @network_type.setter @@ -54,9 +46,6 @@ def network_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="physicalNetwork") def physical_network(self) -> Optional[pulumi.Input[str]]: - """ - The physical network where this network is implemented. - """ return pulumi.get(self, "physical_network") @physical_network.setter @@ -66,9 +55,6 @@ def physical_network(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> Optional[pulumi.Input[int]]: - """ - An isolated segment on the physical network. - """ return pulumi.get(self, "segmentation_id") @segmentation_id.setter @@ -81,10 +67,6 @@ class PortAllowedAddressPairArgs: def __init__(__self__, *, ip_address: pulumi.Input[str], mac_address: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] ip_address: The additional IP address. - :param pulumi.Input[str] mac_address: The additional MAC address. - """ pulumi.set(__self__, "ip_address", ip_address) if mac_address is not None: pulumi.set(__self__, "mac_address", mac_address) @@ -92,9 +74,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> pulumi.Input[str]: - """ - The additional IP address. - """ return pulumi.get(self, "ip_address") @ip_address.setter @@ -104,9 +83,6 @@ def ip_address(self, value: pulumi.Input[str]): @property @pulumi.getter(name="macAddress") def mac_address(self) -> Optional[pulumi.Input[str]]: - """ - The additional MAC address. - """ return pulumi.get(self, "mac_address") @mac_address.setter @@ -122,17 +98,6 @@ def __init__(__self__, *, vif_details: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, vif_type: Optional[pulumi.Input[str]] = None, vnic_type: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] host_id: The ID of the host to allocate port on. - :param pulumi.Input[str] profile: Custom data to be passed as `binding:profile`. Data - must be passed as JSON. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] vif_details: A map of JSON strings containing additional - details for this specific binding. - :param pulumi.Input[str] vif_type: The VNIC type of the port binding. - :param pulumi.Input[str] vnic_type: VNIC type for the port. Can either be `direct`, - `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. - Default value is `normal`. It can be updated on unbound ports only. - """ if host_id is not None: pulumi.set(__self__, "host_id", host_id) if profile is not None: @@ -147,9 +112,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="hostId") def host_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the host to allocate port on. - """ return pulumi.get(self, "host_id") @host_id.setter @@ -159,10 +121,6 @@ def host_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def profile(self) -> Optional[pulumi.Input[str]]: - """ - Custom data to be passed as `binding:profile`. Data - must be passed as JSON. - """ return pulumi.get(self, "profile") @profile.setter @@ -172,10 +130,6 @@ def profile(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vifDetails") def vif_details(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of JSON strings containing additional - details for this specific binding. - """ return pulumi.get(self, "vif_details") @vif_details.setter @@ -185,9 +139,6 @@ def vif_details(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="vifType") def vif_type(self) -> Optional[pulumi.Input[str]]: - """ - The VNIC type of the port binding. - """ return pulumi.get(self, "vif_type") @vif_type.setter @@ -197,11 +148,6 @@ def vif_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="vnicType") def vnic_type(self) -> Optional[pulumi.Input[str]]: - """ - VNIC type for the port. Can either be `direct`, - `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. - Default value is `normal`. It can be updated on unbound ports only. - """ return pulumi.get(self, "vnic_type") @vnic_type.setter @@ -215,11 +161,6 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str], ip_version: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[str] name: Name of the DHCP option. - :param pulumi.Input[str] value: Value of the DHCP option. - :param pulumi.Input[int] ip_version: IP protocol version. Defaults to 4. - """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) if ip_version is not None: @@ -228,9 +169,6 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> pulumi.Input[str]: - """ - Name of the DHCP option. - """ return pulumi.get(self, "name") @name.setter @@ -240,9 +178,6 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: - """ - Value of the DHCP option. - """ return pulumi.get(self, "value") @value.setter @@ -252,9 +187,6 @@ def value(self, value: pulumi.Input[str]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP protocol version. Defaults to 4. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -267,15 +199,6 @@ class PortFixedIpArgs: def __init__(__self__, *, ip_address: Optional[pulumi.Input[str]] = None, subnet_id: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] ip_address: IP address desired in the subnet for this port. If - you don't specify `ip_address`, an available IP address from the specified - subnet will be allocated to this port. This field will not be populated if it - is left blank or omitted. To retrieve the assigned IP address, use the - `all_fixed_ips` attribute. - :param pulumi.Input[str] subnet_id: Subnet in which to allocate IP address for - this port. - """ if ip_address is not None: pulumi.set(__self__, "ip_address", ip_address) if subnet_id is not None: @@ -284,13 +207,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[pulumi.Input[str]]: - """ - IP address desired in the subnet for this port. If - you don't specify `ip_address`, an available IP address from the specified - subnet will be allocated to this port. This field will not be populated if it - is left blank or omitted. To retrieve the assigned IP address, use the - `all_fixed_ips` attribute. - """ return pulumi.get(self, "ip_address") @ip_address.setter @@ -300,10 +216,6 @@ def ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - Subnet in which to allocate IP address for - this port. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -316,10 +228,6 @@ class RouterExternalFixedIpArgs: def __init__(__self__, *, ip_address: Optional[pulumi.Input[str]] = None, subnet_id: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] ip_address: The IP address to set on the router. - :param pulumi.Input[str] subnet_id: Subnet in which the fixed IP belongs to. - """ if ip_address is not None: pulumi.set(__self__, "ip_address", ip_address) if subnet_id is not None: @@ -328,9 +236,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The IP address to set on the router. - """ return pulumi.get(self, "ip_address") @ip_address.setter @@ -340,9 +245,6 @@ def ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - Subnet in which the fixed IP belongs to. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -354,20 +256,12 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): class RouterVendorOptionsArgs: def __init__(__self__, *, set_router_gateway_after_create: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[bool] set_router_gateway_after_create: Boolean to control whether - the Router gateway is assigned during creation or updated after creation. - """ if set_router_gateway_after_create is not None: pulumi.set(__self__, "set_router_gateway_after_create", set_router_gateway_after_create) @property @pulumi.getter(name="setRouterGatewayAfterCreate") def set_router_gateway_after_create(self) -> Optional[pulumi.Input[bool]]: - """ - Boolean to control whether - the Router gateway is assigned during creation or updated after creation. - """ return pulumi.get(self, "set_router_gateway_after_create") @set_router_gateway_after_create.setter @@ -380,19 +274,12 @@ class SubnetAllocationPoolArgs: def __init__(__self__, *, end: pulumi.Input[str], start: pulumi.Input[str]): - """ - :param pulumi.Input[str] end: The ending address. - :param pulumi.Input[str] start: The starting address. - """ pulumi.set(__self__, "end", end) pulumi.set(__self__, "start", start) @property @pulumi.getter def end(self) -> pulumi.Input[str]: - """ - The ending address. - """ return pulumi.get(self, "end") @end.setter @@ -402,9 +289,6 @@ def end(self, value: pulumi.Input[str]): @property @pulumi.getter def start(self) -> pulumi.Input[str]: - """ - The starting address. - """ return pulumi.get(self, "start") @start.setter @@ -418,11 +302,6 @@ def __init__(__self__, *, port_id: pulumi.Input[str], segmentation_id: pulumi.Input[int], segmentation_type: pulumi.Input[str]): - """ - :param pulumi.Input[str] port_id: The ID of the port to be made a subport of the trunk. - :param pulumi.Input[int] segmentation_id: The numeric id of the subport segment. - :param pulumi.Input[str] segmentation_type: The segmentation technology to use, e.g., "vlan". - """ pulumi.set(__self__, "port_id", port_id) pulumi.set(__self__, "segmentation_id", segmentation_id) pulumi.set(__self__, "segmentation_type", segmentation_type) @@ -430,9 +309,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Input[str]: - """ - The ID of the port to be made a subport of the trunk. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -442,9 +318,6 @@ def port_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> pulumi.Input[int]: - """ - The numeric id of the subport segment. - """ return pulumi.get(self, "segmentation_id") @segmentation_id.setter @@ -454,9 +327,6 @@ def segmentation_id(self, value: pulumi.Input[int]): @property @pulumi.getter(name="segmentationType") def segmentation_type(self) -> pulumi.Input[str]: - """ - The segmentation technology to use, e.g., "vlan". - """ return pulumi.get(self, "segmentation_type") @segmentation_type.setter diff --git a/sdk/python/pulumi_openstack/networking/address_scope.py b/sdk/python/pulumi_openstack/networking/address_scope.py index 1b5de8a85..aefd95f02 100644 --- a/sdk/python/pulumi_openstack/networking/address_scope.py +++ b/sdk/python/pulumi_openstack/networking/address_scope.py @@ -21,20 +21,6 @@ def __init__(__self__, *, shared: Optional[pulumi.Input[bool]] = None): """ The set of arguments for constructing a AddressScope resource. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - :param pulumi.Input[str] name: The name of the address-scope. Changing this updates the - name of the existing address-scope. - :param pulumi.Input[str] project_id: The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - :param pulumi.Input[bool] shared: Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. """ if ip_version is not None: pulumi.set(__self__, "ip_version", ip_version) @@ -50,10 +36,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -63,10 +45,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the address-scope. Changing this updates the - name of the existing address-scope. - """ return pulumi.get(self, "name") @name.setter @@ -76,11 +54,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -90,12 +63,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - """ return pulumi.get(self, "region") @region.setter @@ -105,11 +72,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. - """ return pulumi.get(self, "shared") @shared.setter @@ -127,20 +89,6 @@ def __init__(__self__, *, shared: Optional[pulumi.Input[bool]] = None): """ Input properties used for looking up and filtering AddressScope resources. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - :param pulumi.Input[str] name: The name of the address-scope. Changing this updates the - name of the existing address-scope. - :param pulumi.Input[str] project_id: The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - :param pulumi.Input[bool] shared: Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. """ if ip_version is not None: pulumi.set(__self__, "ip_version", ip_version) @@ -156,10 +104,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -169,10 +113,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the address-scope. Changing this updates the - name of the existing address-scope. - """ return pulumi.get(self, "name") @name.setter @@ -182,11 +122,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -196,12 +131,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - """ return pulumi.get(self, "region") @region.setter @@ -211,11 +140,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. - """ return pulumi.get(self, "shared") @shared.setter @@ -235,63 +159,9 @@ def __init__(__self__, shared: Optional[pulumi.Input[bool]] = None, __props__=None): """ - Manages a V2 Neutron addressscope resource within OpenStack. - - ## Example Usage - - ### Create an Address-scope - - ```python - import pulumi - import pulumi_openstack as openstack - - addressscope1 = openstack.networking.AddressScope("addressscope_1", - name="addressscope_1", - ip_version=6) - ``` - - ### Create a Subnet Pool from an Address-scope - - ```python - import pulumi - import pulumi_openstack as openstack - - addressscope1 = openstack.networking.AddressScope("addressscope_1", - name="addressscope_1", - ip_version=6) - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - prefixes=[ - "fdf7:b13d:dead:beef::/64", - "fd65:86cc:a334:39b7::/64", - ], - address_scope_id=addressscope1.id) - ``` - - ## Import - - Address-scopes can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/addressScope:AddressScope addressscope_1 9cc35860-522a-4d35-974d-51d4b011801e - ``` - + Create a AddressScope resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - :param pulumi.Input[str] name: The name of the address-scope. Changing this updates the - name of the existing address-scope. - :param pulumi.Input[str] project_id: The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - :param pulumi.Input[bool] shared: Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. """ ... @overload @@ -300,47 +170,7 @@ def __init__(__self__, args: Optional[AddressScopeArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron addressscope resource within OpenStack. - - ## Example Usage - - ### Create an Address-scope - - ```python - import pulumi - import pulumi_openstack as openstack - - addressscope1 = openstack.networking.AddressScope("addressscope_1", - name="addressscope_1", - ip_version=6) - ``` - - ### Create a Subnet Pool from an Address-scope - - ```python - import pulumi - import pulumi_openstack as openstack - - addressscope1 = openstack.networking.AddressScope("addressscope_1", - name="addressscope_1", - ip_version=6) - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - prefixes=[ - "fdf7:b13d:dead:beef::/64", - "fd65:86cc:a334:39b7::/64", - ], - address_scope_id=addressscope1.id) - ``` - - ## Import - - Address-scopes can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/addressScope:AddressScope addressscope_1 9cc35860-522a-4d35-974d-51d4b011801e - ``` - + Create a AddressScope resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param AddressScopeArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -397,20 +227,6 @@ def get(resource_name: str, :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[int] ip_version: IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - :param pulumi.Input[str] name: The name of the address-scope. Changing this updates the - name of the existing address-scope. - :param pulumi.Input[str] project_id: The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - :param pulumi.Input[bool] shared: Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -426,49 +242,25 @@ def get(resource_name: str, @property @pulumi.getter(name="ipVersion") def ip_version(self) -> pulumi.Output[Optional[int]]: - """ - IP version, either 4 (default) or 6. Changing this - creates a new address-scope. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the address-scope. Changing this updates the - name of the existing address-scope. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the address-scope. Required if admin - wants to create a address-scope for another project. Changing this creates a - new address-scope. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron address-scope. If omitted, - the `region` argument of the provider is used. Changing this creates a new - address-scope. - """ return pulumi.get(self, "region") @property @pulumi.getter def shared(self) -> pulumi.Output[bool]: - """ - Indicates whether this address-scope is shared across - all projects. Changing this updates the shared status of the existing - address-scope. - """ return pulumi.get(self, "shared") diff --git a/sdk/python/pulumi_openstack/networking/floating_ip.py b/sdk/python/pulumi_openstack/networking/floating_ip.py index e30d01314..ab72f74d8 100644 --- a/sdk/python/pulumi_openstack/networking/floating_ip.py +++ b/sdk/python/pulumi_openstack/networking/floating_ip.py @@ -29,42 +29,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a FloatingIp resource. - :param pulumi.Input[str] pool: The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - :param pulumi.Input[str] address: The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - :param pulumi.Input[str] description: Human-readable description for the floating IP. - :param pulumi.Input[str] dns_domain: The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] dns_name: The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] fixed_ip: Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - :param pulumi.Input[str] subnet_id: The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the floating IP. - :param pulumi.Input[str] tenant_id: The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "pool", pool) if address is not None: @@ -95,10 +59,6 @@ def __init__(__self__, *, @property @pulumi.getter def pool(self) -> pulumi.Input[str]: - """ - The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - """ return pulumi.get(self, "pool") @pool.setter @@ -108,12 +68,6 @@ def pool(self, value: pulumi.Input[str]): @property @pulumi.getter def address(self) -> Optional[pulumi.Input[str]]: - """ - The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - """ return pulumi.get(self, "address") @address.setter @@ -123,9 +77,6 @@ def address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the floating IP. - """ return pulumi.get(self, "description") @description.setter @@ -135,12 +86,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> Optional[pulumi.Input[str]]: - """ - The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_domain") @dns_domain.setter @@ -150,12 +95,6 @@ def dns_domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsName") def dns_name(self) -> Optional[pulumi.Input[str]]: - """ - The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_name") @dns_name.setter @@ -165,10 +104,6 @@ def dns_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> Optional[pulumi.Input[str]]: - """ - Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - """ return pulumi.get(self, "fixed_ip") @fixed_ip.setter @@ -178,10 +113,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -191,13 +122,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") @region.setter @@ -207,10 +131,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -220,12 +140,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetIds") def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - """ return pulumi.get(self, "subnet_ids") @subnet_ids.setter @@ -235,9 +149,6 @@ def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the floating IP. - """ return pulumi.get(self, "tags") @tags.setter @@ -247,12 +158,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -262,9 +167,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -291,44 +193,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering FloatingIp resources. - :param pulumi.Input[str] address: The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the floating IP, which have - been explicitly and implicitly added. - :param pulumi.Input[str] description: Human-readable description for the floating IP. - :param pulumi.Input[str] dns_domain: The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] dns_name: The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] fixed_ip: Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - :param pulumi.Input[str] pool: The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - :param pulumi.Input[str] subnet_id: The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the floating IP. - :param pulumi.Input[str] tenant_id: The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if address is not None: pulumi.set(__self__, "address", address) @@ -362,12 +226,6 @@ def __init__(__self__, *, @property @pulumi.getter def address(self) -> Optional[pulumi.Input[str]]: - """ - The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - """ return pulumi.get(self, "address") @address.setter @@ -377,10 +235,6 @@ def address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the floating IP, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -390,9 +244,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the floating IP. - """ return pulumi.get(self, "description") @description.setter @@ -402,12 +253,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> Optional[pulumi.Input[str]]: - """ - The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_domain") @dns_domain.setter @@ -417,12 +262,6 @@ def dns_domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsName") def dns_name(self) -> Optional[pulumi.Input[str]]: - """ - The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_name") @dns_name.setter @@ -432,10 +271,6 @@ def dns_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> Optional[pulumi.Input[str]]: - """ - Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - """ return pulumi.get(self, "fixed_ip") @fixed_ip.setter @@ -445,10 +280,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def pool(self) -> Optional[pulumi.Input[str]]: - """ - The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - """ return pulumi.get(self, "pool") @pool.setter @@ -458,10 +289,6 @@ def pool(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -471,13 +298,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") @region.setter @@ -487,10 +307,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -500,12 +316,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetIds") def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - """ return pulumi.get(self, "subnet_ids") @subnet_ids.setter @@ -515,9 +325,6 @@ def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the floating IP. - """ return pulumi.get(self, "tags") @tags.setter @@ -527,12 +334,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -542,9 +343,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -572,52 +370,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - ## Import - - Floating IPs can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/floatingIp:FloatingIp floatip_1 2c7f39f3-702b-48d1-940c-b50384177ee1 - ``` - + Create a FloatingIp resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] address: The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - :param pulumi.Input[str] description: Human-readable description for the floating IP. - :param pulumi.Input[str] dns_domain: The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] dns_name: The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] fixed_ip: Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - :param pulumi.Input[str] pool: The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - :param pulumi.Input[str] subnet_id: The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the floating IP. - :param pulumi.Input[str] tenant_id: The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -626,14 +381,7 @@ def __init__(__self__, args: FloatingIpArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Import - - Floating IPs can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/floatingIp:FloatingIp floatip_1 2c7f39f3-702b-48d1-940c-b50384177ee1 - ``` - + Create a FloatingIp resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param FloatingIpArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -718,44 +466,6 @@ def get(resource_name: str, :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] address: The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the floating IP, which have - been explicitly and implicitly added. - :param pulumi.Input[str] description: Human-readable description for the floating IP. - :param pulumi.Input[str] dns_domain: The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] dns_name: The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - :param pulumi.Input[str] fixed_ip: Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - :param pulumi.Input[str] pool: The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - :param pulumi.Input[str] subnet_id: The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the floating IP. - :param pulumi.Input[str] tenant_id: The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -780,136 +490,70 @@ def get(resource_name: str, @property @pulumi.getter def address(self) -> pulumi.Output[str]: - """ - The actual/specific floating IP to obtain. By default, - non-admin users are not able to specify a floating IP, so you must either be - an admin user or have had a custom policy or role applied to your OpenStack - user or project. - """ return pulumi.get(self, "address") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the floating IP, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the floating IP. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> pulumi.Output[str]: - """ - The floating IP DNS domain. Available, when Neutron - DNS extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_domain") @property @pulumi.getter(name="dnsName") def dns_name(self) -> pulumi.Output[str]: - """ - The floating IP DNS name. Available, when Neutron DNS - extension is enabled. The data in this attribute will be published in an - external DNS service when Neutron is configured to integrate with such a - service. Changing this creates a new floating IP. - """ return pulumi.get(self, "dns_name") @property @pulumi.getter(name="fixedIp") def fixed_ip(self) -> pulumi.Output[str]: - """ - Fixed IP of the port to associate with this floating IP. Required if - the port has multiple fixed IPs. - """ return pulumi.get(self, "fixed_ip") @property @pulumi.getter def pool(self) -> pulumi.Output[str]: - """ - The name of the pool from which to obtain the floating - IP. Changing this creates a new floating IP. - """ return pulumi.get(self, "pool") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Output[str]: - """ - The subnet ID of the floating IP pool. Specify this if - the floating IP network has multiple subnets. - """ return pulumi.get(self, "subnet_id") @property @pulumi.getter(name="subnetIds") def subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of external subnet IDs to try over each to - allocate a floating IP address. If a subnet ID in a list has exhausted - floating IP pool, the next subnet ID will be tried. This argument is used only - during the resource creation. Conflicts with a `subnet_id` argument. - """ return pulumi.get(self, "subnet_ids") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the floating IP. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The target tenant ID in which to allocate the floating - IP, if you specify this together with a port_id, make sure the target port - belongs to the same tenant. Changing this creates a new floating IP (which - may or may not have a different address) - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/floating_ip_associate.py b/sdk/python/pulumi_openstack/networking/floating_ip_associate.py index 54cb4d36d..fa0e95da6 100644 --- a/sdk/python/pulumi_openstack/networking/floating_ip_associate.py +++ b/sdk/python/pulumi_openstack/networking/floating_ip_associate.py @@ -20,14 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a FloatingIpAssociate resource. - :param pulumi.Input[str] floating_ip: IP Address of an existing floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). """ pulumi.set(__self__, "floating_ip", floating_ip) pulumi.set(__self__, "port_id", port_id) @@ -39,9 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="floatingIp") def floating_ip(self) -> pulumi.Input[str]: - """ - IP Address of an existing floating IP. - """ return pulumi.get(self, "floating_ip") @floating_ip.setter @@ -51,10 +40,6 @@ def floating_ip(self, value: pulumi.Input[str]): @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Input[str]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -73,13 +58,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") @region.setter @@ -96,14 +74,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering FloatingIpAssociate resources. - :param pulumi.Input[str] floating_ip: IP Address of an existing floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). """ if fixed_ip is not None: pulumi.set(__self__, "fixed_ip", fixed_ip) @@ -126,9 +96,6 @@ def fixed_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="floatingIp") def floating_ip(self) -> Optional[pulumi.Input[str]]: - """ - IP Address of an existing floating IP. - """ return pulumi.get(self, "floating_ip") @floating_ip.setter @@ -138,10 +105,6 @@ def floating_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -151,13 +114,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") @region.setter @@ -176,40 +132,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Associates a floating IP to a port. This is useful for situations - where you have a pre-allocated floating IP or are unable to use the - `networking.FloatingIp` resource to create a floating IP. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - port1 = openstack.networking.Port("port_1", network_id="a5bbd213-e1d3-49b6-aed1-9df60ea94b9a") - fip1 = openstack.networking.FloatingIpAssociate("fip_1", - floating_ip="1.2.3.4", - port_id=port1.id) - ``` - - ## Import - - Floating IP associations can be imported using the `id` of the floating IP, e.g. - - ```sh - $ pulumi import openstack:networking/floatingIpAssociate:FloatingIpAssociate fip 2c7f39f3-702b-48d1-940c-b50384177ee1 - ``` - + Create a FloatingIpAssociate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] floating_ip: IP Address of an existing floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). """ ... @overload @@ -218,30 +143,7 @@ def __init__(__self__, args: FloatingIpAssociateArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Associates a floating IP to a port. This is useful for situations - where you have a pre-allocated floating IP or are unable to use the - `networking.FloatingIp` resource to create a floating IP. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - port1 = openstack.networking.Port("port_1", network_id="a5bbd213-e1d3-49b6-aed1-9df60ea94b9a") - fip1 = openstack.networking.FloatingIpAssociate("fip_1", - floating_ip="1.2.3.4", - port_id=port1.id) - ``` - - ## Import - - Floating IP associations can be imported using the `id` of the floating IP, e.g. - - ```sh - $ pulumi import openstack:networking/floatingIpAssociate:FloatingIpAssociate fip 2c7f39f3-702b-48d1-940c-b50384177ee1 - ``` - + Create a FloatingIpAssociate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param FloatingIpAssociateArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -299,14 +201,6 @@ def get(resource_name: str, :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] floating_ip: IP Address of an existing floating IP. - :param pulumi.Input[str] port_id: ID of an existing port with at least one IP address to - associate with this floating IP. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -326,29 +220,15 @@ def fixed_ip(self) -> pulumi.Output[str]: @property @pulumi.getter(name="floatingIp") def floating_ip(self) -> pulumi.Output[str]: - """ - IP Address of an existing floating IP. - """ return pulumi.get(self, "floating_ip") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - ID of an existing port with at least one IP address to - associate with this floating IP. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a floating IP that can be used with - another networking resource, such as a load balancer. If omitted, the - `region` argument of the provider is used. Changing this creates a new - floating IP (which may or may not have a different address). - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/get_address_scope.py b/sdk/python/pulumi_openstack/networking/get_address_scope.py index 03c2cfb52..f9185f8a1 100644 --- a/sdk/python/pulumi_openstack/networking/get_address_scope.py +++ b/sdk/python/pulumi_openstack/networking/get_address_scope.py @@ -52,25 +52,16 @@ def id(self) -> str: @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[int]: - """ - See Argument Reference above. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @@ -81,9 +72,6 @@ def region(self) -> Optional[str]: @property @pulumi.getter def shared(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "shared") @@ -108,28 +96,7 @@ def get_address_scope(ip_version: Optional[int] = None, shared: Optional[bool] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAddressScopeResult: """ - Use this data source to get the ID of an available OpenStack address-scope. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - public_addressscope = openstack.networking.get_address_scope(name="public_addressscope", - shared=True, - ip_version=4) - ``` - - - :param int ip_version: IP version. - :param str name: Name of the address-scope. - :param str project_id: The owner of the address-scope. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve address-scopes. If omitted, the - `region` argument of the provider is used. - :param bool shared: Indicates whether this address-scope is shared across - all projects. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['ipVersion'] = ip_version @@ -157,27 +124,6 @@ def get_address_scope_output(ip_version: Optional[pulumi.Input[Optional[int]]] = shared: Optional[pulumi.Input[Optional[bool]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAddressScopeResult]: """ - Use this data source to get the ID of an available OpenStack address-scope. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - public_addressscope = openstack.networking.get_address_scope(name="public_addressscope", - shared=True, - ip_version=4) - ``` - - - :param int ip_version: IP version. - :param str name: Name of the address-scope. - :param str project_id: The owner of the address-scope. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve address-scopes. If omitted, the - `region` argument of the provider is used. - :param bool shared: Indicates whether this address-scope is shared across - all projects. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_floating_ip.py b/sdk/python/pulumi_openstack/networking/get_floating_ip.py index 8595a0efb..d480127e4 100644 --- a/sdk/python/pulumi_openstack/networking/get_floating_ip.py +++ b/sdk/python/pulumi_openstack/networking/get_floating_ip.py @@ -70,9 +70,6 @@ def address(self) -> Optional[str]: @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - A set of string tags applied on the floating IP. - """ return pulumi.get(self, "all_tags") @property @@ -83,19 +80,11 @@ def description(self) -> Optional[str]: @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> str: - """ - The floating IP DNS domain. Available, when Neutron DNS - extension is enabled. - """ return pulumi.get(self, "dns_domain") @property @pulumi.getter(name="dnsName") def dns_name(self) -> str: - """ - The floating IP DNS name. Available, when Neutron DNS extension - is enabled. - """ return pulumi.get(self, "dns_name") @property @@ -174,29 +163,7 @@ def get_floating_ip(address: Optional[str] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFloatingIpResult: """ - Use this data source to get the ID of an available OpenStack floating IP. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - floatingip1 = openstack.networking.get_floating_ip(address="192.168.0.4") - ``` - - - :param str address: The IP address of the floating IP. - :param str description: Human-readable description of the floating IP. - :param str fixed_ip: The specific IP address of the internal port which should be associated with the floating IP. - :param str pool: The ID of the network from which the floating IP belongs to. - :param str port_id: The ID of the port the floating IP is attached. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve floating IP ids. If omitted, the - `region` argument of the provider is used. - :param str status: status of the floating IP (ACTIVE/DOWN). - :param Sequence[str] tags: The list of floating IP tags to filter. - :param str tenant_id: The owner of the floating IP. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['address'] = address @@ -239,28 +206,6 @@ def get_floating_ip_output(address: Optional[pulumi.Input[Optional[str]]] = None tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFloatingIpResult]: """ - Use this data source to get the ID of an available OpenStack floating IP. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - floatingip1 = openstack.networking.get_floating_ip(address="192.168.0.4") - ``` - - - :param str address: The IP address of the floating IP. - :param str description: Human-readable description of the floating IP. - :param str fixed_ip: The specific IP address of the internal port which should be associated with the floating IP. - :param str pool: The ID of the network from which the floating IP belongs to. - :param str port_id: The ID of the port the floating IP is attached. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve floating IP ids. If omitted, the - `region` argument of the provider is used. - :param str status: status of the floating IP (ACTIVE/DOWN). - :param Sequence[str] tags: The list of floating IP tags to filter. - :param str tenant_id: The owner of the floating IP. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_network.py b/sdk/python/pulumi_openstack/networking/get_network.py index 2eed0c6ea..2930c281b 100644 --- a/sdk/python/pulumi_openstack/networking/get_network.py +++ b/sdk/python/pulumi_openstack/networking/get_network.py @@ -84,50 +84,31 @@ def __init__(__self__, admin_state_up=None, all_tags=None, availability_zone_hin @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> str: - """ - The administrative state of the network. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the network. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Sequence[str]: - """ - The availability zone candidates for the network. - """ return pulumi.get(self, "availability_zone_hints") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> str: - """ - The network DNS domain. Available, when Neutron DNS extension - is enabled - """ return pulumi.get(self, "dns_domain") @property @pulumi.getter def external(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "external") @property @@ -146,17 +127,11 @@ def matching_subnet_cidr(self) -> Optional[str]: @property @pulumi.getter def mtu(self) -> Optional[int]: - """ - See Argument Reference above. - """ return pulumi.get(self, "mtu") @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @@ -167,26 +142,16 @@ def network_id(self) -> Optional[str]: @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def segments(self) -> Sequence['outputs.GetNetworkSegmentResult']: - """ - An array of one or more provider segment objects. - """ return pulumi.get(self, "segments") @property @pulumi.getter def shared(self) -> str: - """ - Specifies whether the network resource can be accessed by any - tenant or not. - """ return pulumi.get(self, "shared") @property @@ -197,9 +162,6 @@ def status(self) -> Optional[str]: @property @pulumi.getter def subnets(self) -> Sequence[str]: - """ - A list of subnet IDs belonging to the network. - """ return pulumi.get(self, "subnets") @property @@ -215,9 +177,6 @@ def tenant_id(self) -> Optional[str]: @property @pulumi.getter(name="transparentVlan") def transparent_vlan(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "transparent_vlan") @@ -261,33 +220,7 @@ def get_network(description: Optional[str] = None, transparent_vlan: Optional[bool] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNetworkResult: """ - Use this data source to get the ID of an available OpenStack network. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network = openstack.networking.get_network(name="tf_test_network") - ``` - - - :param str description: Human-readable description of the network. - :param bool external: The external routing facility of the network. - :param str matching_subnet_cidr: The CIDR of a subnet within the network. - :param int mtu: The network MTU to filter. Available, when Neutron `net-mtu` - extension is enabled. - :param str name: The name of the network. - :param str network_id: The ID of the network. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve networks ids. If omitted, the - `region` argument of the provider is used. - :param str status: The status of the network. - :param Sequence[str] tags: The list of network tags to filter. - :param str tenant_id: The owner of the network. - :param bool transparent_vlan: The VLAN transparent attribute for the - network. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -340,32 +273,6 @@ def get_network_output(description: Optional[pulumi.Input[Optional[str]]] = None transparent_vlan: Optional[pulumi.Input[Optional[bool]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNetworkResult]: """ - Use this data source to get the ID of an available OpenStack network. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network = openstack.networking.get_network(name="tf_test_network") - ``` - - - :param str description: Human-readable description of the network. - :param bool external: The external routing facility of the network. - :param str matching_subnet_cidr: The CIDR of a subnet within the network. - :param int mtu: The network MTU to filter. Available, when Neutron `net-mtu` - extension is enabled. - :param str name: The name of the network. - :param str network_id: The ID of the network. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve networks ids. If omitted, the - `region` argument of the provider is used. - :param str status: The status of the network. - :param Sequence[str] tags: The list of network tags to filter. - :param str tenant_id: The owner of the network. - :param bool transparent_vlan: The VLAN transparent attribute for the - network. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_port.py b/sdk/python/pulumi_openstack/networking/get_port.py index 359ca0075..c44c83f45 100644 --- a/sdk/python/pulumi_openstack/networking/get_port.py +++ b/sdk/python/pulumi_openstack/networking/get_port.py @@ -99,101 +99,61 @@ def __init__(__self__, admin_state_up=None, all_fixed_ips=None, all_security_gro @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[bool]: - """ - See Argument Reference above. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allFixedIps") def all_fixed_ips(self) -> Sequence[str]: - """ - The collection of Fixed IP addresses on the port in the - order returned by the Network v2 API. - """ return pulumi.get(self, "all_fixed_ips") @property @pulumi.getter(name="allSecurityGroupIds") def all_security_group_ids(self) -> Sequence[str]: - """ - The set of security group IDs applied on the port. - """ return pulumi.get(self, "all_security_group_ids") @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the port. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="allowedAddressPairs") def allowed_address_pairs(self) -> Sequence['outputs.GetPortAllowedAddressPairResult']: - """ - An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - """ return pulumi.get(self, "allowed_address_pairs") @property @pulumi.getter def bindings(self) -> Sequence['outputs.GetPortBindingResult']: - """ - The port binding information. The structure is described below. - """ return pulumi.get(self, "bindings") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="deviceId") def device_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "device_id") @property @pulumi.getter(name="deviceOwner") def device_owner(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "device_owner") @property @pulumi.getter(name="dnsAssignments") def dns_assignments(self) -> Sequence[Mapping[str, str]]: - """ - The list of maps representing port DNS assignments. - """ return pulumi.get(self, "dns_assignments") @property @pulumi.getter(name="dnsName") def dns_name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "dns_name") @property @pulumi.getter(name="extraDhcpOptions") def extra_dhcp_options(self) -> Sequence['outputs.GetPortExtraDhcpOptionResult']: - """ - An extra DHCP option configured on the port. - The structure is described below. - """ return pulumi.get(self, "extra_dhcp_options") @property @@ -212,49 +172,31 @@ def id(self) -> str: @property @pulumi.getter(name="macAddress") def mac_address(self) -> Optional[str]: - """ - The additional MAC address. - """ return pulumi.get(self, "mac_address") @property @pulumi.getter def name(self) -> Optional[str]: - """ - Name of the DHCP option. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "network_id") @property @pulumi.getter(name="portId") def port_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "port_id") @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @@ -328,36 +270,7 @@ def get_port(admin_state_up: Optional[bool] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPortResult: """ - Use this data source to get the ID of an available OpenStack port. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - port1 = openstack.networking.get_port(name="port_1") - ``` - - - :param bool admin_state_up: The administrative state of the port. - :param str description: Human-readable description of the port. - :param str device_id: The ID of the device the port belongs to. - :param str device_owner: The device owner of the port. - :param str dns_name: The port DNS name to filter. Available, when Neutron - DNS extension is enabled. - :param str fixed_ip: The port IP address filter. - :param str mac_address: The MAC address of the port. - :param str name: The name of the port. - :param str network_id: The ID of the network the port belongs to. - :param str port_id: The ID of the port. - :param str project_id: The owner of the port. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve port ids. If omitted, the - `region` argument of the provider is used. - :param Sequence[str] security_group_ids: The list of port security group IDs to filter. - :param str status: The status of the port. - :param Sequence[str] tags: The list of port tags to filter. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['adminStateUp'] = admin_state_up @@ -425,35 +338,6 @@ def get_port_output(admin_state_up: Optional[pulumi.Input[Optional[bool]]] = Non tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetPortResult]: """ - Use this data source to get the ID of an available OpenStack port. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - port1 = openstack.networking.get_port(name="port_1") - ``` - - - :param bool admin_state_up: The administrative state of the port. - :param str description: Human-readable description of the port. - :param str device_id: The ID of the device the port belongs to. - :param str device_owner: The device owner of the port. - :param str dns_name: The port DNS name to filter. Available, when Neutron - DNS extension is enabled. - :param str fixed_ip: The port IP address filter. - :param str mac_address: The MAC address of the port. - :param str name: The name of the port. - :param str network_id: The ID of the network the port belongs to. - :param str port_id: The ID of the port. - :param str project_id: The owner of the port. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve port ids. If omitted, the - `region` argument of the provider is used. - :param Sequence[str] security_group_ids: The list of port security group IDs to filter. - :param str status: The status of the port. - :param Sequence[str] tags: The list of port tags to filter. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_port_ids.py b/sdk/python/pulumi_openstack/networking/get_port_ids.py index f1b598b8b..925eb3444 100644 --- a/sdk/python/pulumi_openstack/networking/get_port_ids.py +++ b/sdk/python/pulumi_openstack/networking/get_port_ids.py @@ -225,37 +225,7 @@ def get_port_ids(admin_state_up: Optional[bool] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPortIdsResult: """ - Use this data source to get a list of Openstack Port IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - ports = openstack.networking.get_port_ids(name="port") - ``` - - - :param bool admin_state_up: The administrative state of the port. - :param str description: Human-readable description of the port. - :param str device_id: The ID of the device the port belongs to. - :param str device_owner: The device owner of the port. - :param str fixed_ip: The port IP address filter. - :param str mac_address: The MAC address of the port. - :param str name: The name of the port. - :param str network_id: The ID of the network the port belongs to. - :param str project_id: The owner of the port. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve port ids. If omitted, the - `region` argument of the provider is used. - :param Sequence[str] security_group_ids: The list of port security group IDs to filter. - :param str sort_direction: Order the results in either `asc` or `desc`. - Defaults to none. - :param str sort_key: Sort ports based on a certain key. Defaults to none. - :param str status: The status of the port. - :param Sequence[str] tags: The list of port tags to filter. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['adminStateUp'] = admin_state_up @@ -320,36 +290,6 @@ def get_port_ids_output(admin_state_up: Optional[pulumi.Input[Optional[bool]]] = tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetPortIdsResult]: """ - Use this data source to get a list of Openstack Port IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - ports = openstack.networking.get_port_ids(name="port") - ``` - - - :param bool admin_state_up: The administrative state of the port. - :param str description: Human-readable description of the port. - :param str device_id: The ID of the device the port belongs to. - :param str device_owner: The device owner of the port. - :param str fixed_ip: The port IP address filter. - :param str mac_address: The MAC address of the port. - :param str name: The name of the port. - :param str network_id: The ID of the network the port belongs to. - :param str project_id: The owner of the port. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve port ids. If omitted, the - `region` argument of the provider is used. - :param Sequence[str] security_group_ids: The list of port security group IDs to filter. - :param str sort_direction: Order the results in either `asc` or `desc`. - Defaults to none. - :param str sort_key: Sort ports based on a certain key. Defaults to none. - :param str status: The status of the port. - :param Sequence[str] tags: The list of port tags to filter. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_qos_bandwidth_limit_rule.py b/sdk/python/pulumi_openstack/networking/get_qos_bandwidth_limit_rule.py index d2ed46450..b8e3ea39e 100644 --- a/sdk/python/pulumi_openstack/networking/get_qos_bandwidth_limit_rule.py +++ b/sdk/python/pulumi_openstack/networking/get_qos_bandwidth_limit_rule.py @@ -44,9 +44,6 @@ def __init__(__self__, direction=None, id=None, max_burst_kbps=None, max_kbps=No @property @pulumi.getter def direction(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "direction") @property @@ -60,33 +57,21 @@ def id(self) -> str: @property @pulumi.getter(name="maxBurstKbps") def max_burst_kbps(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "max_burst_kbps") @property @pulumi.getter(name="maxKbps") def max_kbps(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "max_kbps") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -110,24 +95,7 @@ def get_qos_bandwidth_limit_rule(max_burst_kbps: Optional[int] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQosBandwidthLimitRuleResult: """ - Use this data source to get the ID of an available OpenStack QoS bandwidth limit rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_bandwidth_limit_rule1 = openstack.networking.get_qos_bandwidth_limit_rule(max_kbps=300) - ``` - - - :param int max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. - :param int max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['maxBurstKbps'] = max_burst_kbps @@ -153,23 +121,6 @@ def get_qos_bandwidth_limit_rule_output(max_burst_kbps: Optional[pulumi.Input[Op region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQosBandwidthLimitRuleResult]: """ - Use this data source to get the ID of an available OpenStack QoS bandwidth limit rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_bandwidth_limit_rule1 = openstack.networking.get_qos_bandwidth_limit_rule(max_kbps=300) - ``` - - - :param int max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. - :param int max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_qos_dscp_marking_rule.py b/sdk/python/pulumi_openstack/networking/get_qos_dscp_marking_rule.py index 8b0abeaf5..bc522c883 100644 --- a/sdk/python/pulumi_openstack/networking/get_qos_dscp_marking_rule.py +++ b/sdk/python/pulumi_openstack/networking/get_qos_dscp_marking_rule.py @@ -38,9 +38,6 @@ def __init__(__self__, dscp_mark=None, id=None, qos_policy_id=None, region=None) @property @pulumi.getter(name="dscpMark") def dscp_mark(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "dscp_mark") @property @@ -54,17 +51,11 @@ def id(self) -> str: @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -85,23 +76,7 @@ def get_qos_dscp_marking_rule(dscp_mark: Optional[int] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQosDscpMarkingRuleResult: """ - Use this data source to get the ID of an available OpenStack QoS DSCP marking rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_dscp_marking_rule1 = openstack.networking.get_qos_dscp_marking_rule(dscp_mark=26) - ``` - - - :param int dscp_mark: The value of a DSCP mark. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['dscpMark'] = dscp_mark @@ -123,22 +98,6 @@ def get_qos_dscp_marking_rule_output(dscp_mark: Optional[pulumi.Input[Optional[i region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQosDscpMarkingRuleResult]: """ - Use this data source to get the ID of an available OpenStack QoS DSCP marking rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_dscp_marking_rule1 = openstack.networking.get_qos_dscp_marking_rule(dscp_mark=26) - ``` - - - :param int dscp_mark: The value of a DSCP mark. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_qos_minimum_bandwidth_rule.py b/sdk/python/pulumi_openstack/networking/get_qos_minimum_bandwidth_rule.py index adf8c9a1a..28dc98fcd 100644 --- a/sdk/python/pulumi_openstack/networking/get_qos_minimum_bandwidth_rule.py +++ b/sdk/python/pulumi_openstack/networking/get_qos_minimum_bandwidth_rule.py @@ -54,25 +54,16 @@ def id(self) -> str: @property @pulumi.getter(name="minKbps") def min_kbps(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "min_kbps") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -95,23 +86,7 @@ def get_qos_minimum_bandwidth_rule(direction: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQosMinimumBandwidthRuleResult: """ - Use this data source to get the ID of an available OpenStack QoS minimum bandwidth rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_min_bw_rule1 = openstack.networking.get_qos_minimum_bandwidth_rule(min_kbps=2000) - ``` - - - :param int min_kbps: The value of a minimum kbps bandwidth. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['direction'] = direction @@ -136,22 +111,6 @@ def get_qos_minimum_bandwidth_rule_output(direction: Optional[pulumi.Input[Optio region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQosMinimumBandwidthRuleResult]: """ - Use this data source to get the ID of an available OpenStack QoS minimum bandwidth rule. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_min_bw_rule1 = openstack.networking.get_qos_minimum_bandwidth_rule(min_kbps=2000) - ``` - - - :param int min_kbps: The value of a minimum kbps bandwidth. - :param str qos_policy_id: The QoS policy reference. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_qos_policy.py b/sdk/python/pulumi_openstack/networking/get_qos_policy.py index d40a905a9..7228d463c 100644 --- a/sdk/python/pulumi_openstack/networking/get_qos_policy.py +++ b/sdk/python/pulumi_openstack/networking/get_qos_policy.py @@ -62,25 +62,16 @@ def __init__(__self__, all_tags=None, created_at=None, description=None, id=None @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the QoS policy. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter def description(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @@ -94,17 +85,11 @@ def id(self) -> str: @property @pulumi.getter(name="isDefault") def is_default(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "is_default") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @@ -115,25 +100,16 @@ def project_id(self) -> str: @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> int: - """ - The revision number of the QoS policy. - """ return pulumi.get(self, "revision_number") @property @pulumi.getter def shared(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "shared") @property @@ -144,9 +120,6 @@ def tags(self) -> Optional[Sequence[str]]: @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "updated_at") @@ -179,27 +152,7 @@ def get_qos_policy(description: Optional[str] = None, tags: Optional[Sequence[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQosPolicyResult: """ - Use this data source to get the ID of an available OpenStack QoS policy. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.get_qos_policy(name="qos_policy_1") - ``` - - - :param str description: The human-readable description for the QoS policy. - :param bool is_default: Whether the QoS policy is default policy or not. - :param str name: The name of the QoS policy. - :param str project_id: The owner of the QoS policy. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to retrieve a QoS policy ID. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this QoS policy is shared across all projects. - :param Sequence[str] tags: The list of QoS policy tags to filter. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -237,26 +190,6 @@ def get_qos_policy_output(description: Optional[pulumi.Input[Optional[str]]] = N tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQosPolicyResult]: """ - Use this data source to get the ID of an available OpenStack QoS policy. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.get_qos_policy(name="qos_policy_1") - ``` - - - :param str description: The human-readable description for the QoS policy. - :param bool is_default: Whether the QoS policy is default policy or not. - :param str name: The name of the QoS policy. - :param str project_id: The owner of the QoS policy. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to retrieve a QoS policy ID. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this QoS policy is shared across all projects. - :param Sequence[str] tags: The list of QoS policy tags to filter. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_quota_v2.py b/sdk/python/pulumi_openstack/networking/get_quota_v2.py index 506afbb9c..b1e351cf8 100644 --- a/sdk/python/pulumi_openstack/networking/get_quota_v2.py +++ b/sdk/python/pulumi_openstack/networking/get_quota_v2.py @@ -62,9 +62,6 @@ def __init__(__self__, floatingip=None, id=None, network=None, port=None, projec @property @pulumi.getter def floatingip(self) -> int: - """ - The number of allowed floating ips. - """ return pulumi.get(self, "floatingip") @property @@ -78,74 +75,46 @@ def id(self) -> str: @property @pulumi.getter def network(self) -> int: - """ - The number of allowed networks. - """ return pulumi.get(self, "network") @property @pulumi.getter def port(self) -> int: - """ - The number of allowed ports. - """ return pulumi.get(self, "port") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter(name="rbacPolicy") def rbac_policy(self) -> int: - """ - The number of allowed rbac policies. - """ return pulumi.get(self, "rbac_policy") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter def router(self) -> int: - """ - The amount of allowed routers. - """ return pulumi.get(self, "router") @property @pulumi.getter(name="securityGroup") def security_group(self) -> int: - """ - The number of allowed security groups. - """ return pulumi.get(self, "security_group") @property @pulumi.getter(name="securityGroupRule") def security_group_rule(self) -> int: - """ - The number of allowed security group rules. - """ return pulumi.get(self, "security_group_rule") @property @pulumi.getter def subnet(self) -> int: - """ - The number of allowed subnets. - * `subnetpool-` - The number of allowed subnet pools. - """ return pulumi.get(self, "subnet") @property @@ -178,21 +147,7 @@ def get_quota_v2(project_id: Optional[str] = None, region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetQuotaV2Result: """ - Use this data source to get the networking quota of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.networking.get_quota_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quota. - :param str region: The region in which to obtain the V2 Network client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['projectId'] = project_id @@ -220,20 +175,6 @@ def get_quota_v2_output(project_id: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetQuotaV2Result]: """ - Use this data source to get the networking quota of an OpenStack project. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - quota = openstack.networking.get_quota_v2(project_id="2e367a3d29f94fd988e6ec54e305ec9d") - ``` - - - :param str project_id: The id of the project to retrieve the quota. - :param str region: The region in which to obtain the V2 Network client. - If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_router.py b/sdk/python/pulumi_openstack/networking/get_router.py index e15186a74..7adb475a9 100644 --- a/sdk/python/pulumi_openstack/networking/get_router.py +++ b/sdk/python/pulumi_openstack/networking/get_router.py @@ -77,17 +77,11 @@ def admin_state_up(self) -> Optional[bool]: @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the router. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Sequence[str]: - """ - The availability zone that is used to make router resources highly available. - """ return pulumi.get(self, "availability_zone_hints") @property @@ -103,25 +97,16 @@ def distributed(self) -> Optional[bool]: @property @pulumi.getter(name="enableSnat") def enable_snat(self) -> bool: - """ - The value that points out if the Source NAT is enabled on the router. - """ return pulumi.get(self, "enable_snat") @property @pulumi.getter(name="externalFixedIps") def external_fixed_ips(self) -> Sequence['outputs.GetRouterExternalFixedIpResult']: - """ - The external fixed IPs of the router. - """ return pulumi.get(self, "external_fixed_ips") @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> str: - """ - The network UUID of an external gateway for the router. - """ return pulumi.get(self, "external_network_id") @property @@ -198,30 +183,7 @@ def get_router(admin_state_up: Optional[bool] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRouterResult: """ - Use this data source to get the ID of an available OpenStack router. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router = openstack.networking.get_router(name="router_1") - ``` - - - :param bool admin_state_up: Administrative up/down status for the router (must be "true" or "false" if provided). - :param str description: Human-readable description of the router. - :param bool distributed: Indicates whether or not to get a distributed router. - :param bool enable_snat: The value that points out if the Source NAT is enabled on the router. - :param str name: The name of the router. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve router ids. If omitted, the - `region` argument of the provider is used. - :param str router_id: The UUID of the router resource. - :param str status: The status of the router (ACTIVE/DOWN). - :param Sequence[str] tags: The list of router tags to filter. - :param str tenant_id: The owner of the router. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['adminStateUp'] = admin_state_up @@ -268,29 +230,6 @@ def get_router_output(admin_state_up: Optional[pulumi.Input[Optional[bool]]] = N tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRouterResult]: """ - Use this data source to get the ID of an available OpenStack router. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router = openstack.networking.get_router(name="router_1") - ``` - - - :param bool admin_state_up: Administrative up/down status for the router (must be "true" or "false" if provided). - :param str description: Human-readable description of the router. - :param bool distributed: Indicates whether or not to get a distributed router. - :param bool enable_snat: The value that points out if the Source NAT is enabled on the router. - :param str name: The name of the router. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve router ids. If omitted, the - `region` argument of the provider is used. - :param str router_id: The UUID of the router resource. - :param str status: The status of the router (ACTIVE/DOWN). - :param Sequence[str] tags: The list of router tags to filter. - :param str tenant_id: The owner of the router. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_sec_group.py b/sdk/python/pulumi_openstack/networking/get_sec_group.py index 1a286316e..193a5a02b 100644 --- a/sdk/python/pulumi_openstack/networking/get_sec_group.py +++ b/sdk/python/pulumi_openstack/networking/get_sec_group.py @@ -53,17 +53,11 @@ def __init__(__self__, all_tags=None, description=None, id=None, name=None, regi @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the security group. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter def description(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @@ -77,17 +71,11 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @@ -98,9 +86,6 @@ def secgroup_id(self) -> Optional[str]: @property @pulumi.getter def stateful(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "stateful") @property @@ -140,27 +125,7 @@ def get_sec_group(description: Optional[str] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSecGroupResult: """ - Use this data source to get the ID of an available OpenStack security group. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - secgroup = openstack.networking.get_sec_group(name="tf_test_secgroup") - ``` - - - :param str description: Human-readable description the the subnet. - :param str name: The name of the security group. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve security groups ids. If omitted, the - `region` argument of the provider is used. - :param str secgroup_id: The ID of the security group. - :param bool stateful: Whether the security group is stateful or not. - :param Sequence[str] tags: The list of security group tags to filter. - :param str tenant_id: The owner of the security group. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -195,26 +160,6 @@ def get_sec_group_output(description: Optional[pulumi.Input[Optional[str]]] = No tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSecGroupResult]: """ - Use this data source to get the ID of an available OpenStack security group. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - secgroup = openstack.networking.get_sec_group(name="tf_test_secgroup") - ``` - - - :param str description: Human-readable description the the subnet. - :param str name: The name of the security group. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve security groups ids. If omitted, the - `region` argument of the provider is used. - :param str secgroup_id: The ID of the security group. - :param bool stateful: Whether the security group is stateful or not. - :param Sequence[str] tags: The list of security group tags to filter. - :param str tenant_id: The owner of the security group. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_subnet.py b/sdk/python/pulumi_openstack/networking/get_subnet.py index 77f6fc2ed..7b1fd62d5 100644 --- a/sdk/python/pulumi_openstack/networking/get_subnet.py +++ b/sdk/python/pulumi_openstack/networking/get_subnet.py @@ -93,17 +93,11 @@ def __init__(__self__, all_tags=None, allocation_pools=None, cidr=None, descript @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - A set of string tags applied on the subnet. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="allocationPools") def allocation_pools(self) -> Sequence['outputs.GetSubnetAllocationPoolResult']: - """ - Allocation pools of the subnet. - """ return pulumi.get(self, "allocation_pools") @property @@ -124,9 +118,6 @@ def dhcp_enabled(self) -> Optional[bool]: @property @pulumi.getter(name="dnsNameservers") def dns_nameservers(self) -> Sequence[str]: - """ - DNS Nameservers of the subnet. - """ return pulumi.get(self, "dns_nameservers") @property @@ -137,9 +128,6 @@ def dns_publish_fixed_ip(self) -> Optional[bool]: @property @pulumi.getter(name="enableDhcp") def enable_dhcp(self) -> bool: - """ - Whether the subnet has DHCP enabled or not. - """ return pulumi.get(self, "enable_dhcp") @property @@ -150,9 +138,6 @@ def gateway_ip(self) -> str: @property @pulumi.getter(name="hostRoutes") def host_routes(self) -> Sequence['outputs.GetSubnetHostRouteResult']: - """ - Host Routes of the subnet. - """ return pulumi.get(self, "host_routes") @property @@ -191,17 +176,11 @@ def network_id(self) -> str: @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="serviceTypes") def service_types(self) -> Sequence[str]: - """ - Service types of the subnet. - """ return pulumi.get(self, "service_types") @property @@ -272,37 +251,7 @@ def get_subnet(cidr: Optional[str] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSubnetResult: """ - Use this data source to get the ID of an available OpenStack subnet. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnet1 = openstack.networking.get_subnet(name="subnet_1") - ``` - - - :param str cidr: The CIDR of the subnet. - :param str description: Human-readable description of the subnet. - :param bool dhcp_enabled: If the subnet has DHCP enabled. - :param bool dns_publish_fixed_ip: If the subnet publishes DNS records. - :param str gateway_ip: The IP of the subnet's gateway. - :param int ip_version: The IP version of the subnet (either 4 or 6). - :param str ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str name: The name of the subnet. - :param str network_id: The ID of the network the subnet belongs to. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve subnet ids. If omitted, the - `region` argument of the provider is used. - :param str subnet_id: The ID of the subnet. - :param str subnetpool_id: The ID of the subnetpool associated with the subnet. - :param Sequence[str] tags: The list of subnet tags to filter. - :param str tenant_id: The owner of the subnet. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['cidr'] = cidr @@ -366,36 +315,6 @@ def get_subnet_output(cidr: Optional[pulumi.Input[Optional[str]]] = None, tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSubnetResult]: """ - Use this data source to get the ID of an available OpenStack subnet. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnet1 = openstack.networking.get_subnet(name="subnet_1") - ``` - - - :param str cidr: The CIDR of the subnet. - :param str description: Human-readable description of the subnet. - :param bool dhcp_enabled: If the subnet has DHCP enabled. - :param bool dns_publish_fixed_ip: If the subnet publishes DNS records. - :param str gateway_ip: The IP of the subnet's gateway. - :param int ip_version: The IP version of the subnet (either 4 or 6). - :param str ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str name: The name of the subnet. - :param str network_id: The ID of the network the subnet belongs to. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve subnet ids. If omitted, the - `region` argument of the provider is used. - :param str subnet_id: The ID of the subnet. - :param str subnetpool_id: The ID of the subnetpool associated with the subnet. - :param Sequence[str] tags: The list of subnet tags to filter. - :param str tenant_id: The owner of the subnet. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_subnet_ids_v2.py b/sdk/python/pulumi_openstack/networking/get_subnet_ids_v2.py index bdf97746b..1e2b305e4 100644 --- a/sdk/python/pulumi_openstack/networking/get_subnet_ids_v2.py +++ b/sdk/python/pulumi_openstack/networking/get_subnet_ids_v2.py @@ -225,41 +225,7 @@ def get_subnet_ids_v2(cidr: Optional[str] = None, tenant_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSubnetIdsV2Result: """ - Use this data source to get a list of Openstack Subnet IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnets = openstack.networking.get_subnet_ids_v2(name_regex="public", - tags=["public"]) - ``` - - - :param str cidr: The CIDR of the subnet. - :param str description: Human-readable description of the subnet. - :param bool dhcp_enabled: If the subnet has DHCP enabled. - :param bool dns_publish_fixed_ip: If the subnet publishes DNS records. - :param str gateway_ip: The IP of the subnet's gateway. - :param int ip_version: The IP version of the subnet (either 4 or 6). - :param str ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str name: The name of the subnet. - :param str network_id: The ID of the network the subnet belongs to. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve subnet ids. If omitted, the - `region` argument of the provider is used. - :param str sort_direction: Order the results in either `asc` or `desc`. - Defaults to none. - :param str sort_key: Sort subnets based on a certain key. Defaults to none. - :param str subnetpool_id: The ID of the subnetpool associated with the subnet. - :param Sequence[str] tags: The list of subnet tags to filter. - :param str tenant_id: The owner of the subnet. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['cidr'] = cidr @@ -324,40 +290,6 @@ def get_subnet_ids_v2_output(cidr: Optional[pulumi.Input[Optional[str]]] = None, tenant_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSubnetIdsV2Result]: """ - Use this data source to get a list of Openstack Subnet IDs matching the - specified criteria. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnets = openstack.networking.get_subnet_ids_v2(name_regex="public", - tags=["public"]) - ``` - - - :param str cidr: The CIDR of the subnet. - :param str description: Human-readable description of the subnet. - :param bool dhcp_enabled: If the subnet has DHCP enabled. - :param bool dns_publish_fixed_ip: If the subnet publishes DNS records. - :param str gateway_ip: The IP of the subnet's gateway. - :param int ip_version: The IP version of the subnet (either 4 or 6). - :param str ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param str name: The name of the subnet. - :param str network_id: The ID of the network the subnet belongs to. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve subnet ids. If omitted, the - `region` argument of the provider is used. - :param str sort_direction: Order the results in either `asc` or `desc`. - Defaults to none. - :param str sort_key: Sort subnets based on a certain key. Defaults to none. - :param str subnetpool_id: The ID of the subnetpool associated with the subnet. - :param Sequence[str] tags: The list of subnet tags to filter. - :param str tenant_id: The owner of the subnet. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_subnet_pool.py b/sdk/python/pulumi_openstack/networking/get_subnet_pool.py index faad6f45e..125ce320c 100644 --- a/sdk/python/pulumi_openstack/networking/get_subnet_pool.py +++ b/sdk/python/pulumi_openstack/networking/get_subnet_pool.py @@ -83,49 +83,31 @@ def __init__(__self__, address_scope_id=None, all_tags=None, created_at=None, de @property @pulumi.getter(name="addressScopeId") def address_scope_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "address_scope_id") @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the subnetpool. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="createdAt") def created_at(self) -> str: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="defaultPrefixlen") def default_prefixlen(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "default_prefixlen") @property @pulumi.getter(name="defaultQuota") def default_quota(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "default_quota") @property @pulumi.getter def description(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @@ -139,81 +121,51 @@ def id(self) -> str: @property @pulumi.getter(name="ipVersion") def ip_version(self) -> int: - """ - The IP protocol version. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter(name="isDefault") def is_default(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "is_default") @property @pulumi.getter(name="maxPrefixlen") def max_prefixlen(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "max_prefixlen") @property @pulumi.getter(name="minPrefixlen") def min_prefixlen(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "min_prefixlen") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter def prefixes(self) -> Sequence[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "prefixes") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> int: - """ - The revision number of the subnetpool. - """ return pulumi.get(self, "revision_number") @property @pulumi.getter def shared(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "shared") @property @@ -224,9 +176,6 @@ def tags(self) -> Optional[Sequence[str]]: @property @pulumi.getter(name="updatedAt") def updated_at(self) -> str: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "updated_at") @@ -272,36 +221,7 @@ def get_subnet_pool(address_scope_id: Optional[str] = None, tags: Optional[Sequence[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSubnetPoolResult: """ - Use this data source to get the ID of an available OpenStack subnetpool. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnetpool1 = openstack.networking.get_subnet_pool(name="subnetpool_1") - ``` - - - :param str address_scope_id: The Neutron address scope that subnetpools - is assigned to. - :param int default_prefixlen: The size of the subnetpool default prefix - length. - :param int default_quota: The per-project quota on the prefix space that - can be allocated from the subnetpool for project subnets. - :param str description: The human-readable description for the subnetpool. - :param int ip_version: The IP protocol version. - :param bool is_default: Whether the subnetpool is default subnetpool or not. - :param int max_prefixlen: The size of the subnetpool max prefix length. - :param int min_prefixlen: The size of the subnetpool min prefix length. - :param str name: The name of the subnetpool. - :param str project_id: The owner of the subnetpool. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to retrieve a subnetpool id. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this subnetpool is shared across all projects. - :param Sequence[str] tags: The list of subnetpool tags to filter. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['addressScopeId'] = address_scope_id @@ -358,35 +278,6 @@ def get_subnet_pool_output(address_scope_id: Optional[pulumi.Input[Optional[str] tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSubnetPoolResult]: """ - Use this data source to get the ID of an available OpenStack subnetpool. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - subnetpool1 = openstack.networking.get_subnet_pool(name="subnetpool_1") - ``` - - - :param str address_scope_id: The Neutron address scope that subnetpools - is assigned to. - :param int default_prefixlen: The size of the subnetpool default prefix - length. - :param int default_quota: The per-project quota on the prefix space that - can be allocated from the subnetpool for project subnets. - :param str description: The human-readable description for the subnetpool. - :param int ip_version: The IP protocol version. - :param bool is_default: Whether the subnetpool is default subnetpool or not. - :param int max_prefixlen: The size of the subnetpool max prefix length. - :param int min_prefixlen: The size of the subnetpool min prefix length. - :param str name: The name of the subnetpool. - :param str project_id: The owner of the subnetpool. - :param str region: The region in which to obtain the V2 Networking client. - A Networking client is needed to retrieve a subnetpool id. If omitted, the - `region` argument of the provider is used. - :param bool shared: Whether this subnetpool is shared across all projects. - :param Sequence[str] tags: The list of subnetpool tags to filter. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/get_trunk.py b/sdk/python/pulumi_openstack/networking/get_trunk.py index f5b11a87b..ab074e803 100644 --- a/sdk/python/pulumi_openstack/networking/get_trunk.py +++ b/sdk/python/pulumi_openstack/networking/get_trunk.py @@ -68,9 +68,6 @@ def admin_state_up(self) -> Optional[bool]: @property @pulumi.getter(name="allTags") def all_tags(self) -> Sequence[str]: - """ - The set of string tags applied on the trunk. - """ return pulumi.get(self, "all_tags") @property @@ -94,9 +91,6 @@ def name(self) -> Optional[str]: @property @pulumi.getter(name="portId") def port_id(self) -> Optional[str]: - """ - The ID of the trunk subport. - """ return pulumi.get(self, "port_id") @property @@ -117,10 +111,6 @@ def status(self) -> Optional[str]: @property @pulumi.getter(name="subPorts") def sub_ports(self) -> Sequence['outputs.GetTrunkSubPortResult']: - """ - The set of the trunk subports. The structure of each subport is - described below. - """ return pulumi.get(self, "sub_ports") @property @@ -165,29 +155,7 @@ def get_trunk(admin_state_up: Optional[bool] = None, trunk_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTrunkResult: """ - Use this data source to get the ID of an available OpenStack trunk. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - trunk1 = openstack.networking.get_trunk(name="trunk_1") - ``` - - - :param bool admin_state_up: The administrative state of the trunk. - :param str description: Human-readable description of the trunk. - :param str name: The name of the trunk. - :param str port_id: The ID of the trunk parent port. - :param str project_id: The owner of the trunk. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve trunk ids. If omitted, the - `region` argument of the provider is used. - :param str status: The status of the trunk. - :param Sequence[str] tags: The list of trunk tags to filter. - :param str trunk_id: The ID of the trunk. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['adminStateUp'] = admin_state_up @@ -229,28 +197,6 @@ def get_trunk_output(admin_state_up: Optional[pulumi.Input[Optional[bool]]] = No trunk_id: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTrunkResult]: """ - Use this data source to get the ID of an available OpenStack trunk. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - trunk1 = openstack.networking.get_trunk(name="trunk_1") - ``` - - - :param bool admin_state_up: The administrative state of the trunk. - :param str description: Human-readable description of the trunk. - :param str name: The name of the trunk. - :param str port_id: The ID of the trunk parent port. - :param str project_id: The owner of the trunk. - :param str region: The region in which to obtain the V2 Neutron client. - A Neutron client is needed to retrieve trunk ids. If omitted, the - `region` argument of the provider is used. - :param str status: The status of the trunk. - :param Sequence[str] tags: The list of trunk tags to filter. - :param str trunk_id: The ID of the trunk. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/networking/network.py b/sdk/python/pulumi_openstack/networking/network.py index 2282f99b9..6fdb800fa 100644 --- a/sdk/python/pulumi_openstack/networking/network.py +++ b/sdk/python/pulumi_openstack/networking/network.py @@ -34,52 +34,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Network resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - :param pulumi.Input[str] description: Human-readable description of the network. Changing this - updates the name of the existing network. - :param pulumi.Input[str] dns_domain: The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - :param pulumi.Input[bool] external: Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - :param pulumi.Input[int] mtu: The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - :param pulumi.Input[str] name: The name of the network. Changing this updates the name of - the existing network. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - :param pulumi.Input[Sequence[pulumi.Input['NetworkSegmentArgs']]] segments: An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - :param pulumi.Input[bool] shared: Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the network. - :param pulumi.Input[str] tenant_id: The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - :param pulumi.Input[bool] transparent_vlan: Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -117,11 +71,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -131,12 +80,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -146,10 +89,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the network. Changing this - updates the name of the existing network. - """ return pulumi.get(self, "description") @description.setter @@ -159,12 +98,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> Optional[pulumi.Input[str]]: - """ - The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - """ return pulumi.get(self, "dns_domain") @dns_domain.setter @@ -174,11 +107,6 @@ def dns_domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def external(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - """ return pulumi.get(self, "external") @external.setter @@ -188,11 +116,6 @@ def external(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def mtu(self) -> Optional[pulumi.Input[int]]: - """ - The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - """ return pulumi.get(self, "mtu") @mtu.setter @@ -202,10 +125,6 @@ def mtu(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the network. Changing this updates the name of - the existing network. - """ return pulumi.get(self, "name") @name.setter @@ -215,13 +134,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - """ return pulumi.get(self, "port_security_enabled") @port_security_enabled.setter @@ -231,9 +143,6 @@ def port_security_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -243,12 +152,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - """ return pulumi.get(self, "region") @region.setter @@ -258,12 +161,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def segments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkSegmentArgs']]]]: - """ - An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - """ return pulumi.get(self, "segments") @segments.setter @@ -273,11 +170,6 @@ def segments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkSe @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - """ return pulumi.get(self, "shared") @shared.setter @@ -287,9 +179,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the network. - """ return pulumi.get(self, "tags") @tags.setter @@ -299,10 +188,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -312,12 +197,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="transparentVlan") def transparent_vlan(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - """ return pulumi.get(self, "transparent_vlan") @transparent_vlan.setter @@ -327,9 +206,6 @@ def transparent_vlan(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -359,54 +235,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Network resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the network, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - :param pulumi.Input[str] description: Human-readable description of the network. Changing this - updates the name of the existing network. - :param pulumi.Input[str] dns_domain: The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - :param pulumi.Input[bool] external: Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - :param pulumi.Input[int] mtu: The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - :param pulumi.Input[str] name: The name of the network. Changing this updates the name of - the existing network. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - :param pulumi.Input[Sequence[pulumi.Input['NetworkSegmentArgs']]] segments: An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - :param pulumi.Input[bool] shared: Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the network. - :param pulumi.Input[str] tenant_id: The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - :param pulumi.Input[bool] transparent_vlan: Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -446,11 +274,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -460,10 +283,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the network, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -473,12 +292,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -488,10 +301,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the network. Changing this - updates the name of the existing network. - """ return pulumi.get(self, "description") @description.setter @@ -501,12 +310,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> Optional[pulumi.Input[str]]: - """ - The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - """ return pulumi.get(self, "dns_domain") @dns_domain.setter @@ -516,11 +319,6 @@ def dns_domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def external(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - """ return pulumi.get(self, "external") @external.setter @@ -530,11 +328,6 @@ def external(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def mtu(self) -> Optional[pulumi.Input[int]]: - """ - The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - """ return pulumi.get(self, "mtu") @mtu.setter @@ -544,10 +337,6 @@ def mtu(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the network. Changing this updates the name of - the existing network. - """ return pulumi.get(self, "name") @name.setter @@ -557,13 +346,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - """ return pulumi.get(self, "port_security_enabled") @port_security_enabled.setter @@ -573,9 +355,6 @@ def port_security_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -585,12 +364,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - """ return pulumi.get(self, "region") @region.setter @@ -600,12 +373,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def segments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkSegmentArgs']]]]: - """ - An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - """ return pulumi.get(self, "segments") @segments.setter @@ -615,11 +382,6 @@ def segments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkSe @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - """ return pulumi.get(self, "shared") @shared.setter @@ -629,9 +391,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the network. - """ return pulumi.get(self, "tags") @tags.setter @@ -641,10 +400,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -654,12 +409,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="transparentVlan") def transparent_vlan(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - """ return pulumi.get(self, "transparent_vlan") @transparent_vlan.setter @@ -669,9 +418,6 @@ def transparent_vlan(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -702,106 +448,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron network resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - secgroup1 = openstack.networking.SecGroup("secgroup_1", - name="secgroup_1", - description="a security group") - secgroup_rule1 = openstack.networking.SecGroupRule("secgroup_rule_1", - direction="ingress", - ethertype="IPv4", - protocol="tcp", - port_range_min=22, - port_range_max=22, - remote_ip_prefix="0.0.0.0/0", - security_group_id=secgroup1.id) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True, - security_group_ids=[secgroup1.id], - fixed_ips=[{ - "subnet_id": subnet1.id, - "ip_address": "192.168.199.10", - }]) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=[secgroup1.name], - networks=[{ - "port": port1.id, - }]) - ``` - - ## Import - - Networks can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/network:Network network_1 d90ce693-5ccf-4136-a0ed-152ce412b6b9 - ``` - + Create a Network resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - :param pulumi.Input[str] description: Human-readable description of the network. Changing this - updates the name of the existing network. - :param pulumi.Input[str] dns_domain: The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - :param pulumi.Input[bool] external: Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - :param pulumi.Input[int] mtu: The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - :param pulumi.Input[str] name: The name of the network. Changing this updates the name of - the existing network. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkSegmentArgs', 'NetworkSegmentArgsDict']]]] segments: An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - :param pulumi.Input[bool] shared: Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the network. - :param pulumi.Input[str] tenant_id: The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - :param pulumi.Input[bool] transparent_vlan: Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -810,58 +459,7 @@ def __init__(__self__, args: Optional[NetworkArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron network resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - secgroup1 = openstack.networking.SecGroup("secgroup_1", - name="secgroup_1", - description="a security group") - secgroup_rule1 = openstack.networking.SecGroupRule("secgroup_rule_1", - direction="ingress", - ethertype="IPv4", - protocol="tcp", - port_range_min=22, - port_range_max=22, - remote_ip_prefix="0.0.0.0/0", - security_group_id=secgroup1.id) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True, - security_group_ids=[secgroup1.id], - fixed_ips=[{ - "subnet_id": subnet1.id, - "ip_address": "192.168.199.10", - }]) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=[secgroup1.name], - networks=[{ - "port": port1.id, - }]) - ``` - - ## Import - - Networks can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/network:Network network_1 d90ce693-5ccf-4136-a0ed-152ce412b6b9 - ``` - + Create a Network resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param NetworkArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -953,54 +551,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the network, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - :param pulumi.Input[str] description: Human-readable description of the network. Changing this - updates the name of the existing network. - :param pulumi.Input[str] dns_domain: The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - :param pulumi.Input[bool] external: Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - :param pulumi.Input[int] mtu: The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - :param pulumi.Input[str] name: The name of the network. Changing this updates the name of - the existing network. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - :param pulumi.Input[Sequence[pulumi.Input[Union['NetworkSegmentArgs', 'NetworkSegmentArgsDict']]]] segments: An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - :param pulumi.Input[bool] shared: Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the network. - :param pulumi.Input[str] tenant_id: The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - :param pulumi.Input[bool] transparent_vlan: Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1028,167 +578,85 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[bool]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value updates the - state of the existing network. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the network, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> pulumi.Output[Sequence[str]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new network. - """ return pulumi.get(self, "availability_zone_hints") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description of the network. Changing this - updates the name of the existing network. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="dnsDomain") def dns_domain(self) -> pulumi.Output[str]: - """ - The network DNS domain. Available, when Neutron DNS - extension is enabled. The `dns_domain` of a network in conjunction with the - `dns_name` attribute of its ports will be published in an external DNS - service when Neutron is configured to integrate with such a service. - """ return pulumi.get(self, "dns_domain") @property @pulumi.getter def external(self) -> pulumi.Output[bool]: - """ - Specifies whether the network resource has the - external routing facility. Valid values are true and false. Defaults to - false. Changing this updates the external attribute of the existing network. - """ return pulumi.get(self, "external") @property @pulumi.getter def mtu(self) -> pulumi.Output[int]: - """ - The network MTU. Available for read-only, when Neutron - `net-mtu` extension is enabled. Available for the modification, when - Neutron `net-mtu-writable` extension is enabled. - """ return pulumi.get(self, "mtu") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the network. Changing this updates the name of - the existing network. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> pulumi.Output[bool]: - """ - Whether to explicitly enable or disable - port security on the network. Port Security is usually enabled by default, so - omitting this argument will usually result in a value of "true". Setting this - explicitly to `false` will disable port security. Valid values are `true` and - `false`. - """ return pulumi.get(self, "port_security_enabled") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Output[str]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - network. - """ return pulumi.get(self, "region") @property @pulumi.getter def segments(self) -> pulumi.Output[Sequence['outputs.NetworkSegment']]: - """ - An array of one or more provider segment objects. - Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support - updating any provider related segments attributes. Check your plug-in whether - it supports updating. - """ return pulumi.get(self, "segments") @property @pulumi.getter def shared(self) -> pulumi.Output[bool]: - """ - Specifies whether the network resource can be accessed - by any tenant or not. Changing this updates the sharing capabilities of the - existing network. - """ return pulumi.get(self, "shared") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the network. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the network. Required if admin wants to - create a network for another tenant. Changing this creates a new network. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="transparentVlan") def transparent_vlan(self) -> pulumi.Output[bool]: - """ - Specifies whether the network resource has the - VLAN transparent attribute set. Valid values are true and false. Defaults to - false. Changing this updates the `transparent_vlan` attribute of the existing - network. - """ return pulumi.get(self, "transparent_vlan") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/outputs.py b/sdk/python/pulumi_openstack/networking/outputs.py index 99162f437..a1c3ff8eb 100644 --- a/sdk/python/pulumi_openstack/networking/outputs.py +++ b/sdk/python/pulumi_openstack/networking/outputs.py @@ -56,11 +56,6 @@ def __init__(__self__, *, network_type: Optional[str] = None, physical_network: Optional[str] = None, segmentation_id: Optional[int] = None): - """ - :param str network_type: The type of physical network. - :param str physical_network: The physical network where this network is implemented. - :param int segmentation_id: An isolated segment on the physical network. - """ if network_type is not None: pulumi.set(__self__, "network_type", network_type) if physical_network is not None: @@ -71,25 +66,16 @@ def __init__(__self__, *, @property @pulumi.getter(name="networkType") def network_type(self) -> Optional[str]: - """ - The type of physical network. - """ return pulumi.get(self, "network_type") @property @pulumi.getter(name="physicalNetwork") def physical_network(self) -> Optional[str]: - """ - The physical network where this network is implemented. - """ return pulumi.get(self, "physical_network") @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> Optional[int]: - """ - An isolated segment on the physical network. - """ return pulumi.get(self, "segmentation_id") @@ -117,10 +103,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, ip_address: str, mac_address: Optional[str] = None): - """ - :param str ip_address: The additional IP address. - :param str mac_address: The additional MAC address. - """ pulumi.set(__self__, "ip_address", ip_address) if mac_address is not None: pulumi.set(__self__, "mac_address", mac_address) @@ -128,17 +110,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> str: - """ - The additional IP address. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="macAddress") def mac_address(self) -> Optional[str]: - """ - The additional MAC address. - """ return pulumi.get(self, "mac_address") @@ -173,17 +149,6 @@ def __init__(__self__, *, vif_details: Optional[Mapping[str, str]] = None, vif_type: Optional[str] = None, vnic_type: Optional[str] = None): - """ - :param str host_id: The ID of the host to allocate port on. - :param str profile: Custom data to be passed as `binding:profile`. Data - must be passed as JSON. - :param Mapping[str, str] vif_details: A map of JSON strings containing additional - details for this specific binding. - :param str vif_type: The VNIC type of the port binding. - :param str vnic_type: VNIC type for the port. Can either be `direct`, - `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. - Default value is `normal`. It can be updated on unbound ports only. - """ if host_id is not None: pulumi.set(__self__, "host_id", host_id) if profile is not None: @@ -198,45 +163,26 @@ def __init__(__self__, *, @property @pulumi.getter(name="hostId") def host_id(self) -> Optional[str]: - """ - The ID of the host to allocate port on. - """ return pulumi.get(self, "host_id") @property @pulumi.getter def profile(self) -> Optional[str]: - """ - Custom data to be passed as `binding:profile`. Data - must be passed as JSON. - """ return pulumi.get(self, "profile") @property @pulumi.getter(name="vifDetails") def vif_details(self) -> Optional[Mapping[str, str]]: - """ - A map of JSON strings containing additional - details for this specific binding. - """ return pulumi.get(self, "vif_details") @property @pulumi.getter(name="vifType") def vif_type(self) -> Optional[str]: - """ - The VNIC type of the port binding. - """ return pulumi.get(self, "vif_type") @property @pulumi.getter(name="vnicType") def vnic_type(self) -> Optional[str]: - """ - VNIC type for the port. Can either be `direct`, - `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. - Default value is `normal`. It can be updated on unbound ports only. - """ return pulumi.get(self, "vnic_type") @@ -263,11 +209,6 @@ def __init__(__self__, *, name: str, value: str, ip_version: Optional[int] = None): - """ - :param str name: Name of the DHCP option. - :param str value: Value of the DHCP option. - :param int ip_version: IP protocol version. Defaults to 4. - """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) if ip_version is not None: @@ -276,25 +217,16 @@ def __init__(__self__, *, @property @pulumi.getter def name(self) -> str: - """ - Name of the DHCP option. - """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: - """ - Value of the DHCP option. - """ return pulumi.get(self, "value") @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[int]: - """ - IP protocol version. Defaults to 4. - """ return pulumi.get(self, "ip_version") @@ -322,15 +254,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, ip_address: Optional[str] = None, subnet_id: Optional[str] = None): - """ - :param str ip_address: IP address desired in the subnet for this port. If - you don't specify `ip_address`, an available IP address from the specified - subnet will be allocated to this port. This field will not be populated if it - is left blank or omitted. To retrieve the assigned IP address, use the - `all_fixed_ips` attribute. - :param str subnet_id: Subnet in which to allocate IP address for - this port. - """ if ip_address is not None: pulumi.set(__self__, "ip_address", ip_address) if subnet_id is not None: @@ -339,22 +262,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[str]: - """ - IP address desired in the subnet for this port. If - you don't specify `ip_address`, an available IP address from the specified - subnet will be allocated to this port. This field will not be populated if it - is left blank or omitted. To retrieve the assigned IP address, use the - `all_fixed_ips` attribute. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[str]: - """ - Subnet in which to allocate IP address for - this port. - """ return pulumi.get(self, "subnet_id") @@ -382,10 +294,6 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, ip_address: Optional[str] = None, subnet_id: Optional[str] = None): - """ - :param str ip_address: The IP address to set on the router. - :param str subnet_id: Subnet in which the fixed IP belongs to. - """ if ip_address is not None: pulumi.set(__self__, "ip_address", ip_address) if subnet_id is not None: @@ -394,17 +302,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[str]: - """ - The IP address to set on the router. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[str]: - """ - Subnet in which the fixed IP belongs to. - """ return pulumi.get(self, "subnet_id") @@ -429,20 +331,12 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, set_router_gateway_after_create: Optional[bool] = None): - """ - :param bool set_router_gateway_after_create: Boolean to control whether - the Router gateway is assigned during creation or updated after creation. - """ if set_router_gateway_after_create is not None: pulumi.set(__self__, "set_router_gateway_after_create", set_router_gateway_after_create) @property @pulumi.getter(name="setRouterGatewayAfterCreate") def set_router_gateway_after_create(self) -> Optional[bool]: - """ - Boolean to control whether - the Router gateway is assigned during creation or updated after creation. - """ return pulumi.get(self, "set_router_gateway_after_create") @@ -451,27 +345,17 @@ class SubnetAllocationPool(dict): def __init__(__self__, *, end: str, start: str): - """ - :param str end: The ending address. - :param str start: The starting address. - """ pulumi.set(__self__, "end", end) pulumi.set(__self__, "start", start) @property @pulumi.getter def end(self) -> str: - """ - The ending address. - """ return pulumi.get(self, "end") @property @pulumi.getter def start(self) -> str: - """ - The starting address. - """ return pulumi.get(self, "start") @@ -502,11 +386,6 @@ def __init__(__self__, *, port_id: str, segmentation_id: int, segmentation_type: str): - """ - :param str port_id: The ID of the port to be made a subport of the trunk. - :param int segmentation_id: The numeric id of the subport segment. - :param str segmentation_type: The segmentation technology to use, e.g., "vlan". - """ pulumi.set(__self__, "port_id", port_id) pulumi.set(__self__, "segmentation_id", segmentation_id) pulumi.set(__self__, "segmentation_type", segmentation_type) @@ -514,25 +393,16 @@ def __init__(__self__, *, @property @pulumi.getter(name="portId") def port_id(self) -> str: - """ - The ID of the port to be made a subport of the trunk. - """ return pulumi.get(self, "port_id") @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> int: - """ - The numeric id of the subport segment. - """ return pulumi.get(self, "segmentation_id") @property @pulumi.getter(name="segmentationType") def segmentation_type(self) -> str: - """ - The segmentation technology to use, e.g., "vlan". - """ return pulumi.get(self, "segmentation_type") @@ -567,27 +437,17 @@ class GetPortAllowedAddressPairResult(dict): def __init__(__self__, *, ip_address: str, mac_address: str): - """ - :param str ip_address: The additional IP address. - :param str mac_address: The MAC address of the port. - """ pulumi.set(__self__, "ip_address", ip_address) pulumi.set(__self__, "mac_address", mac_address) @property @pulumi.getter(name="ipAddress") def ip_address(self) -> str: - """ - The additional IP address. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="macAddress") def mac_address(self) -> str: - """ - The MAC address of the port. - """ return pulumi.get(self, "mac_address") @@ -599,14 +459,6 @@ def __init__(__self__, *, vif_details: Mapping[str, str], vif_type: str, vnic_type: str): - """ - :param str host_id: The ID of the host, which has the allocatee port. - :param str profile: A JSON string containing the binding profile information. - :param Mapping[str, str] vif_details: A map of JSON strings containing additional details for this - specific binding. - :param str vif_type: The VNIC type of the port binding. - :param str vnic_type: VNIC type for the port. - """ pulumi.set(__self__, "host_id", host_id) pulumi.set(__self__, "profile", profile) pulumi.set(__self__, "vif_details", vif_details) @@ -616,42 +468,26 @@ def __init__(__self__, *, @property @pulumi.getter(name="hostId") def host_id(self) -> str: - """ - The ID of the host, which has the allocatee port. - """ return pulumi.get(self, "host_id") @property @pulumi.getter def profile(self) -> str: - """ - A JSON string containing the binding profile information. - """ return pulumi.get(self, "profile") @property @pulumi.getter(name="vifDetails") def vif_details(self) -> Mapping[str, str]: - """ - A map of JSON strings containing additional details for this - specific binding. - """ return pulumi.get(self, "vif_details") @property @pulumi.getter(name="vifType") def vif_type(self) -> str: - """ - The VNIC type of the port binding. - """ return pulumi.get(self, "vif_type") @property @pulumi.getter(name="vnicType") def vnic_type(self) -> str: - """ - VNIC type for the port. - """ return pulumi.get(self, "vnic_type") @@ -661,11 +497,6 @@ def __init__(__self__, *, ip_version: int, name: str, value: str): - """ - :param int ip_version: IP protocol version - :param str name: The name of the port. - :param str value: Value of the DHCP option. - """ pulumi.set(__self__, "ip_version", ip_version) pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -673,25 +504,16 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipVersion") def ip_version(self) -> int: - """ - IP protocol version - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> str: - """ - The name of the port. - """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: - """ - Value of the DHCP option. - """ return pulumi.get(self, "value") @@ -700,10 +522,6 @@ class GetRouterExternalFixedIpResult(dict): def __init__(__self__, *, ip_address: Optional[str] = None, subnet_id: Optional[str] = None): - """ - :param str ip_address: The IP address to set on the router. - :param str subnet_id: Subnet in which the fixed IP belongs to. - """ if ip_address is not None: pulumi.set(__self__, "ip_address", ip_address) if subnet_id is not None: @@ -712,17 +530,11 @@ def __init__(__self__, *, @property @pulumi.getter(name="ipAddress") def ip_address(self) -> Optional[str]: - """ - The IP address to set on the router. - """ return pulumi.get(self, "ip_address") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[str]: - """ - Subnet in which the fixed IP belongs to. - """ return pulumi.get(self, "subnet_id") @@ -770,11 +582,6 @@ def __init__(__self__, *, port_id: str, segmentation_id: int, segmentation_type: str): - """ - :param str port_id: The ID of the trunk parent port. - :param int segmentation_id: The numeric id of the subport segment. - :param str segmentation_type: The segmenation tecnology used, e.g., "vlan". - """ pulumi.set(__self__, "port_id", port_id) pulumi.set(__self__, "segmentation_id", segmentation_id) pulumi.set(__self__, "segmentation_type", segmentation_type) @@ -782,25 +589,16 @@ def __init__(__self__, *, @property @pulumi.getter(name="portId") def port_id(self) -> str: - """ - The ID of the trunk parent port. - """ return pulumi.get(self, "port_id") @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> int: - """ - The numeric id of the subport segment. - """ return pulumi.get(self, "segmentation_id") @property @pulumi.getter(name="segmentationType") def segmentation_type(self) -> str: - """ - The segmenation tecnology used, e.g., "vlan". - """ return pulumi.get(self, "segmentation_type") diff --git a/sdk/python/pulumi_openstack/networking/port.py b/sdk/python/pulumi_openstack/networking/port.py index 52a14fb9c..2c3462e31 100644 --- a/sdk/python/pulumi_openstack/networking/port.py +++ b/sdk/python/pulumi_openstack/networking/port.py @@ -39,60 +39,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Port resource. - :param pulumi.Input[str] network_id: The ID of the network to attach the port to. Changing - this creates a new port. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - :param pulumi.Input[Sequence[pulumi.Input['PortAllowedAddressPairArgs']]] allowed_address_pairs: An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - :param pulumi.Input['PortBindingArgs'] binding: The port binding allows to specify binding information - for the port. The structure is described below. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing port. - :param pulumi.Input[str] device_id: The ID of the device attached to the port. Changing this - creates a new port. - :param pulumi.Input[str] device_owner: The device owner of the port. Changing this creates - a new port. - :param pulumi.Input[str] dns_name: The port DNS name. Available, when Neutron DNS extension - is enabled. - :param pulumi.Input[Sequence[pulumi.Input['PortExtraDhcpOptionArgs']]] extra_dhcp_options: An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - :param pulumi.Input[Sequence[pulumi.Input['PortFixedIpArgs']]] fixed_ips: An array of desired IPs for - this port. The structure is described below. - :param pulumi.Input[str] mac_address: Specify a specific MAC address for the port. Changing - this creates a new port. - :param pulumi.Input[str] name: A unique name for the port. Changing this - updates the `name` of an existing port. - :param pulumi.Input[bool] no_fixed_ip: Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - :param pulumi.Input[bool] no_security_groups: If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "network_id", network_id) if admin_state_up is not None: @@ -139,10 +85,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Input[str]: - """ - The ID of the network to attach the port to. Changing - this creates a new port. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -152,11 +94,6 @@ def network_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -166,11 +103,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allowedAddressPairs") def allowed_address_pairs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortAllowedAddressPairArgs']]]]: - """ - An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - """ return pulumi.get(self, "allowed_address_pairs") @allowed_address_pairs.setter @@ -180,10 +112,6 @@ def allowed_address_pairs(self, value: Optional[pulumi.Input[Sequence[pulumi.Inp @property @pulumi.getter def binding(self) -> Optional[pulumi.Input['PortBindingArgs']]: - """ - The port binding allows to specify binding information - for the port. The structure is described below. - """ return pulumi.get(self, "binding") @binding.setter @@ -193,10 +121,6 @@ def binding(self, value: Optional[pulumi.Input['PortBindingArgs']]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing port. - """ return pulumi.get(self, "description") @description.setter @@ -206,10 +130,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deviceId") def device_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the device attached to the port. Changing this - creates a new port. - """ return pulumi.get(self, "device_id") @device_id.setter @@ -219,10 +139,6 @@ def device_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deviceOwner") def device_owner(self) -> Optional[pulumi.Input[str]]: - """ - The device owner of the port. Changing this creates - a new port. - """ return pulumi.get(self, "device_owner") @device_owner.setter @@ -232,10 +148,6 @@ def device_owner(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsName") def dns_name(self) -> Optional[pulumi.Input[str]]: - """ - The port DNS name. Available, when Neutron DNS extension - is enabled. - """ return pulumi.get(self, "dns_name") @dns_name.setter @@ -245,11 +157,6 @@ def dns_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="extraDhcpOptions") def extra_dhcp_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortExtraDhcpOptionArgs']]]]: - """ - An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - """ return pulumi.get(self, "extra_dhcp_options") @extra_dhcp_options.setter @@ -259,10 +166,6 @@ def extra_dhcp_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortFixedIpArgs']]]]: - """ - An array of desired IPs for - this port. The structure is described below. - """ return pulumi.get(self, "fixed_ips") @fixed_ips.setter @@ -272,10 +175,6 @@ def fixed_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PortFixe @property @pulumi.getter(name="macAddress") def mac_address(self) -> Optional[pulumi.Input[str]]: - """ - Specify a specific MAC address for the port. Changing - this creates a new port. - """ return pulumi.get(self, "mac_address") @mac_address.setter @@ -285,10 +184,6 @@ def mac_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the port. Changing this - updates the `name` of an existing port. - """ return pulumi.get(self, "name") @name.setter @@ -298,11 +193,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noFixedIp") def no_fixed_ip(self) -> Optional[pulumi.Input[bool]]: - """ - Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - """ return pulumi.get(self, "no_fixed_ip") @no_fixed_ip.setter @@ -312,13 +202,6 @@ def no_fixed_ip(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="noSecurityGroups") def no_security_groups(self) -> Optional[pulumi.Input[bool]]: - """ - If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - """ return pulumi.get(self, "no_security_groups") @no_security_groups.setter @@ -328,14 +211,6 @@ def no_security_groups(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - """ return pulumi.get(self, "port_security_enabled") @port_security_enabled.setter @@ -345,9 +220,6 @@ def port_security_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -357,12 +229,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - """ return pulumi.get(self, "region") @region.setter @@ -372,12 +238,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -387,9 +247,6 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @tags.setter @@ -399,10 +256,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -412,9 +265,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -452,67 +302,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Port resources. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_fixed_ips: The collection of Fixed IP addresses on the port in the - order returned by the Network v2 API. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_security_group_ids: The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the port, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input['PortAllowedAddressPairArgs']]] allowed_address_pairs: An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - :param pulumi.Input['PortBindingArgs'] binding: The port binding allows to specify binding information - for the port. The structure is described below. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing port. - :param pulumi.Input[str] device_id: The ID of the device attached to the port. Changing this - creates a new port. - :param pulumi.Input[str] device_owner: The device owner of the port. Changing this creates - a new port. - :param pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]] dns_assignments: The list of maps representing port DNS assignments. - :param pulumi.Input[str] dns_name: The port DNS name. Available, when Neutron DNS extension - is enabled. - :param pulumi.Input[Sequence[pulumi.Input['PortExtraDhcpOptionArgs']]] extra_dhcp_options: An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - :param pulumi.Input[Sequence[pulumi.Input['PortFixedIpArgs']]] fixed_ips: An array of desired IPs for - this port. The structure is described below. - :param pulumi.Input[str] mac_address: Specify a specific MAC address for the port. Changing - this creates a new port. - :param pulumi.Input[str] name: A unique name for the port. Changing this - updates the `name` of an existing port. - :param pulumi.Input[str] network_id: The ID of the network to attach the port to. Changing - this creates a new port. - :param pulumi.Input[bool] no_fixed_ip: Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - :param pulumi.Input[bool] no_security_groups: If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -568,11 +357,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -582,10 +366,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allFixedIps") def all_fixed_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of Fixed IP addresses on the port in the - order returned by the Network v2 API. - """ return pulumi.get(self, "all_fixed_ips") @all_fixed_ips.setter @@ -595,10 +375,6 @@ def all_fixed_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter(name="allSecurityGroupIds") def all_security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - """ return pulumi.get(self, "all_security_group_ids") @all_security_group_ids.setter @@ -608,10 +384,6 @@ def all_security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.In @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the port, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -621,11 +393,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="allowedAddressPairs") def allowed_address_pairs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortAllowedAddressPairArgs']]]]: - """ - An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - """ return pulumi.get(self, "allowed_address_pairs") @allowed_address_pairs.setter @@ -635,10 +402,6 @@ def allowed_address_pairs(self, value: Optional[pulumi.Input[Sequence[pulumi.Inp @property @pulumi.getter def binding(self) -> Optional[pulumi.Input['PortBindingArgs']]: - """ - The port binding allows to specify binding information - for the port. The structure is described below. - """ return pulumi.get(self, "binding") @binding.setter @@ -648,10 +411,6 @@ def binding(self, value: Optional[pulumi.Input['PortBindingArgs']]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing port. - """ return pulumi.get(self, "description") @description.setter @@ -661,10 +420,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deviceId") def device_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the device attached to the port. Changing this - creates a new port. - """ return pulumi.get(self, "device_id") @device_id.setter @@ -674,10 +429,6 @@ def device_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deviceOwner") def device_owner(self) -> Optional[pulumi.Input[str]]: - """ - The device owner of the port. Changing this creates - a new port. - """ return pulumi.get(self, "device_owner") @device_owner.setter @@ -687,9 +438,6 @@ def device_owner(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsAssignments") def dns_assignments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]]]: - """ - The list of maps representing port DNS assignments. - """ return pulumi.get(self, "dns_assignments") @dns_assignments.setter @@ -699,10 +447,6 @@ def dns_assignments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[Map @property @pulumi.getter(name="dnsName") def dns_name(self) -> Optional[pulumi.Input[str]]: - """ - The port DNS name. Available, when Neutron DNS extension - is enabled. - """ return pulumi.get(self, "dns_name") @dns_name.setter @@ -712,11 +456,6 @@ def dns_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="extraDhcpOptions") def extra_dhcp_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortExtraDhcpOptionArgs']]]]: - """ - An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - """ return pulumi.get(self, "extra_dhcp_options") @extra_dhcp_options.setter @@ -726,10 +465,6 @@ def extra_dhcp_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PortFixedIpArgs']]]]: - """ - An array of desired IPs for - this port. The structure is described below. - """ return pulumi.get(self, "fixed_ips") @fixed_ips.setter @@ -739,10 +474,6 @@ def fixed_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PortFixe @property @pulumi.getter(name="macAddress") def mac_address(self) -> Optional[pulumi.Input[str]]: - """ - Specify a specific MAC address for the port. Changing - this creates a new port. - """ return pulumi.get(self, "mac_address") @mac_address.setter @@ -752,10 +483,6 @@ def mac_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the port. Changing this - updates the `name` of an existing port. - """ return pulumi.get(self, "name") @name.setter @@ -765,10 +492,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the network to attach the port to. Changing - this creates a new port. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -778,11 +501,6 @@ def network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noFixedIp") def no_fixed_ip(self) -> Optional[pulumi.Input[bool]]: - """ - Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - """ return pulumi.get(self, "no_fixed_ip") @no_fixed_ip.setter @@ -792,13 +510,6 @@ def no_fixed_ip(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="noSecurityGroups") def no_security_groups(self) -> Optional[pulumi.Input[bool]]: - """ - If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - """ return pulumi.get(self, "no_security_groups") @no_security_groups.setter @@ -808,14 +519,6 @@ def no_security_groups(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - """ return pulumi.get(self, "port_security_enabled") @port_security_enabled.setter @@ -825,9 +528,6 @@ def port_security_enabled(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -837,12 +537,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - """ return pulumi.get(self, "region") @region.setter @@ -852,12 +546,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -867,9 +555,6 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @tags.setter @@ -879,10 +564,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -892,9 +573,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -930,162 +608,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 port resource within OpenStack. - - > **Note:** Ports do not get an IP if the network they are attached - to does not have a subnet. If you create the subnet resource in the - same run as the port, make sure to use `fixed_ip.subnet_id` or - `depends_on` to enforce the subnet resource creation before the port - creation is triggered. More info here - - ## Example Usage - - ### Simple port - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True) - ``` - - ### Port defining fixed_ip.subnet_id - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24") - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True, - fixed_ips=[{ - "subnet_id": subnet1.id, - }]) - ``` - - ### Port with physical binding information - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - device_id="cdf70fcf-c161-4f24-9c70-96b3f5a54b71", - device_owner="baremetal:none", - admin_state_up=True, - binding={ - "host_id": "b080b9cf-46e0-4ce8-ad47-0fd4accc872b", - "vnic_type": "baremetal", - "profile": \"\"\"{ - "local_link_information": [ - { - "switch_info": "info1", - "port_id": "Ethernet3/4", - "switch_id": "12:34:56:78:9A:BC" - }, - { - "switch_info": "info2", - "port_id": "Ethernet3/4", - "switch_id": "12:34:56:78:9A:BD" - } - ], - "vlan_type": "allowed" - } - \"\"\", - }) - ``` - - ## Notes - - ### Ports and Instances - - There are some notes to consider when connecting Instances to networks using - Ports. Please see the `compute.Instance` documentation for further - documentation. - - ## Import - - Ports can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/port:Port port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a Port resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortAllowedAddressPairArgs', 'PortAllowedAddressPairArgsDict']]]] allowed_address_pairs: An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - :param pulumi.Input[Union['PortBindingArgs', 'PortBindingArgsDict']] binding: The port binding allows to specify binding information - for the port. The structure is described below. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing port. - :param pulumi.Input[str] device_id: The ID of the device attached to the port. Changing this - creates a new port. - :param pulumi.Input[str] device_owner: The device owner of the port. Changing this creates - a new port. - :param pulumi.Input[str] dns_name: The port DNS name. Available, when Neutron DNS extension - is enabled. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortExtraDhcpOptionArgs', 'PortExtraDhcpOptionArgsDict']]]] extra_dhcp_options: An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortFixedIpArgs', 'PortFixedIpArgsDict']]]] fixed_ips: An array of desired IPs for - this port. The structure is described below. - :param pulumi.Input[str] mac_address: Specify a specific MAC address for the port. Changing - this creates a new port. - :param pulumi.Input[str] name: A unique name for the port. Changing this - updates the `name` of an existing port. - :param pulumi.Input[str] network_id: The ID of the network to attach the port to. Changing - this creates a new port. - :param pulumi.Input[bool] no_fixed_ip: Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - :param pulumi.Input[bool] no_security_groups: If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -1094,106 +619,7 @@ def __init__(__self__, args: PortArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 port resource within OpenStack. - - > **Note:** Ports do not get an IP if the network they are attached - to does not have a subnet. If you create the subnet resource in the - same run as the port, make sure to use `fixed_ip.subnet_id` or - `depends_on` to enforce the subnet resource creation before the port - creation is triggered. More info here - - ## Example Usage - - ### Simple port - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True) - ``` - - ### Port defining fixed_ip.subnet_id - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24") - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - admin_state_up=True, - fixed_ips=[{ - "subnet_id": subnet1.id, - }]) - ``` - - ### Port with physical binding information - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - port1 = openstack.networking.Port("port_1", - name="port_1", - network_id=network1.id, - device_id="cdf70fcf-c161-4f24-9c70-96b3f5a54b71", - device_owner="baremetal:none", - admin_state_up=True, - binding={ - "host_id": "b080b9cf-46e0-4ce8-ad47-0fd4accc872b", - "vnic_type": "baremetal", - "profile": \"\"\"{ - "local_link_information": [ - { - "switch_info": "info1", - "port_id": "Ethernet3/4", - "switch_id": "12:34:56:78:9A:BC" - }, - { - "switch_info": "info2", - "port_id": "Ethernet3/4", - "switch_id": "12:34:56:78:9A:BD" - } - ], - "vlan_type": "allowed" - } - \"\"\", - }) - ``` - - ## Notes - - ### Ports and Instances - - There are some notes to consider when connecting Instances to networks using - Ports. Please see the `compute.Instance` documentation for further - documentation. - - ## Import - - Ports can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/port:Port port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a Port resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param PortArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1308,67 +734,6 @@ def get(resource_name: str, :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[bool] admin_state_up: Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_fixed_ips: The collection of Fixed IP addresses on the port in the - order returned by the Network v2 API. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_security_group_ids: The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the port, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortAllowedAddressPairArgs', 'PortAllowedAddressPairArgsDict']]]] allowed_address_pairs: An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - :param pulumi.Input[Union['PortBindingArgs', 'PortBindingArgsDict']] binding: The port binding allows to specify binding information - for the port. The structure is described below. - :param pulumi.Input[str] description: Human-readable description of the port. Changing - this updates the `description` of an existing port. - :param pulumi.Input[str] device_id: The ID of the device attached to the port. Changing this - creates a new port. - :param pulumi.Input[str] device_owner: The device owner of the port. Changing this creates - a new port. - :param pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]] dns_assignments: The list of maps representing port DNS assignments. - :param pulumi.Input[str] dns_name: The port DNS name. Available, when Neutron DNS extension - is enabled. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortExtraDhcpOptionArgs', 'PortExtraDhcpOptionArgsDict']]]] extra_dhcp_options: An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - :param pulumi.Input[Sequence[pulumi.Input[Union['PortFixedIpArgs', 'PortFixedIpArgsDict']]]] fixed_ips: An array of desired IPs for - this port. The structure is described below. - :param pulumi.Input[str] mac_address: Specify a specific MAC address for the port. Changing - this creates a new port. - :param pulumi.Input[str] name: A unique name for the port. Changing this - updates the `name` of an existing port. - :param pulumi.Input[str] network_id: The ID of the network to attach the port to. Changing - this creates a new port. - :param pulumi.Input[bool] no_fixed_ip: Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - :param pulumi.Input[bool] no_security_groups: If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - :param pulumi.Input[bool] port_security_enabled: Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - :param pulumi.Input[str] qos_policy_id: Reference to the associated QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1404,236 +769,125 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[bool]: - """ - Administrative up/down status for the port - (must be `true` or `false` if provided). Changing this updates the - `admin_state_up` of an existing port. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allFixedIps") def all_fixed_ips(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of Fixed IP addresses on the port in the - order returned by the Network v2 API. - """ return pulumi.get(self, "all_fixed_ips") @property @pulumi.getter(name="allSecurityGroupIds") def all_security_group_ids(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - """ return pulumi.get(self, "all_security_group_ids") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the port, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="allowedAddressPairs") def allowed_address_pairs(self) -> pulumi.Output[Optional[Sequence['outputs.PortAllowedAddressPair']]]: - """ - An IP/MAC Address pair of additional IP - addresses that can be active on this port. The structure is described - below. - """ return pulumi.get(self, "allowed_address_pairs") @property @pulumi.getter def binding(self) -> pulumi.Output['outputs.PortBinding']: - """ - The port binding allows to specify binding information - for the port. The structure is described below. - """ return pulumi.get(self, "binding") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description of the port. Changing - this updates the `description` of an existing port. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="deviceId") def device_id(self) -> pulumi.Output[str]: - """ - The ID of the device attached to the port. Changing this - creates a new port. - """ return pulumi.get(self, "device_id") @property @pulumi.getter(name="deviceOwner") def device_owner(self) -> pulumi.Output[str]: - """ - The device owner of the port. Changing this creates - a new port. - """ return pulumi.get(self, "device_owner") @property @pulumi.getter(name="dnsAssignments") def dns_assignments(self) -> pulumi.Output[Sequence[Mapping[str, str]]]: - """ - The list of maps representing port DNS assignments. - """ return pulumi.get(self, "dns_assignments") @property @pulumi.getter(name="dnsName") def dns_name(self) -> pulumi.Output[str]: - """ - The port DNS name. Available, when Neutron DNS extension - is enabled. - """ return pulumi.get(self, "dns_name") @property @pulumi.getter(name="extraDhcpOptions") def extra_dhcp_options(self) -> pulumi.Output[Optional[Sequence['outputs.PortExtraDhcpOption']]]: - """ - An extra DHCP option that needs to be configured - on the port. The structure is described below. Can be specified multiple - times. - """ return pulumi.get(self, "extra_dhcp_options") @property @pulumi.getter(name="fixedIps") def fixed_ips(self) -> pulumi.Output[Optional[Sequence['outputs.PortFixedIp']]]: - """ - An array of desired IPs for - this port. The structure is described below. - """ return pulumi.get(self, "fixed_ips") @property @pulumi.getter(name="macAddress") def mac_address(self) -> pulumi.Output[str]: - """ - Specify a specific MAC address for the port. Changing - this creates a new port. - """ return pulumi.get(self, "mac_address") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the port. Changing this - updates the `name` of an existing port. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Output[str]: - """ - The ID of the network to attach the port to. Changing - this creates a new port. - """ return pulumi.get(self, "network_id") @property @pulumi.getter(name="noFixedIp") def no_fixed_ip(self) -> pulumi.Output[Optional[bool]]: - """ - Create a port with no fixed - IP address. This will also remove any fixed IPs previously set on a port. `true` - is the only valid value for this argument. - """ return pulumi.get(self, "no_fixed_ip") @property @pulumi.getter(name="noSecurityGroups") def no_security_groups(self) -> pulumi.Output[Optional[bool]]: - """ - If set to - `true`, then no security groups are applied to the port. If set to `false` and - no `security_group_ids` are specified, then the port will yield to the default - behavior of the Networking service, which is to usually apply the "default" - security group. - """ return pulumi.get(self, "no_security_groups") @property @pulumi.getter(name="portSecurityEnabled") def port_security_enabled(self) -> pulumi.Output[bool]: - """ - Whether to explicitly enable or disable - port security on the port. Port Security is usually enabled by default, so - omitting argument will usually result in a value of `true`. Setting this - explicitly to `false` will disable port security. In order to disable port - security, the port must not have any security groups. Valid values are `true` - and `false`. - """ return pulumi.get(self, "port_security_enabled") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Output[str]: - """ - Reference to the associated QoS policy. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list - of security group IDs to apply to the port. The security groups must be - specified by ID and not name (as opposed to how they are configured with - the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the port. Required if admin wants - to create a port for another tenant. Changing this creates a new port. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/port_forwarding_v2.py b/sdk/python/pulumi_openstack/networking/port_forwarding_v2.py index fe23b1419..1b10b3a4a 100644 --- a/sdk/python/pulumi_openstack/networking/port_forwarding_v2.py +++ b/sdk/python/pulumi_openstack/networking/port_forwarding_v2.py @@ -24,23 +24,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a PortForwardingV2 resource. - :param pulumi.Input[int] external_port: The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - :param pulumi.Input[str] floatingip_id: The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - :param pulumi.Input[str] internal_ip_address: The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - :param pulumi.Input[int] internal_port: The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - :param pulumi.Input[str] internal_port_id: The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - :param pulumi.Input[str] protocol: The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - :param pulumi.Input[str] description: A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. """ pulumi.set(__self__, "external_port", external_port) pulumi.set(__self__, "floatingip_id", floatingip_id) @@ -56,10 +39,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="externalPort") def external_port(self) -> pulumi.Input[int]: - """ - The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - """ return pulumi.get(self, "external_port") @external_port.setter @@ -69,9 +48,6 @@ def external_port(self, value: pulumi.Input[int]): @property @pulumi.getter(name="floatingipId") def floatingip_id(self) -> pulumi.Input[str]: - """ - The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - """ return pulumi.get(self, "floatingip_id") @floatingip_id.setter @@ -81,10 +57,6 @@ def floatingip_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="internalIpAddress") def internal_ip_address(self) -> pulumi.Input[str]: - """ - The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - """ return pulumi.get(self, "internal_ip_address") @internal_ip_address.setter @@ -94,10 +66,6 @@ def internal_ip_address(self, value: pulumi.Input[str]): @property @pulumi.getter(name="internalPort") def internal_port(self) -> pulumi.Input[int]: - """ - The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - """ return pulumi.get(self, "internal_port") @internal_port.setter @@ -107,10 +75,6 @@ def internal_port(self, value: pulumi.Input[int]): @property @pulumi.getter(name="internalPortId") def internal_port_id(self) -> pulumi.Input[str]: - """ - The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - """ return pulumi.get(self, "internal_port_id") @internal_port_id.setter @@ -120,10 +84,6 @@ def internal_port_id(self, value: pulumi.Input[str]): @property @pulumi.getter def protocol(self) -> pulumi.Input[str]: - """ - The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -133,10 +93,6 @@ def protocol(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - """ return pulumi.get(self, "description") @description.setter @@ -146,12 +102,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. - """ return pulumi.get(self, "region") @region.setter @@ -172,23 +122,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering PortForwardingV2 resources. - :param pulumi.Input[str] description: A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - :param pulumi.Input[int] external_port: The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - :param pulumi.Input[str] floatingip_id: The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - :param pulumi.Input[str] internal_ip_address: The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - :param pulumi.Input[int] internal_port: The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - :param pulumi.Input[str] internal_port_id: The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - :param pulumi.Input[str] protocol: The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. """ if description is not None: pulumi.set(__self__, "description", description) @@ -210,10 +143,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - """ return pulumi.get(self, "description") @description.setter @@ -223,10 +152,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="externalPort") def external_port(self) -> Optional[pulumi.Input[int]]: - """ - The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - """ return pulumi.get(self, "external_port") @external_port.setter @@ -236,9 +161,6 @@ def external_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="floatingipId") def floatingip_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - """ return pulumi.get(self, "floatingip_id") @floatingip_id.setter @@ -248,10 +170,6 @@ def floatingip_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="internalIpAddress") def internal_ip_address(self) -> Optional[pulumi.Input[str]]: - """ - The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - """ return pulumi.get(self, "internal_ip_address") @internal_ip_address.setter @@ -261,10 +179,6 @@ def internal_ip_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="internalPort") def internal_port(self) -> Optional[pulumi.Input[int]]: - """ - The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - """ return pulumi.get(self, "internal_port") @internal_port.setter @@ -274,10 +188,6 @@ def internal_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="internalPortId") def internal_port_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - """ return pulumi.get(self, "internal_port_id") @internal_port_id.setter @@ -287,10 +197,6 @@ def internal_port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - """ return pulumi.get(self, "protocol") @protocol.setter @@ -300,12 +206,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. - """ return pulumi.get(self, "region") @region.setter @@ -328,43 +228,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 portforwarding resource within OpenStack. - - ## Example Usage - - ### Simple portforwarding - - ```python - import pulumi - import pulumi_openstack as openstack - - pf1 = openstack.networking.PortForwardingV2("pf_1", - floatingip_id="7a52eb59-7d47-415d-a884-046666a6fbae", - external_port=7233, - internal_port=25, - internal_port_id="b930d7f6-ceb7-40a0-8b81-a425dd994ccf", - protocol="tcp") - ``` - + Create a PortForwardingV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - :param pulumi.Input[int] external_port: The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - :param pulumi.Input[str] floatingip_id: The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - :param pulumi.Input[str] internal_ip_address: The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - :param pulumi.Input[int] internal_port: The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - :param pulumi.Input[str] internal_port_id: The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - :param pulumi.Input[str] protocol: The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. """ ... @overload @@ -373,24 +239,7 @@ def __init__(__self__, args: PortForwardingV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 portforwarding resource within OpenStack. - - ## Example Usage - - ### Simple portforwarding - - ```python - import pulumi - import pulumi_openstack as openstack - - pf1 = openstack.networking.PortForwardingV2("pf_1", - floatingip_id="7a52eb59-7d47-415d-a884-046666a6fbae", - external_port=7233, - internal_port=25, - internal_port_id="b930d7f6-ceb7-40a0-8b81-a425dd994ccf", - protocol="tcp") - ``` - + Create a PortForwardingV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param PortForwardingV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -468,23 +317,6 @@ def get(resource_name: str, :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] description: A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - :param pulumi.Input[int] external_port: The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - :param pulumi.Input[str] floatingip_id: The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - :param pulumi.Input[str] internal_ip_address: The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - :param pulumi.Input[int] internal_port: The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - :param pulumi.Input[str] internal_port_id: The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - :param pulumi.Input[str] protocol: The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -503,73 +335,40 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A text describing the port forwarding. Changing this - updates the `description` of an existing port forwarding. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="externalPort") def external_port(self) -> pulumi.Output[int]: - """ - The TCP/UDP/other protocol port number of the port forwarding. Changing this - updates the `external_port` of an existing port forwarding. - """ return pulumi.get(self, "external_port") @property @pulumi.getter(name="floatingipId") def floatingip_id(self) -> pulumi.Output[str]: - """ - The ID of the Neutron floating IP address. Changing this creates a new port forwarding. - """ return pulumi.get(self, "floatingip_id") @property @pulumi.getter(name="internalIpAddress") def internal_ip_address(self) -> pulumi.Output[str]: - """ - The fixed IPv4 address of the Neutron port associated with the port forwarding. - Changing this updates the `internal_ip_address` of an existing port forwarding. - """ return pulumi.get(self, "internal_ip_address") @property @pulumi.getter(name="internalPort") def internal_port(self) -> pulumi.Output[int]: - """ - The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the - port forwarding. Changing this updates the `internal_port` of an existing port forwarding. - """ return pulumi.get(self, "internal_port") @property @pulumi.getter(name="internalPortId") def internal_port_id(self) -> pulumi.Output[str]: - """ - The ID of the Neutron port associated with the port forwarding. Changing - this updates the `internal_port_id` of an existing port forwarding. - """ return pulumi.get(self, "internal_port_id") @property @pulumi.getter def protocol(self) -> pulumi.Output[str]: - """ - The IP protocol used in the port forwarding. Changing this updates the `protocol` - of an existing port forwarding. - """ return pulumi.get(self, "protocol") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port forwarding. If omitted, the - `region` argument of the provider is used. Changing this creates a new - port forwarding. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/port_sec_group_associate.py b/sdk/python/pulumi_openstack/networking/port_sec_group_associate.py index 8cd6ddcf2..a513578ed 100644 --- a/sdk/python/pulumi_openstack/networking/port_sec_group_associate.py +++ b/sdk/python/pulumi_openstack/networking/port_sec_group_associate.py @@ -20,16 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a PortSecGroupAssociate resource. - :param pulumi.Input[str] port_id: An UUID of the port to apply security groups to. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - :param pulumi.Input[bool] enforce: Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. """ pulumi.set(__self__, "port_id", port_id) pulumi.set(__self__, "security_group_ids", security_group_ids) @@ -41,9 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Input[str]: - """ - An UUID of the port to apply security groups to. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -53,11 +40,6 @@ def port_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -67,10 +49,6 @@ def security_group_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @property @pulumi.getter def enforce(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - """ return pulumi.get(self, "enforce") @enforce.setter @@ -80,12 +58,6 @@ def enforce(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - """ return pulumi.get(self, "region") @region.setter @@ -103,18 +75,6 @@ def __init__(__self__, *, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering PortSecGroupAssociate resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_security_group_ids: The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - :param pulumi.Input[bool] enforce: Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - :param pulumi.Input[str] port_id: An UUID of the port to apply security groups to. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). """ if all_security_group_ids is not None: pulumi.set(__self__, "all_security_group_ids", all_security_group_ids) @@ -130,10 +90,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="allSecurityGroupIds") def all_security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - """ return pulumi.get(self, "all_security_group_ids") @all_security_group_ids.setter @@ -143,10 +99,6 @@ def all_security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.In @property @pulumi.getter def enforce(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - """ return pulumi.get(self, "enforce") @enforce.setter @@ -156,9 +108,6 @@ def enforce(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - An UUID of the port to apply security groups to. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -168,12 +117,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - """ return pulumi.get(self, "region") @region.setter @@ -183,11 +126,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") @security_group_ids.setter @@ -206,68 +144,9 @@ def __init__(__self__, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - ## Example Usage - - ### Append a security group to an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - secgroup = openstack.networking.get_sec_group(name="secgroup") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - security_group_ids=[secgroup.id]) - ``` - - ### Enforce a security group to an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - secgroup = openstack.networking.get_sec_group(name="secgroup") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - enforce=True, - security_group_ids=[secgroup.id]) - ``` - - ### Remove all security groups from an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - enforce=True, - security_group_ids=[]) - ``` - - ## Import - - Port security group association can be imported using the `id` of the port, e.g. - - ```sh - $ pulumi import openstack:networking/portSecGroupAssociate:PortSecGroupAssociate port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a PortSecGroupAssociate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] enforce: Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - :param pulumi.Input[str] port_id: An UUID of the port to apply security groups to. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). """ ... @overload @@ -276,56 +155,7 @@ def __init__(__self__, args: PortSecGroupAssociateArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Example Usage - - ### Append a security group to an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - secgroup = openstack.networking.get_sec_group(name="secgroup") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - security_group_ids=[secgroup.id]) - ``` - - ### Enforce a security group to an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - secgroup = openstack.networking.get_sec_group(name="secgroup") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - enforce=True, - security_group_ids=[secgroup.id]) - ``` - - ### Remove all security groups from an existing port - - ```python - import pulumi - import pulumi_openstack as openstack - - system_port = openstack.networking.get_port(fixed_ip="10.0.0.10") - port1 = openstack.networking.PortSecGroupAssociate("port_1", - port_id=system_port.id, - enforce=True, - security_group_ids=[]) - ``` - - ## Import - - Port security group association can be imported using the `id` of the port, e.g. - - ```sh - $ pulumi import openstack:networking/portSecGroupAssociate:PortSecGroupAssociate port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a PortSecGroupAssociate resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param PortSecGroupAssociateArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -385,18 +215,6 @@ def get(resource_name: str, :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[str]]] all_security_group_ids: The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - :param pulumi.Input[bool] enforce: Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - :param pulumi.Input[str] port_id: An UUID of the port to apply security groups to. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -412,47 +230,25 @@ def get(resource_name: str, @property @pulumi.getter(name="allSecurityGroupIds") def all_security_group_ids(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of Security Group IDs on the port - which have been explicitly and implicitly added. - """ return pulumi.get(self, "all_security_group_ids") @property @pulumi.getter def enforce(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to replace or append the list of security - groups, specified in the `security_group_ids`. Defaults to `false`. - """ return pulumi.get(self, "enforce") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - An UUID of the port to apply security groups to. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to manage a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - resource. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> pulumi.Output[Sequence[str]]: - """ - A list of security group IDs to apply to - the port. The security groups must be specified by ID and not name (as - opposed to how they are configured with the Compute Instance). - """ return pulumi.get(self, "security_group_ids") diff --git a/sdk/python/pulumi_openstack/networking/qos_bandwidth_limit_rule.py b/sdk/python/pulumi_openstack/networking/qos_bandwidth_limit_rule.py index 9651f0abb..0d3f8d36e 100644 --- a/sdk/python/pulumi_openstack/networking/qos_bandwidth_limit_rule.py +++ b/sdk/python/pulumi_openstack/networking/qos_bandwidth_limit_rule.py @@ -21,16 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a QosBandwidthLimitRule resource. - :param pulumi.Input[int] max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. """ pulumi.set(__self__, "max_kbps", max_kbps) pulumi.set(__self__, "qos_policy_id", qos_policy_id) @@ -44,10 +34,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="maxKbps") def max_kbps(self) -> pulumi.Input[int]: - """ - The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_kbps") @max_kbps.setter @@ -57,9 +43,6 @@ def max_kbps(self, value: pulumi.Input[int]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Input[str]: - """ - The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -69,10 +52,6 @@ def qos_policy_id(self, value: pulumi.Input[str]): @property @pulumi.getter def direction(self) -> Optional[pulumi.Input[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -82,10 +61,6 @@ def direction(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxBurstKbps") def max_burst_kbps(self) -> Optional[pulumi.Input[int]]: - """ - The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_burst_kbps") @max_burst_kbps.setter @@ -95,11 +70,6 @@ def max_burst_kbps(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "region") @region.setter @@ -117,16 +87,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering QosBandwidthLimitRule resources. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. """ if direction is not None: pulumi.set(__self__, "direction", direction) @@ -142,10 +102,6 @@ def __init__(__self__, *, @property @pulumi.getter def direction(self) -> Optional[pulumi.Input[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -155,10 +111,6 @@ def direction(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="maxBurstKbps") def max_burst_kbps(self) -> Optional[pulumi.Input[int]]: - """ - The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_burst_kbps") @max_burst_kbps.setter @@ -168,10 +120,6 @@ def max_burst_kbps(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="maxKbps") def max_kbps(self) -> Optional[pulumi.Input[int]]: - """ - The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_kbps") @max_kbps.setter @@ -181,9 +129,6 @@ def max_kbps(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -193,11 +138,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "region") @region.setter @@ -217,46 +157,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 Neutron QoS bandwidth limit rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some bandwidth limit rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="bw_limit") - bw_limit_rule1 = openstack.networking.QosBandwidthLimitRule("bw_limit_rule_1", - qos_policy_id=qos_policy1.id, - max_kbps=3000, - max_burst_kbps=300, - direction="egress") - ``` - - ## Import - - QoS bandwidth limit rules can be imported using the `qos_policy_id/bandwidth_limit_rule` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosBandwidthLimitRule:QosBandwidthLimitRule bw_limit_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosBandwidthLimitRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. """ ... @overload @@ -265,34 +168,7 @@ def __init__(__self__, args: QosBandwidthLimitRuleArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron QoS bandwidth limit rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some bandwidth limit rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="bw_limit") - bw_limit_rule1 = openstack.networking.QosBandwidthLimitRule("bw_limit_rule_1", - qos_policy_id=qos_policy1.id, - max_kbps=3000, - max_burst_kbps=300, - direction="egress") - ``` - - ## Import - - QoS bandwidth limit rules can be imported using the `qos_policy_id/bandwidth_limit_rule` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosBandwidthLimitRule:QosBandwidthLimitRule bw_limit_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosBandwidthLimitRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosBandwidthLimitRuleArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -353,16 +229,6 @@ def get(resource_name: str, :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] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_burst_kbps: The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - :param pulumi.Input[int] max_kbps: The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -378,45 +244,25 @@ def get(resource_name: str, @property @pulumi.getter def direction(self) -> pulumi.Output[Optional[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS bandwidth limit rule. - """ return pulumi.get(self, "direction") @property @pulumi.getter(name="maxBurstKbps") def max_burst_kbps(self) -> pulumi.Output[Optional[int]]: - """ - The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the - maximum burst size in kilobits of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_burst_kbps") @property @pulumi.getter(name="maxKbps") def max_kbps(self) -> pulumi.Output[int]: - """ - The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the - maximum kilobits per second of the existing QoS bandwidth limit rule. - """ return pulumi.get(self, "max_kbps") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Output[str]: - """ - The QoS policy reference. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/qos_dscp_marking_rule.py b/sdk/python/pulumi_openstack/networking/qos_dscp_marking_rule.py index 1b674d622..173cf8c03 100644 --- a/sdk/python/pulumi_openstack/networking/qos_dscp_marking_rule.py +++ b/sdk/python/pulumi_openstack/networking/qos_dscp_marking_rule.py @@ -19,12 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a QosDscpMarkingRule resource. - :param pulumi.Input[int] dscp_mark: The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. """ pulumi.set(__self__, "dscp_mark", dscp_mark) pulumi.set(__self__, "qos_policy_id", qos_policy_id) @@ -34,10 +28,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="dscpMark") def dscp_mark(self) -> pulumi.Input[int]: - """ - The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - """ return pulumi.get(self, "dscp_mark") @dscp_mark.setter @@ -47,9 +37,6 @@ def dscp_mark(self, value: pulumi.Input[int]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Input[str]: - """ - The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -59,11 +46,6 @@ def qos_policy_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "region") @region.setter @@ -79,12 +61,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering QosDscpMarkingRule resources. - :param pulumi.Input[int] dscp_mark: The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. """ if dscp_mark is not None: pulumi.set(__self__, "dscp_mark", dscp_mark) @@ -96,10 +72,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="dscpMark") def dscp_mark(self) -> Optional[pulumi.Input[int]]: - """ - The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - """ return pulumi.get(self, "dscp_mark") @dscp_mark.setter @@ -109,9 +81,6 @@ def dscp_mark(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -121,11 +90,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "region") @region.setter @@ -143,40 +107,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 Neutron QoS DSCP marking rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some DSCP marking rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="dscp_mark") - dscp_marking_rule1 = openstack.networking.QosDscpMarkingRule("dscp_marking_rule_1", - qos_policy_id=qos_policy1.id, - dscp_mark=26) - ``` - - ## Import - - QoS DSCP marking rules can be imported using the `qos_policy_id/dscp_marking_rule_id` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosDscpMarkingRule:QosDscpMarkingRule dscp_marking_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosDscpMarkingRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] dscp_mark: The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. """ ... @overload @@ -185,32 +118,7 @@ def __init__(__self__, args: QosDscpMarkingRuleArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron QoS DSCP marking rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some DSCP marking rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="dscp_mark") - dscp_marking_rule1 = openstack.networking.QosDscpMarkingRule("dscp_marking_rule_1", - qos_policy_id=qos_policy1.id, - dscp_mark=26) - ``` - - ## Import - - QoS DSCP marking rules can be imported using the `qos_policy_id/dscp_marking_rule_id` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosDscpMarkingRule:QosDscpMarkingRule dscp_marking_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosDscpMarkingRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosDscpMarkingRuleArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -265,12 +173,6 @@ def get(resource_name: str, :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[int] dscp_mark: The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -284,27 +186,15 @@ def get(resource_name: str, @property @pulumi.getter(name="dscpMark") def dscp_mark(self) -> pulumi.Output[int]: - """ - The value of DSCP mark. Changing this updates the DSCP mark value existing - QoS DSCP marking rule. - """ return pulumi.get(self, "dscp_mark") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Output[str]: - """ - The QoS policy reference. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/qos_minimum_bandwidth_rule.py b/sdk/python/pulumi_openstack/networking/qos_minimum_bandwidth_rule.py index 8b2a29bb8..0aa6c83cd 100644 --- a/sdk/python/pulumi_openstack/networking/qos_minimum_bandwidth_rule.py +++ b/sdk/python/pulumi_openstack/networking/qos_minimum_bandwidth_rule.py @@ -20,14 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a QosMinimumBandwidthRule resource. - :param pulumi.Input[int] min_kbps: The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. """ pulumi.set(__self__, "min_kbps", min_kbps) pulumi.set(__self__, "qos_policy_id", qos_policy_id) @@ -39,10 +31,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="minKbps") def min_kbps(self) -> pulumi.Input[int]: - """ - The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - """ return pulumi.get(self, "min_kbps") @min_kbps.setter @@ -52,9 +40,6 @@ def min_kbps(self, value: pulumi.Input[int]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Input[str]: - """ - The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -64,10 +49,6 @@ def qos_policy_id(self, value: pulumi.Input[str]): @property @pulumi.getter def direction(self) -> Optional[pulumi.Input[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -77,11 +58,6 @@ def direction(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "region") @region.setter @@ -98,14 +74,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering QosMinimumBandwidthRule resources. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - :param pulumi.Input[int] min_kbps: The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. """ if direction is not None: pulumi.set(__self__, "direction", direction) @@ -119,10 +87,6 @@ def __init__(__self__, *, @property @pulumi.getter def direction(self) -> Optional[pulumi.Input[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -132,10 +96,6 @@ def direction(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="minKbps") def min_kbps(self) -> Optional[pulumi.Input[int]]: - """ - The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - """ return pulumi.get(self, "min_kbps") @min_kbps.setter @@ -145,9 +105,6 @@ def min_kbps(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> Optional[pulumi.Input[str]]: - """ - The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "qos_policy_id") @qos_policy_id.setter @@ -157,11 +114,6 @@ def qos_policy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "region") @region.setter @@ -180,42 +132,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 Neutron QoS minimum bandwidth rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some minimum bandwidth rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="min_kbps") - minimum_bandwidth_rule1 = openstack.networking.QosMinimumBandwidthRule("minimum_bandwidth_rule_1", - qos_policy_id=qos_policy1.id, - min_kbps=200) - ``` - - ## Import - - QoS minimum bandwidth rules can be imported using the `qos_policy_id/minimum_bandwidth_rule_id` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosMinimumBandwidthRule:QosMinimumBandwidthRule minimum_bandwidth_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosMinimumBandwidthRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - :param pulumi.Input[int] min_kbps: The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. """ ... @overload @@ -224,32 +143,7 @@ def __init__(__self__, args: QosMinimumBandwidthRuleArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron QoS minimum bandwidth rule resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy with some minimum bandwidth rule - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="min_kbps") - minimum_bandwidth_rule1 = openstack.networking.QosMinimumBandwidthRule("minimum_bandwidth_rule_1", - qos_policy_id=qos_policy1.id, - min_kbps=200) - ``` - - ## Import - - QoS minimum bandwidth rules can be imported using the `qos_policy_id/minimum_bandwidth_rule_id` format, e.g. - - ```sh - $ pulumi import openstack:networking/qosMinimumBandwidthRule:QosMinimumBandwidthRule minimum_bandwidth_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 - ``` - + Create a QosMinimumBandwidthRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosMinimumBandwidthRuleArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -307,14 +201,6 @@ def get(resource_name: str, :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] direction: The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - :param pulumi.Input[int] min_kbps: The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - :param pulumi.Input[str] qos_policy_id: The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -329,36 +215,20 @@ def get(resource_name: str, @property @pulumi.getter def direction(self) -> pulumi.Output[Optional[str]]: - """ - The direction of traffic. Defaults to "egress". Changing this updates the direction of the - existing QoS minimum bandwidth rule. - """ return pulumi.get(self, "direction") @property @pulumi.getter(name="minKbps") def min_kbps(self) -> pulumi.Output[int]: - """ - The minimum kilobits per second. Changing this updates the min kbps value of the existing - QoS minimum bandwidth rule. - """ return pulumi.get(self, "min_kbps") @property @pulumi.getter(name="qosPolicyId") def qos_policy_id(self) -> pulumi.Output[str]: - """ - The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "qos_policy_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the - `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/networking/qos_policy.py b/sdk/python/pulumi_openstack/networking/qos_policy.py index f1690b63a..1a3c47865 100644 --- a/sdk/python/pulumi_openstack/networking/qos_policy.py +++ b/sdk/python/pulumi_openstack/networking/qos_policy.py @@ -24,24 +24,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a QosPolicy resource. - :param pulumi.Input[str] description: The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - :param pulumi.Input[bool] is_default: Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - :param pulumi.Input[str] name: The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - :param pulumi.Input[str] project_id: The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - :param pulumi.Input[bool] shared: Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the QoS policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if description is not None: pulumi.set(__self__, "description", description) @@ -63,10 +45,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - """ return pulumi.get(self, "description") @description.setter @@ -76,11 +54,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isDefault") def is_default(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - """ return pulumi.get(self, "is_default") @is_default.setter @@ -90,10 +63,6 @@ def is_default(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - """ return pulumi.get(self, "name") @name.setter @@ -103,10 +72,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -116,12 +81,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - """ return pulumi.get(self, "region") @region.setter @@ -131,11 +90,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - """ return pulumi.get(self, "shared") @shared.setter @@ -145,9 +99,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the QoS policy. - """ return pulumi.get(self, "tags") @tags.setter @@ -157,9 +108,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -184,29 +132,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering QosPolicy resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the QoS policy, which have been - explicitly and implicitly added. - :param pulumi.Input[str] created_at: The time at which QoS policy was created. - :param pulumi.Input[str] description: The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - :param pulumi.Input[bool] is_default: Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - :param pulumi.Input[str] name: The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - :param pulumi.Input[str] project_id: The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - :param pulumi.Input[int] revision_number: The revision number of the QoS policy. - :param pulumi.Input[bool] shared: Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the QoS policy. - :param pulumi.Input[str] updated_at: The time at which QoS policy was created. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if all_tags is not None: pulumi.set(__self__, "all_tags", all_tags) @@ -236,10 +161,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the QoS policy, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -249,9 +170,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -261,10 +179,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - """ return pulumi.get(self, "description") @description.setter @@ -274,11 +188,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isDefault") def is_default(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - """ return pulumi.get(self, "is_default") @is_default.setter @@ -288,10 +197,6 @@ def is_default(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - """ return pulumi.get(self, "name") @name.setter @@ -301,10 +206,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -314,12 +215,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - """ return pulumi.get(self, "region") @region.setter @@ -329,9 +224,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> Optional[pulumi.Input[int]]: - """ - The revision number of the QoS policy. - """ return pulumi.get(self, "revision_number") @revision_number.setter @@ -341,11 +233,6 @@ def revision_number(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - """ return pulumi.get(self, "shared") @shared.setter @@ -355,9 +242,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the QoS policy. - """ return pulumi.get(self, "tags") @tags.setter @@ -367,9 +251,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -379,9 +260,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -404,49 +282,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron QoS policy resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="bw_limit") - ``` - - ## Import - - QoS Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/qosPolicy:QosPolicy qos_policy_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae - ``` - + Create a QosPolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - :param pulumi.Input[bool] is_default: Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - :param pulumi.Input[str] name: The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - :param pulumi.Input[str] project_id: The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - :param pulumi.Input[bool] shared: Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the QoS policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -455,29 +293,7 @@ def __init__(__self__, args: Optional[QosPolicyArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron QoS policy resource within OpenStack. - - ## Example Usage - - ### Create a QoS Policy - - ```python - import pulumi - import pulumi_openstack as openstack - - qos_policy1 = openstack.networking.QosPolicy("qos_policy_1", - name="qos_policy_1", - description="bw_limit") - ``` - - ## Import - - QoS Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/qosPolicy:QosPolicy qos_policy_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae - ``` - + Create a QosPolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QosPolicyArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -551,29 +367,6 @@ def get(resource_name: str, :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[str]]] all_tags: The collection of tags assigned on the QoS policy, which have been - explicitly and implicitly added. - :param pulumi.Input[str] created_at: The time at which QoS policy was created. - :param pulumi.Input[str] description: The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - :param pulumi.Input[bool] is_default: Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - :param pulumi.Input[str] name: The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - :param pulumi.Input[str] project_id: The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - :param pulumi.Input[int] revision_number: The revision number of the QoS policy. - :param pulumi.Input[bool] shared: Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the QoS policy. - :param pulumi.Input[str] updated_at: The time at which QoS policy was created. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -596,107 +389,60 @@ def get(resource_name: str, @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the QoS policy, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the QoS policy. - Changing this updates the description of the existing QoS policy. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="isDefault") def is_default(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the QoS policy is default - QoS policy or not. Changing this updates the default status of the existing - QoS policy. - """ return pulumi.get(self, "is_default") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the QoS policy. Changing this updates the name of - the existing QoS policy. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the QoS policy. Required if admin wants to - create a QoS policy for another project. Changing this creates a new QoS policy. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron Qos policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - QoS policy. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> pulumi.Output[int]: - """ - The revision number of the QoS policy. - """ return pulumi.get(self, "revision_number") @property @pulumi.getter def shared(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether this QoS policy is shared across - all projects. Changing this updates the shared status of the existing - QoS policy. - """ return pulumi.get(self, "shared") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the QoS policy. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The time at which QoS policy was created. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/quota_v2.py b/sdk/python/pulumi_openstack/networking/quota_v2.py index fd697ecf8..ea5c036f4 100644 --- a/sdk/python/pulumi_openstack/networking/quota_v2.py +++ b/sdk/python/pulumi_openstack/networking/quota_v2.py @@ -27,29 +27,6 @@ def __init__(__self__, *, subnetpool: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a QuotaV2 resource. - :param pulumi.Input[str] project_id: ID of the project to manage quota. Changing this - creates new quota. - :param pulumi.Input[int] floatingip: Quota value for floating IPs. Changing this updates the - existing quota. - :param pulumi.Input[int] network: Quota value for networks. Changing this updates the - existing quota. - :param pulumi.Input[int] port: Quota value for ports. Changing this updates the - existing quota. - :param pulumi.Input[int] rbac_policy: Quota value for RBAC policies. - Changing this updates the existing quota. - :param pulumi.Input[str] region: The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - :param pulumi.Input[int] router: Quota value for routers. Changing this updates the - existing quota. - :param pulumi.Input[int] security_group: Quota value for security groups. Changing - this updates the existing quota. - :param pulumi.Input[int] security_group_rule: Quota value for security group rules. - Changing this updates the existing quota. - :param pulumi.Input[int] subnet: Quota value for subnets. Changing - this updates the existing quota. - :param pulumi.Input[int] subnetpool: Quota value for subnetpools. - Changing this updates the existing quota. """ pulumi.set(__self__, "project_id", project_id) if floatingip is not None: @@ -76,10 +53,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: - """ - ID of the project to manage quota. Changing this - creates new quota. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -89,10 +62,6 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def floatingip(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for floating IPs. Changing this updates the - existing quota. - """ return pulumi.get(self, "floatingip") @floatingip.setter @@ -102,10 +71,6 @@ def floatingip(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def network(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for networks. Changing this updates the - existing quota. - """ return pulumi.get(self, "network") @network.setter @@ -115,10 +80,6 @@ def network(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def port(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for ports. Changing this updates the - existing quota. - """ return pulumi.get(self, "port") @port.setter @@ -128,10 +89,6 @@ def port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="rbacPolicy") def rbac_policy(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for RBAC policies. - Changing this updates the existing quota. - """ return pulumi.get(self, "rbac_policy") @rbac_policy.setter @@ -141,11 +98,6 @@ def rbac_policy(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - """ return pulumi.get(self, "region") @region.setter @@ -155,10 +107,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def router(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for routers. Changing this updates the - existing quota. - """ return pulumi.get(self, "router") @router.setter @@ -168,10 +116,6 @@ def router(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroup") def security_group(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security groups. Changing - this updates the existing quota. - """ return pulumi.get(self, "security_group") @security_group.setter @@ -181,10 +125,6 @@ def security_group(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroupRule") def security_group_rule(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security group rules. - Changing this updates the existing quota. - """ return pulumi.get(self, "security_group_rule") @security_group_rule.setter @@ -194,10 +134,6 @@ def security_group_rule(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def subnet(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for subnets. Changing - this updates the existing quota. - """ return pulumi.get(self, "subnet") @subnet.setter @@ -207,10 +143,6 @@ def subnet(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def subnetpool(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for subnetpools. - Changing this updates the existing quota. - """ return pulumi.get(self, "subnetpool") @subnetpool.setter @@ -234,29 +166,6 @@ def __init__(__self__, *, subnetpool: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering QuotaV2 resources. - :param pulumi.Input[int] floatingip: Quota value for floating IPs. Changing this updates the - existing quota. - :param pulumi.Input[int] network: Quota value for networks. Changing this updates the - existing quota. - :param pulumi.Input[int] port: Quota value for ports. Changing this updates the - existing quota. - :param pulumi.Input[str] project_id: ID of the project to manage quota. Changing this - creates new quota. - :param pulumi.Input[int] rbac_policy: Quota value for RBAC policies. - Changing this updates the existing quota. - :param pulumi.Input[str] region: The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - :param pulumi.Input[int] router: Quota value for routers. Changing this updates the - existing quota. - :param pulumi.Input[int] security_group: Quota value for security groups. Changing - this updates the existing quota. - :param pulumi.Input[int] security_group_rule: Quota value for security group rules. - Changing this updates the existing quota. - :param pulumi.Input[int] subnet: Quota value for subnets. Changing - this updates the existing quota. - :param pulumi.Input[int] subnetpool: Quota value for subnetpools. - Changing this updates the existing quota. """ if floatingip is not None: pulumi.set(__self__, "floatingip", floatingip) @@ -284,10 +193,6 @@ def __init__(__self__, *, @property @pulumi.getter def floatingip(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for floating IPs. Changing this updates the - existing quota. - """ return pulumi.get(self, "floatingip") @floatingip.setter @@ -297,10 +202,6 @@ def floatingip(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def network(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for networks. Changing this updates the - existing quota. - """ return pulumi.get(self, "network") @network.setter @@ -310,10 +211,6 @@ def network(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def port(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for ports. Changing this updates the - existing quota. - """ return pulumi.get(self, "port") @port.setter @@ -323,10 +220,6 @@ def port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the project to manage quota. Changing this - creates new quota. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -336,10 +229,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="rbacPolicy") def rbac_policy(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for RBAC policies. - Changing this updates the existing quota. - """ return pulumi.get(self, "rbac_policy") @rbac_policy.setter @@ -349,11 +238,6 @@ def rbac_policy(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - """ return pulumi.get(self, "region") @region.setter @@ -363,10 +247,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def router(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for routers. Changing this updates the - existing quota. - """ return pulumi.get(self, "router") @router.setter @@ -376,10 +256,6 @@ def router(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroup") def security_group(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security groups. Changing - this updates the existing quota. - """ return pulumi.get(self, "security_group") @security_group.setter @@ -389,10 +265,6 @@ def security_group(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="securityGroupRule") def security_group_rule(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for security group rules. - Changing this updates the existing quota. - """ return pulumi.get(self, "security_group_rule") @security_group_rule.setter @@ -402,10 +274,6 @@ def security_group_rule(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def subnet(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for subnets. Changing - this updates the existing quota. - """ return pulumi.get(self, "subnet") @subnet.setter @@ -415,10 +283,6 @@ def subnet(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def subnetpool(self) -> Optional[pulumi.Input[int]]: - """ - Quota value for subnetpools. - Changing this updates the existing quota. - """ return pulumi.get(self, "subnetpool") @subnetpool.setter @@ -444,49 +308,9 @@ def __init__(__self__, subnetpool: Optional[pulumi.Input[int]] = None, __props__=None): """ - Manages a V2 networking quota resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - ## Import - - Quotas can be imported using the `project_id/region_name`, e.g. - - ```sh - $ pulumi import openstack:networking/quotaV2:QuotaV2 quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuotaV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[int] floatingip: Quota value for floating IPs. Changing this updates the - existing quota. - :param pulumi.Input[int] network: Quota value for networks. Changing this updates the - existing quota. - :param pulumi.Input[int] port: Quota value for ports. Changing this updates the - existing quota. - :param pulumi.Input[str] project_id: ID of the project to manage quota. Changing this - creates new quota. - :param pulumi.Input[int] rbac_policy: Quota value for RBAC policies. - Changing this updates the existing quota. - :param pulumi.Input[str] region: The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - :param pulumi.Input[int] router: Quota value for routers. Changing this updates the - existing quota. - :param pulumi.Input[int] security_group: Quota value for security groups. Changing - this updates the existing quota. - :param pulumi.Input[int] security_group_rule: Quota value for security group rules. - Changing this updates the existing quota. - :param pulumi.Input[int] subnet: Quota value for subnets. Changing - this updates the existing quota. - :param pulumi.Input[int] subnetpool: Quota value for subnetpools. - Changing this updates the existing quota. """ ... @overload @@ -495,24 +319,7 @@ def __init__(__self__, args: QuotaV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 networking quota resource within OpenStack. - - > **Note:** This usually requires admin privileges. - - > **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API - in case of delete call. - - > **Note:** This resource has all-in creation so all optional quota arguments that were not specified are - created with zero value. - - ## Import - - Quotas can be imported using the `project_id/region_name`, e.g. - - ```sh - $ pulumi import openstack:networking/quotaV2:QuotaV2 quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 - ``` - + Create a QuotaV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param QuotaV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -589,29 +396,6 @@ def get(resource_name: str, :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[int] floatingip: Quota value for floating IPs. Changing this updates the - existing quota. - :param pulumi.Input[int] network: Quota value for networks. Changing this updates the - existing quota. - :param pulumi.Input[int] port: Quota value for ports. Changing this updates the - existing quota. - :param pulumi.Input[str] project_id: ID of the project to manage quota. Changing this - creates new quota. - :param pulumi.Input[int] rbac_policy: Quota value for RBAC policies. - Changing this updates the existing quota. - :param pulumi.Input[str] region: The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - :param pulumi.Input[int] router: Quota value for routers. Changing this updates the - existing quota. - :param pulumi.Input[int] security_group: Quota value for security groups. Changing - this updates the existing quota. - :param pulumi.Input[int] security_group_rule: Quota value for security group rules. - Changing this updates the existing quota. - :param pulumi.Input[int] subnet: Quota value for subnets. Changing - this updates the existing quota. - :param pulumi.Input[int] subnetpool: Quota value for subnetpools. - Changing this updates the existing quota. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -633,100 +417,55 @@ def get(resource_name: str, @property @pulumi.getter def floatingip(self) -> pulumi.Output[int]: - """ - Quota value for floating IPs. Changing this updates the - existing quota. - """ return pulumi.get(self, "floatingip") @property @pulumi.getter def network(self) -> pulumi.Output[int]: - """ - Quota value for networks. Changing this updates the - existing quota. - """ return pulumi.get(self, "network") @property @pulumi.getter def port(self) -> pulumi.Output[int]: - """ - Quota value for ports. Changing this updates the - existing quota. - """ return pulumi.get(self, "port") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - ID of the project to manage quota. Changing this - creates new quota. - """ return pulumi.get(self, "project_id") @property @pulumi.getter(name="rbacPolicy") def rbac_policy(self) -> pulumi.Output[int]: - """ - Quota value for RBAC policies. - Changing this updates the existing quota. - """ return pulumi.get(self, "rbac_policy") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the quota. If - omitted, the `region` argument of the provider is used. Changing this - creates new quota. - """ return pulumi.get(self, "region") @property @pulumi.getter def router(self) -> pulumi.Output[int]: - """ - Quota value for routers. Changing this updates the - existing quota. - """ return pulumi.get(self, "router") @property @pulumi.getter(name="securityGroup") def security_group(self) -> pulumi.Output[int]: - """ - Quota value for security groups. Changing - this updates the existing quota. - """ return pulumi.get(self, "security_group") @property @pulumi.getter(name="securityGroupRule") def security_group_rule(self) -> pulumi.Output[int]: - """ - Quota value for security group rules. - Changing this updates the existing quota. - """ return pulumi.get(self, "security_group_rule") @property @pulumi.getter def subnet(self) -> pulumi.Output[int]: - """ - Quota value for subnets. Changing - this updates the existing quota. - """ return pulumi.get(self, "subnet") @property @pulumi.getter def subnetpool(self) -> pulumi.Output[int]: - """ - Quota value for subnetpools. - Changing this updates the existing quota. - """ return pulumi.get(self, "subnetpool") diff --git a/sdk/python/pulumi_openstack/networking/rbac_policy_v2.py b/sdk/python/pulumi_openstack/networking/rbac_policy_v2.py index 24401fd3d..087525964 100644 --- a/sdk/python/pulumi_openstack/networking/rbac_policy_v2.py +++ b/sdk/python/pulumi_openstack/networking/rbac_policy_v2.py @@ -21,20 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RbacPolicyV2 resource. - :param pulumi.Input[str] action: Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - :param pulumi.Input[str] object_id: The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - :param pulumi.Input[str] object_type: The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - :param pulumi.Input[str] target_tenant: The ID of the tenant to which the RBAC policy - will be enforced. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. """ pulumi.set(__self__, "action", action) pulumi.set(__self__, "object_id", object_id) @@ -46,10 +32,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> pulumi.Input[str]: - """ - Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - """ return pulumi.get(self, "action") @action.setter @@ -59,11 +41,6 @@ def action(self, value: pulumi.Input[str]): @property @pulumi.getter(name="objectId") def object_id(self) -> pulumi.Input[str]: - """ - The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - """ return pulumi.get(self, "object_id") @object_id.setter @@ -73,11 +50,6 @@ def object_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="objectType") def object_type(self) -> pulumi.Input[str]: - """ - The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - """ return pulumi.get(self, "object_type") @object_type.setter @@ -87,10 +59,6 @@ def object_type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="targetTenant") def target_tenant(self) -> pulumi.Input[str]: - """ - The ID of the tenant to which the RBAC policy - will be enforced. - """ return pulumi.get(self, "target_tenant") @target_tenant.setter @@ -100,12 +68,6 @@ def target_tenant(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -124,20 +86,6 @@ def __init__(__self__, *, target_tenant: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RbacPolicyV2 resources. - :param pulumi.Input[str] action: Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - :param pulumi.Input[str] object_id: The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - :param pulumi.Input[str] object_type: The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] target_tenant: The ID of the tenant to which the RBAC policy - will be enforced. """ if action is not None: pulumi.set(__self__, "action", action) @@ -155,10 +103,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[pulumi.Input[str]]: - """ - Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - """ return pulumi.get(self, "action") @action.setter @@ -168,11 +112,6 @@ def action(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="objectId") def object_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - """ return pulumi.get(self, "object_id") @object_id.setter @@ -182,11 +121,6 @@ def object_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="objectType") def object_type(self) -> Optional[pulumi.Input[str]]: - """ - The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - """ return pulumi.get(self, "object_type") @object_type.setter @@ -205,12 +139,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -220,10 +148,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="targetTenant") def target_tenant(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the tenant to which the RBAC policy - will be enforced. - """ return pulumi.get(self, "target_tenant") @target_tenant.setter @@ -243,60 +167,9 @@ def __init__(__self__, target_tenant: Optional[pulumi.Input[str]] = None, __props__=None): """ - The RBAC policy resource contains functionality for working with Neutron RBAC - Policies. Role-Based Access Control (RBAC) policy framework enables both - operators and users to grant access to resources for specific projects. - - Sharing an object with a specific project is accomplished by creating a - policy entry that permits the target project the `access_as_shared` action - on that object. - - To make a network available as an external network for specific projects - rather than all projects, use the `access_as_external` action. - If a network is marked as external during creation, it now implicitly creates - a wildcard RBAC policy granting everyone access to preserve previous behavior - before this feature was added. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - rbac_policy1 = openstack.networking.RbacPolicyV2("rbac_policy_1", - action="access_as_shared", - object_id=network1.id, - object_type="network", - target_tenant="20415a973c9e45d3917f078950644697") - ``` - - ## Import - - RBAC policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/rbacPolicyV2:RbacPolicyV2 rbac_policy_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a RbacPolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] action: Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - :param pulumi.Input[str] object_id: The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - :param pulumi.Input[str] object_type: The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] target_tenant: The ID of the tenant to which the RBAC policy - will be enforced. """ ... @overload @@ -305,44 +178,7 @@ def __init__(__self__, args: RbacPolicyV2Args, opts: Optional[pulumi.ResourceOptions] = None): """ - The RBAC policy resource contains functionality for working with Neutron RBAC - Policies. Role-Based Access Control (RBAC) policy framework enables both - operators and users to grant access to resources for specific projects. - - Sharing an object with a specific project is accomplished by creating a - policy entry that permits the target project the `access_as_shared` action - on that object. - - To make a network available as an external network for specific projects - rather than all projects, use the `access_as_external` action. - If a network is marked as external during creation, it now implicitly creates - a wildcard RBAC policy granting everyone access to preserve previous behavior - before this feature was added. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - rbac_policy1 = openstack.networking.RbacPolicyV2("rbac_policy_1", - action="access_as_shared", - object_id=network1.id, - object_type="network", - target_tenant="20415a973c9e45d3917f078950644697") - ``` - - ## Import - - RBAC policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/rbacPolicyV2:RbacPolicyV2 rbac_policy_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 - ``` - + Create a RbacPolicyV2 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RbacPolicyV2Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -409,20 +245,6 @@ def get(resource_name: str, :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 for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - :param pulumi.Input[str] object_id: The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - :param pulumi.Input[str] object_type: The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] target_tenant: The ID of the tenant to which the RBAC policy - will be enforced. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -439,30 +261,16 @@ def get(resource_name: str, @property @pulumi.getter def action(self) -> pulumi.Output[str]: - """ - Action for the RBAC policy. Can either be - `access_as_external` or `access_as_shared`. - """ return pulumi.get(self, "action") @property @pulumi.getter(name="objectId") def object_id(self) -> pulumi.Output[str]: - """ - The ID of the `object_type` resource. An - `object_type` of `network` returns a network ID and an `object_type` of - `qos_policy` returns a QoS ID. - """ return pulumi.get(self, "object_id") @property @pulumi.getter(name="objectType") def object_type(self) -> pulumi.Output[str]: - """ - The type of the object that the RBAC policy - affects. Can be one of the following: `address_scope`, `address_group`, - `network`, `qos_policy`, `security_group`, `subnetpool` or `bgpvpn`. - """ return pulumi.get(self, "object_type") @property @@ -473,20 +281,10 @@ def project_id(self) -> pulumi.Output[str]: @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="targetTenant") def target_tenant(self) -> pulumi.Output[str]: - """ - The ID of the tenant to which the RBAC policy - will be enforced. - """ return pulumi.get(self, "target_tenant") diff --git a/sdk/python/pulumi_openstack/networking/router.py b/sdk/python/pulumi_openstack/networking/router.py index dc2157aa3..315282b88 100644 --- a/sdk/python/pulumi_openstack/networking/router.py +++ b/sdk/python/pulumi_openstack/networking/router.py @@ -32,47 +32,6 @@ def __init__(__self__, *, vendor_options: Optional[pulumi.Input['RouterVendorOptionsArgs']] = None): """ The set of arguments for constructing a Router resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - :param pulumi.Input[str] description: Human-readable description for the router. - :param pulumi.Input[bool] distributed: Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - :param pulumi.Input[bool] enable_snat: Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - :param pulumi.Input[Sequence[pulumi.Input['RouterExternalFixedIpArgs']]] external_fixed_ips: An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - :param pulumi.Input[str] external_network_id: The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] external_subnet_ids: A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - :param pulumi.Input[str] name: A unique name for the router. Changing this - updates the `name` of an existing router. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the router. - :param pulumi.Input[str] tenant_id: The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional driver-specific options. - :param pulumi.Input['RouterVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -106,11 +65,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -120,12 +74,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -135,9 +83,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the router. - """ return pulumi.get(self, "description") @description.setter @@ -147,11 +92,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def distributed(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - """ return pulumi.get(self, "distributed") @distributed.setter @@ -161,13 +101,6 @@ def distributed(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="enableSnat") def enable_snat(self) -> Optional[pulumi.Input[bool]]: - """ - Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - """ return pulumi.get(self, "enable_snat") @enable_snat.setter @@ -177,12 +110,6 @@ def enable_snat(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="externalFixedIps") def external_fixed_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouterExternalFixedIpArgs']]]]: - """ - An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - """ return pulumi.get(self, "external_fixed_ips") @external_fixed_ips.setter @@ -192,12 +119,6 @@ def external_fixed_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - """ return pulumi.get(self, "external_network_id") @external_network_id.setter @@ -207,13 +128,6 @@ def external_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="externalSubnetIds") def external_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - """ return pulumi.get(self, "external_subnet_ids") @external_subnet_ids.setter @@ -223,10 +137,6 @@ def external_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the router. Changing this - updates the `name` of an existing router. - """ return pulumi.get(self, "name") @name.setter @@ -236,12 +146,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - """ return pulumi.get(self, "region") @region.setter @@ -251,9 +155,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the router. - """ return pulumi.get(self, "tags") @tags.setter @@ -263,10 +164,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -276,9 +173,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional driver-specific options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -288,10 +182,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['RouterVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -319,49 +209,6 @@ def __init__(__self__, *, vendor_options: Optional[pulumi.Input['RouterVendorOptionsArgs']] = None): """ Input properties used for looking up and filtering Router resources. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the router, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - :param pulumi.Input[str] description: Human-readable description for the router. - :param pulumi.Input[bool] distributed: Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - :param pulumi.Input[bool] enable_snat: Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - :param pulumi.Input[Sequence[pulumi.Input['RouterExternalFixedIpArgs']]] external_fixed_ips: An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - :param pulumi.Input[str] external_network_id: The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] external_subnet_ids: A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - :param pulumi.Input[str] name: A unique name for the router. Changing this - updates the `name` of an existing router. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the router. - :param pulumi.Input[str] tenant_id: The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional driver-specific options. - :param pulumi.Input['RouterVendorOptionsArgs'] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -397,11 +244,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -411,10 +253,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the router, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -424,12 +262,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - """ return pulumi.get(self, "availability_zone_hints") @availability_zone_hints.setter @@ -439,9 +271,6 @@ def availability_zone_hints(self, value: Optional[pulumi.Input[Sequence[pulumi.I @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description for the router. - """ return pulumi.get(self, "description") @description.setter @@ -451,11 +280,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def distributed(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - """ return pulumi.get(self, "distributed") @distributed.setter @@ -465,13 +289,6 @@ def distributed(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="enableSnat") def enable_snat(self) -> Optional[pulumi.Input[bool]]: - """ - Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - """ return pulumi.get(self, "enable_snat") @enable_snat.setter @@ -481,12 +298,6 @@ def enable_snat(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="externalFixedIps") def external_fixed_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RouterExternalFixedIpArgs']]]]: - """ - An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - """ return pulumi.get(self, "external_fixed_ips") @external_fixed_ips.setter @@ -496,12 +307,6 @@ def external_fixed_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - """ return pulumi.get(self, "external_network_id") @external_network_id.setter @@ -511,13 +316,6 @@ def external_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="externalSubnetIds") def external_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - """ return pulumi.get(self, "external_subnet_ids") @external_subnet_ids.setter @@ -527,10 +325,6 @@ def external_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the router. Changing this - updates the `name` of an existing router. - """ return pulumi.get(self, "name") @name.setter @@ -540,12 +334,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - """ return pulumi.get(self, "region") @region.setter @@ -555,9 +343,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the router. - """ return pulumi.get(self, "tags") @tags.setter @@ -567,10 +352,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -580,9 +361,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional driver-specific options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -592,10 +370,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> Optional[pulumi.Input['RouterVendorOptionsArgs']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") @vendor_options.setter @@ -624,71 +398,9 @@ def __init__(__self__, vendor_options: Optional[pulumi.Input[Union['RouterVendorOptionsArgs', 'RouterVendorOptionsArgsDict']]] = None, __props__=None): """ - Manages a V2 router resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="my_router", - admin_state_up=True, - external_network_id="f67f0d72-0ddf-11e4-9d95-e1f29f417e2f") - ``` - - ## Import - - Routers can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/router:Router router_1 014395cd-89fc-4c9b-96b7-13d1ee79dad2 - ``` - + Create a Router resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - :param pulumi.Input[str] description: Human-readable description for the router. - :param pulumi.Input[bool] distributed: Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - :param pulumi.Input[bool] enable_snat: Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - :param pulumi.Input[Sequence[pulumi.Input[Union['RouterExternalFixedIpArgs', 'RouterExternalFixedIpArgsDict']]]] external_fixed_ips: An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - :param pulumi.Input[str] external_network_id: The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] external_subnet_ids: A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - :param pulumi.Input[str] name: A unique name for the router. Changing this - updates the `name` of an existing router. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the router. - :param pulumi.Input[str] tenant_id: The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional driver-specific options. - :param pulumi.Input[Union['RouterVendorOptionsArgs', 'RouterVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ ... @overload @@ -697,28 +409,7 @@ def __init__(__self__, args: Optional[RouterArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 router resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="my_router", - admin_state_up=True, - external_network_id="f67f0d72-0ddf-11e4-9d95-e1f29f417e2f") - ``` - - ## Import - - Routers can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/router:Router router_1 014395cd-89fc-4c9b-96b7-13d1ee79dad2 - ``` - + Create a Router resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RouterArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -804,49 +495,6 @@ def get(resource_name: str, :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[bool] admin_state_up: Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the router, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zone_hints: An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - :param pulumi.Input[str] description: Human-readable description for the router. - :param pulumi.Input[bool] distributed: Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - :param pulumi.Input[bool] enable_snat: Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - :param pulumi.Input[Sequence[pulumi.Input[Union['RouterExternalFixedIpArgs', 'RouterExternalFixedIpArgsDict']]]] external_fixed_ips: An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - :param pulumi.Input[str] external_network_id: The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] external_subnet_ids: A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - :param pulumi.Input[str] name: A unique name for the router. Changing this - updates the `name` of an existing router. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the router. - :param pulumi.Input[str] tenant_id: The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional driver-specific options. - :param pulumi.Input[Union['RouterVendorOptionsArgs', 'RouterVendorOptionsArgsDict']] vendor_options: Map of additional vendor-specific options. - Supported options are described below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -872,148 +520,75 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[bool]: - """ - Administrative up/down status for the router - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing router. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the router, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="availabilityZoneHints") def availability_zone_hints(self) -> pulumi.Output[Sequence[str]]: - """ - An availability zone is used to make - network resources highly available. Used for resources with high availability - so that they are scheduled on different availability zones. Changing this - creates a new router. - """ return pulumi.get(self, "availability_zone_hints") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description for the router. - """ return pulumi.get(self, "description") @property @pulumi.getter def distributed(self) -> pulumi.Output[bool]: - """ - Indicates whether or not to create a - distributed router. The default policy setting in Neutron restricts - usage of this property to administrative users only. - """ return pulumi.get(self, "distributed") @property @pulumi.getter(name="enableSnat") def enable_snat(self) -> pulumi.Output[bool]: - """ - Enable Source NAT for the router. Valid values are - "true" or "false". An `external_network_id` has to be set in order to - set this property. Changing this updates the `enable_snat` of the router. - Setting this value **requires** an **ext-gw-mode** extension to be enabled - in OpenStack Neutron. - """ return pulumi.get(self, "enable_snat") @property @pulumi.getter(name="externalFixedIps") def external_fixed_ips(self) -> pulumi.Output[Sequence['outputs.RouterExternalFixedIp']]: - """ - An external fixed IP for the router. This - can be repeated. The structure is described below. An `external_network_id` - has to be set in order to set this property. Changing this updates the - external fixed IPs of the router. - """ return pulumi.get(self, "external_fixed_ips") @property @pulumi.getter(name="externalNetworkId") def external_network_id(self) -> pulumi.Output[str]: - """ - The network UUID of an external gateway - for the router. A router with an external gateway is required if any - compute instances or load balancers will be using floating IPs. Changing - this updates the external gateway of the router. - """ return pulumi.get(self, "external_network_id") @property @pulumi.getter(name="externalSubnetIds") def external_subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A list of external subnet IDs to try over - each to obtain a fixed IP for the router. If a subnet ID in a list has - exhausted floating IP pool, the next subnet ID will be tried. This argument is - used only during the router creation and allows to set only one external fixed - IP. Conflicts with an `external_fixed_ip` argument. - """ return pulumi.get(self, "external_subnet_ids") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the router. Changing this - updates the `name` of an existing router. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router. - """ return pulumi.get(self, "region") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the router. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the floating IP. Required if admin wants - to create a router for another tenant. Changing this creates a new router. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional driver-specific options. - """ return pulumi.get(self, "value_specs") @property @pulumi.getter(name="vendorOptions") def vendor_options(self) -> pulumi.Output[Optional['outputs.RouterVendorOptions']]: - """ - Map of additional vendor-specific options. - Supported options are described below. - """ return pulumi.get(self, "vendor_options") diff --git a/sdk/python/pulumi_openstack/networking/router_interface.py b/sdk/python/pulumi_openstack/networking/router_interface.py index 13fbc129c..232038d0c 100644 --- a/sdk/python/pulumi_openstack/networking/router_interface.py +++ b/sdk/python/pulumi_openstack/networking/router_interface.py @@ -21,19 +21,6 @@ def __init__(__self__, *, subnet_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RouterInterface resource. - :param pulumi.Input[str] router_id: ID of the router this interface belongs to. Changing - this creates a new router interface. - :param pulumi.Input[bool] force_destroy: A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - :param pulumi.Input[str] port_id: ID of the port this interface connects to. Changing - this creates a new router interface. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - :param pulumi.Input[str] subnet_id: ID of the subnet this interface connects to. Changing - this creates a new router interface. """ pulumi.set(__self__, "router_id", router_id) if force_destroy is not None: @@ -48,10 +35,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Input[str]: - """ - ID of the router this interface belongs to. Changing - this creates a new router interface. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -61,11 +44,6 @@ def router_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - """ return pulumi.get(self, "force_destroy") @force_destroy.setter @@ -75,10 +53,6 @@ def force_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the port this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -88,12 +62,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - """ return pulumi.get(self, "region") @region.setter @@ -103,10 +71,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the subnet this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -124,19 +88,6 @@ def __init__(__self__, *, subnet_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RouterInterface resources. - :param pulumi.Input[bool] force_destroy: A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - :param pulumi.Input[str] port_id: ID of the port this interface connects to. Changing - this creates a new router interface. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - :param pulumi.Input[str] router_id: ID of the router this interface belongs to. Changing - this creates a new router interface. - :param pulumi.Input[str] subnet_id: ID of the subnet this interface connects to. Changing - this creates a new router interface. """ if force_destroy is not None: pulumi.set(__self__, "force_destroy", force_destroy) @@ -152,11 +103,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - """ return pulumi.get(self, "force_destroy") @force_destroy.setter @@ -166,10 +112,6 @@ def force_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the port this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -179,12 +121,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - """ return pulumi.get(self, "region") @region.setter @@ -194,10 +130,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routerId") def router_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the router this interface belongs to. Changing - this creates a new router interface. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -207,10 +139,6 @@ def router_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the subnet this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -230,54 +158,9 @@ def __init__(__self__, subnet_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 router interface resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="tf_test_network", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - router1 = openstack.networking.Router("router_1", - name="my_router", - external_network_id="f67f0d72-0ddf-11e4-9d95-e1f29f417e2f") - router_interface1 = openstack.networking.RouterInterface("router_interface_1", - router_id=router1.id, - subnet_id=subnet1.id) - ``` - - ## Import - - Router Interfaces can be imported using the port `id`, e.g. - - $ openstack port list --router - - ```sh - $ pulumi import openstack:networking/routerInterface:RouterInterface int_1 port_id - ``` - + Create a RouterInterface resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] force_destroy: A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - :param pulumi.Input[str] port_id: ID of the port this interface connects to. Changing - this creates a new router interface. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - :param pulumi.Input[str] router_id: ID of the router this interface belongs to. Changing - this creates a new router interface. - :param pulumi.Input[str] subnet_id: ID of the subnet this interface connects to. Changing - this creates a new router interface. """ ... @overload @@ -286,39 +169,7 @@ def __init__(__self__, args: RouterInterfaceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 router interface resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="tf_test_network", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - router1 = openstack.networking.Router("router_1", - name="my_router", - external_network_id="f67f0d72-0ddf-11e4-9d95-e1f29f417e2f") - router_interface1 = openstack.networking.RouterInterface("router_interface_1", - router_id=router1.id, - subnet_id=subnet1.id) - ``` - - ## Import - - Router Interfaces can be imported using the port `id`, e.g. - - $ openstack port list --router - - ```sh - $ pulumi import openstack:networking/routerInterface:RouterInterface int_1 port_id - ``` - + Create a RouterInterface resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RouterInterfaceArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -377,19 +228,6 @@ def get(resource_name: str, :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[bool] force_destroy: A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - :param pulumi.Input[str] port_id: ID of the port this interface connects to. Changing - this creates a new router interface. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - :param pulumi.Input[str] router_id: ID of the router this interface belongs to. Changing - this creates a new router interface. - :param pulumi.Input[str] subnet_id: ID of the subnet this interface connects to. Changing - this creates a new router interface. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -405,48 +243,25 @@ def get(resource_name: str, @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> pulumi.Output[Optional[bool]]: - """ - A boolean indicating whether the routes from the - corresponding router ID should be deleted so that the router interface can - be destroyed without any errors. The default value is `false`. - """ return pulumi.get(self, "force_destroy") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - ID of the port this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - router interface. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Output[str]: - """ - ID of the router this interface belongs to. Changing - this creates a new router interface. - """ return pulumi.get(self, "router_id") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Output[str]: - """ - ID of the subnet this interface connects to. Changing - this creates a new router interface. - """ return pulumi.get(self, "subnet_id") diff --git a/sdk/python/pulumi_openstack/networking/router_route.py b/sdk/python/pulumi_openstack/networking/router_route.py index f9fa04b2a..aa80d93bb 100644 --- a/sdk/python/pulumi_openstack/networking/router_route.py +++ b/sdk/python/pulumi_openstack/networking/router_route.py @@ -20,16 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RouterRoute resource. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] router_id: ID of the router this routing entry belongs to. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. """ pulumi.set(__self__, "destination_cidr", destination_cidr) pulumi.set(__self__, "next_hop", next_hop) @@ -40,10 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> pulumi.Input[str]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @destination_cidr.setter @@ -53,10 +39,6 @@ def destination_cidr(self, value: pulumi.Input[str]): @property @pulumi.getter(name="nextHop") def next_hop(self) -> pulumi.Input[str]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @next_hop.setter @@ -66,10 +48,6 @@ def next_hop(self, value: pulumi.Input[str]): @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Input[str]: - """ - ID of the router this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -79,12 +57,6 @@ def router_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -101,16 +73,6 @@ def __init__(__self__, *, router_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering RouterRoute resources. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] router_id: ID of the router this routing entry belongs to. Changing - this creates a new routing entry. """ if destination_cidr is not None: pulumi.set(__self__, "destination_cidr", destination_cidr) @@ -124,10 +86,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> Optional[pulumi.Input[str]]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @destination_cidr.setter @@ -137,10 +95,6 @@ def destination_cidr(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="nextHop") def next_hop(self) -> Optional[pulumi.Input[str]]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @next_hop.setter @@ -150,12 +104,6 @@ def next_hop(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -165,10 +113,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routerId") def router_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the router this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -187,60 +131,9 @@ def __init__(__self__, router_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Creates a routing entry on a OpenStack V2 router. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="router_1", - admin_state_up=True) - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - int1 = openstack.networking.RouterInterface("int_1", - router_id=router1.id, - subnet_id=subnet1.id) - router_route1 = openstack.networking.RouterRoute("router_route_1", - router_id=router1.id, - destination_cidr="10.0.1.0/24", - next_hop="192.168.199.254", - opts = pulumi.ResourceOptions(depends_on=[int1])) - ``` - - ## Notes - - The `next_hop` IP address must be directly reachable from the router at the ``networking.RouterRoute`` - resource creation time. You can ensure that by explicitly specifying a dependency on the ``networking.RouterInterface`` - resource that connects the next hop to the router, as in the example above. - - ## Import - - Routing entries can be imported using a combined ID using the following format: `-route--` - - ```sh - $ pulumi import openstack:networking/routerRoute:RouterRoute router_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 - ``` - + Create a RouterRoute resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] router_id: ID of the router this routing entry belongs to. Changing - this creates a new routing entry. """ ... @overload @@ -249,48 +142,7 @@ def __init__(__self__, args: RouterRouteArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Creates a routing entry on a OpenStack V2 router. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="router_1", - admin_state_up=True) - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - int1 = openstack.networking.RouterInterface("int_1", - router_id=router1.id, - subnet_id=subnet1.id) - router_route1 = openstack.networking.RouterRoute("router_route_1", - router_id=router1.id, - destination_cidr="10.0.1.0/24", - next_hop="192.168.199.254", - opts = pulumi.ResourceOptions(depends_on=[int1])) - ``` - - ## Notes - - The `next_hop` IP address must be directly reachable from the router at the ``networking.RouterRoute`` - resource creation time. You can ensure that by explicitly specifying a dependency on the ``networking.RouterInterface`` - resource that connects the next hop to the router, as in the example above. - - ## Import - - Routing entries can be imported using a combined ID using the following format: `-route--` - - ```sh - $ pulumi import openstack:networking/routerRoute:RouterRoute router_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 - ``` - + Create a RouterRoute resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param RouterRouteArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -350,16 +202,6 @@ def get(resource_name: str, :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] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] router_id: ID of the router this routing entry belongs to. Changing - this creates a new routing entry. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -374,38 +216,20 @@ def get(resource_name: str, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> pulumi.Output[str]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @property @pulumi.getter(name="nextHop") def next_hop(self) -> pulumi.Output[str]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a router. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Output[str]: - """ - ID of the router this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "router_id") diff --git a/sdk/python/pulumi_openstack/networking/sec_group.py b/sdk/python/pulumi_openstack/networking/sec_group.py index 5747e362b..cc9fd0388 100644 --- a/sdk/python/pulumi_openstack/networking/sec_group.py +++ b/sdk/python/pulumi_openstack/networking/sec_group.py @@ -23,23 +23,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a SecGroup resource. - :param pulumi.Input[bool] delete_default_rules: Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - :param pulumi.Input[str] description: A unique name for the security group. - :param pulumi.Input[str] name: A unique name for the security group. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - :param pulumi.Input[bool] stateful: Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the security group. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. """ if delete_default_rules is not None: pulumi.set(__self__, "delete_default_rules", delete_default_rules) @@ -59,11 +42,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="deleteDefaultRules") def delete_default_rules(self) -> Optional[pulumi.Input[bool]]: - """ - Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - """ return pulumi.get(self, "delete_default_rules") @delete_default_rules.setter @@ -73,9 +51,6 @@ def delete_default_rules(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the security group. - """ return pulumi.get(self, "description") @description.setter @@ -85,9 +60,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the security group. - """ return pulumi.get(self, "name") @name.setter @@ -97,12 +69,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - """ return pulumi.get(self, "region") @region.setter @@ -112,12 +78,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def stateful(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - """ return pulumi.get(self, "stateful") @stateful.setter @@ -127,9 +87,6 @@ def stateful(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the security group. - """ return pulumi.get(self, "tags") @tags.setter @@ -139,11 +96,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -164,25 +116,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SecGroup resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the security group, which have - been explicitly and implicitly added. - :param pulumi.Input[bool] delete_default_rules: Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - :param pulumi.Input[str] description: A unique name for the security group. - :param pulumi.Input[str] name: A unique name for the security group. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - :param pulumi.Input[bool] stateful: Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the security group. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. """ if all_tags is not None: pulumi.set(__self__, "all_tags", all_tags) @@ -204,10 +137,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the security group, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -217,11 +146,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="deleteDefaultRules") def delete_default_rules(self) -> Optional[pulumi.Input[bool]]: - """ - Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - """ return pulumi.get(self, "delete_default_rules") @delete_default_rules.setter @@ -231,9 +155,6 @@ def delete_default_rules(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the security group. - """ return pulumi.get(self, "description") @description.setter @@ -243,9 +164,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the security group. - """ return pulumi.get(self, "name") @name.setter @@ -255,12 +173,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - """ return pulumi.get(self, "region") @region.setter @@ -270,12 +182,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def stateful(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - """ return pulumi.get(self, "stateful") @stateful.setter @@ -285,9 +191,6 @@ def stateful(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the security group. - """ return pulumi.get(self, "tags") @tags.setter @@ -297,11 +200,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -323,33 +221,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - ## Import - - Security Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/secGroup:SecGroup secgroup_1 38809219-5e8a-4852-9139-6f461c90e8bc - ``` - + Create a SecGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] delete_default_rules: Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - :param pulumi.Input[str] description: A unique name for the security group. - :param pulumi.Input[str] name: A unique name for the security group. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - :param pulumi.Input[bool] stateful: Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the security group. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. """ ... @overload @@ -358,14 +232,7 @@ def __init__(__self__, args: Optional[SecGroupArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Import - - Security Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/secGroup:SecGroup secgroup_1 38809219-5e8a-4852-9139-6f461c90e8bc - ``` - + Create a SecGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SecGroupArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -430,25 +297,6 @@ def get(resource_name: str, :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[str]]] all_tags: The collection of tags assigned on the security group, which have - been explicitly and implicitly added. - :param pulumi.Input[bool] delete_default_rules: Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - :param pulumi.Input[str] description: A unique name for the security group. - :param pulumi.Input[str] name: A unique name for the security group. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - :param pulumi.Input[bool] stateful: Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the security group. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -467,75 +315,40 @@ def get(resource_name: str, @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the security group, which have - been explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="deleteDefaultRules") def delete_default_rules(self) -> pulumi.Output[Optional[bool]]: - """ - Whether or not to delete the default - egress security rules. This is `false` by default. See the below note - for more information. - """ return pulumi.get(self, "delete_default_rules") @property @pulumi.getter def description(self) -> pulumi.Output[str]: - """ - A unique name for the security group. - """ return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the security group. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group. - """ return pulumi.get(self, "region") @property @pulumi.getter def stateful(self) -> pulumi.Output[bool]: - """ - Indicates if the security group is stateful or - stateless. Update of the stateful argument is allowed when there is no port - associated with the security group. Available only in OpenStack environments - with the `stateful-security-group` extension. Defaults to true. - """ return pulumi.get(self, "stateful") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the security group. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/networking/sec_group_rule.py b/sdk/python/pulumi_openstack/networking/sec_group_rule.py index 4a5060dcc..4957816a5 100644 --- a/sdk/python/pulumi_openstack/networking/sec_group_rule.py +++ b/sdk/python/pulumi_openstack/networking/sec_group_rule.py @@ -27,59 +27,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a SecGroupRule resource. - :param pulumi.Input[str] direction: The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - :param pulumi.Input[str] ethertype: The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - :param pulumi.Input[str] security_group_id: The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - :param pulumi.Input[str] description: A description of the rule. Changing this creates a new security group rule. - :param pulumi.Input[int] port_range_max: The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[int] port_range_min: The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[str] protocol: The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - :param pulumi.Input[str] remote_group_id: The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - :param pulumi.Input[str] remote_ip_prefix: The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. """ pulumi.set(__self__, "direction", direction) pulumi.set(__self__, "ethertype", ethertype) @@ -104,10 +51,6 @@ def __init__(__self__, *, @property @pulumi.getter def direction(self) -> pulumi.Input[str]: - """ - The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -117,10 +60,6 @@ def direction(self, value: pulumi.Input[str]): @property @pulumi.getter def ethertype(self) -> pulumi.Input[str]: - """ - The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - """ return pulumi.get(self, "ethertype") @ethertype.setter @@ -130,11 +69,6 @@ def ethertype(self, value: pulumi.Input[str]): @property @pulumi.getter(name="securityGroupId") def security_group_id(self) -> pulumi.Input[str]: - """ - The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - """ return pulumi.get(self, "security_group_id") @security_group_id.setter @@ -144,9 +78,6 @@ def security_group_id(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the rule. Changing this creates a new security group rule. - """ return pulumi.get(self, "description") @description.setter @@ -156,11 +87,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portRangeMax") def port_range_max(self) -> Optional[pulumi.Input[int]]: - """ - The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_max") @port_range_max.setter @@ -170,11 +96,6 @@ def port_range_max(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="portRangeMin") def port_range_min(self) -> Optional[pulumi.Input[int]]: - """ - The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_min") @port_range_min.setter @@ -184,35 +105,6 @@ def port_range_min(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - """ return pulumi.get(self, "protocol") @protocol.setter @@ -222,12 +114,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - """ return pulumi.get(self, "region") @region.setter @@ -237,11 +123,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="remoteGroupId") def remote_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - """ return pulumi.get(self, "remote_group_id") @remote_group_id.setter @@ -251,10 +132,6 @@ def remote_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="remoteIpPrefix") def remote_ip_prefix(self) -> Optional[pulumi.Input[str]]: - """ - The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - """ return pulumi.get(self, "remote_ip_prefix") @remote_ip_prefix.setter @@ -264,11 +141,6 @@ def remote_ip_prefix(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -292,59 +164,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SecGroupRule resources. - :param pulumi.Input[str] description: A description of the rule. Changing this creates a new security group rule. - :param pulumi.Input[str] direction: The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - :param pulumi.Input[str] ethertype: The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - :param pulumi.Input[int] port_range_max: The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[int] port_range_min: The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[str] protocol: The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - :param pulumi.Input[str] remote_group_id: The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - :param pulumi.Input[str] remote_ip_prefix: The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - :param pulumi.Input[str] security_group_id: The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. """ if description is not None: pulumi.set(__self__, "description", description) @@ -372,9 +191,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - A description of the rule. Changing this creates a new security group rule. - """ return pulumi.get(self, "description") @description.setter @@ -384,10 +200,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def direction(self) -> Optional[pulumi.Input[str]]: - """ - The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - """ return pulumi.get(self, "direction") @direction.setter @@ -397,10 +209,6 @@ def direction(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ethertype(self) -> Optional[pulumi.Input[str]]: - """ - The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - """ return pulumi.get(self, "ethertype") @ethertype.setter @@ -410,11 +218,6 @@ def ethertype(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portRangeMax") def port_range_max(self) -> Optional[pulumi.Input[int]]: - """ - The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_max") @port_range_max.setter @@ -424,11 +227,6 @@ def port_range_max(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="portRangeMin") def port_range_min(self) -> Optional[pulumi.Input[int]]: - """ - The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_min") @port_range_min.setter @@ -438,35 +236,6 @@ def port_range_min(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: - """ - The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - """ return pulumi.get(self, "protocol") @protocol.setter @@ -476,12 +245,6 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - """ return pulumi.get(self, "region") @region.setter @@ -491,11 +254,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="remoteGroupId") def remote_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - """ return pulumi.get(self, "remote_group_id") @remote_group_id.setter @@ -505,10 +263,6 @@ def remote_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="remoteIpPrefix") def remote_ip_prefix(self) -> Optional[pulumi.Input[str]]: - """ - The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - """ return pulumi.get(self, "remote_ip_prefix") @remote_ip_prefix.setter @@ -518,11 +272,6 @@ def remote_ip_prefix(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityGroupId") def security_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - """ return pulumi.get(self, "security_group_id") @security_group_id.setter @@ -532,11 +281,6 @@ def security_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -562,95 +306,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 neutron security group rule resource within OpenStack. - Unlike Nova security groups, neutron separates the group from the rules - and also allows an admin to target a specific tenant_id. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - secgroup1 = openstack.networking.SecGroup("secgroup_1", - name="secgroup_1", - description="My neutron security group") - secgroup_rule1 = openstack.networking.SecGroupRule("secgroup_rule_1", - direction="ingress", - ethertype="IPv4", - protocol="tcp", - port_range_min=22, - port_range_max=22, - remote_ip_prefix="0.0.0.0/0", - security_group_id=secgroup1.id) - ``` - - > **Note:** To expose the full port-range 1:65535, use `0` for `port_range_min` - and `port_range_max`. - - ## Import - - Security Group Rules can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/secGroupRule:SecGroupRule secgroup_rule_1 aeb68ee3-6e9d-4256-955c-9584a6212745 - ``` - + Create a SecGroupRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: A description of the rule. Changing this creates a new security group rule. - :param pulumi.Input[str] direction: The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - :param pulumi.Input[str] ethertype: The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - :param pulumi.Input[int] port_range_max: The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[int] port_range_min: The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[str] protocol: The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - :param pulumi.Input[str] remote_group_id: The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - :param pulumi.Input[str] remote_ip_prefix: The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - :param pulumi.Input[str] security_group_id: The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. """ ... @overload @@ -659,40 +317,7 @@ def __init__(__self__, args: SecGroupRuleArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 neutron security group rule resource within OpenStack. - Unlike Nova security groups, neutron separates the group from the rules - and also allows an admin to target a specific tenant_id. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - secgroup1 = openstack.networking.SecGroup("secgroup_1", - name="secgroup_1", - description="My neutron security group") - secgroup_rule1 = openstack.networking.SecGroupRule("secgroup_rule_1", - direction="ingress", - ethertype="IPv4", - protocol="tcp", - port_range_min=22, - port_range_max=22, - remote_ip_prefix="0.0.0.0/0", - security_group_id=secgroup1.id) - ``` - - > **Note:** To expose the full port-range 1:65535, use `0` for `port_range_min` - and `port_range_max`. - - ## Import - - Security Group Rules can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/secGroupRule:SecGroupRule secgroup_rule_1 aeb68ee3-6e9d-4256-955c-9584a6212745 - ``` - + Create a SecGroupRule resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SecGroupRuleArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -773,59 +398,6 @@ def get(resource_name: str, :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] description: A description of the rule. Changing this creates a new security group rule. - :param pulumi.Input[str] direction: The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - :param pulumi.Input[str] ethertype: The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - :param pulumi.Input[int] port_range_max: The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[int] port_range_min: The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - :param pulumi.Input[str] protocol: The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - :param pulumi.Input[str] remote_group_id: The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - :param pulumi.Input[str] remote_ip_prefix: The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - :param pulumi.Input[str] security_group_id: The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - :param pulumi.Input[str] tenant_id: The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -847,130 +419,55 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - A description of the rule. Changing this creates a new security group rule. - """ return pulumi.get(self, "description") @property @pulumi.getter def direction(self) -> pulumi.Output[str]: - """ - The direction of the rule, valid values are __ingress__ - or __egress__. Changing this creates a new security group rule. - """ return pulumi.get(self, "direction") @property @pulumi.getter def ethertype(self) -> pulumi.Output[str]: - """ - The layer 3 protocol type, valid values are __IPv4__ - or __IPv6__. Changing this creates a new security group rule. - """ return pulumi.get(self, "ethertype") @property @pulumi.getter(name="portRangeMax") def port_range_max(self) -> pulumi.Output[Optional[int]]: - """ - The higher part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_max") @property @pulumi.getter(name="portRangeMin") def port_range_min(self) -> pulumi.Output[Optional[int]]: - """ - The lower part of the allowed port range, valid - integer value needs to be between 1 and 65535. Changing this creates a new - security group rule. - """ return pulumi.get(self, "port_range_min") @property @pulumi.getter def protocol(self) -> pulumi.Output[Optional[str]]: - """ - The layer 4 protocol type, valid values are - following. Changing this creates a new security group rule. This is required - if you want to specify a port range. - * empty string or omitted (any protocol) - * integer value between 0 and 255 (valid IP protocol number) - * __tcp__ - * __udp__ - * __icmp__ - * __ah__ - * __dccp__ - * __egp__ - * __esp__ - * __gre__ - * __igmp__ - * __ipv6-encap__ - * __ipv6-frag__ - * __ipv6-icmp__ - * __ipv6-nonxt__ - * __ipv6-opts__ - * __ipv6-route__ - * __ospf__ - * __pgm__ - * __rsvp__ - * __sctp__ - * __udplite__ - * __vrrp__ - * __ipip__ - """ return pulumi.get(self, "protocol") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a port. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security group rule. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="remoteGroupId") def remote_group_id(self) -> pulumi.Output[str]: - """ - The remote group id, the value needs to be an - Openstack ID of a security group in the same tenant. Changing this creates - a new security group rule. - """ return pulumi.get(self, "remote_group_id") @property @pulumi.getter(name="remoteIpPrefix") def remote_ip_prefix(self) -> pulumi.Output[str]: - """ - The remote CIDR, the value needs to be a valid - CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule. - """ return pulumi.get(self, "remote_ip_prefix") @property @pulumi.getter(name="securityGroupId") def security_group_id(self) -> pulumi.Output[str]: - """ - The security group id the rule should belong - to, the value needs to be an Openstack ID of a security group in the same - tenant. Changing this creates a new security group rule. - """ return pulumi.get(self, "security_group_id") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the security group. Required if admin - wants to create a port for another tenant. Changing this creates a new - security group rule. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/networking/subnet.py b/sdk/python/pulumi_openstack/networking/subnet.py index 4da0f45c7..b80d0dc4a 100644 --- a/sdk/python/pulumi_openstack/networking/subnet.py +++ b/sdk/python/pulumi_openstack/networking/subnet.py @@ -38,56 +38,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Subnet resource. - :param pulumi.Input[str] network_id: The UUID of the parent network. Changing this - creates a new subnet. - :param pulumi.Input[Sequence[pulumi.Input['SubnetAllocationPoolArgs']]] allocation_pools: A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - :param pulumi.Input[str] cidr: CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - :param pulumi.Input[str] description: Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_nameservers: An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - :param pulumi.Input[bool] dns_publish_fixed_ip: Whether to publish DNS records for IPs - from this subnet. Defaults is false. - :param pulumi.Input[bool] enable_dhcp: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - :param pulumi.Input[str] gateway_ip: Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this creates a - new subnet. - :param pulumi.Input[str] ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] name: The name of the subnet. Changing this updates the name of - the existing subnet. - :param pulumi.Input[bool] no_gateway: Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - :param pulumi.Input[int] prefix_length: The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] service_types: An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - :param pulumi.Input[str] subnetpool_id: The ID of the subnetpool associated with the subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnet. - :param pulumi.Input[str] tenant_id: The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "network_id", network_id) if allocation_pools is not None: @@ -132,10 +82,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Input[str]: - """ - The UUID of the parent network. Changing this - creates a new subnet. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -145,14 +91,6 @@ def network_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="allocationPools") def allocation_pools(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SubnetAllocationPoolArgs']]]]: - """ - A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - """ return pulumi.get(self, "allocation_pools") @allocation_pools.setter @@ -162,11 +100,6 @@ def allocation_pools(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['S @property @pulumi.getter def cidr(self) -> Optional[pulumi.Input[str]]: - """ - CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - """ return pulumi.get(self, "cidr") @cidr.setter @@ -176,10 +109,6 @@ def cidr(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - """ return pulumi.get(self, "description") @description.setter @@ -189,11 +118,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsNameservers") def dns_nameservers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - """ return pulumi.get(self, "dns_nameservers") @dns_nameservers.setter @@ -203,10 +127,6 @@ def dns_nameservers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="dnsPublishFixedIp") def dns_publish_fixed_ip(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to publish DNS records for IPs - from this subnet. Defaults is false. - """ return pulumi.get(self, "dns_publish_fixed_ip") @dns_publish_fixed_ip.setter @@ -216,11 +136,6 @@ def dns_publish_fixed_ip(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="enableDhcp") def enable_dhcp(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - """ return pulumi.get(self, "enable_dhcp") @enable_dhcp.setter @@ -230,12 +145,6 @@ def enable_dhcp(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="gatewayIp") def gateway_ip(self) -> Optional[pulumi.Input[str]]: - """ - Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - """ return pulumi.get(self, "gateway_ip") @gateway_ip.setter @@ -245,10 +154,6 @@ def gateway_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 (default) or 6. Changing this creates a - new subnet. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -258,10 +163,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="ipv6AddressMode") def ipv6_address_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_address_mode") @ipv6_address_mode.setter @@ -271,10 +172,6 @@ def ipv6_address_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipv6RaMode") def ipv6_ra_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_ra_mode") @ipv6_ra_mode.setter @@ -284,10 +181,6 @@ def ipv6_ra_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the subnet. Changing this updates the name of - the existing subnet. - """ return pulumi.get(self, "name") @name.setter @@ -297,10 +190,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noGateway") def no_gateway(self) -> Optional[pulumi.Input[bool]]: - """ - Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - """ return pulumi.get(self, "no_gateway") @no_gateway.setter @@ -310,12 +199,6 @@ def no_gateway(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="prefixLength") def prefix_length(self) -> Optional[pulumi.Input[int]]: - """ - The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - """ return pulumi.get(self, "prefix_length") @prefix_length.setter @@ -325,12 +208,6 @@ def prefix_length(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - """ return pulumi.get(self, "region") @region.setter @@ -340,10 +217,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceTypes") def service_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - """ return pulumi.get(self, "service_types") @service_types.setter @@ -353,9 +226,6 @@ def service_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter(name="subnetpoolId") def subnetpool_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the subnetpool associated with the subnet. - """ return pulumi.get(self, "subnetpool_id") @subnetpool_id.setter @@ -365,9 +235,6 @@ def subnetpool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the subnet. - """ return pulumi.get(self, "tags") @tags.setter @@ -377,10 +244,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -390,9 +253,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -426,58 +286,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Subnet resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of ags assigned on the subnet, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input['SubnetAllocationPoolArgs']]] allocation_pools: A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - :param pulumi.Input[str] cidr: CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - :param pulumi.Input[str] description: Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_nameservers: An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - :param pulumi.Input[bool] dns_publish_fixed_ip: Whether to publish DNS records for IPs - from this subnet. Defaults is false. - :param pulumi.Input[bool] enable_dhcp: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - :param pulumi.Input[str] gateway_ip: Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this creates a - new subnet. - :param pulumi.Input[str] ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] name: The name of the subnet. Changing this updates the name of - the existing subnet. - :param pulumi.Input[str] network_id: The UUID of the parent network. Changing this - creates a new subnet. - :param pulumi.Input[bool] no_gateway: Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - :param pulumi.Input[int] prefix_length: The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] service_types: An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - :param pulumi.Input[str] subnetpool_id: The ID of the subnetpool associated with the subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnet. - :param pulumi.Input[str] tenant_id: The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if all_tags is not None: pulumi.set(__self__, "all_tags", all_tags) @@ -525,10 +333,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of ags assigned on the subnet, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -538,14 +342,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="allocationPools") def allocation_pools(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SubnetAllocationPoolArgs']]]]: - """ - A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - """ return pulumi.get(self, "allocation_pools") @allocation_pools.setter @@ -555,11 +351,6 @@ def allocation_pools(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['S @property @pulumi.getter def cidr(self) -> Optional[pulumi.Input[str]]: - """ - CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - """ return pulumi.get(self, "cidr") @cidr.setter @@ -569,10 +360,6 @@ def cidr(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - """ return pulumi.get(self, "description") @description.setter @@ -582,11 +369,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsNameservers") def dns_nameservers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - """ return pulumi.get(self, "dns_nameservers") @dns_nameservers.setter @@ -596,10 +378,6 @@ def dns_nameservers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str @property @pulumi.getter(name="dnsPublishFixedIp") def dns_publish_fixed_ip(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to publish DNS records for IPs - from this subnet. Defaults is false. - """ return pulumi.get(self, "dns_publish_fixed_ip") @dns_publish_fixed_ip.setter @@ -609,11 +387,6 @@ def dns_publish_fixed_ip(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="enableDhcp") def enable_dhcp(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - """ return pulumi.get(self, "enable_dhcp") @enable_dhcp.setter @@ -623,12 +396,6 @@ def enable_dhcp(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="gatewayIp") def gateway_ip(self) -> Optional[pulumi.Input[str]]: - """ - Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - """ return pulumi.get(self, "gateway_ip") @gateway_ip.setter @@ -638,10 +405,6 @@ def gateway_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - IP version, either 4 (default) or 6. Changing this creates a - new subnet. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -651,10 +414,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="ipv6AddressMode") def ipv6_address_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_address_mode") @ipv6_address_mode.setter @@ -664,10 +423,6 @@ def ipv6_address_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipv6RaMode") def ipv6_ra_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_ra_mode") @ipv6_ra_mode.setter @@ -677,10 +432,6 @@ def ipv6_ra_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the subnet. Changing this updates the name of - the existing subnet. - """ return pulumi.get(self, "name") @name.setter @@ -690,10 +441,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkId") def network_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the parent network. Changing this - creates a new subnet. - """ return pulumi.get(self, "network_id") @network_id.setter @@ -703,10 +450,6 @@ def network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="noGateway") def no_gateway(self) -> Optional[pulumi.Input[bool]]: - """ - Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - """ return pulumi.get(self, "no_gateway") @no_gateway.setter @@ -716,12 +459,6 @@ def no_gateway(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="prefixLength") def prefix_length(self) -> Optional[pulumi.Input[int]]: - """ - The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - """ return pulumi.get(self, "prefix_length") @prefix_length.setter @@ -731,12 +468,6 @@ def prefix_length(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - """ return pulumi.get(self, "region") @region.setter @@ -746,10 +477,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="serviceTypes") def service_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - """ return pulumi.get(self, "service_types") @service_types.setter @@ -759,9 +486,6 @@ def service_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @property @pulumi.getter(name="subnetpoolId") def subnetpool_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the subnetpool associated with the subnet. - """ return pulumi.get(self, "subnetpool_id") @subnetpool_id.setter @@ -771,9 +495,6 @@ def subnetpool_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the subnet. - """ return pulumi.get(self, "tags") @tags.setter @@ -783,10 +504,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -796,9 +513,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -833,82 +547,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron subnet resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="tf_test_network", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24") - ``` - - ## Import - - Subnets can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/subnet:Subnet subnet_1 da4faf16-5546-41e4-8330-4d0002b74048 - ``` - + Create a Subnet resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['SubnetAllocationPoolArgs', 'SubnetAllocationPoolArgsDict']]]] allocation_pools: A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - :param pulumi.Input[str] cidr: CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - :param pulumi.Input[str] description: Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_nameservers: An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - :param pulumi.Input[bool] dns_publish_fixed_ip: Whether to publish DNS records for IPs - from this subnet. Defaults is false. - :param pulumi.Input[bool] enable_dhcp: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - :param pulumi.Input[str] gateway_ip: Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this creates a - new subnet. - :param pulumi.Input[str] ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] name: The name of the subnet. Changing this updates the name of - the existing subnet. - :param pulumi.Input[str] network_id: The UUID of the parent network. Changing this - creates a new subnet. - :param pulumi.Input[bool] no_gateway: Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - :param pulumi.Input[int] prefix_length: The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] service_types: An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - :param pulumi.Input[str] subnetpool_id: The ID of the subnetpool associated with the subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnet. - :param pulumi.Input[str] tenant_id: The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -917,30 +558,7 @@ def __init__(__self__, args: SubnetArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron subnet resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="tf_test_network", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24") - ``` - - ## Import - - Subnets can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/subnet:Subnet subnet_1 da4faf16-5546-41e4-8330-4d0002b74048 - ``` - + Create a Subnet resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SubnetArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1046,58 +664,6 @@ def get(resource_name: str, :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[str]]] all_tags: The collection of ags assigned on the subnet, which have been - explicitly and implicitly added. - :param pulumi.Input[Sequence[pulumi.Input[Union['SubnetAllocationPoolArgs', 'SubnetAllocationPoolArgsDict']]]] allocation_pools: A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - :param pulumi.Input[str] cidr: CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - :param pulumi.Input[str] description: Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_nameservers: An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - :param pulumi.Input[bool] dns_publish_fixed_ip: Whether to publish DNS records for IPs - from this subnet. Defaults is false. - :param pulumi.Input[bool] enable_dhcp: The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - :param pulumi.Input[str] gateway_ip: Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - :param pulumi.Input[int] ip_version: IP version, either 4 (default) or 6. Changing this creates a - new subnet. - :param pulumi.Input[str] ipv6_address_mode: The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] ipv6_ra_mode: The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - :param pulumi.Input[str] name: The name of the subnet. Changing this updates the name of - the existing subnet. - :param pulumi.Input[str] network_id: The UUID of the parent network. Changing this - creates a new subnet. - :param pulumi.Input[bool] no_gateway: Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - :param pulumi.Input[int] prefix_length: The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] service_types: An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - :param pulumi.Input[str] subnetpool_id: The ID of the subnetpool associated with the subnet. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnet. - :param pulumi.Input[str] tenant_id: The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1129,199 +695,105 @@ def get(resource_name: str, @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of ags assigned on the subnet, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="allocationPools") def allocation_pools(self) -> pulumi.Output[Sequence['outputs.SubnetAllocationPool']]: - """ - A block declaring the start and end range of - the IP addresses available for use with DHCP in this subnet. Multiple - `allocation_pool` blocks can be declared, providing the subnet with more - than one range of IP addresses to use with DHCP. However, each IP range - must be from the same CIDR that the subnet is part of. - The `allocation_pool` block is documented below. - """ return pulumi.get(self, "allocation_pools") @property @pulumi.getter def cidr(self) -> pulumi.Output[str]: - """ - CIDR representing IP range for this subnet, based on IP - version. You can omit this option if you are creating a subnet from a - subnet pool. - """ return pulumi.get(self, "cidr") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description of the subnet. Changing this - updates the name of the existing subnet. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="dnsNameservers") def dns_nameservers(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - An array of DNS name server names used by hosts - in this subnet. Changing this updates the DNS name servers for the existing - subnet. - """ return pulumi.get(self, "dns_nameservers") @property @pulumi.getter(name="dnsPublishFixedIp") def dns_publish_fixed_ip(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to publish DNS records for IPs - from this subnet. Defaults is false. - """ return pulumi.get(self, "dns_publish_fixed_ip") @property @pulumi.getter(name="enableDhcp") def enable_dhcp(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the network. - Acceptable values are "true" and "false". Changing this value enables or - disables the DHCP capabilities of the existing subnet. Defaults to true. - """ return pulumi.get(self, "enable_dhcp") @property @pulumi.getter(name="gatewayIp") def gateway_ip(self) -> pulumi.Output[str]: - """ - Default gateway used by devices in this subnet. - Leaving this blank and not setting `no_gateway` will cause a default - gateway of `.1` to be used. Changing this updates the gateway IP of the - existing subnet. - """ return pulumi.get(self, "gateway_ip") @property @pulumi.getter(name="ipVersion") def ip_version(self) -> pulumi.Output[Optional[int]]: - """ - IP version, either 4 (default) or 6. Changing this creates a - new subnet. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter(name="ipv6AddressMode") def ipv6_address_mode(self) -> pulumi.Output[str]: - """ - The IPv6 address mode. Valid values are - `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_address_mode") @property @pulumi.getter(name="ipv6RaMode") def ipv6_ra_mode(self) -> pulumi.Output[str]: - """ - The IPv6 Router Advertisement mode. Valid values - are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`. - """ return pulumi.get(self, "ipv6_ra_mode") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the subnet. Changing this updates the name of - the existing subnet. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkId") def network_id(self) -> pulumi.Output[str]: - """ - The UUID of the parent network. Changing this - creates a new subnet. - """ return pulumi.get(self, "network_id") @property @pulumi.getter(name="noGateway") def no_gateway(self) -> pulumi.Output[Optional[bool]]: - """ - Do not set a gateway IP on this subnet. Changing - this removes or adds a default gateway IP of the existing subnet. - """ return pulumi.get(self, "no_gateway") @property @pulumi.getter(name="prefixLength") def prefix_length(self) -> pulumi.Output[Optional[int]]: - """ - The prefix length to use when creating a subnet - from a subnet pool. The default subnet pool prefix length that was defined - when creating the subnet pool will be used if not provided. Changing this - creates a new subnet. - """ return pulumi.get(self, "prefix_length") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnet. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="serviceTypes") def service_types(self) -> pulumi.Output[Sequence[str]]: - """ - An array of service types used by the subnet. - Changing this updates the service types for the existing subnet. - """ return pulumi.get(self, "service_types") @property @pulumi.getter(name="subnetpoolId") def subnetpool_id(self) -> pulumi.Output[Optional[str]]: - """ - The ID of the subnetpool associated with the subnet. - """ return pulumi.get(self, "subnetpool_id") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the subnet. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the subnet. Required if admin wants to - create a subnet for another tenant. Changing this creates a new subnet. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/subnet_pool.py b/sdk/python/pulumi_openstack/networking/subnet_pool.py index 31ae25362..06a31146f 100644 --- a/sdk/python/pulumi_openstack/networking/subnet_pool.py +++ b/sdk/python/pulumi_openstack/networking/subnet_pool.py @@ -31,47 +31,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a SubnetPool resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - :param pulumi.Input[str] address_scope_id: The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - :param pulumi.Input[int] default_prefixlen: The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - :param pulumi.Input[int] default_quota: The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - :param pulumi.Input[str] description: The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - :param pulumi.Input[int] ip_version: The IP protocol version. - :param pulumi.Input[bool] is_default: Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - :param pulumi.Input[int] max_prefixlen: The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - :param pulumi.Input[int] min_prefixlen: The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - :param pulumi.Input[str] name: The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - :param pulumi.Input[str] project_id: The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - :param pulumi.Input[bool] shared: Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnetpool. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "prefixes", prefixes) if address_scope_id is not None: @@ -106,13 +65,6 @@ def __init__(__self__, *, @property @pulumi.getter def prefixes(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - """ return pulumi.get(self, "prefixes") @prefixes.setter @@ -122,11 +74,6 @@ def prefixes(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @property @pulumi.getter(name="addressScopeId") def address_scope_id(self) -> Optional[pulumi.Input[str]]: - """ - The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - """ return pulumi.get(self, "address_scope_id") @address_scope_id.setter @@ -136,12 +83,6 @@ def address_scope_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="defaultPrefixlen") def default_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "default_prefixlen") @default_prefixlen.setter @@ -151,11 +92,6 @@ def default_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="defaultQuota") def default_quota(self) -> Optional[pulumi.Input[int]]: - """ - The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - """ return pulumi.get(self, "default_quota") @default_quota.setter @@ -165,10 +101,6 @@ def default_quota(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - """ return pulumi.get(self, "description") @description.setter @@ -178,9 +110,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - The IP protocol version. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -190,11 +119,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="isDefault") def is_default(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - """ return pulumi.get(self, "is_default") @is_default.setter @@ -204,12 +128,6 @@ def is_default(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="maxPrefixlen") def max_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "max_prefixlen") @max_prefixlen.setter @@ -219,11 +137,6 @@ def max_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="minPrefixlen") def min_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - """ return pulumi.get(self, "min_prefixlen") @min_prefixlen.setter @@ -233,10 +146,6 @@ def min_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - """ return pulumi.get(self, "name") @name.setter @@ -246,10 +155,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -259,12 +164,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - """ return pulumi.get(self, "region") @region.setter @@ -274,11 +173,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - """ return pulumi.get(self, "shared") @shared.setter @@ -288,9 +182,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the subnetpool. - """ return pulumi.get(self, "tags") @tags.setter @@ -300,9 +191,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -334,52 +222,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering SubnetPool resources. - :param pulumi.Input[str] address_scope_id: The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the subnetpool, which have been - explicitly and implicitly added. - :param pulumi.Input[str] created_at: The time at which subnetpool was created. - :param pulumi.Input[int] default_prefixlen: The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - :param pulumi.Input[int] default_quota: The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - :param pulumi.Input[str] description: The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - :param pulumi.Input[int] ip_version: The IP protocol version. - :param pulumi.Input[bool] is_default: Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - :param pulumi.Input[int] max_prefixlen: The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - :param pulumi.Input[int] min_prefixlen: The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - :param pulumi.Input[str] name: The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - :param pulumi.Input[str] project_id: The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - :param pulumi.Input[int] revision_number: The revision number of the subnetpool. - :param pulumi.Input[bool] shared: Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnetpool. - :param pulumi.Input[str] updated_at: The time at which subnetpool was created. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if address_scope_id is not None: pulumi.set(__self__, "address_scope_id", address_scope_id) @@ -423,11 +265,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="addressScopeId") def address_scope_id(self) -> Optional[pulumi.Input[str]]: - """ - The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - """ return pulumi.get(self, "address_scope_id") @address_scope_id.setter @@ -437,10 +274,6 @@ def address_scope_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the subnetpool, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -450,9 +283,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[str]]: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "created_at") @created_at.setter @@ -462,12 +292,6 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="defaultPrefixlen") def default_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "default_prefixlen") @default_prefixlen.setter @@ -477,11 +301,6 @@ def default_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="defaultQuota") def default_quota(self) -> Optional[pulumi.Input[int]]: - """ - The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - """ return pulumi.get(self, "default_quota") @default_quota.setter @@ -491,10 +310,6 @@ def default_quota(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - """ return pulumi.get(self, "description") @description.setter @@ -504,9 +319,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - The IP protocol version. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -516,11 +328,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="isDefault") def is_default(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - """ return pulumi.get(self, "is_default") @is_default.setter @@ -530,12 +337,6 @@ def is_default(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="maxPrefixlen") def max_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "max_prefixlen") @max_prefixlen.setter @@ -545,11 +346,6 @@ def max_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="minPrefixlen") def min_prefixlen(self) -> Optional[pulumi.Input[int]]: - """ - The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - """ return pulumi.get(self, "min_prefixlen") @min_prefixlen.setter @@ -559,10 +355,6 @@ def min_prefixlen(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - """ return pulumi.get(self, "name") @name.setter @@ -572,13 +364,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def prefixes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - """ return pulumi.get(self, "prefixes") @prefixes.setter @@ -588,10 +373,6 @@ def prefixes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -601,12 +382,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - """ return pulumi.get(self, "region") @region.setter @@ -616,9 +391,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> Optional[pulumi.Input[int]]: - """ - The revision number of the subnetpool. - """ return pulumi.get(self, "revision_number") @revision_number.setter @@ -628,11 +400,6 @@ def revision_number(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def shared(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - """ return pulumi.get(self, "shared") @shared.setter @@ -642,9 +409,6 @@ def shared(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the subnetpool. - """ return pulumi.get(self, "tags") @tags.setter @@ -654,9 +418,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="updatedAt") def updated_at(self) -> Optional[pulumi.Input[str]]: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "updated_at") @updated_at.setter @@ -666,9 +427,6 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -698,95 +456,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron subnetpool resource within OpenStack. - - ## Example Usage - - ### Create a Subnet Pool - - ```python - import pulumi - import pulumi_openstack as openstack - - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - ip_version=6, - prefixes=[ - "fdf7:b13d:dead:beef::/64", - "fd65:86cc:a334:39b7::/64", - ]) - ``` - - ### Create a Subnet from a Subnet Pool - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - prefixes=["10.11.12.0/24"]) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="10.11.12.0/25", - network_id=network1.id, - subnetpool_id=subnetpool1.id) - ``` - - ## Import - - Subnetpools can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/subnetPool:SubnetPool subnetpool_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a SubnetPool resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] address_scope_id: The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - :param pulumi.Input[int] default_prefixlen: The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - :param pulumi.Input[int] default_quota: The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - :param pulumi.Input[str] description: The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - :param pulumi.Input[int] ip_version: The IP protocol version. - :param pulumi.Input[bool] is_default: Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - :param pulumi.Input[int] max_prefixlen: The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - :param pulumi.Input[int] min_prefixlen: The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - :param pulumi.Input[str] name: The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - :param pulumi.Input[str] project_id: The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - :param pulumi.Input[bool] shared: Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnetpool. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -795,52 +467,7 @@ def __init__(__self__, args: SubnetPoolArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron subnetpool resource within OpenStack. - - ## Example Usage - - ### Create a Subnet Pool - - ```python - import pulumi - import pulumi_openstack as openstack - - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - ip_version=6, - prefixes=[ - "fdf7:b13d:dead:beef::/64", - "fd65:86cc:a334:39b7::/64", - ]) - ``` - - ### Create a Subnet from a Subnet Pool - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnetpool1 = openstack.networking.SubnetPool("subnetpool_1", - name="subnetpool_1", - prefixes=["10.11.12.0/24"]) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="10.11.12.0/25", - network_id=network1.id, - subnetpool_id=subnetpool1.id) - ``` - - ## Import - - Subnetpools can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:networking/subnetPool:SubnetPool subnetpool_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a SubnetPool resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SubnetPoolArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -937,52 +564,6 @@ def get(resource_name: str, :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] address_scope_id: The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the subnetpool, which have been - explicitly and implicitly added. - :param pulumi.Input[str] created_at: The time at which subnetpool was created. - :param pulumi.Input[int] default_prefixlen: The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - :param pulumi.Input[int] default_quota: The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - :param pulumi.Input[str] description: The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - :param pulumi.Input[int] ip_version: The IP protocol version. - :param pulumi.Input[bool] is_default: Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - :param pulumi.Input[int] max_prefixlen: The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - :param pulumi.Input[int] min_prefixlen: The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - :param pulumi.Input[str] name: The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - :param pulumi.Input[str] project_id: The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - :param pulumi.Input[int] revision_number: The revision number of the subnetpool. - :param pulumi.Input[bool] shared: Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the subnetpool. - :param pulumi.Input[str] updated_at: The time at which subnetpool was created. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1012,179 +593,95 @@ def get(resource_name: str, @property @pulumi.getter(name="addressScopeId") def address_scope_id(self) -> pulumi.Output[Optional[str]]: - """ - The Neutron address scope to assign to the - subnetpool. Changing this updates the address scope id of the existing - subnetpool. - """ return pulumi.get(self, "address_scope_id") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the subnetpool, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[str]: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "created_at") @property @pulumi.getter(name="defaultPrefixlen") def default_prefixlen(self) -> pulumi.Output[int]: - """ - The size of the prefix to allocate when the cidr - or prefixlen attributes are omitted when you create the subnet. Defaults to the - MinPrefixLen. Changing this updates the default prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "default_prefixlen") @property @pulumi.getter(name="defaultQuota") def default_quota(self) -> pulumi.Output[Optional[int]]: - """ - The per-project quota on the prefix space that can be - allocated from the subnetpool for project subnets. Changing this updates the - default quota of the existing subnetpool. - """ return pulumi.get(self, "default_quota") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the subnetpool. - Changing this updates the description of the existing subnetpool. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="ipVersion") def ip_version(self) -> pulumi.Output[int]: - """ - The IP protocol version. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter(name="isDefault") def is_default(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether the subnetpool is default - subnetpool or not. Changing this updates the default status of the existing - subnetpool. - """ return pulumi.get(self, "is_default") @property @pulumi.getter(name="maxPrefixlen") def max_prefixlen(self) -> pulumi.Output[int]: - """ - The maximum prefix size that can be allocated from - the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, - default is 128. Changing this updates the max prefixlen of the existing - subnetpool. - """ return pulumi.get(self, "max_prefixlen") @property @pulumi.getter(name="minPrefixlen") def min_prefixlen(self) -> pulumi.Output[int]: - """ - The smallest prefix that can be allocated from a - subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default - is 64. Changing this updates the min prefixlen of the existing subnetpool. - """ return pulumi.get(self, "min_prefixlen") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the subnetpool. Changing this updates the name of - the existing subnetpool. - """ return pulumi.get(self, "name") @property @pulumi.getter def prefixes(self) -> pulumi.Output[Sequence[str]]: - """ - A list of subnet prefixes to assign to the subnetpool. - Neutron API merges adjacent prefixes and treats them as a single prefix. Each - subnet prefix must be unique among all subnet prefixes in all subnetpools that - are associated with the address scope. Changing this updates the prefixes list - of the existing subnetpool. - """ return pulumi.get(self, "prefixes") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the subnetpool. Required if admin wants to - create a subnetpool for another project. Changing this creates a new subnetpool. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a Neutron subnetpool. If omitted, the - `region` argument of the provider is used. Changing this creates a new - subnetpool. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="revisionNumber") def revision_number(self) -> pulumi.Output[int]: - """ - The revision number of the subnetpool. - """ return pulumi.get(self, "revision_number") @property @pulumi.getter def shared(self) -> pulumi.Output[Optional[bool]]: - """ - Indicates whether this subnetpool is shared across - all projects. Changing this updates the shared status of the existing - subnetpool. - """ return pulumi.get(self, "shared") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the subnetpool. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="updatedAt") def updated_at(self) -> pulumi.Output[str]: - """ - The time at which subnetpool was created. - """ return pulumi.get(self, "updated_at") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/networking/subnet_route.py b/sdk/python/pulumi_openstack/networking/subnet_route.py index 95c009b7b..11715aa33 100644 --- a/sdk/python/pulumi_openstack/networking/subnet_route.py +++ b/sdk/python/pulumi_openstack/networking/subnet_route.py @@ -20,16 +20,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a SubnetRoute resource. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] subnet_id: ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. """ pulumi.set(__self__, "destination_cidr", destination_cidr) pulumi.set(__self__, "next_hop", next_hop) @@ -40,10 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> pulumi.Input[str]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @destination_cidr.setter @@ -53,10 +39,6 @@ def destination_cidr(self, value: pulumi.Input[str]): @property @pulumi.getter(name="nextHop") def next_hop(self) -> pulumi.Input[str]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @next_hop.setter @@ -66,10 +48,6 @@ def next_hop(self, value: pulumi.Input[str]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Input[str]: - """ - ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -79,12 +57,6 @@ def subnet_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -101,16 +73,6 @@ def __init__(__self__, *, subnet_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SubnetRoute resources. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] subnet_id: ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. """ if destination_cidr is not None: pulumi.set(__self__, "destination_cidr", destination_cidr) @@ -124,10 +86,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> Optional[pulumi.Input[str]]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @destination_cidr.setter @@ -137,10 +95,6 @@ def destination_cidr(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="nextHop") def next_hop(self) -> Optional[pulumi.Input[str]]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @next_hop.setter @@ -150,12 +104,6 @@ def next_hop(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @region.setter @@ -165,10 +113,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -187,50 +131,9 @@ def __init__(__self__, subnet_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Creates a routing entry on a OpenStack V2 subnet. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="router_1", - admin_state_up=True) - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - subnet_route1 = openstack.networking.SubnetRoute("subnet_route_1", - subnet_id=subnet1.id, - destination_cidr="10.0.1.0/24", - next_hop="192.168.199.254") - ``` - - ## Import - - Routing entries can be imported using a combined ID using the following format: `-route--` - - ```sh - $ pulumi import openstack:networking/subnetRoute:SubnetRoute subnet_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 - ``` - + Create a SubnetRoute resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] subnet_id: ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. """ ... @overload @@ -239,38 +142,7 @@ def __init__(__self__, args: SubnetRouteArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Creates a routing entry on a OpenStack V2 subnet. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - router1 = openstack.networking.Router("router_1", - name="router_1", - admin_state_up=True) - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - network_id=network1.id, - cidr="192.168.199.0/24", - ip_version=4) - subnet_route1 = openstack.networking.SubnetRoute("subnet_route_1", - subnet_id=subnet1.id, - destination_cidr="10.0.1.0/24", - next_hop="192.168.199.254") - ``` - - ## Import - - Routing entries can be imported using a combined ID using the following format: `-route--` - - ```sh - $ pulumi import openstack:networking/subnetRoute:SubnetRoute subnet_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 - ``` - + Create a SubnetRoute resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SubnetRouteArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -330,16 +202,6 @@ def get(resource_name: str, :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] destination_cidr: CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - :param pulumi.Input[str] next_hop: IP address of the next hop gateway. Changing - this creates a new routing entry. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - :param pulumi.Input[str] subnet_id: ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -354,38 +216,20 @@ def get(resource_name: str, @property @pulumi.getter(name="destinationCidr") def destination_cidr(self) -> pulumi.Output[str]: - """ - CIDR block to match on the packet’s destination IP. Changing - this creates a new routing entry. - """ return pulumi.get(self, "destination_cidr") @property @pulumi.getter(name="nextHop") def next_hop(self) -> pulumi.Output[str]: - """ - IP address of the next hop gateway. Changing - this creates a new routing entry. - """ return pulumi.get(self, "next_hop") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to configure a routing entry on a subnet. If omitted, the - `region` argument of the provider is used. Changing this creates a new - routing entry. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Output[str]: - """ - ID of the subnet this routing entry belongs to. Changing - this creates a new routing entry. - """ return pulumi.get(self, "subnet_id") diff --git a/sdk/python/pulumi_openstack/networking/trunk.py b/sdk/python/pulumi_openstack/networking/trunk.py index 9cc6aeeb8..ce2abf0e8 100644 --- a/sdk/python/pulumi_openstack/networking/trunk.py +++ b/sdk/python/pulumi_openstack/networking/trunk.py @@ -26,25 +26,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Trunk resource. - :param pulumi.Input[str] port_id: The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - :param pulumi.Input[str] description: Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - :param pulumi.Input[str] name: A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - :param pulumi.Input[Sequence[pulumi.Input['TrunkSubPortArgs']]] sub_ports: The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. """ pulumi.set(__self__, "port_id", port_id) if admin_state_up is not None: @@ -65,11 +46,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Input[str]: - """ - The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -79,11 +55,6 @@ def port_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -93,10 +64,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - """ return pulumi.get(self, "description") @description.setter @@ -106,10 +73,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - """ return pulumi.get(self, "name") @name.setter @@ -119,12 +82,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - """ return pulumi.get(self, "region") @region.setter @@ -134,10 +91,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subPorts") def sub_ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TrunkSubPortArgs']]]]: - """ - The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - """ return pulumi.get(self, "sub_ports") @sub_ports.setter @@ -147,9 +100,6 @@ def sub_ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TrunkSub @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @tags.setter @@ -159,10 +109,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -184,27 +130,6 @@ def __init__(__self__, *, tenant_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Trunk resources. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the trunk, which have been - explicitly and implicitly added. - :param pulumi.Input[str] description: Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - :param pulumi.Input[str] name: A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - :param pulumi.Input[str] port_id: The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - :param pulumi.Input[Sequence[pulumi.Input['TrunkSubPortArgs']]] sub_ports: The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -228,11 +153,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -242,10 +162,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="allTags") def all_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The collection of tags assigned on the trunk, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @all_tags.setter @@ -255,10 +171,6 @@ def all_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - """ return pulumi.get(self, "description") @description.setter @@ -268,10 +180,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - """ return pulumi.get(self, "name") @name.setter @@ -281,11 +189,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="portId") def port_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - """ return pulumi.get(self, "port_id") @port_id.setter @@ -295,12 +198,6 @@ def port_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - """ return pulumi.get(self, "region") @region.setter @@ -310,10 +207,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subPorts") def sub_ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TrunkSubPortArgs']]]]: - """ - The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - """ return pulumi.get(self, "sub_ports") @sub_ports.setter @@ -323,9 +216,6 @@ def sub_ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TrunkSub @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @tags.setter @@ -335,10 +225,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -361,72 +247,9 @@ def __init__(__self__, tenant_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a networking V2 trunk resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.1.0/24", - ip_version=4, - enable_dhcp=True, - no_gateway=True) - parent_port1 = openstack.networking.Port("parent_port_1", - name="parent_port_1", - network_id=network1.id, - admin_state_up=True, - opts = pulumi.ResourceOptions(depends_on=[subnet1])) - subport1 = openstack.networking.Port("subport_1", - name="subport_1", - network_id=network1.id, - admin_state_up=True, - opts = pulumi.ResourceOptions(depends_on=[subnet1])) - trunk1 = openstack.networking.Trunk("trunk_1", - name="trunk_1", - admin_state_up=True, - port_id=parent_port1.id, - sub_ports=[{ - "port_id": subport1.id, - "segmentation_id": 1, - "segmentation_type": "vlan", - }]) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"], - networks=[{ - "port": trunk1.port_id, - }]) - ``` - + Create a Trunk resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - :param pulumi.Input[str] description: Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - :param pulumi.Input[str] name: A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - :param pulumi.Input[str] port_id: The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - :param pulumi.Input[Sequence[pulumi.Input[Union['TrunkSubPortArgs', 'TrunkSubPortArgsDict']]]] sub_ports: The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. """ ... @overload @@ -435,51 +258,7 @@ def __init__(__self__, args: TrunkArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a networking V2 trunk resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - network_id=network1.id, - cidr="192.168.1.0/24", - ip_version=4, - enable_dhcp=True, - no_gateway=True) - parent_port1 = openstack.networking.Port("parent_port_1", - name="parent_port_1", - network_id=network1.id, - admin_state_up=True, - opts = pulumi.ResourceOptions(depends_on=[subnet1])) - subport1 = openstack.networking.Port("subport_1", - name="subport_1", - network_id=network1.id, - admin_state_up=True, - opts = pulumi.ResourceOptions(depends_on=[subnet1])) - trunk1 = openstack.networking.Trunk("trunk_1", - name="trunk_1", - admin_state_up=True, - port_id=parent_port1.id, - sub_ports=[{ - "port_id": subport1.id, - "segmentation_id": 1, - "segmentation_type": "vlan", - }]) - instance1 = openstack.compute.Instance("instance_1", - name="instance_1", - security_groups=["default"], - networks=[{ - "port": trunk1.port_id, - }]) - ``` - + Create a Trunk resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param TrunkArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -549,27 +328,6 @@ def get(resource_name: str, :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[bool] admin_state_up: Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - :param pulumi.Input[Sequence[pulumi.Input[str]]] all_tags: The collection of tags assigned on the trunk, which have been - explicitly and implicitly added. - :param pulumi.Input[str] description: Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - :param pulumi.Input[str] name: A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - :param pulumi.Input[str] port_id: The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - :param pulumi.Input[str] region: The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - :param pulumi.Input[Sequence[pulumi.Input[Union['TrunkSubPortArgs', 'TrunkSubPortArgsDict']]]] sub_ports: The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A set of string tags for the port. - :param pulumi.Input[str] tenant_id: The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -589,84 +347,45 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - Administrative up/down status for the trunk - (must be "true" or "false" if provided). Changing this updates the - `admin_state_up` of an existing trunk. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter(name="allTags") def all_tags(self) -> pulumi.Output[Sequence[str]]: - """ - The collection of tags assigned on the trunk, which have been - explicitly and implicitly added. - """ return pulumi.get(self, "all_tags") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - Human-readable description of the trunk. Changing this - updates the name of the existing trunk. - """ return pulumi.get(self, "description") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the trunk. Changing this - updates the `name` of an existing trunk. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="portId") def port_id(self) -> pulumi.Output[str]: - """ - The ID of the port to be used as the parent port of the - trunk. This is the port that should be used as the compute instance network - port. Changing this creates a new trunk. - """ return pulumi.get(self, "port_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 networking client. - A networking client is needed to create a trunk. If omitted, the - `region` argument of the provider is used. Changing this creates a new - trunk. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="subPorts") def sub_ports(self) -> pulumi.Output[Optional[Sequence['outputs.TrunkSubPort']]]: - """ - The set of ports that will be made subports of the trunk. - The structure of each subport is described below. - """ return pulumi.get(self, "sub_ports") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - A set of string tags for the port. - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the Trunk. Required if admin wants - to create a trunk on behalf of another tenant. Changing this creates a new trunk. - """ return pulumi.get(self, "tenant_id") diff --git a/sdk/python/pulumi_openstack/objectstorage/_inputs.py b/sdk/python/pulumi_openstack/objectstorage/_inputs.py index c365678de..96a7b80a9 100644 --- a/sdk/python/pulumi_openstack/objectstorage/_inputs.py +++ b/sdk/python/pulumi_openstack/objectstorage/_inputs.py @@ -18,19 +18,12 @@ class ContainerVersioningLegacyArgs: def __init__(__self__, *, location: pulumi.Input[str], type: pulumi.Input[str]): - """ - :param pulumi.Input[str] location: Container in which versions will be stored. - :param pulumi.Input[str] type: Versioning type which can be `versions` or `history` according to [Openstack documentation](https://docs.openstack.org/swift/latest/api/object_versioning.html). - """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "type", type) @property @pulumi.getter def location(self) -> pulumi.Input[str]: - """ - Container in which versions will be stored. - """ return pulumi.get(self, "location") @location.setter @@ -40,9 +33,6 @@ def location(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - Versioning type which can be `versions` or `history` according to [Openstack documentation](https://docs.openstack.org/swift/latest/api/object_versioning.html). - """ return pulumi.get(self, "type") @type.setter diff --git a/sdk/python/pulumi_openstack/objectstorage/account_v1.py b/sdk/python/pulumi_openstack/objectstorage/account_v1.py index 0214a8627..220ebbbf3 100644 --- a/sdk/python/pulumi_openstack/objectstorage/account_v1.py +++ b/sdk/python/pulumi_openstack/objectstorage/account_v1.py @@ -19,14 +19,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a AccountV1 resource. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - :param pulumi.Input[str] project_id: The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - :param pulumi.Input[str] region: The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. """ if metadata is not None: pulumi.set(__self__, "metadata", metadata) @@ -38,11 +30,6 @@ def __init__(__self__, *, @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -52,10 +39,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -65,11 +48,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. - """ return pulumi.get(self, "region") @region.setter @@ -90,19 +68,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering AccountV1 resources. - :param pulumi.Input[int] bytes_used: The number of bytes used by the account. - :param pulumi.Input[int] container_count: The number of containers in the account. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] headers: A map of headers returned for the account. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - :param pulumi.Input[int] object_count: The number of objects in the account. - :param pulumi.Input[str] project_id: The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - :param pulumi.Input[int] quota_bytes: The number of bytes allowed for the account. - :param pulumi.Input[str] region: The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. """ if bytes_used is not None: pulumi.set(__self__, "bytes_used", bytes_used) @@ -124,9 +89,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="bytesUsed") def bytes_used(self) -> Optional[pulumi.Input[int]]: - """ - The number of bytes used by the account. - """ return pulumi.get(self, "bytes_used") @bytes_used.setter @@ -136,9 +98,6 @@ def bytes_used(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="containerCount") def container_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of containers in the account. - """ return pulumi.get(self, "container_count") @container_count.setter @@ -148,9 +107,6 @@ def container_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def headers(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of headers returned for the account. - """ return pulumi.get(self, "headers") @headers.setter @@ -160,11 +116,6 @@ def headers(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -174,9 +125,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter(name="objectCount") def object_count(self) -> Optional[pulumi.Input[int]]: - """ - The number of objects in the account. - """ return pulumi.get(self, "object_count") @object_count.setter @@ -186,10 +134,6 @@ def object_count(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -199,9 +143,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="quotaBytes") def quota_bytes(self) -> Optional[pulumi.Input[int]]: - """ - The number of bytes allowed for the account. - """ return pulumi.get(self, "quota_bytes") @quota_bytes.setter @@ -211,11 +152,6 @@ def quota_bytes(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. - """ return pulumi.get(self, "region") @region.setter @@ -233,40 +169,9 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 account resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - account1 = openstack.objectstorage.AccountV1("account_1", - region="RegionOne", - metadata={ - "Temp-Url-Key": "testkey", - "test": "true", - }) - ``` - - ## Import - - This resource can be imported by specifying the project ID of the account: - - ```sh - $ pulumi import openstack:objectstorage/accountV1:AccountV1 account_1 1202b3d0aaa44cfc8b79475c007b0711 - ``` - + Create a AccountV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - :param pulumi.Input[str] project_id: The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - :param pulumi.Input[str] region: The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. """ ... @overload @@ -275,30 +180,7 @@ def __init__(__self__, args: Optional[AccountV1Args] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 account resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - account1 = openstack.objectstorage.AccountV1("account_1", - region="RegionOne", - metadata={ - "Temp-Url-Key": "testkey", - "test": "true", - }) - ``` - - ## Import - - This resource can be imported by specifying the project ID of the account: - - ```sh - $ pulumi import openstack:objectstorage/accountV1:AccountV1 account_1 1202b3d0aaa44cfc8b79475c007b0711 - ``` - + Create a AccountV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param AccountV1Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -359,19 +241,6 @@ def get(resource_name: str, :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[int] bytes_used: The number of bytes used by the account. - :param pulumi.Input[int] container_count: The number of containers in the account. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] headers: A map of headers returned for the account. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - :param pulumi.Input[int] object_count: The number of objects in the account. - :param pulumi.Input[str] project_id: The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - :param pulumi.Input[int] quota_bytes: The number of bytes allowed for the account. - :param pulumi.Input[str] region: The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -390,69 +259,40 @@ def get(resource_name: str, @property @pulumi.getter(name="bytesUsed") def bytes_used(self) -> pulumi.Output[int]: - """ - The number of bytes used by the account. - """ return pulumi.get(self, "bytes_used") @property @pulumi.getter(name="containerCount") def container_count(self) -> pulumi.Output[int]: - """ - The number of containers in the account. - """ return pulumi.get(self, "container_count") @property @pulumi.getter def headers(self) -> pulumi.Output[Mapping[str, str]]: - """ - A map of headers returned for the account. - """ return pulumi.get(self, "headers") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - A map of custom key/value pairs to associate with the - account metadata. Changing the `Quota-Bytes` key value is allowed to be - updated only by the cloud administrator. - """ return pulumi.get(self, "metadata") @property @pulumi.getter(name="objectCount") def object_count(self) -> pulumi.Output[int]: - """ - The number of objects in the account. - """ return pulumi.get(self, "object_count") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The project ID of the corresponding account. If - omitted, the token's project ID is used. Changing this creates a new account. - """ return pulumi.get(self, "project_id") @property @pulumi.getter(name="quotaBytes") def quota_bytes(self) -> pulumi.Output[int]: - """ - The number of bytes allowed for the account. - """ return pulumi.get(self, "quota_bytes") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the account. If omitted, - the `region` argument of the provider is used. Changing this creates a new - account. - """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_openstack/objectstorage/container.py b/sdk/python/pulumi_openstack/objectstorage/container.py index 38add1efd..d9e6189f2 100644 --- a/sdk/python/pulumi_openstack/objectstorage/container.py +++ b/sdk/python/pulumi_openstack/objectstorage/container.py @@ -30,35 +30,6 @@ def __init__(__self__, *, versioning_legacy: Optional[pulumi.Input['ContainerVersioningLegacyArgs']] = None): """ The set of arguments for constructing a Container resource. - :param pulumi.Input[str] container_read: Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - :param pulumi.Input[str] container_sync_key: The secret key for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_sync_to: The destination for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_write: Sets an ACL that grants write access. - Changing this updates the access control list write access. - :param pulumi.Input[str] content_type: The MIME type for the container. Changing this - updates the MIME type. - :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - :param pulumi.Input[str] name: A unique name for the container. Changing this creates a - new container. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] storage_policy: The storage policy to be used for the container. - Changing this creates a new container. - :param pulumi.Input[bool] versioning: A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - :param pulumi.Input['ContainerVersioningLegacyArgs'] versioning_legacy: Enable legacy object versioning. The structure is described below. """ if container_read is not None: pulumi.set(__self__, "container_read", container_read) @@ -91,12 +62,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerRead") def container_read(self) -> Optional[pulumi.Input[str]]: - """ - Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - """ return pulumi.get(self, "container_read") @container_read.setter @@ -106,10 +71,6 @@ def container_read(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerSyncKey") def container_sync_key(self) -> Optional[pulumi.Input[str]]: - """ - The secret key for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_key") @container_sync_key.setter @@ -119,10 +80,6 @@ def container_sync_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerSyncTo") def container_sync_to(self) -> Optional[pulumi.Input[str]]: - """ - The destination for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_to") @container_sync_to.setter @@ -132,10 +89,6 @@ def container_sync_to(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerWrite") def container_write(self) -> Optional[pulumi.Input[str]]: - """ - Sets an ACL that grants write access. - Changing this updates the access control list write access. - """ return pulumi.get(self, "container_write") @container_write.setter @@ -145,10 +98,6 @@ def container_write(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentType") def content_type(self) -> Optional[pulumi.Input[str]]: - """ - The MIME type for the container. Changing this - updates the MIME type. - """ return pulumi.get(self, "content_type") @content_type.setter @@ -158,9 +107,6 @@ def content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - """ return pulumi.get(self, "force_destroy") @force_destroy.setter @@ -170,10 +116,6 @@ def force_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -183,10 +125,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the container. Changing this creates a - new container. - """ return pulumi.get(self, "name") @name.setter @@ -196,11 +134,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @region.setter @@ -210,10 +143,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="storagePolicy") def storage_policy(self) -> Optional[pulumi.Input[str]]: - """ - The storage policy to be used for the container. - Changing this creates a new container. - """ return pulumi.get(self, "storage_policy") @storage_policy.setter @@ -223,14 +152,6 @@ def storage_policy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def versioning(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - """ return pulumi.get(self, "versioning") @versioning.setter @@ -241,9 +162,6 @@ def versioning(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="versioningLegacy") @_utilities.deprecated("""Use newer \"versioning\" implementation""") def versioning_legacy(self) -> Optional[pulumi.Input['ContainerVersioningLegacyArgs']]: - """ - Enable legacy object versioning. The structure is described below. - """ return pulumi.get(self, "versioning_legacy") @versioning_legacy.setter @@ -268,35 +186,6 @@ def __init__(__self__, *, versioning_legacy: Optional[pulumi.Input['ContainerVersioningLegacyArgs']] = None): """ Input properties used for looking up and filtering Container resources. - :param pulumi.Input[str] container_read: Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - :param pulumi.Input[str] container_sync_key: The secret key for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_sync_to: The destination for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_write: Sets an ACL that grants write access. - Changing this updates the access control list write access. - :param pulumi.Input[str] content_type: The MIME type for the container. Changing this - updates the MIME type. - :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - :param pulumi.Input[str] name: A unique name for the container. Changing this creates a - new container. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] storage_policy: The storage policy to be used for the container. - Changing this creates a new container. - :param pulumi.Input[bool] versioning: A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - :param pulumi.Input['ContainerVersioningLegacyArgs'] versioning_legacy: Enable legacy object versioning. The structure is described below. """ if container_read is not None: pulumi.set(__self__, "container_read", container_read) @@ -329,12 +218,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerRead") def container_read(self) -> Optional[pulumi.Input[str]]: - """ - Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - """ return pulumi.get(self, "container_read") @container_read.setter @@ -344,10 +227,6 @@ def container_read(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerSyncKey") def container_sync_key(self) -> Optional[pulumi.Input[str]]: - """ - The secret key for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_key") @container_sync_key.setter @@ -357,10 +236,6 @@ def container_sync_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerSyncTo") def container_sync_to(self) -> Optional[pulumi.Input[str]]: - """ - The destination for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_to") @container_sync_to.setter @@ -370,10 +245,6 @@ def container_sync_to(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="containerWrite") def container_write(self) -> Optional[pulumi.Input[str]]: - """ - Sets an ACL that grants write access. - Changing this updates the access control list write access. - """ return pulumi.get(self, "container_write") @container_write.setter @@ -383,10 +254,6 @@ def container_write(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentType") def content_type(self) -> Optional[pulumi.Input[str]]: - """ - The MIME type for the container. Changing this - updates the MIME type. - """ return pulumi.get(self, "content_type") @content_type.setter @@ -396,9 +263,6 @@ def content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - """ return pulumi.get(self, "force_destroy") @force_destroy.setter @@ -408,10 +272,6 @@ def force_destroy(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -421,10 +281,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the container. Changing this creates a - new container. - """ return pulumi.get(self, "name") @name.setter @@ -434,11 +290,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @region.setter @@ -448,10 +299,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="storagePolicy") def storage_policy(self) -> Optional[pulumi.Input[str]]: - """ - The storage policy to be used for the container. - Changing this creates a new container. - """ return pulumi.get(self, "storage_policy") @storage_policy.setter @@ -461,14 +308,6 @@ def storage_policy(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def versioning(self) -> Optional[pulumi.Input[bool]]: - """ - A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - """ return pulumi.get(self, "versioning") @versioning.setter @@ -479,9 +318,6 @@ def versioning(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="versioningLegacy") @_utilities.deprecated("""Use newer \"versioning\" implementation""") def versioning_legacy(self) -> Optional[pulumi.Input['ContainerVersioningLegacyArgs']]: - """ - Enable legacy object versioning. The structure is described below. - """ return pulumi.get(self, "versioning_legacy") @versioning_legacy.setter @@ -508,134 +344,9 @@ def __init__(__self__, versioning_legacy: Optional[pulumi.Input[Union['ContainerVersioningLegacyArgs', 'ContainerVersioningLegacyArgsDict']]] = None, __props__=None): """ - Manages a V1 container resource within OpenStack. - - ## Example Usage - - ### Basic Container - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - metadata={ - "test": "true", - }, - content_type="application/json", - versioning=True) - ``` - - ### Basic Container with legacy versioning - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - metadata={ - "test": "true", - }, - content_type="application/json", - versioning_legacy={ - "type": "versions", - "location": "tf-test-container-versions", - }) - ``` - - ### Global Read Access - - ```python - import pulumi - import pulumi_openstack as openstack - - # Requires that a user know the object name they are attempting to download - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=".r:*") - ``` - - ### Global Read and List Access - - ```python - import pulumi - import pulumi_openstack as openstack - - # Any user can read any object, and list all objects in the container - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=".r:*,.rlistings") - ``` - - ### Write-Only Access for a User - - ```python - import pulumi - import pulumi_openstack as openstack - - current = openstack.identity.get_auth_scope(name="current") - # The named user can only upload objects, not read objects or list the container - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=f".r:-{username}", - container_write=f"{current.project_id}:{username}") - ``` - - ## Import - - This resource can be imported by specifying the name of the container: - - Some attributes can't be imported : - * `force_destroy` - * `content_type` - * `metadata` - * `container_sync_to` - * `container_sync_key` - - So you'll have to `pulumi preview` and `pulumi up` after the import to fix those missing attributes. - - ```sh - $ pulumi import openstack:objectstorage/container:Container container_1 container_name - ``` - + Create a Container resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] container_read: Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - :param pulumi.Input[str] container_sync_key: The secret key for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_sync_to: The destination for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_write: Sets an ACL that grants write access. - Changing this updates the access control list write access. - :param pulumi.Input[str] content_type: The MIME type for the container. Changing this - updates the MIME type. - :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - :param pulumi.Input[str] name: A unique name for the container. Changing this creates a - new container. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] storage_policy: The storage policy to be used for the container. - Changing this creates a new container. - :param pulumi.Input[bool] versioning: A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - :param pulumi.Input[Union['ContainerVersioningLegacyArgs', 'ContainerVersioningLegacyArgsDict']] versioning_legacy: Enable legacy object versioning. The structure is described below. """ ... @overload @@ -644,103 +355,7 @@ def __init__(__self__, args: Optional[ContainerArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 container resource within OpenStack. - - ## Example Usage - - ### Basic Container - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - metadata={ - "test": "true", - }, - content_type="application/json", - versioning=True) - ``` - - ### Basic Container with legacy versioning - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - metadata={ - "test": "true", - }, - content_type="application/json", - versioning_legacy={ - "type": "versions", - "location": "tf-test-container-versions", - }) - ``` - - ### Global Read Access - - ```python - import pulumi - import pulumi_openstack as openstack - - # Requires that a user know the object name they are attempting to download - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=".r:*") - ``` - - ### Global Read and List Access - - ```python - import pulumi - import pulumi_openstack as openstack - - # Any user can read any object, and list all objects in the container - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=".r:*,.rlistings") - ``` - - ### Write-Only Access for a User - - ```python - import pulumi - import pulumi_openstack as openstack - - current = openstack.identity.get_auth_scope(name="current") - # The named user can only upload objects, not read objects or list the container - container1 = openstack.objectstorage.Container("container_1", - region="RegionOne", - name="tf-test-container-1", - container_read=f".r:-{username}", - container_write=f"{current.project_id}:{username}") - ``` - - ## Import - - This resource can be imported by specifying the name of the container: - - Some attributes can't be imported : - * `force_destroy` - * `content_type` - * `metadata` - * `container_sync_to` - * `container_sync_key` - - So you'll have to `pulumi preview` and `pulumi up` after the import to fix those missing attributes. - - ```sh - $ pulumi import openstack:objectstorage/container:Container container_1 container_name - ``` - + Create a Container resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ContainerArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -818,35 +433,6 @@ def get(resource_name: str, :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] container_read: Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - :param pulumi.Input[str] container_sync_key: The secret key for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_sync_to: The destination for container synchronization. - Changing this updates container synchronization. - :param pulumi.Input[str] container_write: Sets an ACL that grants write access. - Changing this updates the access control list write access. - :param pulumi.Input[str] content_type: The MIME type for the container. Changing this - updates the MIME type. - :param pulumi.Input[bool] force_destroy: A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - :param pulumi.Input[str] name: A unique name for the container. Changing this creates a - new container. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] storage_policy: The storage policy to be used for the container. - Changing this creates a new container. - :param pulumi.Input[bool] versioning: A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - :param pulumi.Input[Union['ContainerVersioningLegacyArgs', 'ContainerVersioningLegacyArgsDict']] versioning_legacy: Enable legacy object versioning. The structure is described below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -869,114 +455,61 @@ def get(resource_name: str, @property @pulumi.getter(name="containerRead") def container_read(self) -> pulumi.Output[Optional[str]]: - """ - Sets an access control list (ACL) that grants - read access. This header can contain a comma-delimited list of users that - can read the container (allows the GET method for all objects in the - container). Changing this updates the access control list read access. - """ return pulumi.get(self, "container_read") @property @pulumi.getter(name="containerSyncKey") def container_sync_key(self) -> pulumi.Output[Optional[str]]: - """ - The secret key for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_key") @property @pulumi.getter(name="containerSyncTo") def container_sync_to(self) -> pulumi.Output[Optional[str]]: - """ - The destination for container synchronization. - Changing this updates container synchronization. - """ return pulumi.get(self, "container_sync_to") @property @pulumi.getter(name="containerWrite") def container_write(self) -> pulumi.Output[Optional[str]]: - """ - Sets an ACL that grants write access. - Changing this updates the access control list write access. - """ return pulumi.get(self, "container_write") @property @pulumi.getter(name="contentType") def content_type(self) -> pulumi.Output[Optional[str]]: - """ - The MIME type for the container. Changing this - updates the MIME type. - """ return pulumi.get(self, "content_type") @property @pulumi.getter(name="forceDestroy") def force_destroy(self) -> pulumi.Output[Optional[bool]]: - """ - A boolean that indicates all objects should be deleted from the container so that the container can be destroyed without error. These objects are not recoverable. - """ return pulumi.get(self, "force_destroy") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Custom key/value pairs to associate with the container. - Changing this updates the existing container metadata. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the container. Changing this creates a - new container. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="storagePolicy") def storage_policy(self) -> pulumi.Output[str]: - """ - The storage policy to be used for the container. - Changing this creates a new container. - """ return pulumi.get(self, "storage_policy") @property @pulumi.getter def versioning(self) -> pulumi.Output[Optional[bool]]: - """ - A boolean that can enable or disable object - versioning. The default value is `false`. To use this feature, your Swift - version must be 2.24 or higher (as described in the [OpenStack Swift Ussuri release notes](https://docs.openstack.org/releasenotes/swift/ussuri.html#relnotes-2-24-0-stable-ussuri)), - and a cloud administrator must have set the `allow_object_versioning = true` - configuration option in Swift. If you cannot set this versioning type, you may - want to consider using `versioning_legacy` instead. - """ return pulumi.get(self, "versioning") @property @pulumi.getter(name="versioningLegacy") @_utilities.deprecated("""Use newer \"versioning\" implementation""") def versioning_legacy(self) -> pulumi.Output[Optional['outputs.ContainerVersioningLegacy']]: - """ - Enable legacy object versioning. The structure is described below. - """ return pulumi.get(self, "versioning_legacy") diff --git a/sdk/python/pulumi_openstack/objectstorage/container_object.py b/sdk/python/pulumi_openstack/objectstorage/container_object.py index 8cb54510d..372e4c363 100644 --- a/sdk/python/pulumi_openstack/objectstorage/container_object.py +++ b/sdk/python/pulumi_openstack/objectstorage/container_object.py @@ -31,45 +31,6 @@ def __init__(__self__, *, source: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ContainerObject resource. - :param pulumi.Input[str] container_name: A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - :param pulumi.Input[str] content: A string representing the content of the object. Conflicts with - `source` and `copy_from`. - :param pulumi.Input[str] content_disposition: A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - :param pulumi.Input[str] content_encoding: A string representing the value of the Content-Encoding - metadata. - :param pulumi.Input[str] content_type: A string which sets the MIME type for the object. - :param pulumi.Input[str] copy_from: A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - :param pulumi.Input[int] delete_after: An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - :param pulumi.Input[str] delete_at: An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - :param pulumi.Input[bool] detect_content_type: If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - :param pulumi.Input[str] etag: Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - :param pulumi.Input[str] name: A unique name for the object. - :param pulumi.Input[str] object_manifest: A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] source: A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. """ pulumi.set(__self__, "container_name", container_name) if content is not None: @@ -104,14 +65,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerName") def container_name(self) -> pulumi.Input[str]: - """ - A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - """ return pulumi.get(self, "container_name") @container_name.setter @@ -121,10 +74,6 @@ def container_name(self, value: pulumi.Input[str]): @property @pulumi.getter def content(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the content of the object. Conflicts with - `source` and `copy_from`. - """ return pulumi.get(self, "content") @content.setter @@ -134,11 +83,6 @@ def content(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentDisposition") def content_disposition(self) -> Optional[pulumi.Input[str]]: - """ - A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - """ return pulumi.get(self, "content_disposition") @content_disposition.setter @@ -148,10 +92,6 @@ def content_disposition(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentEncoding") def content_encoding(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the value of the Content-Encoding - metadata. - """ return pulumi.get(self, "content_encoding") @content_encoding.setter @@ -161,9 +101,6 @@ def content_encoding(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentType") def content_type(self) -> Optional[pulumi.Input[str]]: - """ - A string which sets the MIME type for the object. - """ return pulumi.get(self, "content_type") @content_type.setter @@ -173,13 +110,6 @@ def content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="copyFrom") def copy_from(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - """ return pulumi.get(self, "copy_from") @copy_from.setter @@ -189,11 +119,6 @@ def copy_from(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deleteAfter") def delete_after(self) -> Optional[pulumi.Input[int]]: - """ - An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - """ return pulumi.get(self, "delete_after") @delete_after.setter @@ -203,10 +128,6 @@ def delete_after(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="deleteAt") def delete_at(self) -> Optional[pulumi.Input[str]]: - """ - An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - """ return pulumi.get(self, "delete_at") @delete_at.setter @@ -216,11 +137,6 @@ def delete_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="detectContentType") def detect_content_type(self) -> Optional[pulumi.Input[bool]]: - """ - If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - """ return pulumi.get(self, "detect_content_type") @detect_content_type.setter @@ -230,9 +146,6 @@ def detect_content_type(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def etag(self) -> Optional[pulumi.Input[str]]: - """ - Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - """ return pulumi.get(self, "etag") @etag.setter @@ -251,9 +164,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the object. - """ return pulumi.get(self, "name") @name.setter @@ -263,13 +173,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="objectManifest") def object_manifest(self) -> Optional[pulumi.Input[str]]: - """ - A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - """ return pulumi.get(self, "object_manifest") @object_manifest.setter @@ -279,11 +182,6 @@ def object_manifest(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @region.setter @@ -293,10 +191,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def source(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. - """ return pulumi.get(self, "source") @source.setter @@ -328,58 +222,6 @@ def __init__(__self__, *, trans_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ContainerObject resources. - :param pulumi.Input[str] container_name: A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - :param pulumi.Input[str] content: A string representing the content of the object. Conflicts with - `source` and `copy_from`. - :param pulumi.Input[str] content_disposition: A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - :param pulumi.Input[str] content_encoding: A string representing the value of the Content-Encoding - metadata. - :param pulumi.Input[int] content_length: If the operation succeeds, this value is zero (0) or the - length of informational or error text in the response body. - :param pulumi.Input[str] content_type: A string which sets the MIME type for the object. - :param pulumi.Input[str] copy_from: A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - :param pulumi.Input[str] date: The date and time the system responded to the request, using the preferred - format of RFC 7231 as shown in this example Thu, 16 Jun 2016 15:10:38 GMT. The - time is always in UTC. - :param pulumi.Input[int] delete_after: An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - :param pulumi.Input[str] delete_at: An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - :param pulumi.Input[bool] detect_content_type: If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - :param pulumi.Input[str] etag: Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - :param pulumi.Input[str] last_modified: The date and time when the object was last modified. The date and time - stamp format is ISO 8601: - CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. - The ±hh:mm value, if included, is the time zone as an offset from UTC. In the previous - example, the offset value is -05:00. - :param pulumi.Input[str] name: A unique name for the object. - :param pulumi.Input[str] object_manifest: A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] source: A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. - :param pulumi.Input[str] trans_id: A unique transaction ID for this request. Your service provider might - need this value if you report a problem. """ if container_name is not None: pulumi.set(__self__, "container_name", container_name) @@ -423,14 +265,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="containerName") def container_name(self) -> Optional[pulumi.Input[str]]: - """ - A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - """ return pulumi.get(self, "container_name") @container_name.setter @@ -440,10 +274,6 @@ def container_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def content(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the content of the object. Conflicts with - `source` and `copy_from`. - """ return pulumi.get(self, "content") @content.setter @@ -453,11 +283,6 @@ def content(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentDisposition") def content_disposition(self) -> Optional[pulumi.Input[str]]: - """ - A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - """ return pulumi.get(self, "content_disposition") @content_disposition.setter @@ -467,10 +292,6 @@ def content_disposition(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentEncoding") def content_encoding(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the value of the Content-Encoding - metadata. - """ return pulumi.get(self, "content_encoding") @content_encoding.setter @@ -480,10 +301,6 @@ def content_encoding(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="contentLength") def content_length(self) -> Optional[pulumi.Input[int]]: - """ - If the operation succeeds, this value is zero (0) or the - length of informational or error text in the response body. - """ return pulumi.get(self, "content_length") @content_length.setter @@ -493,9 +310,6 @@ def content_length(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="contentType") def content_type(self) -> Optional[pulumi.Input[str]]: - """ - A string which sets the MIME type for the object. - """ return pulumi.get(self, "content_type") @content_type.setter @@ -505,13 +319,6 @@ def content_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="copyFrom") def copy_from(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - """ return pulumi.get(self, "copy_from") @copy_from.setter @@ -521,11 +328,6 @@ def copy_from(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def date(self) -> Optional[pulumi.Input[str]]: - """ - The date and time the system responded to the request, using the preferred - format of RFC 7231 as shown in this example Thu, 16 Jun 2016 15:10:38 GMT. The - time is always in UTC. - """ return pulumi.get(self, "date") @date.setter @@ -535,11 +337,6 @@ def date(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="deleteAfter") def delete_after(self) -> Optional[pulumi.Input[int]]: - """ - An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - """ return pulumi.get(self, "delete_after") @delete_after.setter @@ -549,10 +346,6 @@ def delete_after(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="deleteAt") def delete_at(self) -> Optional[pulumi.Input[str]]: - """ - An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - """ return pulumi.get(self, "delete_at") @delete_at.setter @@ -562,11 +355,6 @@ def delete_at(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="detectContentType") def detect_content_type(self) -> Optional[pulumi.Input[bool]]: - """ - If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - """ return pulumi.get(self, "detect_content_type") @detect_content_type.setter @@ -576,9 +364,6 @@ def detect_content_type(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def etag(self) -> Optional[pulumi.Input[str]]: - """ - Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - """ return pulumi.get(self, "etag") @etag.setter @@ -588,14 +373,6 @@ def etag(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="lastModified") def last_modified(self) -> Optional[pulumi.Input[str]]: - """ - The date and time when the object was last modified. The date and time - stamp format is ISO 8601: - CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. - The ±hh:mm value, if included, is the time zone as an offset from UTC. In the previous - example, the offset value is -05:00. - """ return pulumi.get(self, "last_modified") @last_modified.setter @@ -614,9 +391,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the object. - """ return pulumi.get(self, "name") @name.setter @@ -626,13 +400,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="objectManifest") def object_manifest(self) -> Optional[pulumi.Input[str]]: - """ - A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - """ return pulumi.get(self, "object_manifest") @object_manifest.setter @@ -642,11 +409,6 @@ def object_manifest(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @region.setter @@ -656,10 +418,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def source(self) -> Optional[pulumi.Input[str]]: - """ - A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. - """ return pulumi.get(self, "source") @source.setter @@ -669,10 +427,6 @@ def source(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="transId") def trans_id(self) -> Optional[pulumi.Input[str]]: - """ - A unique transaction ID for this request. Your service provider might - need this value if you report a problem. - """ return pulumi.get(self, "trans_id") @trans_id.setter @@ -702,51 +456,9 @@ def __init__(__self__, source: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 container object resource within OpenStack. - - ## Example Usage - + Create a ContainerObject resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] container_name: A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - :param pulumi.Input[str] content: A string representing the content of the object. Conflicts with - `source` and `copy_from`. - :param pulumi.Input[str] content_disposition: A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - :param pulumi.Input[str] content_encoding: A string representing the value of the Content-Encoding - metadata. - :param pulumi.Input[str] content_type: A string which sets the MIME type for the object. - :param pulumi.Input[str] copy_from: A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - :param pulumi.Input[int] delete_after: An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - :param pulumi.Input[str] delete_at: An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - :param pulumi.Input[bool] detect_content_type: If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - :param pulumi.Input[str] etag: Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - :param pulumi.Input[str] name: A unique name for the object. - :param pulumi.Input[str] object_manifest: A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] source: A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. """ ... @overload @@ -755,10 +467,7 @@ def __init__(__self__, args: ContainerObjectArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 container object resource within OpenStack. - - ## Example Usage - + Create a ContainerObject resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ContainerObjectArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -855,58 +564,6 @@ def get(resource_name: str, :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] container_name: A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - :param pulumi.Input[str] content: A string representing the content of the object. Conflicts with - `source` and `copy_from`. - :param pulumi.Input[str] content_disposition: A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - :param pulumi.Input[str] content_encoding: A string representing the value of the Content-Encoding - metadata. - :param pulumi.Input[int] content_length: If the operation succeeds, this value is zero (0) or the - length of informational or error text in the response body. - :param pulumi.Input[str] content_type: A string which sets the MIME type for the object. - :param pulumi.Input[str] copy_from: A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - :param pulumi.Input[str] date: The date and time the system responded to the request, using the preferred - format of RFC 7231 as shown in this example Thu, 16 Jun 2016 15:10:38 GMT. The - time is always in UTC. - :param pulumi.Input[int] delete_after: An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - :param pulumi.Input[str] delete_at: An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - :param pulumi.Input[bool] detect_content_type: If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - :param pulumi.Input[str] etag: Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - :param pulumi.Input[str] last_modified: The date and time when the object was last modified. The date and time - stamp format is ISO 8601: - CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. - The ±hh:mm value, if included, is the time zone as an offset from UTC. In the previous - example, the offset value is -05:00. - :param pulumi.Input[str] name: A unique name for the object. - :param pulumi.Input[str] object_manifest: A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - :param pulumi.Input[str] region: The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - :param pulumi.Input[str] source: A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. - :param pulumi.Input[str] trans_id: A unique transaction ID for this request. Your service provider might - need this value if you report a problem. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -936,131 +593,66 @@ def get(resource_name: str, @property @pulumi.getter(name="containerName") def container_name(self) -> pulumi.Output[str]: - """ - A unique (within an account) name for the container. - The container name must be from 1 to 256 characters long and can start - with any character and contain any pattern. Character set must be UTF-8. - The container name cannot contain a slash (/) character because this - character delimits the container and object name. For example, the path - /v1/account/www/pages specifies the www container, not the www/pages container. - """ return pulumi.get(self, "container_name") @property @pulumi.getter def content(self) -> pulumi.Output[Optional[str]]: - """ - A string representing the content of the object. Conflicts with - `source` and `copy_from`. - """ return pulumi.get(self, "content") @property @pulumi.getter(name="contentDisposition") def content_disposition(self) -> pulumi.Output[str]: - """ - A string which specifies the override behavior for - the browser. For example, this header might specify that the browser use a download - program to save this file rather than show the file, which is the default. - """ return pulumi.get(self, "content_disposition") @property @pulumi.getter(name="contentEncoding") def content_encoding(self) -> pulumi.Output[str]: - """ - A string representing the value of the Content-Encoding - metadata. - """ return pulumi.get(self, "content_encoding") @property @pulumi.getter(name="contentLength") def content_length(self) -> pulumi.Output[int]: - """ - If the operation succeeds, this value is zero (0) or the - length of informational or error text in the response body. - """ return pulumi.get(self, "content_length") @property @pulumi.getter(name="contentType") def content_type(self) -> pulumi.Output[str]: - """ - A string which sets the MIME type for the object. - """ return pulumi.get(self, "content_type") @property @pulumi.getter(name="copyFrom") def copy_from(self) -> pulumi.Output[Optional[str]]: - """ - A string representing the name of an object - used to create the new object by copying the `copy_from` object. The value is in form - {container}/{object}. You must UTF-8-encode and then URL-encode the names of the - container and object before you include them in the header. Conflicts with `source` and - `content`. - """ return pulumi.get(self, "copy_from") @property @pulumi.getter def date(self) -> pulumi.Output[str]: - """ - The date and time the system responded to the request, using the preferred - format of RFC 7231 as shown in this example Thu, 16 Jun 2016 15:10:38 GMT. The - time is always in UTC. - """ return pulumi.get(self, "date") @property @pulumi.getter(name="deleteAfter") def delete_after(self) -> pulumi.Output[Optional[int]]: - """ - An integer representing the number of seconds after which the - system removes the object. Internally, the Object Storage system stores this value in - the X-Delete-At metadata item. - """ return pulumi.get(self, "delete_after") @property @pulumi.getter(name="deleteAt") def delete_at(self) -> pulumi.Output[str]: - """ - An string representing the date when the system removes the object. - For example, "2015-08-26" is equivalent to Mon, Wed, 26 Aug 2015 00:00:00 GMT. - """ return pulumi.get(self, "delete_at") @property @pulumi.getter(name="detectContentType") def detect_content_type(self) -> pulumi.Output[Optional[bool]]: - """ - If set to true, Object Storage guesses the content - type based on the file extension and ignores the value sent in the Content-Type - header, if present. - """ return pulumi.get(self, "detect_content_type") @property @pulumi.getter def etag(self) -> pulumi.Output[str]: - """ - Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. - """ return pulumi.get(self, "etag") @property @pulumi.getter(name="lastModified") def last_modified(self) -> pulumi.Output[str]: - """ - The date and time when the object was last modified. The date and time - stamp format is ISO 8601: - CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. - The ±hh:mm value, if included, is the time zone as an offset from UTC. In the previous - example, the offset value is -05:00. - """ return pulumi.get(self, "last_modified") @property @@ -1071,48 +663,25 @@ def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the object. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="objectManifest") def object_manifest(self) -> pulumi.Output[str]: - """ - A string set to specify that this is a dynamic large - object manifest object. The value is the container and object name prefix of the - segment objects in the form container/prefix. You must UTF-8-encode and then - URL-encode the names of the container and prefix before you include them in this - header. - """ return pulumi.get(self, "object_manifest") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the container. If - omitted, the `region` argument of the provider is used. Changing this - creates a new container. - """ return pulumi.get(self, "region") @property @pulumi.getter def source(self) -> pulumi.Output[Optional[str]]: - """ - A string representing the local path of a file which will be used - as the object's content. Conflicts with `source` and `copy_from`. - """ return pulumi.get(self, "source") @property @pulumi.getter(name="transId") def trans_id(self) -> pulumi.Output[str]: - """ - A unique transaction ID for this request. Your service provider might - need this value if you report a problem. - """ return pulumi.get(self, "trans_id") diff --git a/sdk/python/pulumi_openstack/objectstorage/outputs.py b/sdk/python/pulumi_openstack/objectstorage/outputs.py index b198a05a3..0e98025d6 100644 --- a/sdk/python/pulumi_openstack/objectstorage/outputs.py +++ b/sdk/python/pulumi_openstack/objectstorage/outputs.py @@ -18,27 +18,17 @@ class ContainerVersioningLegacy(dict): def __init__(__self__, *, location: str, type: str): - """ - :param str location: Container in which versions will be stored. - :param str type: Versioning type which can be `versions` or `history` according to [Openstack documentation](https://docs.openstack.org/swift/latest/api/object_versioning.html). - """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "type", type) @property @pulumi.getter def location(self) -> str: - """ - Container in which versions will be stored. - """ return pulumi.get(self, "location") @property @pulumi.getter def type(self) -> str: - """ - Versioning type which can be `versions` or `history` according to [Openstack documentation](https://docs.openstack.org/swift/latest/api/object_versioning.html). - """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_openstack/objectstorage/temp_url.py b/sdk/python/pulumi_openstack/objectstorage/temp_url.py index c97f37655..9373f6ac3 100644 --- a/sdk/python/pulumi_openstack/objectstorage/temp_url.py +++ b/sdk/python/pulumi_openstack/objectstorage/temp_url.py @@ -25,22 +25,6 @@ def __init__(__self__, *, split: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a TempUrl resource. - :param pulumi.Input[str] container: The container name the object belongs to. - :param pulumi.Input[str] object: The object name the tempurl is for. - :param pulumi.Input[int] ttl: The TTL, in seconds, for the URL. For how long it should - be valid. - :param pulumi.Input[str] digest: The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - :param pulumi.Input[str] key: The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - :param pulumi.Input[str] method: The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - :param pulumi.Input[bool] regenerate: Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - :param pulumi.Input[str] region: The region the tempurl is located in. - :param pulumi.Input[str] split: Split is the string on which to split the object URL. - Default is `/v1/`. """ pulumi.set(__self__, "container", container) pulumi.set(__self__, "object", object) @@ -61,9 +45,6 @@ def __init__(__self__, *, @property @pulumi.getter def container(self) -> pulumi.Input[str]: - """ - The container name the object belongs to. - """ return pulumi.get(self, "container") @container.setter @@ -73,9 +54,6 @@ def container(self, value: pulumi.Input[str]): @property @pulumi.getter def object(self) -> pulumi.Input[str]: - """ - The object name the tempurl is for. - """ return pulumi.get(self, "object") @object.setter @@ -85,10 +63,6 @@ def object(self, value: pulumi.Input[str]): @property @pulumi.getter def ttl(self) -> pulumi.Input[int]: - """ - The TTL, in seconds, for the URL. For how long it should - be valid. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -98,10 +72,6 @@ def ttl(self, value: pulumi.Input[int]): @property @pulumi.getter def digest(self) -> Optional[pulumi.Input[str]]: - """ - The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - """ return pulumi.get(self, "digest") @digest.setter @@ -111,10 +81,6 @@ def digest(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: - """ - The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - """ return pulumi.get(self, "key") @key.setter @@ -124,10 +90,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def method(self) -> Optional[pulumi.Input[str]]: - """ - The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - """ return pulumi.get(self, "method") @method.setter @@ -137,11 +99,6 @@ def method(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def regenerate(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - """ return pulumi.get(self, "regenerate") @regenerate.setter @@ -151,9 +108,6 @@ def regenerate(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region the tempurl is located in. - """ return pulumi.get(self, "region") @region.setter @@ -163,10 +117,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def split(self) -> Optional[pulumi.Input[str]]: - """ - Split is the string on which to split the object URL. - Default is `/v1/`. - """ return pulumi.get(self, "split") @split.setter @@ -189,23 +139,6 @@ def __init__(__self__, *, url: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering TempUrl resources. - :param pulumi.Input[str] container: The container name the object belongs to. - :param pulumi.Input[str] digest: The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - :param pulumi.Input[str] key: The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - :param pulumi.Input[str] method: The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - :param pulumi.Input[str] object: The object name the tempurl is for. - :param pulumi.Input[bool] regenerate: Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - :param pulumi.Input[str] region: The region the tempurl is located in. - :param pulumi.Input[str] split: Split is the string on which to split the object URL. - Default is `/v1/`. - :param pulumi.Input[int] ttl: The TTL, in seconds, for the URL. For how long it should - be valid. - :param pulumi.Input[str] url: The URL """ if container is not None: pulumi.set(__self__, "container", container) @@ -231,9 +164,6 @@ def __init__(__self__, *, @property @pulumi.getter def container(self) -> Optional[pulumi.Input[str]]: - """ - The container name the object belongs to. - """ return pulumi.get(self, "container") @container.setter @@ -243,10 +173,6 @@ def container(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def digest(self) -> Optional[pulumi.Input[str]]: - """ - The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - """ return pulumi.get(self, "digest") @digest.setter @@ -256,10 +182,6 @@ def digest(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def key(self) -> Optional[pulumi.Input[str]]: - """ - The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - """ return pulumi.get(self, "key") @key.setter @@ -269,10 +191,6 @@ def key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def method(self) -> Optional[pulumi.Input[str]]: - """ - The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - """ return pulumi.get(self, "method") @method.setter @@ -282,9 +200,6 @@ def method(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def object(self) -> Optional[pulumi.Input[str]]: - """ - The object name the tempurl is for. - """ return pulumi.get(self, "object") @object.setter @@ -294,11 +209,6 @@ def object(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def regenerate(self) -> Optional[pulumi.Input[bool]]: - """ - Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - """ return pulumi.get(self, "regenerate") @regenerate.setter @@ -308,9 +218,6 @@ def regenerate(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region the tempurl is located in. - """ return pulumi.get(self, "region") @region.setter @@ -320,10 +227,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def split(self) -> Optional[pulumi.Input[str]]: - """ - Split is the string on which to split the object URL. - Default is `/v1/`. - """ return pulumi.get(self, "split") @split.setter @@ -333,10 +236,6 @@ def split(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ttl(self) -> Optional[pulumi.Input[int]]: - """ - The TTL, in seconds, for the URL. For how long it should - be valid. - """ return pulumi.get(self, "ttl") @ttl.setter @@ -346,9 +245,6 @@ def ttl(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def url(self) -> Optional[pulumi.Input[str]]: - """ - The URL - """ return pulumi.get(self, "url") @url.setter @@ -372,54 +268,9 @@ def __init__(__self__, ttl: Optional[pulumi.Input[int]] = None, __props__=None): """ - Use this resource to generate an OpenStack Object Storage temporary URL. - - The temporary URL will be valid for as long as TTL is set to (in seconds). - Once the URL has expired, it will no longer be valid, but the resource - will remain in place. If you wish to automatically regenerate a URL, set - the `regenerate` argument to `true`. This will create a new resource with - a new ID and URL. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - name="test", - metadata={ - "Temp-URL-Key": "testkey", - }) - object1 = openstack.objectstorage.ContainerObject("object_1", - container_name=container1.name, - name="test", - content="Hello, world!") - obj_tempurl = openstack.objectstorage.TempUrl("obj_tempurl", - container=container1.name, - object=object1.name, - method="post", - ttl=20) - ``` - + Create a TempUrl resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] container: The container name the object belongs to. - :param pulumi.Input[str] digest: The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - :param pulumi.Input[str] key: The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - :param pulumi.Input[str] method: The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - :param pulumi.Input[str] object: The object name the tempurl is for. - :param pulumi.Input[bool] regenerate: Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - :param pulumi.Input[str] region: The region the tempurl is located in. - :param pulumi.Input[str] split: Split is the string on which to split the object URL. - Default is `/v1/`. - :param pulumi.Input[int] ttl: The TTL, in seconds, for the URL. For how long it should - be valid. """ ... @overload @@ -428,36 +279,7 @@ def __init__(__self__, args: TempUrlArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Use this resource to generate an OpenStack Object Storage temporary URL. - - The temporary URL will be valid for as long as TTL is set to (in seconds). - Once the URL has expired, it will no longer be valid, but the resource - will remain in place. If you wish to automatically regenerate a URL, set - the `regenerate` argument to `true`. This will create a new resource with - a new ID and URL. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - container1 = openstack.objectstorage.Container("container_1", - name="test", - metadata={ - "Temp-URL-Key": "testkey", - }) - object1 = openstack.objectstorage.ContainerObject("object_1", - container_name=container1.name, - name="test", - content="Hello, world!") - obj_tempurl = openstack.objectstorage.TempUrl("obj_tempurl", - container=container1.name, - object=object1.name, - method="post", - ttl=20) - ``` - + Create a TempUrl resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param TempUrlArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -536,23 +358,6 @@ def get(resource_name: str, :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] container: The container name the object belongs to. - :param pulumi.Input[str] digest: The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - :param pulumi.Input[str] key: The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - :param pulumi.Input[str] method: The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - :param pulumi.Input[str] object: The object name the tempurl is for. - :param pulumi.Input[bool] regenerate: Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - :param pulumi.Input[str] region: The region the tempurl is located in. - :param pulumi.Input[str] split: Split is the string on which to split the object URL. - Default is `/v1/`. - :param pulumi.Input[int] ttl: The TTL, in seconds, for the URL. For how long it should - be valid. - :param pulumi.Input[str] url: The URL """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -573,87 +378,50 @@ def get(resource_name: str, @property @pulumi.getter def container(self) -> pulumi.Output[str]: - """ - The container name the object belongs to. - """ return pulumi.get(self, "container") @property @pulumi.getter def digest(self) -> pulumi.Output[Optional[str]]: - """ - The digest to use when generating the tempurl. - Supported values are `sha1`, `sha256` and `sha512`. Default is `sha1`. - """ return pulumi.get(self, "digest") @property @pulumi.getter def key(self) -> pulumi.Output[Optional[str]]: - """ - The key to use when generating the tempurl. If not - provided, the key will be read from the container or account metadata. - """ return pulumi.get(self, "key") @property @pulumi.getter def method(self) -> pulumi.Output[Optional[str]]: - """ - The method allowed when accessing this URL. - Valid values are `GET`, and `POST`. Default is `GET`. - """ return pulumi.get(self, "method") @property @pulumi.getter def object(self) -> pulumi.Output[str]: - """ - The object name the tempurl is for. - """ return pulumi.get(self, "object") @property @pulumi.getter def regenerate(self) -> pulumi.Output[Optional[bool]]: - """ - Whether to automatically regenerate the URL when - it has expired. If set to true, this will create a new resource with a new - ID and new URL. Defaults to false. - """ return pulumi.get(self, "regenerate") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region the tempurl is located in. - """ return pulumi.get(self, "region") @property @pulumi.getter def split(self) -> pulumi.Output[Optional[str]]: - """ - Split is the string on which to split the object URL. - Default is `/v1/`. - """ return pulumi.get(self, "split") @property @pulumi.getter def ttl(self) -> pulumi.Output[int]: - """ - The TTL, in seconds, for the URL. For how long it should - be valid. - """ return pulumi.get(self, "ttl") @property @pulumi.getter def url(self) -> pulumi.Output[str]: - """ - The URL - """ return pulumi.get(self, "url") diff --git a/sdk/python/pulumi_openstack/orchestration/_inputs.py b/sdk/python/pulumi_openstack/orchestration/_inputs.py index 560889aa7..914348fad 100644 --- a/sdk/python/pulumi_openstack/orchestration/_inputs.py +++ b/sdk/python/pulumi_openstack/orchestration/_inputs.py @@ -19,9 +19,6 @@ def __init__(__self__, *, output_key: pulumi.Input[str], output_value: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] description: The description of the stack resource. - """ pulumi.set(__self__, "output_key", output_key) pulumi.set(__self__, "output_value", output_value) if description is not None: @@ -48,9 +45,6 @@ def output_value(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the stack resource. - """ return pulumi.get(self, "description") @description.setter diff --git a/sdk/python/pulumi_openstack/orchestration/outputs.py b/sdk/python/pulumi_openstack/orchestration/outputs.py index 058f0b07c..feca75b28 100644 --- a/sdk/python/pulumi_openstack/orchestration/outputs.py +++ b/sdk/python/pulumi_openstack/orchestration/outputs.py @@ -38,9 +38,6 @@ def __init__(__self__, *, output_key: str, output_value: str, description: Optional[str] = None): - """ - :param str description: The description of the stack resource. - """ pulumi.set(__self__, "output_key", output_key) pulumi.set(__self__, "output_value", output_value) if description is not None: @@ -59,9 +56,6 @@ def output_value(self) -> str: @property @pulumi.getter def description(self) -> Optional[str]: - """ - The description of the stack resource. - """ return pulumi.get(self, "description") diff --git a/sdk/python/pulumi_openstack/orchestration/stack_v1.py b/sdk/python/pulumi_openstack/orchestration/stack_v1.py index 874c333b3..011bab499 100644 --- a/sdk/python/pulumi_openstack/orchestration/stack_v1.py +++ b/sdk/python/pulumi_openstack/orchestration/stack_v1.py @@ -35,41 +35,6 @@ def __init__(__self__, *, updated_time: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a StackV1 resource. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] template_opts: Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - :param pulumi.Input[Sequence[pulumi.Input['StackV1StackOutputArgs']]] stack_outputs: A list of stack outputs. - :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: List of stack capabilities for stack. - :param pulumi.Input[str] creation_time: The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - :param pulumi.Input[str] description: The description of the stack resource. - :param pulumi.Input[bool] disable_rollback: Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_opts: Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - :param pulumi.Input[str] name: A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_topics: List of notification topics for stack. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - :param pulumi.Input[str] region: The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - :param pulumi.Input[str] status: The status of the stack. - :param pulumi.Input[str] status_reason: The reason for the current status of the stack. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to assosciate with the Stack - :param pulumi.Input[str] template_description: The description of the stack template. - :param pulumi.Input[int] timeout: The timeout for stack action in minutes. - :param pulumi.Input[str] updated_time: The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. """ pulumi.set(__self__, "template_opts", template_opts) if stack_outputs is not None: @@ -108,12 +73,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="templateOpts") def template_opts(self) -> pulumi.Input[Mapping[str, pulumi.Input[str]]]: - """ - Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - """ return pulumi.get(self, "template_opts") @template_opts.setter @@ -123,9 +82,6 @@ def template_opts(self, value: pulumi.Input[Mapping[str, pulumi.Input[str]]]): @property @pulumi.getter(name="StackOutputs") def stack_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StackV1StackOutputArgs']]]]: - """ - A list of stack outputs. - """ return pulumi.get(self, "stack_outputs") @stack_outputs.setter @@ -135,9 +91,6 @@ def stack_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Stac @property @pulumi.getter def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of stack capabilities for stack. - """ return pulumi.get(self, "capabilities") @capabilities.setter @@ -147,12 +100,6 @@ def capabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]] @property @pulumi.getter(name="creationTime") def creation_time(self) -> Optional[pulumi.Input[str]]: - """ - The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "creation_time") @creation_time.setter @@ -162,9 +109,6 @@ def creation_time(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the stack resource. - """ return pulumi.get(self, "description") @description.setter @@ -174,11 +118,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableRollback") def disable_rollback(self) -> Optional[pulumi.Input[bool]]: - """ - Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - """ return pulumi.get(self, "disable_rollback") @disable_rollback.setter @@ -188,12 +127,6 @@ def disable_rollback(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="environmentOpts") def environment_opts(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - """ return pulumi.get(self, "environment_opts") @environment_opts.setter @@ -203,10 +136,6 @@ def environment_opts(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inpu @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - """ return pulumi.get(self, "name") @name.setter @@ -216,9 +145,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="notificationTopics") def notification_topics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of notification topics for stack. - """ return pulumi.get(self, "notification_topics") @notification_topics.setter @@ -228,10 +154,6 @@ def notification_topics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def parameters(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - """ return pulumi.get(self, "parameters") @parameters.setter @@ -241,11 +163,6 @@ def parameters(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - """ return pulumi.get(self, "region") @region.setter @@ -255,9 +172,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the stack. - """ return pulumi.get(self, "status") @status.setter @@ -267,9 +181,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="statusReason") def status_reason(self) -> Optional[pulumi.Input[str]]: - """ - The reason for the current status of the stack. - """ return pulumi.get(self, "status_reason") @status_reason.setter @@ -279,9 +190,6 @@ def status_reason(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of tags to assosciate with the Stack - """ return pulumi.get(self, "tags") @tags.setter @@ -291,9 +199,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="templateDescription") def template_description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the stack template. - """ return pulumi.get(self, "template_description") @template_description.setter @@ -303,9 +208,6 @@ def template_description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def timeout(self) -> Optional[pulumi.Input[int]]: - """ - The timeout for stack action in minutes. - """ return pulumi.get(self, "timeout") @timeout.setter @@ -315,12 +217,6 @@ def timeout(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="updatedTime") def updated_time(self) -> Optional[pulumi.Input[str]]: - """ - The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "updated_time") @updated_time.setter @@ -350,41 +246,6 @@ def __init__(__self__, *, updated_time: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering StackV1 resources. - :param pulumi.Input[Sequence[pulumi.Input['StackV1StackOutputArgs']]] stack_outputs: A list of stack outputs. - :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: List of stack capabilities for stack. - :param pulumi.Input[str] creation_time: The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - :param pulumi.Input[str] description: The description of the stack resource. - :param pulumi.Input[bool] disable_rollback: Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_opts: Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - :param pulumi.Input[str] name: A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_topics: List of notification topics for stack. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - :param pulumi.Input[str] region: The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - :param pulumi.Input[str] status: The status of the stack. - :param pulumi.Input[str] status_reason: The reason for the current status of the stack. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to assosciate with the Stack - :param pulumi.Input[str] template_description: The description of the stack template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] template_opts: Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - :param pulumi.Input[int] timeout: The timeout for stack action in minutes. - :param pulumi.Input[str] updated_time: The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. """ if stack_outputs is not None: pulumi.set(__self__, "stack_outputs", stack_outputs) @@ -424,9 +285,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="StackOutputs") def stack_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StackV1StackOutputArgs']]]]: - """ - A list of stack outputs. - """ return pulumi.get(self, "stack_outputs") @stack_outputs.setter @@ -436,9 +294,6 @@ def stack_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Stac @property @pulumi.getter def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of stack capabilities for stack. - """ return pulumi.get(self, "capabilities") @capabilities.setter @@ -448,12 +303,6 @@ def capabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]] @property @pulumi.getter(name="creationTime") def creation_time(self) -> Optional[pulumi.Input[str]]: - """ - The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "creation_time") @creation_time.setter @@ -463,9 +312,6 @@ def creation_time(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the stack resource. - """ return pulumi.get(self, "description") @description.setter @@ -475,11 +321,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="disableRollback") def disable_rollback(self) -> Optional[pulumi.Input[bool]]: - """ - Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - """ return pulumi.get(self, "disable_rollback") @disable_rollback.setter @@ -489,12 +330,6 @@ def disable_rollback(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="environmentOpts") def environment_opts(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - """ return pulumi.get(self, "environment_opts") @environment_opts.setter @@ -504,10 +339,6 @@ def environment_opts(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inpu @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - """ return pulumi.get(self, "name") @name.setter @@ -517,9 +348,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="notificationTopics") def notification_topics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of notification topics for stack. - """ return pulumi.get(self, "notification_topics") @notification_topics.setter @@ -529,10 +357,6 @@ def notification_topics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def parameters(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - """ return pulumi.get(self, "parameters") @parameters.setter @@ -542,11 +366,6 @@ def parameters(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str] @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - """ return pulumi.get(self, "region") @region.setter @@ -556,9 +375,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - The status of the stack. - """ return pulumi.get(self, "status") @status.setter @@ -568,9 +384,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="statusReason") def status_reason(self) -> Optional[pulumi.Input[str]]: - """ - The reason for the current status of the stack. - """ return pulumi.get(self, "status_reason") @status_reason.setter @@ -580,9 +393,6 @@ def status_reason(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of tags to assosciate with the Stack - """ return pulumi.get(self, "tags") @tags.setter @@ -592,9 +402,6 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter(name="templateDescription") def template_description(self) -> Optional[pulumi.Input[str]]: - """ - The description of the stack template. - """ return pulumi.get(self, "template_description") @template_description.setter @@ -604,12 +411,6 @@ def template_description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="templateOpts") def template_opts(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - """ return pulumi.get(self, "template_opts") @template_opts.setter @@ -619,9 +420,6 @@ def template_opts(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[s @property @pulumi.getter def timeout(self) -> Optional[pulumi.Input[int]]: - """ - The timeout for stack action in minutes. - """ return pulumi.get(self, "timeout") @timeout.setter @@ -631,12 +429,6 @@ def timeout(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="updatedTime") def updated_time(self) -> Optional[pulumi.Input[str]]: - """ - The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "updated_time") @updated_time.setter @@ -668,85 +460,9 @@ def __init__(__self__, updated_time: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V1 stack resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - stack1 = openstack.orchestration.StackV1("stack_1", - name="stack_1", - parameters={ - "length": "4", - }, - template_opts={ - "Bin": \"\"\"heat_template_version: 2013-05-23 - parameters: - length: - type: number - resources: - test_res: - type: OS::Heat::TestResource - random: - type: OS::Heat::RandomString - properties: - length: {get_param: length} - \"\"\", - }, - environment_opts={ - "Bin": "\\n", - }, - disable_rollback=True, - timeout=30) - ``` - - ## Import - - stacks can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:orchestration/stackV1:StackV1 stack_1 ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a StackV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['StackV1StackOutputArgs', 'StackV1StackOutputArgsDict']]]] stack_outputs: A list of stack outputs. - :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: List of stack capabilities for stack. - :param pulumi.Input[str] creation_time: The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - :param pulumi.Input[str] description: The description of the stack resource. - :param pulumi.Input[bool] disable_rollback: Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_opts: Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - :param pulumi.Input[str] name: A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_topics: List of notification topics for stack. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - :param pulumi.Input[str] region: The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - :param pulumi.Input[str] status: The status of the stack. - :param pulumi.Input[str] status_reason: The reason for the current status of the stack. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to assosciate with the Stack - :param pulumi.Input[str] template_description: The description of the stack template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] template_opts: Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - :param pulumi.Input[int] timeout: The timeout for stack action in minutes. - :param pulumi.Input[str] updated_time: The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. """ ... @overload @@ -755,48 +471,7 @@ def __init__(__self__, args: StackV1Args, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V1 stack resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - stack1 = openstack.orchestration.StackV1("stack_1", - name="stack_1", - parameters={ - "length": "4", - }, - template_opts={ - "Bin": \"\"\"heat_template_version: 2013-05-23 - parameters: - length: - type: number - resources: - test_res: - type: OS::Heat::TestResource - random: - type: OS::Heat::RandomString - properties: - length: {get_param: length} - \"\"\", - }, - environment_opts={ - "Bin": "\\n", - }, - disable_rollback=True, - timeout=30) - ``` - - ## Import - - stacks can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:orchestration/stackV1:StackV1 stack_1 ea257959-eeb1-4c10-8d33-26f0409a755d - ``` - + Create a StackV1 resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param StackV1Args args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -891,41 +566,6 @@ def get(resource_name: str, :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['StackV1StackOutputArgs', 'StackV1StackOutputArgsDict']]]] stack_outputs: A list of stack outputs. - :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: List of stack capabilities for stack. - :param pulumi.Input[str] creation_time: The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - :param pulumi.Input[str] description: The description of the stack resource. - :param pulumi.Input[bool] disable_rollback: Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_opts: Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - :param pulumi.Input[str] name: A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - :param pulumi.Input[Sequence[pulumi.Input[str]]] notification_topics: List of notification topics for stack. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - :param pulumi.Input[str] region: The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - :param pulumi.Input[str] status: The status of the stack. - :param pulumi.Input[str] status_reason: The reason for the current status of the stack. - :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags to assosciate with the Stack - :param pulumi.Input[str] template_description: The description of the stack template. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] template_opts: Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - :param pulumi.Input[int] timeout: The timeout for stack action in minutes. - :param pulumi.Input[str] updated_time: The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -953,154 +593,85 @@ def get(resource_name: str, @property @pulumi.getter(name="StackOutputs") def stack_outputs(self) -> pulumi.Output[Sequence['outputs.StackV1StackOutput']]: - """ - A list of stack outputs. - """ return pulumi.get(self, "stack_outputs") @property @pulumi.getter def capabilities(self) -> pulumi.Output[Sequence[str]]: - """ - List of stack capabilities for stack. - """ return pulumi.get(self, "capabilities") @property @pulumi.getter(name="creationTime") def creation_time(self) -> pulumi.Output[str]: - """ - The date and time when the resource was created. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "creation_time") @property @pulumi.getter def description(self) -> pulumi.Output[str]: - """ - The description of the stack resource. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="disableRollback") def disable_rollback(self) -> pulumi.Output[bool]: - """ - Enables or disables deletion of all stack - resources when a stack creation fails. Default is true, meaning all - resources are not deleted when stack creation fails. - """ return pulumi.get(self, "disable_rollback") @property @pulumi.getter(name="environmentOpts") def environment_opts(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Environment key/value pairs to associate with - the stack which contains details for the environment of the stack. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Environment Opts. - """ return pulumi.get(self, "environment_opts") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - A unique name for the stack. It must start with an - alphabetic character. Changing this updates the stack's name. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="notificationTopics") def notification_topics(self) -> pulumi.Output[Sequence[str]]: - """ - List of notification topics for stack. - """ return pulumi.get(self, "notification_topics") @property @pulumi.getter def parameters(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - User-defined key/value pairs as parameters to pass - to the template. Changing this updates the existing stack parameters. - """ return pulumi.get(self, "parameters") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to create the stack. If - omitted, the `region` argument of the provider is used. Changing this - creates a new stack. - """ return pulumi.get(self, "region") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - The status of the stack. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="statusReason") def status_reason(self) -> pulumi.Output[str]: - """ - The reason for the current status of the stack. - """ return pulumi.get(self, "status_reason") @property @pulumi.getter def tags(self) -> pulumi.Output[Sequence[str]]: - """ - A list of tags to assosciate with the Stack - """ return pulumi.get(self, "tags") @property @pulumi.getter(name="templateDescription") def template_description(self) -> pulumi.Output[str]: - """ - The description of the stack template. - """ return pulumi.get(self, "template_description") @property @pulumi.getter(name="templateOpts") def template_opts(self) -> pulumi.Output[Mapping[str, str]]: - """ - Template key/value pairs to associate with the - stack which contains either the template file or url. - Allowed keys: Bin, URL, Files. Changing this updates the existing stack - Template Opts. - """ return pulumi.get(self, "template_opts") @property @pulumi.getter def timeout(self) -> pulumi.Output[int]: - """ - The timeout for stack action in minutes. - """ return pulumi.get(self, "timeout") @property @pulumi.getter(name="updatedTime") def updated_time(self) -> pulumi.Output[str]: - """ - The date and time when the resource was updated. The date - and time stamp format is ISO 8601: CCYY-MM-DDThh:mm:ss±hh:mm - For example, 2015-08-27T09:49:58-05:00. The ±hh:mm value, if included, - is the time zone as an offset from UTC. - """ return pulumi.get(self, "updated_time") diff --git a/sdk/python/pulumi_openstack/outputs.py b/sdk/python/pulumi_openstack/outputs.py index fb4c767ac..c656a4a24 100644 --- a/sdk/python/pulumi_openstack/outputs.py +++ b/sdk/python/pulumi_openstack/outputs.py @@ -39,17 +39,6 @@ def __init__(__self__, *, bgpvpn_id: Optional[str] = None, local_pref: Optional[int] = None, prefix: Optional[str] = None): - """ - :param str type: Can be `prefix` or `bgpvpn`. For the `prefix` type, the - CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the - `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. - :param str bgpvpn_id: The ID of the BGP VPN to be advertised. Required - if `type` is `bgpvpn`. Conflicts with `prefix`. - :param int local_pref: The BGP LOCAL\\_PREF value of the routes that will - be advertised. - :param str prefix: The CIDR prefix (v4 or v6) to be advertised. Required - if `type` is `prefix`. Conflicts with `bgpvpn_id`. - """ pulumi.set(__self__, "type", type) if bgpvpn_id is not None: pulumi.set(__self__, "bgpvpn_id", bgpvpn_id) @@ -61,38 +50,21 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> str: - """ - Can be `prefix` or `bgpvpn`. For the `prefix` type, the - CIDR prefix (v4 or v6) must be specified in the `prefix` key. For the - `bgpvpn` type, the BGP VPN ID must be specified in the `bgpvpn_id` key. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="bgpvpnId") def bgpvpn_id(self) -> Optional[str]: - """ - The ID of the BGP VPN to be advertised. Required - if `type` is `bgpvpn`. Conflicts with `prefix`. - """ return pulumi.get(self, "bgpvpn_id") @property @pulumi.getter(name="localPref") def local_pref(self) -> Optional[int]: - """ - The BGP LOCAL\\_PREF value of the routes that will - be advertised. - """ return pulumi.get(self, "local_pref") @property @pulumi.getter def prefix(self) -> Optional[str]: - """ - The CIDR prefix (v4 or v6) to be advertised. Required - if `type` is `prefix`. Conflicts with `bgpvpn_id`. - """ return pulumi.get(self, "prefix") diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/get_availbility_zones.py b/sdk/python/pulumi_openstack/sharedfilesystem/get_availbility_zones.py index 31e66b6fb..2c573619d 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/get_availbility_zones.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/get_availbility_zones.py @@ -43,17 +43,11 @@ def id(self) -> str: @property @pulumi.getter def names(self) -> Sequence[str]: - """ - The names of the availability zones, ordered alphanumerically. - """ return pulumi.get(self, "names") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @@ -71,21 +65,7 @@ def __await__(self): def get_availbility_zones(region: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAvailbilityZonesResult: """ - Use this data source to get a list of Shared File System availability zones - from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.sharedfilesystem.get_availbility_zones() - ``` - - - :param str region: The region in which to obtain the V2 Shared File System - client. If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['region'] = region @@ -102,20 +82,6 @@ def get_availbility_zones(region: Optional[str] = None, def get_availbility_zones_output(region: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAvailbilityZonesResult]: """ - Use this data source to get a list of Shared File System availability zones - from OpenStack - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - zones = openstack.sharedfilesystem.get_availbility_zones() - ``` - - - :param str region: The region in which to obtain the V2 Shared File System - client. If omitted, the `region` argument of the provider is used. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/get_share.py b/sdk/python/pulumi_openstack/sharedfilesystem/get_share.py index ba7edf293..e46a316eb 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/get_share.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/get_share.py @@ -72,35 +72,21 @@ def __init__(__self__, availability_zone=None, description=None, export_location @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> str: - """ - The share availability zone. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter def description(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="exportLocationPath") def export_location_path(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "export_location_path") @property @pulumi.getter(name="exportLocations") def export_locations(self) -> Sequence['outputs.GetShareExportLocationResult']: - """ - A list of export locations. For example, when a share - server has more than one network interface, it can have multiple export - locations. - """ return pulumi.get(self, "export_locations") @property @@ -114,81 +100,51 @@ def id(self) -> str: @property @pulumi.getter(name="isPublic") def is_public(self) -> bool: - """ - See Argument Reference above. - """ return pulumi.get(self, "is_public") @property @pulumi.getter def metadata(self) -> Mapping[str, str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - The region in which to obtain the V2 Shared File System client. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="shareNetworkId") def share_network_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "share_network_id") @property @pulumi.getter(name="shareProto") def share_proto(self) -> str: - """ - The share protocol. - """ return pulumi.get(self, "share_proto") @property @pulumi.getter def size(self) -> int: - """ - The share size, in GBs. - """ return pulumi.get(self, "size") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "snapshot_id") @property @pulumi.getter def status(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @@ -226,34 +182,7 @@ def get_share(description: Optional[str] = None, status: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetShareResult: """ - Use this data source to get the ID of an available Shared File System share. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - share1 = openstack.sharedfilesystem.get_share(name="share_1") - ``` - - - :param str description: The human-readable description for the share. - :param str export_location_path: The export location path of the share. Available - since Manila API version 2.35. - :param bool is_public: The level of visibility for the share. - length. - :param Mapping[str, str] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param str name: The name of the share. - :param str region: The region in which to obtain the V2 Shared File System client. - :param str share_network_id: The UUID of the share's share network. - :param str snapshot_id: The UUID of the share's base snapshot. - :param str status: A share status filter. A valid value is `creating`, - `error`, `available`, `deleting`, `error_deleting`, `manage_starting`, - `manage_error`, `unmanage_starting`, `unmanage_error`, `unmanaged`, - `extending`, `extending_error`, `shrinking`, `shrinking_error`, or - `shrinking_possible_data_loss_error`. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -298,33 +227,6 @@ def get_share_output(description: Optional[pulumi.Input[Optional[str]]] = None, status: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetShareResult]: """ - Use this data source to get the ID of an available Shared File System share. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - share1 = openstack.sharedfilesystem.get_share(name="share_1") - ``` - - - :param str description: The human-readable description for the share. - :param str export_location_path: The export location path of the share. Available - since Manila API version 2.35. - :param bool is_public: The level of visibility for the share. - length. - :param Mapping[str, str] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param str name: The name of the share. - :param str region: The region in which to obtain the V2 Shared File System client. - :param str share_network_id: The UUID of the share's share network. - :param str snapshot_id: The UUID of the share's base snapshot. - :param str status: A share status filter. A valid value is `creating`, - `error`, `available`, `deleting`, `error_deleting`, `manage_starting`, - `manage_error`, `unmanage_starting`, `unmanage_error`, `unmanaged`, - `extending`, `extending_error`, `shrinking`, `shrinking_error`, or - `shrinking_possible_data_loss_error`. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/get_share_network.py b/sdk/python/pulumi_openstack/sharedfilesystem/get_share_network.py index 2e89f5c09..9d69d1acf 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/get_share_network.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/get_share_network.py @@ -65,17 +65,11 @@ def __init__(__self__, cidr=None, description=None, id=None, ip_version=None, na @property @pulumi.getter def cidr(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "cidr") @property @pulumi.getter def description(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @@ -89,82 +83,51 @@ def id(self) -> str: @property @pulumi.getter(name="ipVersion") def ip_version(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkType") def network_type(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "network_type") @property @pulumi.getter(name="neutronNetId") def neutron_net_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "neutron_net_id") @property @pulumi.getter(name="neutronSubnetId") def neutron_subnet_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "neutron_subnet_id") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - The owner of the Share Network. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityServiceId") def security_service_id(self) -> Optional[str]: - """ - See Argument Reference above. - """ return pulumi.get(self, "security_service_id") @property @pulumi.getter(name="securityServiceIds") def security_service_ids(self) -> Sequence[str]: - """ - The list of security service IDs associated with - the share network. - """ return pulumi.get(self, "security_service_ids") @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> int: - """ - See Argument Reference above. - """ return pulumi.get(self, "segmentation_id") @@ -200,31 +163,7 @@ def get_share_network(description: Optional[str] = None, segmentation_id: Optional[int] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetShareNetworkResult: """ - Use this data source to get the ID of an available Shared File System share network. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - sharenetwork1 = openstack.sharedfilesystem.get_share_network(name="sharenetwork_1") - ``` - - - :param str description: The human-readable description of the share network. - :param int ip_version: The IP version of the share network. Can either be 4 or 6. - :param str name: The name of the share network. - :param str network_type: The share network type. Can either be VLAN, VXLAN, - GRE, or flat. - :param str neutron_net_id: The neutron network UUID of the share network. - :param str neutron_subnet_id: The neutron subnet UUID of the share network. - :param str region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to read a share network. If omitted, the - `region` argument of the provider is used. - :param str security_service_id: The security service IDs associated with - the share network. - :param int segmentation_id: The share network segmentation ID. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -267,30 +206,6 @@ def get_share_network_output(description: Optional[pulumi.Input[Optional[str]]] segmentation_id: Optional[pulumi.Input[Optional[int]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetShareNetworkResult]: """ - Use this data source to get the ID of an available Shared File System share network. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - sharenetwork1 = openstack.sharedfilesystem.get_share_network(name="sharenetwork_1") - ``` - - - :param str description: The human-readable description of the share network. - :param int ip_version: The IP version of the share network. Can either be 4 or 6. - :param str name: The name of the share network. - :param str network_type: The share network type. Can either be VLAN, VXLAN, - GRE, or flat. - :param str neutron_net_id: The neutron network UUID of the share network. - :param str neutron_subnet_id: The neutron subnet UUID of the share network. - :param str region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to read a share network. If omitted, the - `region` argument of the provider is used. - :param str security_service_id: The security service IDs associated with - the share network. - :param int segmentation_id: The share network segmentation ID. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/get_snapshot.py b/sdk/python/pulumi_openstack/sharedfilesystem/get_snapshot.py index f97ef76ae..8ca67d397 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/get_snapshot.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/get_snapshot.py @@ -56,9 +56,6 @@ def __init__(__self__, description=None, id=None, name=None, project_id=None, re @property @pulumi.getter def description(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "description") @property @@ -72,17 +69,11 @@ def id(self) -> str: @property @pulumi.getter def name(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "project_id") @property @@ -93,41 +84,26 @@ def region(self) -> str: @property @pulumi.getter(name="shareId") def share_id(self) -> str: - """ - The UUID of the source share that was used to create the snapshot. - """ return pulumi.get(self, "share_id") @property @pulumi.getter(name="shareProto") def share_proto(self) -> str: - """ - The file system protocol of a share snapshot. - """ return pulumi.get(self, "share_proto") @property @pulumi.getter(name="shareSize") def share_size(self) -> int: - """ - The share snapshot size, in GBs. - """ return pulumi.get(self, "share_size") @property @pulumi.getter def size(self) -> int: - """ - The snapshot size, in GBs. - """ return pulumi.get(self, "size") @property @pulumi.getter def status(self) -> str: - """ - See Argument Reference above. - """ return pulumi.get(self, "status") @@ -156,25 +132,7 @@ def get_snapshot(description: Optional[str] = None, status: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSnapshotResult: """ - Use this data source to get the ID of an available Shared File System snapshot. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - snapshot1 = openstack.sharedfilesystem.get_snapshot(name="snapshot_1") - ``` - - - :param str description: The human-readable description of the snapshot. - :param str name: The name of the snapshot. - :param str region: The region in which to obtain the V2 Shared File System client. - :param str share_id: The UUID of the source share that was used to create the snapshot. - :param str status: A snapshot status filter. A valid value is `available`, `error`, - `creating`, `deleting`, `manage_starting`, `manage_error`, `unmanage_starting`, - `unmanage_error` or `error_deleting`. + Use this data source to access information about an existing resource. """ __args__ = dict() __args__['description'] = description @@ -206,24 +164,6 @@ def get_snapshot_output(description: Optional[pulumi.Input[Optional[str]]] = Non status: Optional[pulumi.Input[Optional[str]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSnapshotResult]: """ - Use this data source to get the ID of an available Shared File System snapshot. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - snapshot1 = openstack.sharedfilesystem.get_snapshot(name="snapshot_1") - ``` - - - :param str description: The human-readable description of the snapshot. - :param str name: The name of the snapshot. - :param str region: The region in which to obtain the V2 Shared File System client. - :param str share_id: The UUID of the source share that was used to create the snapshot. - :param str status: A snapshot status filter. A valid value is `available`, `error`, - `creating`, `deleting`, `manage_starting`, `manage_error`, `unmanage_starting`, - `unmanage_error` or `error_deleting`. + Use this data source to access information about an existing resource. """ ... diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/security_service.py b/sdk/python/pulumi_openstack/sharedfilesystem/security_service.py index 335865b80..87297bac8 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/security_service.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/security_service.py @@ -26,25 +26,6 @@ def __init__(__self__, *, user: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a SecurityService resource. - :param pulumi.Input[str] type: The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - :param pulumi.Input[str] description: The human-readable description for the security service. - Changing this updates the description of the existing security service. - :param pulumi.Input[str] dns_ip: The security service DNS IP address that is used inside the - tenant network. - :param pulumi.Input[str] domain: The security service domain. - :param pulumi.Input[str] name: The name of the security service. Changing this updates the name - of the existing security service. - :param pulumi.Input[str] ou: The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - :param pulumi.Input[str] password: The user password, if you specify a user. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - :param pulumi.Input[str] server: The security service host name or IP address. - :param pulumi.Input[str] user: The security service user or group name that is used by the - tenant. """ pulumi.set(__self__, "type", type) if description is not None: @@ -69,10 +50,6 @@ def __init__(__self__, *, @property @pulumi.getter def type(self) -> pulumi.Input[str]: - """ - The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - """ return pulumi.get(self, "type") @type.setter @@ -82,10 +59,6 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the security service. - Changing this updates the description of the existing security service. - """ return pulumi.get(self, "description") @description.setter @@ -95,10 +68,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsIp") def dns_ip(self) -> Optional[pulumi.Input[str]]: - """ - The security service DNS IP address that is used inside the - tenant network. - """ return pulumi.get(self, "dns_ip") @dns_ip.setter @@ -108,9 +77,6 @@ def dns_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def domain(self) -> Optional[pulumi.Input[str]]: - """ - The security service domain. - """ return pulumi.get(self, "domain") @domain.setter @@ -120,10 +86,6 @@ def domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the security service. Changing this updates the name - of the existing security service. - """ return pulumi.get(self, "name") @name.setter @@ -133,10 +95,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ou(self) -> Optional[pulumi.Input[str]]: - """ - The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - """ return pulumi.get(self, "ou") @ou.setter @@ -146,9 +104,6 @@ def ou(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - The user password, if you specify a user. - """ return pulumi.get(self, "password") @password.setter @@ -158,12 +113,6 @@ def password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - """ return pulumi.get(self, "region") @region.setter @@ -173,9 +122,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def server(self) -> Optional[pulumi.Input[str]]: - """ - The security service host name or IP address. - """ return pulumi.get(self, "server") @server.setter @@ -185,10 +131,6 @@ def server(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def user(self) -> Optional[pulumi.Input[str]]: - """ - The security service user or group name that is used by the - tenant. - """ return pulumi.get(self, "user") @user.setter @@ -212,26 +154,6 @@ def __init__(__self__, *, user: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SecurityService resources. - :param pulumi.Input[str] description: The human-readable description for the security service. - Changing this updates the description of the existing security service. - :param pulumi.Input[str] dns_ip: The security service DNS IP address that is used inside the - tenant network. - :param pulumi.Input[str] domain: The security service domain. - :param pulumi.Input[str] name: The name of the security service. Changing this updates the name - of the existing security service. - :param pulumi.Input[str] ou: The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - :param pulumi.Input[str] password: The user password, if you specify a user. - :param pulumi.Input[str] project_id: The owner of the Security Service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - :param pulumi.Input[str] server: The security service host name or IP address. - :param pulumi.Input[str] type: The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - :param pulumi.Input[str] user: The security service user or group name that is used by the - tenant. """ if description is not None: pulumi.set(__self__, "description", description) @@ -259,10 +181,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the security service. - Changing this updates the description of the existing security service. - """ return pulumi.get(self, "description") @description.setter @@ -272,10 +190,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="dnsIp") def dns_ip(self) -> Optional[pulumi.Input[str]]: - """ - The security service DNS IP address that is used inside the - tenant network. - """ return pulumi.get(self, "dns_ip") @dns_ip.setter @@ -285,9 +199,6 @@ def dns_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def domain(self) -> Optional[pulumi.Input[str]]: - """ - The security service domain. - """ return pulumi.get(self, "domain") @domain.setter @@ -297,10 +208,6 @@ def domain(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the security service. Changing this updates the name - of the existing security service. - """ return pulumi.get(self, "name") @name.setter @@ -310,10 +217,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ou(self) -> Optional[pulumi.Input[str]]: - """ - The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - """ return pulumi.get(self, "ou") @ou.setter @@ -323,9 +226,6 @@ def ou(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def password(self) -> Optional[pulumi.Input[str]]: - """ - The user password, if you specify a user. - """ return pulumi.get(self, "password") @password.setter @@ -335,9 +235,6 @@ def password(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the Security Service. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -347,12 +244,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - """ return pulumi.get(self, "region") @region.setter @@ -362,9 +253,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def server(self) -> Optional[pulumi.Input[str]]: - """ - The security service host name or IP address. - """ return pulumi.get(self, "server") @server.setter @@ -374,10 +262,6 @@ def server(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - """ return pulumi.get(self, "type") @type.setter @@ -387,10 +271,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def user(self) -> Optional[pulumi.Input[str]]: - """ - The security service user or group name that is used by the - tenant. - """ return pulumi.get(self, "user") @user.setter @@ -415,66 +295,9 @@ def __init__(__self__, user: Optional[pulumi.Input[str]] = None, __props__=None): """ - Use this resource to configure a security service. - - > **Note:** All arguments including the security service password will be - stored in the raw state as plain-text. [Read more about sensitive data in - state](https://www.terraform.io/docs/state/sensitive-data.html). - - A security service stores configuration information for clients for - authentication and authorization (AuthN/AuthZ). For example, a share server - will be the client for an existing service such as LDAP, Kerberos, or - Microsoft Active Directory. - - Minimum supported Manila microversion is 2.7. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - ``` - - ## Import - - This resource can be imported by specifying the ID of the security service: - - ```sh - $ pulumi import openstack:sharedfilesystem/securityService:SecurityService securityservice_1 id - ``` - + Create a SecurityService resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The human-readable description for the security service. - Changing this updates the description of the existing security service. - :param pulumi.Input[str] dns_ip: The security service DNS IP address that is used inside the - tenant network. - :param pulumi.Input[str] domain: The security service domain. - :param pulumi.Input[str] name: The name of the security service. Changing this updates the name - of the existing security service. - :param pulumi.Input[str] ou: The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - :param pulumi.Input[str] password: The user password, if you specify a user. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - :param pulumi.Input[str] server: The security service host name or IP address. - :param pulumi.Input[str] type: The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - :param pulumi.Input[str] user: The security service user or group name that is used by the - tenant. """ ... @overload @@ -483,45 +306,7 @@ def __init__(__self__, args: SecurityServiceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Use this resource to configure a security service. - - > **Note:** All arguments including the security service password will be - stored in the raw state as plain-text. [Read more about sensitive data in - state](https://www.terraform.io/docs/state/sensitive-data.html). - - A security service stores configuration information for clients for - authentication and authorization (AuthN/AuthZ). For example, a share server - will be the client for an existing service such as LDAP, Kerberos, or - Microsoft Active Directory. - - Minimum supported Manila microversion is 2.7. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - ``` - - ## Import - - This resource can be imported by specifying the ID of the security service: - - ```sh - $ pulumi import openstack:sharedfilesystem/securityService:SecurityService securityservice_1 id - ``` - + Create a SecurityService resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SecurityServiceArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -599,26 +384,6 @@ def get(resource_name: str, :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] description: The human-readable description for the security service. - Changing this updates the description of the existing security service. - :param pulumi.Input[str] dns_ip: The security service DNS IP address that is used inside the - tenant network. - :param pulumi.Input[str] domain: The security service domain. - :param pulumi.Input[str] name: The name of the security service. Changing this updates the name - of the existing security service. - :param pulumi.Input[str] ou: The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - :param pulumi.Input[str] password: The user password, if you specify a user. - :param pulumi.Input[str] project_id: The owner of the Security Service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - :param pulumi.Input[str] server: The security service host name or IP address. - :param pulumi.Input[str] type: The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - :param pulumi.Input[str] user: The security service user or group name that is used by the - tenant. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -640,97 +405,55 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the security service. - Changing this updates the description of the existing security service. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="dnsIp") def dns_ip(self) -> pulumi.Output[Optional[str]]: - """ - The security service DNS IP address that is used inside the - tenant network. - """ return pulumi.get(self, "dns_ip") @property @pulumi.getter def domain(self) -> pulumi.Output[Optional[str]]: - """ - The security service domain. - """ return pulumi.get(self, "domain") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the security service. Changing this updates the name - of the existing security service. - """ return pulumi.get(self, "name") @property @pulumi.getter def ou(self) -> pulumi.Output[Optional[str]]: - """ - The security service ou. An organizational unit can be added to - specify where the share ends up. New in Manila microversion 2.44. - """ return pulumi.get(self, "ou") @property @pulumi.getter def password(self) -> pulumi.Output[Optional[str]]: - """ - The user password, if you specify a user. - """ return pulumi.get(self, "password") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the Security Service. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a security service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - security service. - """ return pulumi.get(self, "region") @property @pulumi.getter def server(self) -> pulumi.Output[Optional[str]]: - """ - The security service host name or IP address. - """ return pulumi.get(self, "server") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The security service type - can either be active\\_directory, - kerberos or ldap. Changing this updates the existing security service. - """ return pulumi.get(self, "type") @property @pulumi.getter def user(self) -> pulumi.Output[Optional[str]]: - """ - The security service user or group name that is used by the - tenant. - """ return pulumi.get(self, "user") diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/share.py b/sdk/python/pulumi_openstack/sharedfilesystem/share.py index e565ae23b..e7598c72c 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/share.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/share.py @@ -29,31 +29,6 @@ def __init__(__self__, *, snapshot_id: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Share resource. - :param pulumi.Input[str] share_proto: The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - :param pulumi.Input[int] size: The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - :param pulumi.Input[str] availability_zone: The share availability zone. Changing this creates a - new share. - :param pulumi.Input[str] description: The human-readable description for the share. - Changing this updates the description of the existing share. - :param pulumi.Input[bool] is_public: The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param pulumi.Input[str] name: The name of the share. Changing this updates the name - of the existing share. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - :param pulumi.Input[str] share_network_id: The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - :param pulumi.Input[str] share_type: The share type name. If you omit this parameter, the default - share type is used. - :param pulumi.Input[str] snapshot_id: The UUID of the share's base snapshot. Changing this creates - a new share. """ pulumi.set(__self__, "share_proto", share_proto) pulumi.set(__self__, "size", size) @@ -79,10 +54,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="shareProto") def share_proto(self) -> pulumi.Input[str]: - """ - The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - """ return pulumi.get(self, "share_proto") @share_proto.setter @@ -92,10 +63,6 @@ def share_proto(self, value: pulumi.Input[str]): @property @pulumi.getter def size(self) -> pulumi.Input[int]: - """ - The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - """ return pulumi.get(self, "size") @size.setter @@ -105,10 +72,6 @@ def size(self, value: pulumi.Input[int]): @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The share availability zone. Changing this creates a - new share. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -118,10 +81,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the share. - Changing this updates the description of the existing share. - """ return pulumi.get(self, "description") @description.setter @@ -131,11 +90,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -145,10 +99,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - One or more metadata key and value pairs as a dictionary of - strings. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -158,10 +108,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the share. Changing this updates the name - of the existing share. - """ return pulumi.get(self, "name") @name.setter @@ -171,11 +117,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - """ return pulumi.get(self, "region") @region.setter @@ -185,11 +126,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareNetworkId") def share_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - """ return pulumi.get(self, "share_network_id") @share_network_id.setter @@ -199,10 +135,6 @@ def share_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareType") def share_type(self) -> Optional[pulumi.Input[str]]: - """ - The share type name. If you omit this parameter, the default - share type is used. - """ return pulumi.get(self, "share_type") @share_type.setter @@ -212,10 +144,6 @@ def share_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the share's base snapshot. Changing this creates - a new share. - """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -246,40 +174,6 @@ def __init__(__self__, *, snapshot_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Share resources. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] all_metadata: The map of metadata, assigned on the share, which has been - explicitly and implicitly added. - :param pulumi.Input[str] availability_zone: The share availability zone. Changing this creates a - new share. - :param pulumi.Input[str] description: The human-readable description for the share. - Changing this updates the description of the existing share. - :param pulumi.Input[Sequence[pulumi.Input['ShareExportLocationArgs']]] export_locations: A list of export locations. For example, when a share server - has more than one network interface, it can have multiple export locations. - :param pulumi.Input[bool] has_replicas: Indicates whether a share has replicas or not. - :param pulumi.Input[str] host: The share host name. - :param pulumi.Input[bool] is_public: The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param pulumi.Input[str] name: The name of the share. Changing this updates the name - of the existing share. - :param pulumi.Input[str] project_id: The owner of the Share. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - :param pulumi.Input[str] replication_type: The share replication type. - :param pulumi.Input[str] share_network_id: The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - :param pulumi.Input[str] share_proto: The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - :param pulumi.Input[str] share_server_id: The UUID of the share server. - :param pulumi.Input[str] share_type: The share type name. If you omit this parameter, the default - share type is used. - :param pulumi.Input[int] size: The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - :param pulumi.Input[str] snapshot_id: The UUID of the share's base snapshot. Changing this creates - a new share. """ if all_metadata is not None: pulumi.set(__self__, "all_metadata", all_metadata) @@ -321,10 +215,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="allMetadata") def all_metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - The map of metadata, assigned on the share, which has been - explicitly and implicitly added. - """ return pulumi.get(self, "all_metadata") @all_metadata.setter @@ -334,10 +224,6 @@ def all_metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[st @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> Optional[pulumi.Input[str]]: - """ - The share availability zone. Changing this creates a - new share. - """ return pulumi.get(self, "availability_zone") @availability_zone.setter @@ -347,10 +233,6 @@ def availability_zone(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the share. - Changing this updates the description of the existing share. - """ return pulumi.get(self, "description") @description.setter @@ -360,10 +242,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="exportLocations") def export_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ShareExportLocationArgs']]]]: - """ - A list of export locations. For example, when a share server - has more than one network interface, it can have multiple export locations. - """ return pulumi.get(self, "export_locations") @export_locations.setter @@ -373,9 +251,6 @@ def export_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['S @property @pulumi.getter(name="hasReplicas") def has_replicas(self) -> Optional[pulumi.Input[bool]]: - """ - Indicates whether a share has replicas or not. - """ return pulumi.get(self, "has_replicas") @has_replicas.setter @@ -385,9 +260,6 @@ def has_replicas(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def host(self) -> Optional[pulumi.Input[str]]: - """ - The share host name. - """ return pulumi.get(self, "host") @host.setter @@ -397,11 +269,6 @@ def host(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="isPublic") def is_public(self) -> Optional[pulumi.Input[bool]]: - """ - The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - """ return pulumi.get(self, "is_public") @is_public.setter @@ -411,10 +278,6 @@ def is_public(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - One or more metadata key and value pairs as a dictionary of - strings. - """ return pulumi.get(self, "metadata") @metadata.setter @@ -424,10 +287,6 @@ def metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the share. Changing this updates the name - of the existing share. - """ return pulumi.get(self, "name") @name.setter @@ -437,9 +296,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the Share. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -449,11 +305,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - """ return pulumi.get(self, "region") @region.setter @@ -463,9 +314,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="replicationType") def replication_type(self) -> Optional[pulumi.Input[str]]: - """ - The share replication type. - """ return pulumi.get(self, "replication_type") @replication_type.setter @@ -475,11 +323,6 @@ def replication_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareNetworkId") def share_network_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - """ return pulumi.get(self, "share_network_id") @share_network_id.setter @@ -489,10 +332,6 @@ def share_network_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareProto") def share_proto(self) -> Optional[pulumi.Input[str]]: - """ - The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - """ return pulumi.get(self, "share_proto") @share_proto.setter @@ -502,9 +341,6 @@ def share_proto(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareServerId") def share_server_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the share server. - """ return pulumi.get(self, "share_server_id") @share_server_id.setter @@ -514,10 +350,6 @@ def share_server_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareType") def share_type(self) -> Optional[pulumi.Input[str]]: - """ - The share type name. If you omit this parameter, the default - share type is used. - """ return pulumi.get(self, "share_type") @share_type.setter @@ -527,10 +359,6 @@ def share_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def size(self) -> Optional[pulumi.Input[int]]: - """ - The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - """ return pulumi.get(self, "size") @size.setter @@ -540,10 +368,6 @@ def size(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the share's base snapshot. Changing this creates - a new share. - """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -569,70 +393,9 @@ def __init__(__self__, snapshot_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Use this resource to configure a share. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - share1 = openstack.sharedfilesystem.Share("share_1", - name="nfs_share", - description="test share description", - share_proto="NFS", - size=1, - share_network_id=sharenetwork1.id) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share: - - ```sh - $ pulumi import openstack:sharedfilesystem/share:Share share_1 id - ``` - + Create a Share resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] availability_zone: The share availability zone. Changing this creates a - new share. - :param pulumi.Input[str] description: The human-readable description for the share. - Changing this updates the description of the existing share. - :param pulumi.Input[bool] is_public: The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param pulumi.Input[str] name: The name of the share. Changing this updates the name - of the existing share. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - :param pulumi.Input[str] share_network_id: The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - :param pulumi.Input[str] share_proto: The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - :param pulumi.Input[str] share_type: The share type name. If you omit this parameter, the default - share type is used. - :param pulumi.Input[int] size: The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - :param pulumi.Input[str] snapshot_id: The UUID of the share's base snapshot. Changing this creates - a new share. """ ... @overload @@ -641,43 +404,7 @@ def __init__(__self__, args: ShareArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Use this resource to configure a share. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - share1 = openstack.sharedfilesystem.Share("share_1", - name="nfs_share", - description="test share description", - share_proto="NFS", - size=1, - share_network_id=sharenetwork1.id) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share: - - ```sh - $ pulumi import openstack:sharedfilesystem/share:Share share_1 id - ``` - + Create a Share resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ShareArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -770,40 +497,6 @@ def get(resource_name: str, :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[Mapping[str, pulumi.Input[str]]] all_metadata: The map of metadata, assigned on the share, which has been - explicitly and implicitly added. - :param pulumi.Input[str] availability_zone: The share availability zone. Changing this creates a - new share. - :param pulumi.Input[str] description: The human-readable description for the share. - Changing this updates the description of the existing share. - :param pulumi.Input[Sequence[pulumi.Input[Union['ShareExportLocationArgs', 'ShareExportLocationArgsDict']]]] export_locations: A list of export locations. For example, when a share server - has more than one network interface, it can have multiple export locations. - :param pulumi.Input[bool] has_replicas: Indicates whether a share has replicas or not. - :param pulumi.Input[str] host: The share host name. - :param pulumi.Input[bool] is_public: The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: One or more metadata key and value pairs as a dictionary of - strings. - :param pulumi.Input[str] name: The name of the share. Changing this updates the name - of the existing share. - :param pulumi.Input[str] project_id: The owner of the Share. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - :param pulumi.Input[str] replication_type: The share replication type. - :param pulumi.Input[str] share_network_id: The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - :param pulumi.Input[str] share_proto: The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - :param pulumi.Input[str] share_server_id: The UUID of the share server. - :param pulumi.Input[str] share_type: The share type name. If you omit this parameter, the default - share type is used. - :param pulumi.Input[int] size: The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - :param pulumi.Input[str] snapshot_id: The UUID of the share's base snapshot. Changing this creates - a new share. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -832,160 +525,90 @@ def get(resource_name: str, @property @pulumi.getter(name="allMetadata") def all_metadata(self) -> pulumi.Output[Mapping[str, str]]: - """ - The map of metadata, assigned on the share, which has been - explicitly and implicitly added. - """ return pulumi.get(self, "all_metadata") @property @pulumi.getter(name="availabilityZone") def availability_zone(self) -> pulumi.Output[str]: - """ - The share availability zone. Changing this creates a - new share. - """ return pulumi.get(self, "availability_zone") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the share. - Changing this updates the description of the existing share. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="exportLocations") def export_locations(self) -> pulumi.Output[Sequence['outputs.ShareExportLocation']]: - """ - A list of export locations. For example, when a share server - has more than one network interface, it can have multiple export locations. - """ return pulumi.get(self, "export_locations") @property @pulumi.getter(name="hasReplicas") def has_replicas(self) -> pulumi.Output[bool]: - """ - Indicates whether a share has replicas or not. - """ return pulumi.get(self, "has_replicas") @property @pulumi.getter def host(self) -> pulumi.Output[str]: - """ - The share host name. - """ return pulumi.get(self, "host") @property @pulumi.getter(name="isPublic") def is_public(self) -> pulumi.Output[Optional[bool]]: - """ - The level of visibility for the share. Set to true to make - share public. Set to false to make it private. Default value is false. Changing this - updates the existing share. - """ return pulumi.get(self, "is_public") @property @pulumi.getter def metadata(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - One or more metadata key and value pairs as a dictionary of - strings. - """ return pulumi.get(self, "metadata") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the share. Changing this updates the name - of the existing share. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the Share. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share. Changing this - creates a new share. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="replicationType") def replication_type(self) -> pulumi.Output[str]: - """ - The share replication type. - """ return pulumi.get(self, "replication_type") @property @pulumi.getter(name="shareNetworkId") def share_network_id(self) -> pulumi.Output[str]: - """ - The UUID of a share network where the share server exists - or will be created. If `share_network_id` is not set and you provide a `snapshot_id`, - the share_network_id value from the snapshot is used. Changing this creates a new share. - """ return pulumi.get(self, "share_network_id") @property @pulumi.getter(name="shareProto") def share_proto(self) -> pulumi.Output[str]: - """ - The share protocol - can either be NFS, CIFS, - CEPHFS, GLUSTERFS, HDFS or MAPRFS. Changing this creates a new share. - """ return pulumi.get(self, "share_proto") @property @pulumi.getter(name="shareServerId") def share_server_id(self) -> pulumi.Output[str]: - """ - The UUID of the share server. - """ return pulumi.get(self, "share_server_id") @property @pulumi.getter(name="shareType") def share_type(self) -> pulumi.Output[str]: - """ - The share type name. If you omit this parameter, the default - share type is used. - """ return pulumi.get(self, "share_type") @property @pulumi.getter def size(self) -> pulumi.Output[int]: - """ - The share size, in GBs. The requested share size cannot be greater - than the allowed GB quota. Changing this resizes the existing share. - """ return pulumi.get(self, "size") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> pulumi.Output[Optional[str]]: - """ - The UUID of the share's base snapshot. Changing this creates - a new share. - """ return pulumi.get(self, "snapshot_id") diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/share_access.py b/sdk/python/pulumi_openstack/sharedfilesystem/share_access.py index d726e1c53..8e9e0afc1 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/share_access.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/share_access.py @@ -21,16 +21,6 @@ def __init__(__self__, *, region: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a ShareAccess resource. - :param pulumi.Input[str] access_level: The access level to the share. Can either be `rw` or `ro`. - :param pulumi.Input[str] access_to: The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - :param pulumi.Input[str] access_type: The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - :param pulumi.Input[str] share_id: The UUID of the share to which you are granted access. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. """ pulumi.set(__self__, "access_level", access_level) pulumi.set(__self__, "access_to", access_to) @@ -42,9 +32,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessLevel") def access_level(self) -> pulumi.Input[str]: - """ - The access level to the share. Can either be `rw` or `ro`. - """ return pulumi.get(self, "access_level") @access_level.setter @@ -54,10 +41,6 @@ def access_level(self, value: pulumi.Input[str]): @property @pulumi.getter(name="accessTo") def access_to(self) -> pulumi.Input[str]: - """ - The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - """ return pulumi.get(self, "access_to") @access_to.setter @@ -67,11 +50,6 @@ def access_to(self, value: pulumi.Input[str]): @property @pulumi.getter(name="accessType") def access_type(self) -> pulumi.Input[str]: - """ - The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - """ return pulumi.get(self, "access_type") @access_type.setter @@ -81,9 +59,6 @@ def access_type(self, value: pulumi.Input[str]): @property @pulumi.getter(name="shareId") def share_id(self) -> pulumi.Input[str]: - """ - The UUID of the share to which you are granted access. - """ return pulumi.get(self, "share_id") @share_id.setter @@ -93,11 +68,6 @@ def share_id(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - """ return pulumi.get(self, "region") @region.setter @@ -117,18 +87,6 @@ def __init__(__self__, *, state: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ShareAccess resources. - :param pulumi.Input[str] access_key: The access credential of the entity granted access. - :param pulumi.Input[str] access_level: The access level to the share. Can either be `rw` or `ro`. - :param pulumi.Input[str] access_to: The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - :param pulumi.Input[str] access_type: The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - :param pulumi.Input[str] share_id: The UUID of the share to which you are granted access. - :param pulumi.Input[str] state: The share access state. """ if access_key is not None: pulumi.set(__self__, "access_key", access_key) @@ -148,9 +106,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="accessKey") def access_key(self) -> Optional[pulumi.Input[str]]: - """ - The access credential of the entity granted access. - """ return pulumi.get(self, "access_key") @access_key.setter @@ -160,9 +115,6 @@ def access_key(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="accessLevel") def access_level(self) -> Optional[pulumi.Input[str]]: - """ - The access level to the share. Can either be `rw` or `ro`. - """ return pulumi.get(self, "access_level") @access_level.setter @@ -172,10 +124,6 @@ def access_level(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="accessTo") def access_to(self) -> Optional[pulumi.Input[str]]: - """ - The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - """ return pulumi.get(self, "access_to") @access_to.setter @@ -185,11 +133,6 @@ def access_to(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="accessType") def access_type(self) -> Optional[pulumi.Input[str]]: - """ - The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - """ return pulumi.get(self, "access_type") @access_type.setter @@ -199,11 +142,6 @@ def access_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - """ return pulumi.get(self, "region") @region.setter @@ -213,9 +151,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="shareId") def share_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the share to which you are granted access. - """ return pulumi.get(self, "share_id") @share_id.setter @@ -225,9 +160,6 @@ def share_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def state(self) -> Optional[pulumi.Input[str]]: - """ - The share access state. - """ return pulumi.get(self, "state") @state.setter @@ -247,109 +179,9 @@ def __init__(__self__, share_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - ## Example Usage - - ### NFS - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - share1 = openstack.sharedfilesystem.Share("share_1", - name="nfs_share", - description="test share description", - share_proto="NFS", - size=1, - share_network_id=sharenetwork1.id) - share_access1 = openstack.sharedfilesystem.ShareAccess("share_access_1", - share_id=share1.id, - access_type="ip", - access_to="192.168.199.10", - access_level="rw") - ``` - - ### CIFS - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork_secure", - description="share the secure love", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id, - security_service_ids=[securityservice1.id]) - share1 = openstack.sharedfilesystem.Share("share_1", - name="cifs_share", - share_proto="CIFS", - size=1, - share_network_id=sharenetwork1.id) - share_access1 = openstack.sharedfilesystem.ShareAccess("share_access_1", - share_id=share1.id, - access_type="user", - access_to="windows", - access_level="ro") - share_access2 = openstack.sharedfilesystem.ShareAccess("share_access_2", - share_id=share1.id, - access_type="user", - access_to="linux", - access_level="rw") - pulumi.export("exportLocations", share1.export_locations) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share and the ID of the - share access, separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:sharedfilesystem/shareAccess:ShareAccess share_access_1 share_id/share_access_id - ``` - + Create a ShareAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_level: The access level to the share. Can either be `rw` or `ro`. - :param pulumi.Input[str] access_to: The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - :param pulumi.Input[str] access_type: The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - :param pulumi.Input[str] share_id: The UUID of the share to which you are granted access. """ ... @overload @@ -358,97 +190,7 @@ def __init__(__self__, args: ShareAccessArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - ## Example Usage - - ### NFS - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - share1 = openstack.sharedfilesystem.Share("share_1", - name="nfs_share", - description="test share description", - share_proto="NFS", - size=1, - share_network_id=sharenetwork1.id) - share_access1 = openstack.sharedfilesystem.ShareAccess("share_access_1", - share_id=share1.id, - access_type="ip", - access_to="192.168.199.10", - access_level="rw") - ``` - - ### CIFS - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork_secure", - description="share the secure love", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id, - security_service_ids=[securityservice1.id]) - share1 = openstack.sharedfilesystem.Share("share_1", - name="cifs_share", - share_proto="CIFS", - size=1, - share_network_id=sharenetwork1.id) - share_access1 = openstack.sharedfilesystem.ShareAccess("share_access_1", - share_id=share1.id, - access_type="user", - access_to="windows", - access_level="ro") - share_access2 = openstack.sharedfilesystem.ShareAccess("share_access_2", - share_id=share1.id, - access_type="user", - access_to="linux", - access_level="rw") - pulumi.export("exportLocations", share1.export_locations) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share and the ID of the - share access, separated by a slash, e.g.: - - ```sh - $ pulumi import openstack:sharedfilesystem/shareAccess:ShareAccess share_access_1 share_id/share_access_id - ``` - + Create a ShareAccess resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ShareAccessArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -519,18 +261,6 @@ def get(resource_name: str, :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] access_key: The access credential of the entity granted access. - :param pulumi.Input[str] access_level: The access level to the share. Can either be `rw` or `ro`. - :param pulumi.Input[str] access_to: The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - :param pulumi.Input[str] access_type: The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - :param pulumi.Input[str] share_id: The UUID of the share to which you are granted access. - :param pulumi.Input[str] state: The share access state. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -548,61 +278,35 @@ def get(resource_name: str, @property @pulumi.getter(name="accessKey") def access_key(self) -> pulumi.Output[str]: - """ - The access credential of the entity granted access. - """ return pulumi.get(self, "access_key") @property @pulumi.getter(name="accessLevel") def access_level(self) -> pulumi.Output[str]: - """ - The access level to the share. Can either be `rw` or `ro`. - """ return pulumi.get(self, "access_level") @property @pulumi.getter(name="accessTo") def access_to(self) -> pulumi.Output[str]: - """ - The value that defines the access. Can either be an IP - address or a username verified by configured Security Service of the Share Network. - """ return pulumi.get(self, "access_to") @property @pulumi.getter(name="accessType") def access_type(self) -> pulumi.Output[str]: - """ - The access rule type. Can either be an ip, user, - cert, or cephx. cephx support requires an OpenStack environment that supports - Shared Filesystem microversion 2.13 (Mitaka) or later. - """ return pulumi.get(self, "access_type") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share access. Changing this - creates a new share access. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="shareId") def share_id(self) -> pulumi.Output[str]: - """ - The UUID of the share to which you are granted access. - """ return pulumi.get(self, "share_id") @property @pulumi.getter def state(self) -> pulumi.Output[str]: - """ - The share access state. - """ return pulumi.get(self, "state") diff --git a/sdk/python/pulumi_openstack/sharedfilesystem/share_network.py b/sdk/python/pulumi_openstack/sharedfilesystem/share_network.py index c439cff81..a81398805 100644 --- a/sdk/python/pulumi_openstack/sharedfilesystem/share_network.py +++ b/sdk/python/pulumi_openstack/sharedfilesystem/share_network.py @@ -22,22 +22,6 @@ def __init__(__self__, *, security_service_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a ShareNetwork resource. - :param pulumi.Input[str] neutron_net_id: The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - :param pulumi.Input[str] neutron_subnet_id: The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - :param pulumi.Input[str] description: The human-readable description for the share network. - Changing this updates the description of the existing share network. - :param pulumi.Input[str] name: The name for the share network. Changing this updates the name - of the existing share network. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_service_ids: The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. """ pulumi.set(__self__, "neutron_net_id", neutron_net_id) pulumi.set(__self__, "neutron_subnet_id", neutron_subnet_id) @@ -53,11 +37,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="neutronNetId") def neutron_net_id(self) -> pulumi.Input[str]: - """ - The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - """ return pulumi.get(self, "neutron_net_id") @neutron_net_id.setter @@ -67,11 +46,6 @@ def neutron_net_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="neutronSubnetId") def neutron_subnet_id(self) -> pulumi.Input[str]: - """ - The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - """ return pulumi.get(self, "neutron_subnet_id") @neutron_subnet_id.setter @@ -81,10 +55,6 @@ def neutron_subnet_id(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the share network. - Changing this updates the description of the existing share network. - """ return pulumi.get(self, "description") @description.setter @@ -94,10 +64,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name for the share network. Changing this updates the name - of the existing share network. - """ return pulumi.get(self, "name") @name.setter @@ -107,12 +73,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - """ return pulumi.get(self, "region") @region.setter @@ -122,10 +82,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityServiceIds") def security_service_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. - """ return pulumi.get(self, "security_service_ids") @security_service_ids.setter @@ -149,27 +105,6 @@ def __init__(__self__, *, segmentation_id: Optional[pulumi.Input[int]] = None): """ Input properties used for looking up and filtering ShareNetwork resources. - :param pulumi.Input[str] cidr: The share network CIDR. - :param pulumi.Input[str] description: The human-readable description for the share network. - Changing this updates the description of the existing share network. - :param pulumi.Input[int] ip_version: The IP version of the share network. Can either be 4 or 6. - :param pulumi.Input[str] name: The name for the share network. Changing this updates the name - of the existing share network. - :param pulumi.Input[str] network_type: The share network type. Can either be VLAN, VXLAN, GRE, or flat. - :param pulumi.Input[str] neutron_net_id: The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - :param pulumi.Input[str] neutron_subnet_id: The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - :param pulumi.Input[str] project_id: The owner of the Share Network. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_service_ids: The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. - :param pulumi.Input[int] segmentation_id: The share network segmentation ID. """ if cidr is not None: pulumi.set(__self__, "cidr", cidr) @@ -197,9 +132,6 @@ def __init__(__self__, *, @property @pulumi.getter def cidr(self) -> Optional[pulumi.Input[str]]: - """ - The share network CIDR. - """ return pulumi.get(self, "cidr") @cidr.setter @@ -209,10 +141,6 @@ def cidr(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the share network. - Changing this updates the description of the existing share network. - """ return pulumi.get(self, "description") @description.setter @@ -222,9 +150,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipVersion") def ip_version(self) -> Optional[pulumi.Input[int]]: - """ - The IP version of the share network. Can either be 4 or 6. - """ return pulumi.get(self, "ip_version") @ip_version.setter @@ -234,10 +159,6 @@ def ip_version(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name for the share network. Changing this updates the name - of the existing share network. - """ return pulumi.get(self, "name") @name.setter @@ -247,9 +168,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="networkType") def network_type(self) -> Optional[pulumi.Input[str]]: - """ - The share network type. Can either be VLAN, VXLAN, GRE, or flat. - """ return pulumi.get(self, "network_type") @network_type.setter @@ -259,11 +177,6 @@ def network_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="neutronNetId") def neutron_net_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - """ return pulumi.get(self, "neutron_net_id") @neutron_net_id.setter @@ -273,11 +186,6 @@ def neutron_net_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="neutronSubnetId") def neutron_subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - """ return pulumi.get(self, "neutron_subnet_id") @neutron_subnet_id.setter @@ -287,9 +195,6 @@ def neutron_subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="projectId") def project_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the Share Network. - """ return pulumi.get(self, "project_id") @project_id.setter @@ -299,12 +204,6 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - """ return pulumi.get(self, "region") @region.setter @@ -314,10 +213,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="securityServiceIds") def security_service_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. - """ return pulumi.get(self, "security_service_ids") @security_service_ids.setter @@ -327,9 +222,6 @@ def security_service_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Inpu @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> Optional[pulumi.Input[int]]: - """ - The share network segmentation ID. - """ return pulumi.get(self, "segmentation_id") @segmentation_id.setter @@ -350,92 +242,9 @@ def __init__(__self__, security_service_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Use this resource to configure a share network. - - A share network stores network information that share servers can use when - shares are created. - - ## Example Usage - - ### Basic share network - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - ``` - - ### Share network with associated security services - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id, - security_service_ids=[securityservice1.id]) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share network: - - ```sh - $ pulumi import openstack:sharedfilesystem/shareNetwork:ShareNetwork sharenetwork_1 id - ``` - + Create a ShareNetwork resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The human-readable description for the share network. - Changing this updates the description of the existing share network. - :param pulumi.Input[str] name: The name for the share network. Changing this updates the name - of the existing share network. - :param pulumi.Input[str] neutron_net_id: The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - :param pulumi.Input[str] neutron_subnet_id: The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_service_ids: The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. """ ... @overload @@ -444,74 +253,7 @@ def __init__(__self__, args: ShareNetworkArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Use this resource to configure a share network. - - A share network stores network information that share servers can use when - shares are created. - - ## Example Usage - - ### Basic share network - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id) - ``` - - ### Share network with associated security services - - ```python - import pulumi - import pulumi_openstack as openstack - - network1 = openstack.networking.Network("network_1", - name="network_1", - admin_state_up=True) - subnet1 = openstack.networking.Subnet("subnet_1", - name="subnet_1", - cidr="192.168.199.0/24", - ip_version=4, - network_id=network1.id) - securityservice1 = openstack.sharedfilesystem.SecurityService("securityservice_1", - name="security", - description="created by terraform", - type="active_directory", - server="192.168.199.10", - dns_ip="192.168.199.10", - domain="example.com", - ou="CN=Computers,DC=example,DC=com", - user="joinDomainUser", - password="s8cret") - sharenetwork1 = openstack.sharedfilesystem.ShareNetwork("sharenetwork_1", - name="test_sharenetwork", - description="test share network with security services", - neutron_net_id=network1.id, - neutron_subnet_id=subnet1.id, - security_service_ids=[securityservice1.id]) - ``` - - ## Import - - This resource can be imported by specifying the ID of the share network: - - ```sh - $ pulumi import openstack:sharedfilesystem/shareNetwork:ShareNetwork sharenetwork_1 id - ``` - + Create a ShareNetwork resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ShareNetworkArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -585,27 +327,6 @@ def get(resource_name: str, :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] cidr: The share network CIDR. - :param pulumi.Input[str] description: The human-readable description for the share network. - Changing this updates the description of the existing share network. - :param pulumi.Input[int] ip_version: The IP version of the share network. Can either be 4 or 6. - :param pulumi.Input[str] name: The name for the share network. Changing this updates the name - of the existing share network. - :param pulumi.Input[str] network_type: The share network type. Can either be VLAN, VXLAN, GRE, or flat. - :param pulumi.Input[str] neutron_net_id: The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - :param pulumi.Input[str] neutron_subnet_id: The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - :param pulumi.Input[str] project_id: The owner of the Share Network. - :param pulumi.Input[str] region: The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_service_ids: The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. - :param pulumi.Input[int] segmentation_id: The share network segmentation ID. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -627,98 +348,55 @@ def get(resource_name: str, @property @pulumi.getter def cidr(self) -> pulumi.Output[str]: - """ - The share network CIDR. - """ return pulumi.get(self, "cidr") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the share network. - Changing this updates the description of the existing share network. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="ipVersion") def ip_version(self) -> pulumi.Output[int]: - """ - The IP version of the share network. Can either be 4 or 6. - """ return pulumi.get(self, "ip_version") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name for the share network. Changing this updates the name - of the existing share network. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="networkType") def network_type(self) -> pulumi.Output[str]: - """ - The share network type. Can either be VLAN, VXLAN, GRE, or flat. - """ return pulumi.get(self, "network_type") @property @pulumi.getter(name="neutronNetId") def neutron_net_id(self) -> pulumi.Output[str]: - """ - The UUID of a neutron network when setting up or updating - a share network. Changing this updates the existing share network if it's not used by - shares. - """ return pulumi.get(self, "neutron_net_id") @property @pulumi.getter(name="neutronSubnetId") def neutron_subnet_id(self) -> pulumi.Output[str]: - """ - The UUID of the neutron subnet when setting up or - updating a share network. Changing this updates the existing share network if it's - not used by shares. - """ return pulumi.get(self, "neutron_subnet_id") @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Output[str]: - """ - The owner of the Share Network. - """ return pulumi.get(self, "project_id") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Shared File System client. - A Shared File System client is needed to create a share network. If omitted, the - `region` argument of the provider is used. Changing this creates a new - share network. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="securityServiceIds") def security_service_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - The list of security service IDs to associate with - the share network. The security service must be specified by ID and not name. - """ return pulumi.get(self, "security_service_ids") @property @pulumi.getter(name="segmentationId") def segmentation_id(self) -> pulumi.Output[int]: - """ - The share network segmentation ID. - """ return pulumi.get(self, "segmentation_id") diff --git a/sdk/python/pulumi_openstack/vpnaas/_inputs.py b/sdk/python/pulumi_openstack/vpnaas/_inputs.py index 462396920..f60e66610 100644 --- a/sdk/python/pulumi_openstack/vpnaas/_inputs.py +++ b/sdk/python/pulumi_openstack/vpnaas/_inputs.py @@ -20,10 +20,6 @@ class IkePolicyLifetimeArgs: def __init__(__self__, *, units: Optional[pulumi.Input[str]] = None, value: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] value: The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ if units is not None: pulumi.set(__self__, "units", units) if value is not None: @@ -41,10 +37,6 @@ def units(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def value(self) -> Optional[pulumi.Input[int]]: - """ - The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ return pulumi.get(self, "value") @value.setter @@ -57,10 +49,6 @@ class IpSecPolicyLifetimeArgs: def __init__(__self__, *, units: Optional[pulumi.Input[str]] = None, value: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] value: The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ if units is not None: pulumi.set(__self__, "units", units) if value is not None: @@ -78,10 +66,6 @@ def units(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def value(self) -> Optional[pulumi.Input[int]]: - """ - The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ return pulumi.get(self, "value") @value.setter @@ -95,17 +79,6 @@ def __init__(__self__, *, action: Optional[pulumi.Input[str]] = None, interval: Optional[pulumi.Input[int]] = None, timeout: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[str] action: The dead peer detection (DPD) action. - A valid value is clear, hold, restart, disabled, or restart-by-peer. - Default value is hold. - :param pulumi.Input[int] interval: The dead peer detection (DPD) interval, in seconds. - A valid value is a positive integer. - Default is 30. - :param pulumi.Input[int] timeout: The dead peer detection (DPD) timeout in seconds. - A valid value is a positive integer that is greater than the DPD interval value. - Default is 120. - """ if action is not None: pulumi.set(__self__, "action", action) if interval is not None: @@ -116,11 +89,6 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[pulumi.Input[str]]: - """ - The dead peer detection (DPD) action. - A valid value is clear, hold, restart, disabled, or restart-by-peer. - Default value is hold. - """ return pulumi.get(self, "action") @action.setter @@ -130,11 +98,6 @@ def action(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def interval(self) -> Optional[pulumi.Input[int]]: - """ - The dead peer detection (DPD) interval, in seconds. - A valid value is a positive integer. - Default is 30. - """ return pulumi.get(self, "interval") @interval.setter @@ -144,11 +107,6 @@ def interval(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def timeout(self) -> Optional[pulumi.Input[int]]: - """ - The dead peer detection (DPD) timeout in seconds. - A valid value is a positive integer that is greater than the DPD interval value. - Default is 120. - """ return pulumi.get(self, "timeout") @timeout.setter diff --git a/sdk/python/pulumi_openstack/vpnaas/endpoint_group.py b/sdk/python/pulumi_openstack/vpnaas/endpoint_group.py index 9975c36f3..7f11176df 100644 --- a/sdk/python/pulumi_openstack/vpnaas/endpoint_group.py +++ b/sdk/python/pulumi_openstack/vpnaas/endpoint_group.py @@ -23,21 +23,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a EndpointGroup resource. - :param pulumi.Input[str] description: The human-readable description for the group. - Changing this updates the description of the existing group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] endpoints: List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - :param pulumi.Input[str] name: The name of the group. Changing this updates the name of - the existing group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - :param pulumi.Input[str] tenant_id: The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - :param pulumi.Input[str] type: The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if description is not None: pulumi.set(__self__, "description", description) @@ -57,10 +42,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the group. - Changing this updates the description of the existing group. - """ return pulumi.get(self, "description") @description.setter @@ -70,10 +51,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - """ return pulumi.get(self, "endpoints") @endpoints.setter @@ -83,10 +60,6 @@ def endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the group. Changing this updates the name of - the existing group. - """ return pulumi.get(self, "name") @name.setter @@ -96,12 +69,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - """ return pulumi.get(self, "region") @region.setter @@ -111,10 +78,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -124,10 +87,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - """ return pulumi.get(self, "type") @type.setter @@ -137,9 +96,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -159,21 +115,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering EndpointGroup resources. - :param pulumi.Input[str] description: The human-readable description for the group. - Changing this updates the description of the existing group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] endpoints: List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - :param pulumi.Input[str] name: The name of the group. Changing this updates the name of - the existing group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - :param pulumi.Input[str] tenant_id: The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - :param pulumi.Input[str] type: The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if description is not None: pulumi.set(__self__, "description", description) @@ -193,10 +134,6 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the group. - Changing this updates the description of the existing group. - """ return pulumi.get(self, "description") @description.setter @@ -206,10 +143,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - """ return pulumi.get(self, "endpoints") @endpoints.setter @@ -219,10 +152,6 @@ def endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the group. Changing this updates the name of - the existing group. - """ return pulumi.get(self, "name") @name.setter @@ -232,12 +161,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - """ return pulumi.get(self, "region") @region.setter @@ -247,10 +170,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -260,10 +179,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: - """ - The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - """ return pulumi.get(self, "type") @type.setter @@ -273,9 +188,6 @@ def type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -297,48 +209,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron Endpoint Group resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group1 = openstack.vpnaas.EndpointGroup("group_1", - name="Group 1", - type="cidr", - endpoints=[ - "10.2.0.0/24", - "10.3.0.0/24", - ]) - ``` - - ## Import - - Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/endpointGroup:EndpointGroup group_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a EndpointGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] description: The human-readable description for the group. - Changing this updates the description of the existing group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] endpoints: List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - :param pulumi.Input[str] name: The name of the group. Changing this updates the name of - the existing group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - :param pulumi.Input[str] tenant_id: The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - :param pulumi.Input[str] type: The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -347,31 +220,7 @@ def __init__(__self__, args: Optional[EndpointGroupArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron Endpoint Group resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - group1 = openstack.vpnaas.EndpointGroup("group_1", - name="Group 1", - type="cidr", - endpoints=[ - "10.2.0.0/24", - "10.3.0.0/24", - ]) - ``` - - ## Import - - Groups can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/endpointGroup:EndpointGroup group_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a EndpointGroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param EndpointGroupArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -434,21 +283,6 @@ def get(resource_name: str, :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] description: The human-readable description for the group. - Changing this updates the description of the existing group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] endpoints: List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - :param pulumi.Input[str] name: The name of the group. Changing this updates the name of - the existing group. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - :param pulumi.Input[str] tenant_id: The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - :param pulumi.Input[str] type: The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -466,64 +300,35 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the group. - Changing this updates the description of the existing group. - """ return pulumi.get(self, "description") @property @pulumi.getter def endpoints(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - List of endpoints of the same type, for the endpoint group. The values will depend on the type. - Changing this creates a new group. - """ return pulumi.get(self, "endpoints") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the group. Changing this updates the name of - the existing group. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an endpoint group. If omitted, the - `region` argument of the provider is used. Changing this creates a new - group. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the group. Required if admin wants to - create an endpoint group for another project. Changing this creates a new group. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter def type(self) -> pulumi.Output[str]: - """ - The type of the endpoints in the group. A valid value is subnet, cidr, network, router, or vlan. - Changing this creates a new group. - """ return pulumi.get(self, "type") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/vpnaas/ike_policy.py b/sdk/python/pulumi_openstack/vpnaas/ike_policy.py index b362fabc8..21fd18919 100644 --- a/sdk/python/pulumi_openstack/vpnaas/ike_policy.py +++ b/sdk/python/pulumi_openstack/vpnaas/ike_policy.py @@ -29,28 +29,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a IkePolicy resource. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[str] ike_version: The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input['IkePolicyLifetimeArgs']]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - :param pulumi.Input[str] phase1_negotiation_mode: The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if auth_algorithm is not None: pulumi.set(__self__, "auth_algorithm", auth_algorithm) @@ -78,10 +56,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @auth_algorithm.setter @@ -91,10 +65,6 @@ def auth_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @description.setter @@ -104,10 +74,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @encryption_algorithm.setter @@ -117,10 +83,6 @@ def encryption_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ikeVersion") def ike_version(self) -> Optional[pulumi.Input[str]]: - """ - The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - """ return pulumi.get(self, "ike_version") @ike_version.setter @@ -130,9 +92,6 @@ def ike_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def lifetimes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IkePolicyLifetimeArgs']]]]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @lifetimes.setter @@ -142,10 +101,6 @@ def lifetimes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IkePolic @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @name.setter @@ -155,10 +110,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def pfs(self) -> Optional[pulumi.Input[str]]: - """ - The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @pfs.setter @@ -168,10 +119,6 @@ def pfs(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="phase1NegotiationMode") def phase1_negotiation_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - """ return pulumi.get(self, "phase1_negotiation_mode") @phase1_negotiation_mode.setter @@ -181,12 +128,6 @@ def phase1_negotiation_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @region.setter @@ -196,10 +137,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -209,9 +146,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -235,28 +169,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering IkePolicy resources. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[str] ike_version: The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input['IkePolicyLifetimeArgs']]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - :param pulumi.Input[str] phase1_negotiation_mode: The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if auth_algorithm is not None: pulumi.set(__self__, "auth_algorithm", auth_algorithm) @@ -284,10 +196,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @auth_algorithm.setter @@ -297,10 +205,6 @@ def auth_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @description.setter @@ -310,10 +214,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @encryption_algorithm.setter @@ -323,10 +223,6 @@ def encryption_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ikeVersion") def ike_version(self) -> Optional[pulumi.Input[str]]: - """ - The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - """ return pulumi.get(self, "ike_version") @ike_version.setter @@ -336,9 +232,6 @@ def ike_version(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def lifetimes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IkePolicyLifetimeArgs']]]]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @lifetimes.setter @@ -348,10 +241,6 @@ def lifetimes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IkePolic @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @name.setter @@ -361,10 +250,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def pfs(self) -> Optional[pulumi.Input[str]]: - """ - The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @pfs.setter @@ -374,10 +259,6 @@ def pfs(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="phase1NegotiationMode") def phase1_negotiation_mode(self) -> Optional[pulumi.Input[str]]: - """ - The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - """ return pulumi.get(self, "phase1_negotiation_mode") @phase1_negotiation_mode.setter @@ -387,12 +268,6 @@ def phase1_negotiation_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @region.setter @@ -402,10 +277,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -415,9 +286,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -443,49 +311,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron IKE policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy1 = openstack.vpnaas.IkePolicy("policy_1", name="my_policy") - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/ikePolicy:IkePolicy policy_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a IkePolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[str] ike_version: The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input[Union['IkePolicyLifetimeArgs', 'IkePolicyLifetimeArgsDict']]]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - :param pulumi.Input[str] phase1_negotiation_mode: The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -494,25 +322,7 @@ def __init__(__self__, args: Optional[IkePolicyArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron IKE policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy1 = openstack.vpnaas.IkePolicy("policy_1", name="my_policy") - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/ikePolicy:IkePolicy policy_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a IkePolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param IkePolicyArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -587,28 +397,6 @@ def get(resource_name: str, :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] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[str] ike_version: The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input[Union['IkePolicyLifetimeArgs', 'IkePolicyLifetimeArgsDict']]]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - :param pulumi.Input[str] phase1_negotiation_mode: The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -630,99 +418,55 @@ def get(resource_name: str, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> pulumi.Output[Optional[str]]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> pulumi.Output[Optional[str]]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @property @pulumi.getter(name="ikeVersion") def ike_version(self) -> pulumi.Output[Optional[str]]: - """ - The IKE version. A valid value is v1 or v2. Default is v1. - Changing this updates the existing policy. - """ return pulumi.get(self, "ike_version") @property @pulumi.getter def lifetimes(self) -> pulumi.Output[Sequence['outputs.IkePolicyLifetime']]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @property @pulumi.getter def pfs(self) -> pulumi.Output[Optional[str]]: - """ - The perfect forward secrecy mode. Valid values are Group2, Group5 and Group14. Default is Group5. - Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @property @pulumi.getter(name="phase1NegotiationMode") def phase1_negotiation_mode(self) -> pulumi.Output[Optional[str]]: - """ - The IKE mode. A valid value is main, which is the default. - Changing this updates the existing policy. - """ return pulumi.get(self, "phase1_negotiation_mode") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the policy. Required if admin wants to - create a service for another policy. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/vpnaas/ip_sec_policy.py b/sdk/python/pulumi_openstack/vpnaas/ip_sec_policy.py index 0c8ed3bee..18934abe4 100644 --- a/sdk/python/pulumi_openstack/vpnaas/ip_sec_policy.py +++ b/sdk/python/pulumi_openstack/vpnaas/ip_sec_policy.py @@ -29,28 +29,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a IpSecPolicy resource. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encapsulation_mode: The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input['IpSecPolicyLifetimeArgs']]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - :param pulumi.Input[str] transform_protocol: The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if auth_algorithm is not None: pulumi.set(__self__, "auth_algorithm", auth_algorithm) @@ -78,10 +56,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @auth_algorithm.setter @@ -91,10 +65,6 @@ def auth_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @description.setter @@ -104,10 +74,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encapsulationMode") def encapsulation_mode(self) -> Optional[pulumi.Input[str]]: - """ - The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - """ return pulumi.get(self, "encapsulation_mode") @encapsulation_mode.setter @@ -117,10 +83,6 @@ def encapsulation_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @encryption_algorithm.setter @@ -130,9 +92,6 @@ def encryption_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def lifetimes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IpSecPolicyLifetimeArgs']]]]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @lifetimes.setter @@ -142,10 +101,6 @@ def lifetimes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IpSecPol @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @name.setter @@ -155,10 +110,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def pfs(self) -> Optional[pulumi.Input[str]]: - """ - The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @pfs.setter @@ -168,12 +119,6 @@ def pfs(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - """ return pulumi.get(self, "region") @region.setter @@ -183,10 +128,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -196,10 +137,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="transformProtocol") def transform_protocol(self) -> Optional[pulumi.Input[str]]: - """ - The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - """ return pulumi.get(self, "transform_protocol") @transform_protocol.setter @@ -209,9 +146,6 @@ def transform_protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -235,28 +169,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering IpSecPolicy resources. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encapsulation_mode: The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input['IpSecPolicyLifetimeArgs']]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - :param pulumi.Input[str] transform_protocol: The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if auth_algorithm is not None: pulumi.set(__self__, "auth_algorithm", auth_algorithm) @@ -284,10 +196,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @auth_algorithm.setter @@ -297,10 +205,6 @@ def auth_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @description.setter @@ -310,10 +214,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encapsulationMode") def encapsulation_mode(self) -> Optional[pulumi.Input[str]]: - """ - The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - """ return pulumi.get(self, "encapsulation_mode") @encapsulation_mode.setter @@ -323,10 +223,6 @@ def encapsulation_mode(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> Optional[pulumi.Input[str]]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @encryption_algorithm.setter @@ -336,9 +232,6 @@ def encryption_algorithm(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def lifetimes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['IpSecPolicyLifetimeArgs']]]]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @lifetimes.setter @@ -348,10 +241,6 @@ def lifetimes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['IpSecPol @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @name.setter @@ -361,10 +250,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def pfs(self) -> Optional[pulumi.Input[str]]: - """ - The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @pfs.setter @@ -374,12 +259,6 @@ def pfs(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - """ return pulumi.get(self, "region") @region.setter @@ -389,10 +268,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -402,10 +277,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="transformProtocol") def transform_protocol(self) -> Optional[pulumi.Input[str]]: - """ - The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - """ return pulumi.get(self, "transform_protocol") @transform_protocol.setter @@ -415,9 +286,6 @@ def transform_protocol(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -443,49 +311,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron IPSec policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy1 = openstack.vpnaas.IpSecPolicy("policy_1", name="my_policy") - ``` - - ## Import - - Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/ipSecPolicy:IpSecPolicy policy_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a IpSecPolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encapsulation_mode: The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input[Union['IpSecPolicyLifetimeArgs', 'IpSecPolicyLifetimeArgsDict']]]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - :param pulumi.Input[str] transform_protocol: The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -494,25 +322,7 @@ def __init__(__self__, args: Optional[IpSecPolicyArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron IPSec policy resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - policy1 = openstack.vpnaas.IpSecPolicy("policy_1", name="my_policy") - ``` - - ## Import - - Policies can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/ipSecPolicy:IpSecPolicy policy_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a IpSecPolicy resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param IpSecPolicyArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -587,28 +397,6 @@ def get(resource_name: str, :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] auth_algorithm: The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - :param pulumi.Input[str] description: The human-readable description for the policy. - Changing this updates the description of the existing policy. - :param pulumi.Input[str] encapsulation_mode: The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - :param pulumi.Input[str] encryption_algorithm: The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - :param pulumi.Input[Sequence[pulumi.Input[Union['IpSecPolicyLifetimeArgs', 'IpSecPolicyLifetimeArgsDict']]]] lifetimes: The lifetime of the security association. Consists of Unit and Value. - :param pulumi.Input[str] name: The name of the policy. Changing this updates the name of - the existing policy. - :param pulumi.Input[str] pfs: The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - :param pulumi.Input[str] tenant_id: The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - :param pulumi.Input[str] transform_protocol: The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -630,99 +418,55 @@ def get(resource_name: str, @property @pulumi.getter(name="authAlgorithm") def auth_algorithm(self) -> pulumi.Output[str]: - """ - The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512. - Default is sha1. Changing this updates the algorithm of the existing policy. - """ return pulumi.get(self, "auth_algorithm") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the policy. - Changing this updates the description of the existing policy. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="encapsulationMode") def encapsulation_mode(self) -> pulumi.Output[str]: - """ - The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. - Changing this updates the existing policy. - """ return pulumi.get(self, "encapsulation_mode") @property @pulumi.getter(name="encryptionAlgorithm") def encryption_algorithm(self) -> pulumi.Output[str]: - """ - The encryption algorithm. Valid values are 3des, aes-128, aes-192 and so on. - The default value is aes-128. Changing this updates the existing policy. - """ return pulumi.get(self, "encryption_algorithm") @property @pulumi.getter def lifetimes(self) -> pulumi.Output[Sequence['outputs.IpSecPolicyLifetime']]: - """ - The lifetime of the security association. Consists of Unit and Value. - """ return pulumi.get(self, "lifetimes") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the policy. Changing this updates the name of - the existing policy. - """ return pulumi.get(self, "name") @property @pulumi.getter def pfs(self) -> pulumi.Output[str]: - """ - The perfect forward secrecy mode. Valid values are group2, group5 and group14. Default - is group5. Changing this updates the existing policy. - """ return pulumi.get(self, "pfs") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec policy. If omitted, the - `region` argument of the provider is used. Changing this creates a new - policy. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the policy. Required if admin wants to - create a policy for another project. Changing this creates a new policy. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="transformProtocol") def transform_protocol(self) -> pulumi.Output[str]: - """ - The transform protocol. Valid values are esp, ah and ah-esp. - Changing this updates the existing policy. Default is ESP. - """ return pulumi.get(self, "transform_protocol") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/vpnaas/outputs.py b/sdk/python/pulumi_openstack/vpnaas/outputs.py index 2bdfdda9b..1f0fc783a 100644 --- a/sdk/python/pulumi_openstack/vpnaas/outputs.py +++ b/sdk/python/pulumi_openstack/vpnaas/outputs.py @@ -20,10 +20,6 @@ class IkePolicyLifetime(dict): def __init__(__self__, *, units: Optional[str] = None, value: Optional[int] = None): - """ - :param int value: The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ if units is not None: pulumi.set(__self__, "units", units) if value is not None: @@ -37,10 +33,6 @@ def units(self) -> Optional[str]: @property @pulumi.getter def value(self) -> Optional[int]: - """ - The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ return pulumi.get(self, "value") @@ -49,10 +41,6 @@ class IpSecPolicyLifetime(dict): def __init__(__self__, *, units: Optional[str] = None, value: Optional[int] = None): - """ - :param int value: The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ if units is not None: pulumi.set(__self__, "units", units) if value is not None: @@ -66,10 +54,6 @@ def units(self) -> Optional[str]: @property @pulumi.getter def value(self) -> Optional[int]: - """ - The value for the lifetime of the security association. Must be a positive integer. - Default is 3600. - """ return pulumi.get(self, "value") @@ -79,17 +63,6 @@ def __init__(__self__, *, action: Optional[str] = None, interval: Optional[int] = None, timeout: Optional[int] = None): - """ - :param str action: The dead peer detection (DPD) action. - A valid value is clear, hold, restart, disabled, or restart-by-peer. - Default value is hold. - :param int interval: The dead peer detection (DPD) interval, in seconds. - A valid value is a positive integer. - Default is 30. - :param int timeout: The dead peer detection (DPD) timeout in seconds. - A valid value is a positive integer that is greater than the DPD interval value. - Default is 120. - """ if action is not None: pulumi.set(__self__, "action", action) if interval is not None: @@ -100,31 +73,16 @@ def __init__(__self__, *, @property @pulumi.getter def action(self) -> Optional[str]: - """ - The dead peer detection (DPD) action. - A valid value is clear, hold, restart, disabled, or restart-by-peer. - Default value is hold. - """ return pulumi.get(self, "action") @property @pulumi.getter def interval(self) -> Optional[int]: - """ - The dead peer detection (DPD) interval, in seconds. - A valid value is a positive integer. - Default is 30. - """ return pulumi.get(self, "interval") @property @pulumi.getter def timeout(self) -> Optional[int]: - """ - The dead peer detection (DPD) timeout in seconds. - A valid value is a positive integer that is greater than the DPD interval value. - Default is 120. - """ return pulumi.get(self, "timeout") diff --git a/sdk/python/pulumi_openstack/vpnaas/service.py b/sdk/python/pulumi_openstack/vpnaas/service.py index 028ebb36c..680df04fc 100644 --- a/sdk/python/pulumi_openstack/vpnaas/service.py +++ b/sdk/python/pulumi_openstack/vpnaas/service.py @@ -24,21 +24,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Service resource. - :param pulumi.Input[str] router_id: The ID of the router. Changing this creates a new service. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - :param pulumi.Input[str] description: The human-readable description for the service. - Changing this updates the description of the existing service. - :param pulumi.Input[str] name: The name of the service. Changing this updates the name of - the existing service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] subnet_id: SubnetID is the ID of the subnet. Default is null. - :param pulumi.Input[str] tenant_id: The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "router_id", router_id) if admin_state_up is not None: @@ -59,9 +44,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Input[str]: - """ - The ID of the router. Changing this creates a new service. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -71,10 +53,6 @@ def router_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -84,10 +62,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the service. - Changing this updates the description of the existing service. - """ return pulumi.get(self, "description") @description.setter @@ -97,10 +71,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the service. Changing this updates the name of - the existing service. - """ return pulumi.get(self, "name") @name.setter @@ -110,12 +80,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @region.setter @@ -125,9 +89,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - SubnetID is the ID of the subnet. Default is null. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -137,10 +98,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -150,9 +107,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -176,24 +130,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ Input properties used for looking up and filtering Service resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - :param pulumi.Input[str] description: The human-readable description for the service. - Changing this updates the description of the existing service. - :param pulumi.Input[str] external_v4_ip: The read-only external (public) IPv4 address that is used for the VPN service. - :param pulumi.Input[str] external_v6_ip: The read-only external (public) IPv6 address that is used for the VPN service. - :param pulumi.Input[str] name: The name of the service. Changing this updates the name of - the existing service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] router_id: The ID of the router. Changing this creates a new service. - :param pulumi.Input[str] status: Indicates whether IPsec VPN service is currently operational. Values are ACTIVE, DOWN, BUILD, ERROR, PENDING_CREATE, PENDING_UPDATE, or PENDING_DELETE. - :param pulumi.Input[str] subnet_id: SubnetID is the ID of the subnet. Default is null. - :param pulumi.Input[str] tenant_id: The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -221,10 +157,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -234,10 +166,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the service. - Changing this updates the description of the existing service. - """ return pulumi.get(self, "description") @description.setter @@ -247,9 +175,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="externalV4Ip") def external_v4_ip(self) -> Optional[pulumi.Input[str]]: - """ - The read-only external (public) IPv4 address that is used for the VPN service. - """ return pulumi.get(self, "external_v4_ip") @external_v4_ip.setter @@ -259,9 +184,6 @@ def external_v4_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="externalV6Ip") def external_v6_ip(self) -> Optional[pulumi.Input[str]]: - """ - The read-only external (public) IPv6 address that is used for the VPN service. - """ return pulumi.get(self, "external_v6_ip") @external_v6_ip.setter @@ -271,10 +193,6 @@ def external_v6_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the service. Changing this updates the name of - the existing service. - """ return pulumi.get(self, "name") @name.setter @@ -284,12 +202,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @region.setter @@ -299,9 +211,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="routerId") def router_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the router. Changing this creates a new service. - """ return pulumi.get(self, "router_id") @router_id.setter @@ -311,9 +220,6 @@ def router_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: - """ - Indicates whether IPsec VPN service is currently operational. Values are ACTIVE, DOWN, BUILD, ERROR, PENDING_CREATE, PENDING_UPDATE, or PENDING_DELETE. - """ return pulumi.get(self, "status") @status.setter @@ -323,9 +229,6 @@ def status(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="subnetId") def subnet_id(self) -> Optional[pulumi.Input[str]]: - """ - SubnetID is the ID of the subnet. Default is null. - """ return pulumi.get(self, "subnet_id") @subnet_id.setter @@ -335,10 +238,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -348,9 +247,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -373,45 +269,9 @@ def __init__(__self__, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ - Manages a V2 Neutron VPN service resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.vpnaas.Service("service_1", - name="my_service", - router_id="14a75700-fc03-4602-9294-26ee44f366b3", - admin_state_up=True) - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/service:Service service_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a Service resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - :param pulumi.Input[str] description: The human-readable description for the service. - Changing this updates the description of the existing service. - :param pulumi.Input[str] name: The name of the service. Changing this updates the name of - the existing service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] router_id: The ID of the router. Changing this creates a new service. - :param pulumi.Input[str] subnet_id: SubnetID is the ID of the subnet. Default is null. - :param pulumi.Input[str] tenant_id: The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ ... @overload @@ -420,28 +280,7 @@ def __init__(__self__, args: ServiceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron VPN service resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - service1 = openstack.vpnaas.Service("service_1", - name="my_service", - router_id="14a75700-fc03-4602-9294-26ee44f366b3", - admin_state_up=True) - ``` - - ## Import - - Services can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/service:Service service_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a Service resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ServiceArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -515,24 +354,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - :param pulumi.Input[str] description: The human-readable description for the service. - Changing this updates the description of the existing service. - :param pulumi.Input[str] external_v4_ip: The read-only external (public) IPv4 address that is used for the VPN service. - :param pulumi.Input[str] external_v6_ip: The read-only external (public) IPv6 address that is used for the VPN service. - :param pulumi.Input[str] name: The name of the service. Changing this updates the name of - the existing service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - :param pulumi.Input[str] router_id: The ID of the router. Changing this creates a new service. - :param pulumi.Input[str] status: Indicates whether IPsec VPN service is currently operational. Values are ACTIVE, DOWN, BUILD, ERROR, PENDING_CREATE, PENDING_UPDATE, or PENDING_DELETE. - :param pulumi.Input[str] subnet_id: SubnetID is the ID of the subnet. Default is null. - :param pulumi.Input[str] tenant_id: The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -554,95 +375,55 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing service. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the service. - Changing this updates the description of the existing service. - """ return pulumi.get(self, "description") @property @pulumi.getter(name="externalV4Ip") def external_v4_ip(self) -> pulumi.Output[str]: - """ - The read-only external (public) IPv4 address that is used for the VPN service. - """ return pulumi.get(self, "external_v4_ip") @property @pulumi.getter(name="externalV6Ip") def external_v6_ip(self) -> pulumi.Output[str]: - """ - The read-only external (public) IPv6 address that is used for the VPN service. - """ return pulumi.get(self, "external_v6_ip") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the service. Changing this updates the name of - the existing service. - """ return pulumi.get(self, "name") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create a VPN service. If omitted, the - `region` argument of the provider is used. Changing this creates a new - service. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="routerId") def router_id(self) -> pulumi.Output[str]: - """ - The ID of the router. Changing this creates a new service. - """ return pulumi.get(self, "router_id") @property @pulumi.getter def status(self) -> pulumi.Output[str]: - """ - Indicates whether IPsec VPN service is currently operational. Values are ACTIVE, DOWN, BUILD, ERROR, PENDING_CREATE, PENDING_UPDATE, or PENDING_DELETE. - """ return pulumi.get(self, "status") @property @pulumi.getter(name="subnetId") def subnet_id(self) -> pulumi.Output[Optional[str]]: - """ - SubnetID is the ID of the subnet. Default is null. - """ return pulumi.get(self, "subnet_id") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the service. Required if admin wants to - create a service for another project. Changing this creates a new service. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") diff --git a/sdk/python/pulumi_openstack/vpnaas/site_connection.py b/sdk/python/pulumi_openstack/vpnaas/site_connection.py index 855777a6d..6a4088659 100644 --- a/sdk/python/pulumi_openstack/vpnaas/site_connection.py +++ b/sdk/python/pulumi_openstack/vpnaas/site_connection.py @@ -37,42 +37,6 @@ def __init__(__self__, *, value_specs: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a SiteConnection resource. - :param pulumi.Input[str] ikepolicy_id: The ID of the IKE policy. Changing this creates a new connection. - :param pulumi.Input[str] ipsecpolicy_id: The ID of the IPsec policy. Changing this creates a new connection. - :param pulumi.Input[str] peer_address: The peer gateway public IPv4 or IPv6 address or FQDN. - :param pulumi.Input[str] peer_id: The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - :param pulumi.Input[str] psk: The pre-shared key. A valid value is any string. - :param pulumi.Input[str] vpnservice_id: The ID of the VPN service. Changing this creates a new connection. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - :param pulumi.Input[str] description: The human-readable description for the connection. - Changing this updates the description of the existing connection. - :param pulumi.Input[Sequence[pulumi.Input['SiteConnectionDpdArgs']]] dpds: A dictionary with dead peer detection (DPD) protocol controls. - :param pulumi.Input[str] initiator: A valid value is response-only or bi-directional. Default is bi-directional. - :param pulumi.Input[str] local_ep_group_id: The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - :param pulumi.Input[str] local_id: An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - :param pulumi.Input[int] mtu: The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - :param pulumi.Input[str] name: The name of the connection. Changing this updates the name of - the existing connection. - :param pulumi.Input[Sequence[pulumi.Input[str]]] peer_cidrs: Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - :param pulumi.Input[str] peer_ep_group_id: The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - :param pulumi.Input[str] tenant_id: The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. """ pulumi.set(__self__, "ikepolicy_id", ikepolicy_id) pulumi.set(__self__, "ipsecpolicy_id", ipsecpolicy_id) @@ -110,9 +74,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="ikepolicyId") def ikepolicy_id(self) -> pulumi.Input[str]: - """ - The ID of the IKE policy. Changing this creates a new connection. - """ return pulumi.get(self, "ikepolicy_id") @ikepolicy_id.setter @@ -122,9 +83,6 @@ def ikepolicy_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="ipsecpolicyId") def ipsecpolicy_id(self) -> pulumi.Input[str]: - """ - The ID of the IPsec policy. Changing this creates a new connection. - """ return pulumi.get(self, "ipsecpolicy_id") @ipsecpolicy_id.setter @@ -134,9 +92,6 @@ def ipsecpolicy_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="peerAddress") def peer_address(self) -> pulumi.Input[str]: - """ - The peer gateway public IPv4 or IPv6 address or FQDN. - """ return pulumi.get(self, "peer_address") @peer_address.setter @@ -146,11 +101,6 @@ def peer_address(self, value: pulumi.Input[str]): @property @pulumi.getter(name="peerId") def peer_id(self) -> pulumi.Input[str]: - """ - The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - """ return pulumi.get(self, "peer_id") @peer_id.setter @@ -160,9 +110,6 @@ def peer_id(self, value: pulumi.Input[str]): @property @pulumi.getter def psk(self) -> pulumi.Input[str]: - """ - The pre-shared key. A valid value is any string. - """ return pulumi.get(self, "psk") @psk.setter @@ -172,9 +119,6 @@ def psk(self, value: pulumi.Input[str]): @property @pulumi.getter(name="vpnserviceId") def vpnservice_id(self) -> pulumi.Input[str]: - """ - The ID of the VPN service. Changing this creates a new connection. - """ return pulumi.get(self, "vpnservice_id") @vpnservice_id.setter @@ -184,10 +128,6 @@ def vpnservice_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -197,10 +137,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the connection. - Changing this updates the description of the existing connection. - """ return pulumi.get(self, "description") @description.setter @@ -210,9 +146,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def dpds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SiteConnectionDpdArgs']]]]: - """ - A dictionary with dead peer detection (DPD) protocol controls. - """ return pulumi.get(self, "dpds") @dpds.setter @@ -222,9 +155,6 @@ def dpds(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SiteConnectio @property @pulumi.getter def initiator(self) -> Optional[pulumi.Input[str]]: - """ - A valid value is response-only or bi-directional. Default is bi-directional. - """ return pulumi.get(self, "initiator") @initiator.setter @@ -234,12 +164,6 @@ def initiator(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localEpGroupId") def local_ep_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - """ return pulumi.get(self, "local_ep_group_id") @local_ep_group_id.setter @@ -249,11 +173,6 @@ def local_ep_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localId") def local_id(self) -> Optional[pulumi.Input[str]]: - """ - An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - """ return pulumi.get(self, "local_id") @local_id.setter @@ -263,10 +182,6 @@ def local_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def mtu(self) -> Optional[pulumi.Input[int]]: - """ - The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - """ return pulumi.get(self, "mtu") @mtu.setter @@ -276,10 +191,6 @@ def mtu(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the connection. Changing this updates the name of - the existing connection. - """ return pulumi.get(self, "name") @name.setter @@ -289,9 +200,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="peerCidrs") def peer_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - """ return pulumi.get(self, "peer_cidrs") @peer_cidrs.setter @@ -301,11 +209,6 @@ def peer_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter(name="peerEpGroupId") def peer_ep_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - """ return pulumi.get(self, "peer_ep_group_id") @peer_ep_group_id.setter @@ -315,12 +218,6 @@ def peer_ep_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - """ return pulumi.get(self, "region") @region.setter @@ -330,10 +227,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -343,9 +236,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -377,42 +267,6 @@ def __init__(__self__, *, vpnservice_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering SiteConnection resources. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - :param pulumi.Input[str] description: The human-readable description for the connection. - Changing this updates the description of the existing connection. - :param pulumi.Input[Sequence[pulumi.Input['SiteConnectionDpdArgs']]] dpds: A dictionary with dead peer detection (DPD) protocol controls. - :param pulumi.Input[str] ikepolicy_id: The ID of the IKE policy. Changing this creates a new connection. - :param pulumi.Input[str] initiator: A valid value is response-only or bi-directional. Default is bi-directional. - :param pulumi.Input[str] ipsecpolicy_id: The ID of the IPsec policy. Changing this creates a new connection. - :param pulumi.Input[str] local_ep_group_id: The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - :param pulumi.Input[str] local_id: An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - :param pulumi.Input[int] mtu: The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - :param pulumi.Input[str] name: The name of the connection. Changing this updates the name of - the existing connection. - :param pulumi.Input[str] peer_address: The peer gateway public IPv4 or IPv6 address or FQDN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] peer_cidrs: Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - :param pulumi.Input[str] peer_ep_group_id: The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - :param pulumi.Input[str] peer_id: The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - :param pulumi.Input[str] psk: The pre-shared key. A valid value is any string. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - :param pulumi.Input[str] tenant_id: The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. - :param pulumi.Input[str] vpnservice_id: The ID of the VPN service. Changing this creates a new connection. """ if admin_state_up is not None: pulumi.set(__self__, "admin_state_up", admin_state_up) @@ -456,10 +310,6 @@ def __init__(__self__, *, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> Optional[pulumi.Input[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - """ return pulumi.get(self, "admin_state_up") @admin_state_up.setter @@ -469,10 +319,6 @@ def admin_state_up(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: - """ - The human-readable description for the connection. - Changing this updates the description of the existing connection. - """ return pulumi.get(self, "description") @description.setter @@ -482,9 +328,6 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def dpds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SiteConnectionDpdArgs']]]]: - """ - A dictionary with dead peer detection (DPD) protocol controls. - """ return pulumi.get(self, "dpds") @dpds.setter @@ -494,9 +337,6 @@ def dpds(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SiteConnectio @property @pulumi.getter(name="ikepolicyId") def ikepolicy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the IKE policy. Changing this creates a new connection. - """ return pulumi.get(self, "ikepolicy_id") @ikepolicy_id.setter @@ -506,9 +346,6 @@ def ikepolicy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def initiator(self) -> Optional[pulumi.Input[str]]: - """ - A valid value is response-only or bi-directional. Default is bi-directional. - """ return pulumi.get(self, "initiator") @initiator.setter @@ -518,9 +355,6 @@ def initiator(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="ipsecpolicyId") def ipsecpolicy_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the IPsec policy. Changing this creates a new connection. - """ return pulumi.get(self, "ipsecpolicy_id") @ipsecpolicy_id.setter @@ -530,12 +364,6 @@ def ipsecpolicy_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localEpGroupId") def local_ep_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - """ return pulumi.get(self, "local_ep_group_id") @local_ep_group_id.setter @@ -545,11 +373,6 @@ def local_ep_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="localId") def local_id(self) -> Optional[pulumi.Input[str]]: - """ - An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - """ return pulumi.get(self, "local_id") @local_id.setter @@ -559,10 +382,6 @@ def local_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def mtu(self) -> Optional[pulumi.Input[int]]: - """ - The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - """ return pulumi.get(self, "mtu") @mtu.setter @@ -572,10 +391,6 @@ def mtu(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: - """ - The name of the connection. Changing this updates the name of - the existing connection. - """ return pulumi.get(self, "name") @name.setter @@ -585,9 +400,6 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="peerAddress") def peer_address(self) -> Optional[pulumi.Input[str]]: - """ - The peer gateway public IPv4 or IPv6 address or FQDN. - """ return pulumi.get(self, "peer_address") @peer_address.setter @@ -597,9 +409,6 @@ def peer_address(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="peerCidrs") def peer_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - """ return pulumi.get(self, "peer_cidrs") @peer_cidrs.setter @@ -609,11 +418,6 @@ def peer_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]) @property @pulumi.getter(name="peerEpGroupId") def peer_ep_group_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - """ return pulumi.get(self, "peer_ep_group_id") @peer_ep_group_id.setter @@ -623,11 +427,6 @@ def peer_ep_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="peerId") def peer_id(self) -> Optional[pulumi.Input[str]]: - """ - The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - """ return pulumi.get(self, "peer_id") @peer_id.setter @@ -637,9 +436,6 @@ def peer_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def psk(self) -> Optional[pulumi.Input[str]]: - """ - The pre-shared key. A valid value is any string. - """ return pulumi.get(self, "psk") @psk.setter @@ -649,12 +445,6 @@ def psk(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - """ return pulumi.get(self, "region") @region.setter @@ -664,10 +454,6 @@ def region(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: - """ - The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - """ return pulumi.get(self, "tenant_id") @tenant_id.setter @@ -677,9 +463,6 @@ def tenant_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @value_specs.setter @@ -689,9 +472,6 @@ def value_specs(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str @property @pulumi.getter(name="vpnserviceId") def vpnservice_id(self) -> Optional[pulumi.Input[str]]: - """ - The ID of the VPN service. Changing this creates a new connection. - """ return pulumi.get(self, "vpnservice_id") @vpnservice_id.setter @@ -725,76 +505,9 @@ def __init__(__self__, vpnservice_id: Optional[pulumi.Input[str]] = None, __props__=None): """ - Manages a V2 Neutron IPSec site connection resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - conn1 = openstack.vpnaas.SiteConnection("conn_1", - name="connection_1", - ikepolicy_id=policy2["id"], - ipsecpolicy_id=policy1["id"], - vpnservice_id=service1["id"], - psk="secret", - peer_address="192.168.10.1", - local_ep_group_id=group2["id"], - peer_ep_group_id=group1["id"], - dpds=[{ - "action": "restart", - "timeout": 42, - "interval": 21, - }]) - ``` - - ## Import - - Site Connections can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/siteConnection:SiteConnection conn_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a SiteConnection resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - :param pulumi.Input[str] description: The human-readable description for the connection. - Changing this updates the description of the existing connection. - :param pulumi.Input[Sequence[pulumi.Input[Union['SiteConnectionDpdArgs', 'SiteConnectionDpdArgsDict']]]] dpds: A dictionary with dead peer detection (DPD) protocol controls. - :param pulumi.Input[str] ikepolicy_id: The ID of the IKE policy. Changing this creates a new connection. - :param pulumi.Input[str] initiator: A valid value is response-only or bi-directional. Default is bi-directional. - :param pulumi.Input[str] ipsecpolicy_id: The ID of the IPsec policy. Changing this creates a new connection. - :param pulumi.Input[str] local_ep_group_id: The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - :param pulumi.Input[str] local_id: An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - :param pulumi.Input[int] mtu: The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - :param pulumi.Input[str] name: The name of the connection. Changing this updates the name of - the existing connection. - :param pulumi.Input[str] peer_address: The peer gateway public IPv4 or IPv6 address or FQDN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] peer_cidrs: Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - :param pulumi.Input[str] peer_ep_group_id: The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - :param pulumi.Input[str] peer_id: The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - :param pulumi.Input[str] psk: The pre-shared key. A valid value is any string. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - :param pulumi.Input[str] tenant_id: The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. - :param pulumi.Input[str] vpnservice_id: The ID of the VPN service. Changing this creates a new connection. """ ... @overload @@ -803,38 +516,7 @@ def __init__(__self__, args: SiteConnectionArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Manages a V2 Neutron IPSec site connection resource within OpenStack. - - ## Example Usage - - ```python - import pulumi - import pulumi_openstack as openstack - - conn1 = openstack.vpnaas.SiteConnection("conn_1", - name="connection_1", - ikepolicy_id=policy2["id"], - ipsecpolicy_id=policy1["id"], - vpnservice_id=service1["id"], - psk="secret", - peer_address="192.168.10.1", - local_ep_group_id=group2["id"], - peer_ep_group_id=group1["id"], - dpds=[{ - "action": "restart", - "timeout": 42, - "interval": 21, - }]) - ``` - - ## Import - - Site Connections can be imported using the `id`, e.g. - - ```sh - $ pulumi import openstack:vpnaas/siteConnection:SiteConnection conn_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 - ``` - + Create a SiteConnection resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param SiteConnectionArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -945,42 +627,6 @@ def get(resource_name: str, :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[bool] admin_state_up: The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - :param pulumi.Input[str] description: The human-readable description for the connection. - Changing this updates the description of the existing connection. - :param pulumi.Input[Sequence[pulumi.Input[Union['SiteConnectionDpdArgs', 'SiteConnectionDpdArgsDict']]]] dpds: A dictionary with dead peer detection (DPD) protocol controls. - :param pulumi.Input[str] ikepolicy_id: The ID of the IKE policy. Changing this creates a new connection. - :param pulumi.Input[str] initiator: A valid value is response-only or bi-directional. Default is bi-directional. - :param pulumi.Input[str] ipsecpolicy_id: The ID of the IPsec policy. Changing this creates a new connection. - :param pulumi.Input[str] local_ep_group_id: The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - :param pulumi.Input[str] local_id: An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - :param pulumi.Input[int] mtu: The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - :param pulumi.Input[str] name: The name of the connection. Changing this updates the name of - the existing connection. - :param pulumi.Input[str] peer_address: The peer gateway public IPv4 or IPv6 address or FQDN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] peer_cidrs: Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - :param pulumi.Input[str] peer_ep_group_id: The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - :param pulumi.Input[str] peer_id: The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - :param pulumi.Input[str] psk: The pre-shared key. A valid value is any string. - :param pulumi.Input[str] region: The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - :param pulumi.Input[str] tenant_id: The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] value_specs: Map of additional options. - :param pulumi.Input[str] vpnservice_id: The ID of the VPN service. Changing this creates a new connection. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1010,169 +656,95 @@ def get(resource_name: str, @property @pulumi.getter(name="adminStateUp") def admin_state_up(self) -> pulumi.Output[Optional[bool]]: - """ - The administrative state of the resource. Can either be up(true) or down(false). - Changing this updates the administrative state of the existing connection. - """ return pulumi.get(self, "admin_state_up") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: - """ - The human-readable description for the connection. - Changing this updates the description of the existing connection. - """ return pulumi.get(self, "description") @property @pulumi.getter def dpds(self) -> pulumi.Output[Sequence['outputs.SiteConnectionDpd']]: - """ - A dictionary with dead peer detection (DPD) protocol controls. - """ return pulumi.get(self, "dpds") @property @pulumi.getter(name="ikepolicyId") def ikepolicy_id(self) -> pulumi.Output[str]: - """ - The ID of the IKE policy. Changing this creates a new connection. - """ return pulumi.get(self, "ikepolicy_id") @property @pulumi.getter def initiator(self) -> pulumi.Output[str]: - """ - A valid value is response-only or bi-directional. Default is bi-directional. - """ return pulumi.get(self, "initiator") @property @pulumi.getter(name="ipsecpolicyId") def ipsecpolicy_id(self) -> pulumi.Output[str]: - """ - The ID of the IPsec policy. Changing this creates a new connection. - """ return pulumi.get(self, "ipsecpolicy_id") @property @pulumi.getter(name="localEpGroupId") def local_ep_group_id(self) -> pulumi.Output[Optional[str]]: - """ - The ID for the endpoint group that contains private subnets for the local side of the connection. - You must specify this parameter with the peer_ep_group_id parameter unless - in backward- compatible mode where peer_cidrs is provided with a subnet_id for the VPN service. - Changing this updates the existing connection. - """ return pulumi.get(self, "local_ep_group_id") @property @pulumi.getter(name="localId") def local_id(self) -> pulumi.Output[Optional[str]]: - """ - An ID to be used instead of the external IP address for a virtual router used in traffic between instances on different networks in east-west traffic. - Most often, local ID would be domain name, email address, etc. - If this is not configured then the external IP address will be used as the ID. - """ return pulumi.get(self, "local_id") @property @pulumi.getter def mtu(self) -> pulumi.Output[int]: - """ - The maximum transmission unit (MTU) value to address fragmentation. - Minimum value is 68 for IPv4, and 1280 for IPv6. - """ return pulumi.get(self, "mtu") @property @pulumi.getter def name(self) -> pulumi.Output[str]: - """ - The name of the connection. Changing this updates the name of - the existing connection. - """ return pulumi.get(self, "name") @property @pulumi.getter(name="peerAddress") def peer_address(self) -> pulumi.Output[str]: - """ - The peer gateway public IPv4 or IPv6 address or FQDN. - """ return pulumi.get(self, "peer_address") @property @pulumi.getter(name="peerCidrs") def peer_cidrs(self) -> pulumi.Output[Optional[Sequence[str]]]: - """ - Unique list of valid peer private CIDRs in the form < net_address > / < prefix > . - """ return pulumi.get(self, "peer_cidrs") @property @pulumi.getter(name="peerEpGroupId") def peer_ep_group_id(self) -> pulumi.Output[Optional[str]]: - """ - The ID for the endpoint group that contains private CIDRs in the form < net_address > / < prefix > for the peer side of the connection. - You must specify this parameter with the local_ep_group_id parameter unless in backward-compatible mode - where peer_cidrs is provided with a subnet_id for the VPN service. - """ return pulumi.get(self, "peer_ep_group_id") @property @pulumi.getter(name="peerId") def peer_id(self) -> pulumi.Output[str]: - """ - The peer router identity for authentication. A valid value is an IPv4 address, IPv6 address, e-mail address, key ID, or FQDN. - Typically, this value matches the peer_address value. - Changing this updates the existing policy. - """ return pulumi.get(self, "peer_id") @property @pulumi.getter def psk(self) -> pulumi.Output[str]: - """ - The pre-shared key. A valid value is any string. - """ return pulumi.get(self, "psk") @property @pulumi.getter def region(self) -> pulumi.Output[str]: - """ - The region in which to obtain the V2 Networking client. - A Networking client is needed to create an IPSec site connection. If omitted, the - `region` argument of the provider is used. Changing this creates a new - site connection. - """ return pulumi.get(self, "region") @property @pulumi.getter(name="tenantId") def tenant_id(self) -> pulumi.Output[str]: - """ - The owner of the connection. Required if admin wants to - create a connection for another project. Changing this creates a new connection. - """ return pulumi.get(self, "tenant_id") @property @pulumi.getter(name="valueSpecs") def value_specs(self) -> pulumi.Output[Optional[Mapping[str, str]]]: - """ - Map of additional options. - """ return pulumi.get(self, "value_specs") @property @pulumi.getter(name="vpnserviceId") def vpnservice_id(self) -> pulumi.Output[str]: - """ - The ID of the VPN service. Changing this creates a new connection. - """ return pulumi.get(self, "vpnservice_id")