File tree Expand file tree Collapse file tree 1 file changed +14
-19
lines changed
openstack/imageservice/v2/images Expand file tree Collapse file tree 1 file changed +14
-19
lines changed Original file line number Diff line number Diff line change @@ -7,36 +7,31 @@ import (
7
7
8
8
// IDFromName is a convienience function that returns an image's ID given its name.
9
9
func IDFromName (client * gophercloud.ServiceClient , name string ) (string , error ) {
10
- count := 0
11
- id := ""
12
-
13
- listOpts := images.ListOpts {
10
+ allPages , err := images .List (client , images.ListOpts {
14
11
Name : name ,
15
- }
16
-
17
- pages , err := images .List (client , listOpts ).AllPages ()
12
+ }).AllPages ()
18
13
if err != nil {
19
14
return "" , err
20
15
}
21
16
22
- all , err := images .ExtractImages (pages )
17
+ allImages , err := images .ExtractImages (allPages )
23
18
if err != nil {
24
19
return "" , err
25
20
}
26
21
27
- for _ , s := range all {
28
- if s .Name == name {
29
- count ++
30
- id = s .ID
31
- }
32
- }
33
-
34
- switch count {
22
+ switch count := len (allImages ); count {
35
23
case 0 :
36
- return "" , gophercloud.ErrResourceNotFound {Name : name , ResourceType : "image" }
24
+ return "" , gophercloud.ErrResourceNotFound {
25
+ Name : name ,
26
+ ResourceType : "image" ,
27
+ }
37
28
case 1 :
38
- return id , nil
29
+ return allImages [ 0 ]. ID , nil
39
30
default :
40
- return "" , gophercloud.ErrMultipleResourcesFound {Name : name , Count : count , ResourceType : "image" }
31
+ return "" , gophercloud.ErrMultipleResourcesFound {
32
+ Name : name ,
33
+ Count : count ,
34
+ ResourceType : "image" ,
35
+ }
41
36
}
42
37
}
You can’t perform that action at this time.
0 commit comments