github.com/IBM-Cloud/bluemix-go@v0.0.0-20240423071914-9e96525baef4/examples/cis/cisv1/zonecreate/main.go (about) 1 package main 2 3 import ( 4 "flag" 5 "log" 6 "os" 7 8 "github.com/IBM-Cloud/bluemix-go/api/cis/cisv1" 9 "github.com/IBM-Cloud/bluemix-go/session" 10 "github.com/IBM-Cloud/bluemix-go/trace" 11 ) 12 13 func main() { 14 15 var cis_id string 16 flag.StringVar(&cis_id, "cis_id", "", "CRN of the CIS service instance") 17 18 var domain string 19 flag.StringVar(&domain, "domain", "", "DNS domain name for zone") 20 21 flag.Parse() 22 23 if domain == "" || cis_id == "" { 24 flag.Usage() 25 os.Exit(1) 26 } 27 28 trace.Logger = trace.NewLogger("true") 29 sess, err := session.New() 30 if err != nil { 31 log.Fatal(err) 32 } 33 34 cisClient, err := cisv1.New(sess) 35 if err != nil { 36 log.Fatal(err) 37 } 38 zonesAPI := cisClient.Zones() 39 params := cisv1.ZoneBody{Name: domain} 40 myZonePtr, err := zonesAPI.CreateZone(cis_id, params) 41 42 if err != nil { 43 log.Fatal(err) 44 } 45 myZone := *myZonePtr 46 zoneId := myZone.Id 47 myZonePtr, err = zonesAPI.GetZone(cis_id, zoneId) 48 49 if err != nil { 50 log.Fatal(err) 51 } 52 53 }