github.com/gophercloud/gophercloud@v1.11.0/openstack/containerinfra/v1/clusters/doc.go (about) 1 /* 2 Package clusters contains functionality for working with Magnum Cluster resources. 3 4 Example to Create a Cluster 5 6 masterCount := 1 7 nodeCount := 1 8 createTimeout := 30 9 masterLBEnabled := true 10 createOpts := clusters.CreateOpts{ 11 ClusterTemplateID: "0562d357-8641-4759-8fed-8173f02c9633", 12 CreateTimeout: &createTimeout, 13 DiscoveryURL: "", 14 FlavorID: "m1.small", 15 KeyPair: "my_keypair", 16 Labels: map[string]string{}, 17 MasterCount: &masterCount, 18 MasterFlavorID: "m1.small", 19 Name: "k8s", 20 NodeCount: &nodeCount, 21 MasterLBEnabled: &masterLBEnabled, 22 } 23 24 cluster, err := clusters.Create(serviceClient, createOpts).Extract() 25 if err != nil { 26 panic(err) 27 } 28 29 Example to Get a Cluster 30 31 clusterName := "cluster123" 32 cluster, err := clusters.Get(serviceClient, clusterName).Extract() 33 if err != nil { 34 panic(err) 35 } 36 fmt.Printf("%+v\n", cluster) 37 38 Example to List Clusters 39 40 listOpts := clusters.ListOpts{ 41 Limit: 20, 42 } 43 44 allPages, err := clusters.List(serviceClient, listOpts).AllPages() 45 if err != nil { 46 panic(err) 47 } 48 49 allClusters, err := clusters.ExtractClusters(allPages) 50 if err != nil { 51 panic(err) 52 } 53 54 for _, cluster := range allClusters { 55 fmt.Printf("%+v\n", cluster) 56 } 57 58 Example to List Clusters with detailed information 59 60 allPagesDetail, err := clusters.ListDetail(serviceClient, clusters.ListOpts{}).AllPages() 61 if err != nil { 62 panic(err) 63 } 64 65 allClustersDetail, err := clusters.ExtractClusters(allPagesDetail) 66 if err != nil { 67 panic(err) 68 } 69 70 for _, clusterDetail := range allClustersDetail { 71 fmt.Printf("%+v\n", clusterDetail) 72 } 73 74 Example to Update a Cluster 75 76 updateOpts := []clusters.UpdateOptsBuilder{ 77 clusters.UpdateOpts{ 78 Op: clusters.ReplaceOp, 79 Path: "/master_lb_enabled", 80 Value: "True", 81 }, 82 clusters.UpdateOpts{ 83 Op: clusters.ReplaceOp, 84 Path: "/registry_enabled", 85 Value: "True", 86 }, 87 } 88 clusterUUID, err := clusters.Update(serviceClient, clusterUUID, updateOpts).Extract() 89 if err != nil { 90 panic(err) 91 } 92 fmt.Printf("%s\n", clusterUUID) 93 94 Example to Upgrade a Cluster 95 96 upgradeOpts := clusters.UpgradeOpts{ 97 ClusterTemplate: "0562d357-8641-4759-8fed-8173f02c9633", 98 } 99 clusterUUID, err := clusters.Upgrade(serviceClient, clusterUUID, upgradeOpts).Extract() 100 if err != nil { 101 panic(err) 102 } 103 fmt.Printf("%s\n", clusterUUID) 104 105 Example to Delete a Cluster 106 107 clusterUUID := "dc6d336e3fc4c0a951b5698cd1236ee" 108 err := clusters.Delete(serviceClient, clusterUUID).ExtractErr() 109 if err != nil { 110 panic(err) 111 } 112 */ 113 package clusters