github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/networking/v2/extensions/lbaas/vips_test.go (about) 1 //go:build acceptance || networking || lbaas || vip 2 // +build acceptance networking lbaas vip 3 4 package lbaas 5 6 import ( 7 "testing" 8 9 "github.com/gophercloud/gophercloud/internal/acceptance/clients" 10 networking "github.com/gophercloud/gophercloud/internal/acceptance/openstack/networking/v2" 11 "github.com/gophercloud/gophercloud/internal/acceptance/tools" 12 "github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas/vips" 13 ) 14 15 func TestVIPsList(t *testing.T) { 16 t.Skip("Neutron LBaaS was replaced by Octavia and the API will be removed in a future release") 17 client, err := clients.NewNetworkV2Client() 18 if err != nil { 19 t.Fatalf("Unable to create a network client: %v", err) 20 } 21 22 allPages, err := vips.List(client, vips.ListOpts{}).AllPages() 23 if err != nil { 24 t.Fatalf("Unable to list vips: %v", err) 25 } 26 27 allVIPs, err := vips.ExtractVIPs(allPages) 28 if err != nil { 29 t.Fatalf("Unable to extract vips: %v", err) 30 } 31 32 for _, vip := range allVIPs { 33 tools.PrintResource(t, vip) 34 } 35 } 36 37 func TestVIPsCRUD(t *testing.T) { 38 t.Skip("Neutron LBaaS was replaced by Octavia and the API will be removed in a future release") 39 client, err := clients.NewNetworkV2Client() 40 if err != nil { 41 t.Fatalf("Unable to create a network client: %v", err) 42 } 43 44 network, err := networking.CreateNetwork(t, client) 45 if err != nil { 46 t.Fatalf("Unable to create network: %v", err) 47 } 48 defer networking.DeleteNetwork(t, client, network.ID) 49 50 subnet, err := networking.CreateSubnet(t, client, network.ID) 51 if err != nil { 52 t.Fatalf("Unable to create subnet: %v", err) 53 } 54 defer networking.DeleteSubnet(t, client, subnet.ID) 55 56 pool, err := CreatePool(t, client, subnet.ID) 57 if err != nil { 58 t.Fatalf("Unable to create pool: %v", err) 59 } 60 defer DeletePool(t, client, pool.ID) 61 62 vip, err := CreateVIP(t, client, subnet.ID, pool.ID) 63 if err != nil { 64 t.Fatalf("Unable to create vip: %v", err) 65 } 66 defer DeleteVIP(t, client, vip.ID) 67 68 tools.PrintResource(t, vip) 69 70 connLimit := 100 71 updateOpts := vips.UpdateOpts{ 72 ConnLimit: &connLimit, 73 } 74 75 _, err = vips.Update(client, vip.ID, updateOpts).Extract() 76 if err != nil { 77 t.Fatalf("Unable to update vip: %v", err) 78 } 79 80 newVIP, err := vips.Get(client, vip.ID).Extract() 81 if err != nil { 82 t.Fatalf("Unable to get vip: %v", err) 83 } 84 85 tools.PrintResource(t, newVIP) 86 }