code: func (g *Cloud) CreateFirewall(f *compute.Firewall) error {
  	ctx, cancel := cloud.ContextWithCallTimeout()
  	defer cancel()
  
  	mc := newFirewallMetricContext("create")
  	return mc.Observe(g.c.Firewalls().Insert(ctx, meta.GlobalKey(f.Name), f))
  }
docs: // CreateFirewall creates the passed firewall