github.com/IBM-Cloud/bluemix-go@v0.0.0-20240423071914-9e96525baef4/examples/container/image_security/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 11 v2 "github.com/IBM-Cloud/bluemix-go/api/container/containerv2" 12 ) 13 14 func main() { 15 16 var clusterIDOrName string 17 flag.StringVar(&clusterIDOrName, "cluster-id-or-name", "", "ID or Name of the targeted cluster") 18 19 var requestType string 20 flag.StringVar(&requestType, "request-type", "", "'enable' or 'disable' image security enforcement") 21 22 flag.Parse() 23 24 if clusterIDOrName == "" { 25 fmt.Println("Please provide a cluster ID or Name to target with -cluster-id-or-name!") 26 return 27 } 28 29 c := new(bluemix.Config) 30 31 sess, err := session.New(c) 32 if err != nil { 33 log.Fatal(err) 34 } 35 36 v2ClusterClient, err := v2.New(sess) 37 if err != nil { 38 log.Fatal(err) 39 } 40 41 v2ClusterAPI := v2ClusterClient.Clusters() 42 43 switch requestType { 44 case "enable": 45 err = v2ClusterAPI.EnableImageSecurityEnforcement( 46 clusterIDOrName, 47 v2.ClusterTargetHeader{}, 48 ) 49 if err != nil { 50 log.Fatal(err) 51 } 52 case "disable": 53 if requestType == "disable" { 54 err = v2ClusterAPI.DisableImageSecurityEnforcement( 55 clusterIDOrName, 56 v2.ClusterTargetHeader{}, 57 ) 58 if err != nil { 59 log.Fatal(err) 60 } 61 } 62 default: 63 fmt.Println("Please provide the request type using request-type!") 64 } 65 }