github.com/IBM-Cloud/bluemix-go@v0.0.0-20240423071914-9e96525baef4/examples/container/V2containers/DedicatedHost/UpdateDedicatedHostPlacement/main.go (about) 1 package main 2 3 import ( 4 "flag" 5 "fmt" 6 "log" 7 8 bluemix "github.com/IBM-Cloud/bluemix-go" 9 "github.com/IBM-Cloud/bluemix-go/session" 10 "github.com/IBM-Cloud/bluemix-go/trace" 11 12 v2 "github.com/IBM-Cloud/bluemix-go/api/container/containerv2" 13 ) 14 15 func main() { 16 17 var HostID string 18 flag.StringVar(&HostID, "hostid", "", "HostID") 19 var HostPoolID string 20 flag.StringVar(&HostPoolID, "hostpoolid", "", "HostPoolID") 21 var EnableDedicatedHostPlacement bool 22 flag.BoolVar(&EnableDedicatedHostPlacement, "enableplacement", false, "EnableDedicatedHostPlacement") 23 24 flag.Parse() 25 fmt.Println("[FLAG]HostID: ", HostID) 26 fmt.Println("[FLAG]HostPoolID: ", HostPoolID) 27 c := new(bluemix.Config) 28 29 trace.Logger = trace.NewLogger("true") 30 31 var updateDedicatedHost = v2.UpdateDedicatedHostPlacementRequest{ 32 HostID: HostID, 33 HostPoolID: HostPoolID, 34 } 35 sess, err := session.New(c) 36 if err != nil { 37 log.Fatal(err) 38 } 39 40 target := v2.ClusterTargetHeader{} 41 42 v2Client, err := v2.New(sess) 43 if err != nil { 44 log.Fatal(err) 45 } 46 dedicatedHostAPI := v2Client.DedicatedHost() 47 48 if EnableDedicatedHostPlacement { 49 err = dedicatedHostAPI.EnableDedicatedHostPlacement(updateDedicatedHost, target) 50 if err != nil { 51 fmt.Printf("EnableDedicatedHostPlacement was not successful: %v \n", err) 52 return 53 } 54 fmt.Printf("EnableDedicatedHostPlacement was successful \n") 55 } else { 56 err = dedicatedHostAPI.DisableDedicatedHostPlacement(updateDedicatedHost, target) 57 if err != nil { 58 fmt.Printf("DisableDedicatedHostPlacement was not successful: %v \n", err) 59 return 60 } 61 fmt.Printf("DisableDedicatedHostPlacement was successful \n") 62 } 63 }