Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func OverrideAPISettings ¶
func OverrideAPISettings(epCtx *dataplane.EndpointContext, gwType GatewayType) *choreov1.Endpoint
OverrideAPISettings applies visibility-specific API settings to the endpoint based on the gateway type. For web applications or endpoints without network visibilities, it returns the original endpoint unchanged. Otherwise, it applies the API settings from either the public or organization visibility configuration.
Types ¶
type GatewayType ¶
type GatewayType string
GatewayType represents the type of gateway used to expose endpoints
const ( // GatewayExternal is the gateway used to expose endpoints that are publicly accessible from outside the cluster GatewayExternal GatewayType = "gateway-external" // GatewayInternal is the gateway used to expose endpoints that are only accessible within the organization GatewayInternal GatewayType = "gateway-internal" )
type OrganizationVisibilityStrategy ¶
type OrganizationVisibilityStrategy struct {
// contains filtered or unexported fields
}
func NewOrganizationVisibilityStrategy ¶
func NewOrganizationVisibilityStrategy() *OrganizationVisibilityStrategy
func (*OrganizationVisibilityStrategy) GetGatewayType ¶
func (s *OrganizationVisibilityStrategy) GetGatewayType() GatewayType
func (*OrganizationVisibilityStrategy) IsHTTPRouteRequired ¶
func (s *OrganizationVisibilityStrategy) IsHTTPRouteRequired(epCtx *dataplane.EndpointContext) bool
func (*OrganizationVisibilityStrategy) IsSecurityPolicyRequired ¶
func (s *OrganizationVisibilityStrategy) IsSecurityPolicyRequired(epCtx *dataplane.EndpointContext) bool
type PublicVisibilityStrategy ¶
type PublicVisibilityStrategy struct {
// contains filtered or unexported fields
}
func NewPublicVisibilityStrategy ¶
func NewPublicVisibilityStrategy() *PublicVisibilityStrategy
func (*PublicVisibilityStrategy) GetGatewayType ¶
func (s *PublicVisibilityStrategy) GetGatewayType() GatewayType
func (*PublicVisibilityStrategy) IsHTTPRouteRequired ¶
func (s *PublicVisibilityStrategy) IsHTTPRouteRequired(epCtx *dataplane.EndpointContext) bool
func (*PublicVisibilityStrategy) IsSecurityPolicyRequired ¶
func (s *PublicVisibilityStrategy) IsSecurityPolicyRequired(epCtx *dataplane.EndpointContext) bool
type Visibility ¶
type Visibility string
Visibility represents the accessibility level of an endpoint
const ( // VisibilityPublic indicates that an endpoint should be accessible from outside the cluster // through the external gateway VisibilityPublic Visibility = "Public" // VisibilityPrivate indicates that an endpoint should only be accessible within the // organization through the internal gateway VisibilityPrivate Visibility = "Organization" )
type VisibilityStrategy ¶
type VisibilityStrategy interface {
IsHTTPRouteRequired(epCtx *dataplane.EndpointContext) bool
IsSecurityPolicyRequired(epCtx *dataplane.EndpointContext) bool
GetGatewayType() GatewayType
}
Click to show internal directories.
Click to hide internal directories.