1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
/*
Package routerinsertion implements the fwaasrouterinsertion Firewall extension.
It is used to manage the router information of a firewall.
Example to List Firewalls with Router Information
type FirewallsWithRouters struct {
firewalls.Firewall
routerinsertion.FirewallExt
}
var allFirewalls []FirewallsWithRouters
allPages, err := firewalls.List(networkClient, nil).AllPages()
if err != nil {
panic(err)
}
err = firewalls.ExtractFirewallsInto(allPages, &allFirewalls)
if err != nil {
panic(err)
}
for _, fw := range allFirewalls {
fmt.Printf("%+v\n", fw)
}
Example to Create a Firewall with a Router
firewallCreateOpts := firewalls.CreateOpts{
Name: "firewall_1",
PolicyID: "19ab8c87-4a32-4e6a-a74e-b77fffb89a0c",
}
createOpts := routerinsertion.CreateOptsExt{
CreateOptsBuilder: firewallCreateOpts,
RouterIDs: []string{
"8a3a0d6a-34b5-4a92-b65d-6375a4c1e9e8",
},
}
firewall, err := firewalls.Create(networkClient, createOpts).Extract()
if err != nil {
panic(err)
}
Example to Update a Firewall with a Router
firewallID := "a6917946-38ab-4ffd-a55a-26c0980ce5ee"
firewallUpdateOpts := firewalls.UpdateOpts{
Description: "updated firewall",
PolicyID: "19ab8c87-4a32-4e6a-a74e-b77fffb89a0c",
}
updateOpts := routerinsertion.UpdateOptsExt{
UpdateOptsBuilder: firewallUpdateOpts,
RouterIDs: []string{
"8a3a0d6a-34b5-4a92-b65d-6375a4c1e9e8",
},
}
firewall, err := firewalls.Update(networkClient, firewallID, updateOpts).Extract()
if err != nil {
panic(err)
}
*/
package routerinsertion
|