github.com/gophercloud/gophercloud@v1.11.0/openstack/orchestration/v1/stackresources/doc.go (about) 1 /* 2 Package stackresources provides operations for working with stack resources. 3 A resource is a template artifact that represents some component of your 4 desired architecture (a Cloud Server, a group of scaled Cloud Servers, a load 5 balancer, some configuration management system, and so forth). 6 7 Example of get resource information in stack 8 9 rsrc_result := stackresources.Get(client, stack.Name, stack.ID, rsrc.Name) 10 if rsrc_result.Err != nil { 11 panic(rsrc_result.Err) 12 } 13 rsrc, err := rsrc_result.Extract() 14 if err != nil { 15 panic(err) 16 } 17 18 Example for list stack resources 19 20 all_stack_rsrc_pages, err := stackresources.List(client, stack.Name, stack.ID, nil).AllPages() 21 if err != nil { 22 panic(err) 23 } 24 25 all_stack_rsrcs, err := stackresources.ExtractResources(all_stack_rsrc_pages) 26 if err != nil { 27 panic(err) 28 } 29 30 fmt.Println("Resource List:") 31 for _, rsrc := range all_stack_rsrcs { 32 // Get information of a resource in stack 33 rsrc_result := stackresources.Get(client, stack.Name, stack.ID, rsrc.Name) 34 if rsrc_result.Err != nil { 35 panic(rsrc_result.Err) 36 } 37 rsrc, err := rsrc_result.Extract() 38 if err != nil { 39 panic(err) 40 } 41 fmt.Println("Resource Name: ", rsrc.Name, ", Physical ID: ", rsrc.PhysicalID, ", Status: ", rsrc.Status) 42 } 43 44 Example for get resource type schema 45 46 schema_result := stackresources.Schema(client, "OS::Heat::Stack") 47 if schema_result.Err != nil { 48 panic(schema_result.Err) 49 } 50 schema, err := schema_result.Extract() 51 if err != nil { 52 panic(err) 53 } 54 fmt.Println("Schema for resource type OS::Heat::Stack") 55 fmt.Println(schema.SupportStatus) 56 57 Example for get resource type Template 58 59 tmp_result := stackresources.Template(client, "OS::Heat::Stack") 60 if tmp_result.Err != nil { 61 panic(tmp_result.Err) 62 } 63 tmp, err := tmp_result.Extract() 64 if err != nil { 65 panic(err) 66 } 67 fmt.Println("Template for resource type OS::Heat::Stack") 68 fmt.Println(string(tmp)) 69 */ 70 package stackresources