blob: 677b3b3f3cdadd0b61158808f3a06530a44e1c50 [file] [log] [blame]
Jamie Hannaford05d200d2015-02-20 14:49:05 +01001// +build acceptance db
2
3package v1
4
5import "github.com/rackspace/gophercloud/pagination"
6
7func (c context) createBackup() {
8 opts := backups.CreateOpts{
9 Name: tools.PrefixString("backup_", 5),
10 InstanceID: c.instanceID,
11 }
12
13 backup, err := backups.Create(c.client, opts)
14
15 c.Logf("Created backup %#v", backup)
16 c.AssertNoErr(t, err)
17
18 c.backupID = backup.ID
19}
20
21func (c context) getBackup() {
22 backup, err := backups.Get(c.client, c.backupID).Extract()
23 c.AssertNoErr(err)
24 c.Logf("Getting backup %s", backup.ID)
25}
26
27func (c context) listAllBackups() {
28 c.Logf("Listing backups")
29
30 err := backups.List(c.client).EachPage(func(page pagination.Page) (bool, error) {
31 backupList, err := backups.ExtractBackups(page)
32 c.AssertNoErr(err)
33
34 for _, b := range backupList {
35 c.Logf("Backup: %#v", b)
36 }
37
38 return true, nil
39 })
40
41 c.CheckNoErr(err)
42}
43
44func (c context) listInstanceBackups() {
45 c.Logf("Listing backups for instance %s", c.instanceID)
46
47 err := instances.ListBackups(c.client).EachPage(func(page pagination.Page) (bool, error) {
48 backupList, err := backups.ExtractBackups(page)
49 c.AssertNoErr(err)
50
51 for _, b := range backupList {
52 c.Logf("Backup: %#v", b)
53 }
54
55 return true, nil
56 })
57
58 c.CheckNoErr(err)
59}
60
61func (c context) deleteBackup() {
62 err := backups.Delete(c.client, c.backupID).ExtractErr()
63 c.AssertNoErr(err)
64 c.Logf("Deleted backup %s", c.backupID)
65}