github.com/IBM-Cloud/bluemix-go@v0.0.0-20240314082800-4e02a69b84b2/examples/cis/cisv1/firewall/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 var zone_id string 18 flag.StringVar(&zone_id, "zone_id", "", "zone_id for zone") 19 var firewallType string 20 flag.StringVar(&firewallType, "firewallType", "", "firewallType for zone") 21 22 flag.Parse() 23 24 if zone_id == "" || cis_id == "" || firewallType == "" { 25 flag.Usage() 26 os.Exit(1) 27 } 28 29 trace.Logger = trace.NewLogger("true") 30 sess, err := session.New() 31 if err != nil { 32 log.Fatal(err) 33 } 34 35 cisClient, err := cisv1.New(sess) 36 if err != nil { 37 log.Fatal(err) 38 } 39 firewallAPI := cisClient.Firewall() 40 41 log.Println(">>>>>>>>> Firewall create") 42 43 params := cisv1.FirewallBody{ 44 Paused: false, 45 Description: "testlockdown1", 46 Urls: []string{"www.cis-terraform.com"}, 47 Configurations: []cisv1.Configuration{}, 48 } 49 configuration := cisv1.Configuration{ 50 Target: "ip", 51 Value: "127.0.0.2", 52 } 53 params.Configurations = append(params.Configurations, configuration) 54 55 log.Println(params) 56 57 myFirewallPtr, err := firewallAPI.CreateFirewall(cis_id, zone_id, firewallType, params) 58 59 if err != nil { 60 log.Fatal(err) 61 } 62 63 myFirewall := *myFirewallPtr 64 FirewallID := myFirewall.ID 65 log.Println("Firewall create :", myFirewall) 66 67 log.Println(">>>>>>>>> Firewall read") 68 myFirewallPtr, err = firewallAPI.GetFirewall(cis_id, zone_id, firewallType, FirewallID) 69 70 if err != nil { 71 log.Fatal(err) 72 } 73 74 myFirewall = *myFirewallPtr 75 76 log.Println("Firewall Details by ID:", myFirewall) 77 78 log.Println(">>>>>>>>> Firewall delete") 79 err = firewallAPI.DeleteFirewall(cis_id, zone_id, firewallType, FirewallID) 80 if err != nil { 81 log.Fatal(err) 82 } 83 }