func (c *Client) Expose(application string, exposedEndpoints map[string]params.ExposedEndpoint) error {
	if c.BestAPIVersion() < 13 && hasGranularExposeParameters(exposedEndpoints) {
		return errors.NewNotSupported(nil, "controller does not support granular expose parameters; applying this change would make all open application ports accessible from 0.0.0.0/0")
	}

	args := params.ApplicationExpose{
		ApplicationName:  application,
		ExposedEndpoints: exposedEndpoints,
	}
	return c.facade.FacadeCall("Expose", args, nil)
}
// Expose changes the juju-managed firewall to expose any ports that
// were also explicitly marked by units as open. The exposedEndpoints argument
// can be used to restrict the set of ports that get exposed and at the same
// time specify which spaces and/or CIDRs should be able to access these ports
// on a per endpoint basis.
//
// If the exposedEndpoints parameter is empty, the controller will expose *all*
// open ports of the application to 0.0.0.0/0. This matches the behavior of
// pre-2.9 juju controllers.
Expose changes the juju-managed firewall to expose any ports that
were also explicitly marked by units as open. The exposedEndpoints argument
can be used to restrict the set of ports that get exposed and at the same
time specify which spaces and/or CIDRs should be able to access these ports
on a per endpoint basis.

If the exposedEndpoints parameter is empty, the controller will expose *all
open ports of the application to 0.0.0.0/0. This matches the behavior of
pre-2.9 juju controllers.
// Expose changes the juju - managed firewall to expose any ports that // were also explicitly marked by units as open . The exposedEndpoints argument // can be used to restrict the set of ports that get exposed and at the same // time specify which spaces and / or CIDRs should be able to access these ports // on a per endpoint basis . // // If the exposedEndpoints parameter is empty the controller will expose * all * // open ports of the application to 0 . 0 . 0 . 0 / 0 . This matches the behavior of // pre - 2 . 9 juju controllers .
func (c *Client) Expose(application string, exposedEndpoints map[string]params.ExposedEndpoint) error {
	if c.BestAPIVersion() < 13 && hasGranularExposeParameters(exposedEndpoints) {
		return errors.NewNotSupported(nil, "controller does not support granular expose parameters; applying this change would make all open application ports accessible from 0.0.0.0/0")
	}
	args := params.ApplicationExpose{
		ApplicationName:  application,
		ExposedEndpoints: exposedEndpoints,
	}
	return c.facade.FacadeCall("Expose", args, nil)
}
func ( c * Client ) Expose ( application string , exposedEndpoints map [ string ] params . ExposedEndpoint ) error { if c . BestAPIVersion ( ) < 13 && hasGranularExposeParameters ( exposedEndpoints ) { return errors . NewNotSupported ( nil , " " ) } args := params . ApplicationExpose { ApplicationName : application , ExposedEndpoints : exposedEndpoints , } return c . facade . FacadeCall ( " " , args , nil ) }
Expose changes the juju-managed firewall to expose any ports that
were also explicitly marked by units as open.
Expose changes the juju - managed firewall to expose any ports that were also explicitly marked by units as open .