github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/ims/create_image_obs_test.go (about) 1 package ims 2 3 import ( 4 "testing" 5 6 "github.com/opentelekomcloud/gophertelekomcloud/acceptance/tools" 7 images1 "github.com/opentelekomcloud/gophertelekomcloud/openstack/ims/v1/images" 8 "github.com/opentelekomcloud/gophertelekomcloud/openstack/ims/v1/others" 9 "github.com/opentelekomcloud/gophertelekomcloud/openstack/ims/v2/images" 10 th "github.com/opentelekomcloud/gophertelekomcloud/testhelper" 11 ) 12 13 func TestCreateImageFromOBS(t *testing.T) { 14 t.Skip("long run test only for manual purpose") 15 client1, client2 := getClient(t) 16 17 bucketName, objectName := makeOBS(t) 18 19 fromOBS, err := images.CreateImageFromOBS(client2, images.CreateImageFromOBSOpts{ 20 Name: tools.RandomString("ims-test-", 5), 21 OsType: "Linux", 22 ImageUrl: bucketName + ":" + objectName, 23 MinDisk: 1, 24 Tags: []string{"rancher"}, 25 }) 26 th.AssertNoErr(t, err) 27 28 image := jobEntities(t, client1, client2, fromOBS) 29 30 copied, err := others.CopyImageInRegion(client1, others.CopyImageInRegionOpts{ 31 ImageId: image.ImageId, 32 Name: tools.RandomString("ims-test-", 5), 33 }) 34 th.AssertNoErr(t, err) 35 jobEntities(t, client1, client2, copied) 36 37 quota, err := others.ShowImageQuota(client1) 38 th.AssertNoErr(t, err) 39 tools.PrintResource(t, quota) 40 } 41 42 func TestCreateDataImage(t *testing.T) { 43 client1, client2 := getClient(t) 44 45 bucketName, objectName := makeOBS(t) 46 47 fromOBS, err := images1.CreateDataImage(client1, images1.CreateDataImageOpts{ 48 Name: tools.RandomString("ims-test-", 5), 49 ImageUrl: bucketName + ":" + objectName, 50 MinDisk: 1, 51 }) 52 th.AssertNoErr(t, err) 53 54 image := jobEntities(t, client1, client2, fromOBS) 55 56 updated, err := images.UpdateImage(client2, image.ImageId, []images.UpdateImageOpts{{ 57 Op: "replace", 58 Path: "/name", 59 Value: tools.RandomString("DataImage-test-", 5), 60 }}) 61 th.AssertNoErr(t, err) 62 tools.PrintResource(t, updated) 63 }