blob: 9f183790d22ae0db6696d665f915871a288f0233 [file] [log] [blame]
Jon Perritt0b09d1d2014-10-24 13:26:18 -05001// +build acceptance
2
3package v2
4
5import (
6 "testing"
7
8 "github.com/rackspace/gophercloud/openstack/compute/v2/extensions/bootfromvolume"
9 "github.com/rackspace/gophercloud/openstack/compute/v2/servers"
10 th "github.com/rackspace/gophercloud/testhelper"
11 "github.com/smashwilson/gophercloud/acceptance/tools"
12)
13
14func TestBootFromVolume(t *testing.T) {
15 client, err := newClient()
16 th.AssertNoErr(t, err)
17
18 if testing.Short() {
19 t.Skip("Skipping test that requires server creation in short mode.")
20 }
21
22 choices, err := ComputeChoicesFromEnv()
23 if err != nil {
24 t.Fatal(err)
25 }
26
27 name := tools.RandomString("Gophercloud-", 8)
28 t.Logf("Creating server [%s].", name)
29
30 bd := bootfromvolume.BlockDevice{
31 UUID: choices.ImageID,
32 SourceType: "image",
33 VolumeSize: 10,
34 }
35
36 serverCreateOpts := servers.CreateOpts{
37 Name: name,
38 FlavorRef: "3",
39 }
40 server, err := bootfromvolume.Create(client, bootfromvolume.CreateOptsExt{
41 serverCreateOpts,
42 bd,
43 }).Extract()
44 th.AssertNoErr(t, err)
45 t.Logf("Created server: %+v\n", server)
46 defer deleteServer(t, client, server)
47 t.Logf("Deleting server [%s]...", name)
48}