Documentation
¶
Index ¶
- type A2APolicy
- type AIBackend
- type AppProtocol
- type BackendAuth
- type BackendTLS
- type CORS
- type DirectResponse
- type Endpoint
- type FilterOrPolicy
- type GatewayAddress
- type GatewayDestination
- type HeaderMatch
- type HeaderModifier
- type HeaderValueMatch
- type HealthStatus
- type HostRedirect
- type IPFamily
- type Identity
- type InboundProtocol
- type LoadBalancer
- type LoadBalancerHealthPolicy
- type LoadBalancerMode
- type LoadBalancerScope
- type LocalBind
- type LocalConfig
- type LocalListener
- type LocalListenerProtocol
- type LocalRoute
- type LocalTCPRoute
- type LocalTLSServerConfig
- type LocalWorkload
- type Locality
- type MCPAuthorization
- type MCPBackend
- type MCPTarget
- type MethodMatch
- type NamespacedHostname
- type NetworkAddress
- type NetworkMode
- type OpenAPITargetSpec
- type OutboundProtocol
- type PathMatch
- type PathRedirect
- type QueryMatch
- type QueryValueMatch
- type RequestMirror
- type RequestRedirect
- type RetryPolicy
- type RouteBackend
- type RouteFilter
- type RouteMatch
- type SSETargetSpec
- type Service
- type ServiceBackend
- type SimpleBackend
- type StdioTargetSpec
- type TCPFilterOrPolicy
- type TCPRouteBackend
- type Target
- type TimeoutPolicy
- type Translator
- type TranslatorPlugin
- type URLRewrite
- type Workload
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AIBackend ¶
type AIBackend struct {
Name string `json:"name" yaml:"name"`
}
AIBackend represents an AI backend (placeholder)
type AppProtocol ¶
type AppProtocol string
AppProtocol represents application protocol
const ( AppProtocolHTTP11 AppProtocol = "Http11" AppProtocolHTTP2 AppProtocol = "Http2" AppProtocolGRPC AppProtocol = "Grpc" )
type BackendAuth ¶
type BackendAuth struct { // Placeholder for backend auth configuration Type string `json:"type" yaml:"type"` Config interface{} `json:"config,omitempty" yaml:"config,omitempty"` }
BackendAuth represents backend authentication
type BackendTLS ¶
type BackendTLS struct { // This would contain TLS configuration but is complex in Rust // Simplified representation Insecure bool `json:"insecure,omitempty" yaml:"insecure,omitempty"` InsecureHost bool `json:"insecureHost,omitempty" yaml:"insecureHost,omitempty"` Cert string `json:"cert,omitempty" yaml:"cert,omitempty"` Key string `json:"key,omitempty" yaml:"key,omitempty"` Root string `json:"root,omitempty" yaml:"root,omitempty"` }
BackendTLS represents backend TLS configuration
type CORS ¶
type CORS struct { AllowOrigins []string `json:"allowOrigins,omitempty" yaml:"allowOrigins,omitempty"` AllowMethods []string `json:"allowMethods,omitempty" yaml:"allowMethods,omitempty"` AllowHeaders []string `json:"allowHeaders,omitempty" yaml:"allowHeaders,omitempty"` ExposeHeaders []string `json:"exposeHeaders,omitempty" yaml:"exposeHeaders,omitempty"` MaxAge *int `json:"maxAge,omitempty" yaml:"maxAge,omitempty"` AllowCredentials bool `json:"allowCredentials,omitempty" yaml:"allowCredentials,omitempty"` }
CORS represents CORS configuration
type DirectResponse ¶
type DirectResponse struct { Status int `json:"status" yaml:"status"` Body string `json:"body,omitempty" yaml:"body,omitempty"` Headers map[string]string `json:"headers,omitempty" yaml:"headers,omitempty"` }
DirectResponse represents direct response
type Endpoint ¶
type Endpoint struct { WorkloadUID string `json:"workloadUid" yaml:"workloadUid"` Port map[uint16]uint16 `json:"port" yaml:"port"` Status HealthStatus `json:"status" yaml:"status"` }
Endpoint represents a service endpoint
type FilterOrPolicy ¶
type FilterOrPolicy struct { // Filters RequestHeaderModifier *HeaderModifier `json:"requestHeaderModifier,omitempty" yaml:"requestHeaderModifier,omitempty"` ResponseHeaderModifier *HeaderModifier `json:"responseHeaderModifier,omitempty" yaml:"responseHeaderModifier,omitempty"` RequestRedirect *RequestRedirect `json:"requestRedirect,omitempty" yaml:"requestRedirect,omitempty"` URLRewrite *URLRewrite `json:"urlRewrite,omitempty" yaml:"urlRewrite,omitempty"` RequestMirror *RequestMirror `json:"requestMirror,omitempty" yaml:"requestMirror,omitempty"` DirectResponse *DirectResponse `json:"directResponse,omitempty" yaml:"directResponse,omitempty"` CORS *CORS `json:"cors,omitempty" yaml:"cors,omitempty"` // Policies MCPAuthorization *MCPAuthorization `json:"mcpAuthorization,omitempty" yaml:"mcpAuthorization,omitempty"` A2A *A2APolicy `json:"a2a,omitempty" yaml:"a2a,omitempty"` AI interface{} `json:"ai,omitempty" yaml:"ai,omitempty"` // Skipped complex type BackendTLS *BackendTLS `json:"backendTLS,omitempty" yaml:"backendTLS,omitempty"` BackendAuth *BackendAuth `json:"backendAuth,omitempty" yaml:"backendAuth,omitempty"` LocalRateLimit []interface{} `json:"localRateLimit,omitempty" yaml:"localRateLimit,omitempty"` // Skipped complex type RemoteRateLimit interface{} `json:"remoteRateLimit,omitempty" yaml:"remoteRateLimit,omitempty"` // Skipped complex type JWTAuth interface{} `json:"jwtAuth,omitempty" yaml:"jwtAuth,omitempty"` // Skipped complex type ExtAuthz interface{} `json:"extAuthz,omitempty" yaml:"extAuthz,omitempty"` // Skipped complex type // Traffic Policy Timeout *TimeoutPolicy `json:"timeout,omitempty" yaml:"timeout,omitempty"` Retry *RetryPolicy `json:"retry,omitempty" yaml:"retry,omitempty"` }
FilterOrPolicy represents route filters and policies
type GatewayAddress ¶
type GatewayAddress struct { Destination GatewayDestination `json:"destination" yaml:"destination"` HBONEMTLSPort uint16 `json:"hboneMtlsPort" yaml:"hboneMtlsPort"` }
GatewayAddress represents a gateway address
type GatewayDestination ¶
type GatewayDestination struct { Address *NetworkAddress `json:"address,omitempty" yaml:"address,omitempty"` Hostname *NamespacedHostname `json:"hostname,omitempty" yaml:"hostname,omitempty"` }
GatewayDestination represents gateway destination
type HeaderMatch ¶
type HeaderMatch struct { Name string `json:"name" yaml:"name"` Value HeaderValueMatch `json:"value" yaml:"value"` }
HeaderMatch represents header matching
type HeaderModifier ¶
type HeaderModifier struct { Add map[string]string `json:"add,omitempty" yaml:"add,omitempty"` Set map[string]string `json:"set,omitempty" yaml:"set,omitempty"` Remove []string `json:"remove,omitempty" yaml:"remove,omitempty"` }
HeaderModifier represents header modification
type HeaderValueMatch ¶
type HeaderValueMatch struct { Exact string `json:"exact,omitempty" yaml:"exact,omitempty"` Regex string `json:"regex,omitempty" yaml:"regex,omitempty"` }
HeaderValueMatch represents header value matching
type HealthStatus ¶
type HealthStatus string
HealthStatus represents health status
const ( HealthStatusHealthy HealthStatus = "Healthy" HealthStatusUnhealthy HealthStatus = "Unhealthy" )
type HostRedirect ¶
type HostRedirect struct { Full string `json:"full,omitempty" yaml:"full,omitempty"` Host string `json:"host,omitempty" yaml:"host,omitempty"` Port *uint16 `json:"port,omitempty" yaml:"port,omitempty"` }
HostRedirect represents host redirection
type Identity ¶
type Identity struct { TrustDomain string `json:"trustDomain" yaml:"trustDomain"` Namespace string `json:"namespace" yaml:"namespace"` ServiceAccount string `json:"serviceAccount" yaml:"serviceAccount"` }
Identity represents a workload identity
type InboundProtocol ¶
type InboundProtocol string
InboundProtocol represents the inbound protocol
const ( InboundProtocolTCP InboundProtocol = "TCP" InboundProtocolHBONE InboundProtocol = "HBONE" InboundProtocolLegacyIstioMTLS InboundProtocol = "LegacyIstioMtls" )
type LoadBalancer ¶
type LoadBalancer struct { RoutingPreferences []LoadBalancerScope `json:"routingPreferences" yaml:"routingPreferences"` Mode LoadBalancerMode `json:"mode" yaml:"mode"` HealthPolicy LoadBalancerHealthPolicy `json:"healthPolicy" yaml:"healthPolicy"` }
LoadBalancer represents load balancer configuration
type LoadBalancerHealthPolicy ¶
type LoadBalancerHealthPolicy string
LoadBalancerHealthPolicy represents load balancer health policy
const ( LoadBalancerHealthPolicyOnlyHealthy LoadBalancerHealthPolicy = "OnlyHealthy" LoadBalancerHealthPolicyAllowAll LoadBalancerHealthPolicy = "AllowAll" )
type LoadBalancerMode ¶
type LoadBalancerMode string
LoadBalancerMode represents load balancer mode
const ( LoadBalancerModeStandard LoadBalancerMode = "Standard" LoadBalancerModeStrict LoadBalancerMode = "Strict" LoadBalancerModeFailover LoadBalancerMode = "Failover" )
type LoadBalancerScope ¶
type LoadBalancerScope string
LoadBalancerScope represents load balancer scope
const ( LoadBalancerScopeRegion LoadBalancerScope = "Region" LoadBalancerScopeZone LoadBalancerScope = "Zone" LoadBalancerScopeSubzone LoadBalancerScope = "Subzone" LoadBalancerScopeNode LoadBalancerScope = "Node" LoadBalancerScopeCluster LoadBalancerScope = "Cluster" LoadBalancerScopeNetwork LoadBalancerScope = "Network" )
type LocalBind ¶
type LocalBind struct { Port uint16 `json:"port" yaml:"port"` Listeners []LocalListener `json:"listeners" yaml:"listeners"` }
LocalBind represents a network bind configuration
type LocalConfig ¶
type LocalConfig struct { Config interface{} `json:"config" yaml:"config"` // required type Binds []LocalBind `json:"binds,omitempty" yaml:"binds,omitempty"` Workloads []LocalWorkload `json:"workloads,omitempty" yaml:"workloads,omitempty"` Services []Service `json:"services,omitempty" yaml:"services,omitempty"` }
LocalConfig represents the main configuration structure
type LocalListener ¶
type LocalListener struct { Name string `json:"name,omitempty" yaml:"name,omitempty"` GatewayName string `json:"gatewayName,omitempty" yaml:"gatewayName,omitempty"` Hostname string `json:"hostname,omitempty" yaml:"hostname,omitempty"` Protocol LocalListenerProtocol `json:"protocol" yaml:"protocol"` TLS *LocalTLSServerConfig `json:"tls,omitempty" yaml:"tls,omitempty"` Routes []LocalRoute `json:"routes,omitempty" yaml:"routes,omitempty"` TCPRoutes []LocalTCPRoute `json:"tcpRoutes,omitempty" yaml:"tcpRoutes,omitempty"` }
LocalListener represents a listener configuration
type LocalListenerProtocol ¶
type LocalListenerProtocol string
LocalListenerProtocol represents the protocol type
const ( LocalListenerProtocolHTTP LocalListenerProtocol = "HTTP" LocalListenerProtocolHTTPS LocalListenerProtocol = "HTTPS" LocalListenerProtocolTLS LocalListenerProtocol = "TLS" LocalListenerProtocolTCP LocalListenerProtocol = "TCP" LocalListenerProtocolHBONE LocalListenerProtocol = "HBONE" )
type LocalRoute ¶
type LocalRoute struct { RouteName string `json:"name,omitempty" yaml:"name,omitempty"` RuleName string `json:"ruleName,omitempty" yaml:"ruleName,omitempty"` Hostnames []string `json:"hostnames,omitempty" yaml:"hostnames,omitempty"` Matches []RouteMatch `json:"matches,omitempty" yaml:"matches,omitempty"` Policies *FilterOrPolicy `json:"policies,omitempty" yaml:"policies,omitempty"` Backends []RouteBackend `json:"backends,omitempty" yaml:"backends,omitempty"` }
LocalRoute represents an HTTP route configuration
type LocalTCPRoute ¶
type LocalTCPRoute struct { RouteName string `json:"name,omitempty" yaml:"name,omitempty"` RuleName string `json:"ruleName,omitempty" yaml:"ruleName,omitempty"` Hostnames []string `json:"hostnames,omitempty" yaml:"hostnames,omitempty"` Policies *TCPFilterOrPolicy `json:"policies,omitempty" yaml:"policies,omitempty"` Backends []TCPRouteBackend `json:"backends,omitempty" yaml:"backends,omitempty"` }
LocalTCPRoute represents a TCP route configuration
type LocalTLSServerConfig ¶
type LocalTLSServerConfig struct { Cert string `json:"cert" yaml:"cert"` Key string `json:"key" yaml:"key"` }
LocalTLSServerConfig represents TLS server configuration
type LocalWorkload ¶
type LocalWorkload struct { Workload Workload `json:",inline" yaml:",inline"` Services map[string]map[uint16]uint16 `json:"services,omitempty" yaml:"services,omitempty"` }
LocalWorkload represents a local workload
type Locality ¶
type Locality struct { Region string `json:"region" yaml:"region"` Zone string `json:"zone" yaml:"zone"` Subzone string `json:"subzone" yaml:"subzone"` }
Locality represents geographical locality
type MCPAuthorization ¶
type MCPAuthorization struct {
Rules interface{} `json:"rules" yaml:"rules"` // RuleSet - skipped complex type
}
MCPAuthorization represents MCP authorization policy
type MCPBackend ¶
type MCPBackend struct {
Targets []MCPTarget `json:"targets" yaml:"targets"`
}
MCPBackend represents an MCP backend
type MCPTarget ¶
type MCPTarget struct { Name string `json:"name" yaml:"name"` SSE *SSETargetSpec `json:"sse,omitempty" yaml:"sse,omitempty"` Stdio *StdioTargetSpec `json:"stdio,omitempty" yaml:"stdio,omitempty"` OpenAPI *OpenAPITargetSpec `json:"openapi,omitempty" yaml:"openapi,omitempty"` Filters []interface{} `json:"filters,omitempty" yaml:"filters,omitempty"` // Skipped complex type }
MCPTarget represents an MCP target
type MethodMatch ¶
type MethodMatch struct {
Method string `json:"method" yaml:"method"`
}
MethodMatch represents HTTP method matching
type NamespacedHostname ¶
type NamespacedHostname struct { Namespace string `json:"namespace" yaml:"namespace"` Hostname string `json:"hostname" yaml:"hostname"` }
NamespacedHostname represents a hostname within a namespace
type NetworkAddress ¶
type NetworkAddress struct { Network string `json:"network" yaml:"network"` Address net.IP `json:"address" yaml:"address"` }
NetworkAddress represents an address on a specific network
type NetworkMode ¶
type NetworkMode string
NetworkMode represents the network mode
const ( NetworkModeStandard NetworkMode = "Standard" NetworkModeHostNetwork NetworkMode = "HostNetwork" )
type OpenAPITargetSpec ¶
type OpenAPITargetSpec struct { Host string `json:"host" yaml:"host"` Port uint32 `json:"port" yaml:"port"` Schema interface{} `json:"schema" yaml:"schema"` // OpenAPI schema }
OpenAPITargetSpec represents OpenAPI target specification
type OutboundProtocol ¶
type OutboundProtocol string
OutboundProtocol represents the outbound protocol
const ( OutboundProtocolTCP OutboundProtocol = "TCP" OutboundProtocolHBONE OutboundProtocol = "HBONE" OutboundProtocolDoubleHBONE OutboundProtocol = "DOUBLEHBONE" )
type PathMatch ¶
type PathMatch struct { Exact string `json:"exact,omitempty" yaml:"exact,omitempty"` PathPrefix string `json:"pathPrefix,omitempty" yaml:"pathPrefix,omitempty"` Regex *struct { Pattern string `json:"pattern" yaml:"pattern"` Length int `json:"length" yaml:"length"` } `json:"regex,omitempty" yaml:"regex,omitempty"` }
PathMatch represents path matching
type PathRedirect ¶
type PathRedirect struct { Full string `json:"full,omitempty" yaml:"full,omitempty"` Prefix string `json:"prefix,omitempty" yaml:"prefix,omitempty"` }
PathRedirect represents path redirection
type QueryMatch ¶
type QueryMatch struct { Name string `json:"name" yaml:"name"` Value QueryValueMatch `json:"value" yaml:"value"` }
QueryMatch represents query parameter matching
type QueryValueMatch ¶
type QueryValueMatch struct { Exact string `json:"exact,omitempty" yaml:"exact,omitempty"` Regex string `json:"regex,omitempty" yaml:"regex,omitempty"` }
QueryValueMatch represents query value matching
type RequestMirror ¶
type RequestMirror struct { Backend SimpleBackend `json:"backend" yaml:"backend"` Percentage float64 `json:"percentage" yaml:"percentage"` }
RequestMirror represents request mirroring
type RequestRedirect ¶
type RequestRedirect struct { Scheme string `json:"scheme,omitempty" yaml:"scheme,omitempty"` Authority *HostRedirect `json:"authority,omitempty" yaml:"authority,omitempty"` Path *PathRedirect `json:"path,omitempty" yaml:"path,omitempty"` Status *int `json:"status,omitempty" yaml:"status,omitempty"` }
RequestRedirect represents request redirection
type RetryPolicy ¶
type RetryPolicy struct { Attempts int `json:"attempts" yaml:"attempts"` PerTryTimeout time.Duration `json:"perTryTimeout" yaml:"perTryTimeout"` RetryOn []string `json:"retryOn,omitempty" yaml:"retryOn,omitempty"` }
RetryPolicy represents retry policy
type RouteBackend ¶
type RouteBackend struct { Weight int `json:"weight" yaml:"weight"` Service *ServiceBackend `json:"service,omitempty" yaml:"service,omitempty"` Opaque *Target `json:"opaque,omitempty" yaml:"opaque,omitempty"` Dynamic *struct{} `json:"dynamic,omitempty" yaml:"dynamic,omitempty"` MCP *MCPBackend `json:"mcp,omitempty" yaml:"mcp,omitempty"` AI *AIBackend `json:"ai,omitempty" yaml:"ai,omitempty"` Invalid bool `json:"invalid,omitempty" yaml:"invalid,omitempty"` Filters []RouteFilter `json:"filters,omitempty" yaml:"filters,omitempty"` }
RouteBackend represents a route backend
type RouteFilter ¶
type RouteFilter struct { RequestHeaderModifier *HeaderModifier `json:"requestHeaderModifier,omitempty" yaml:"requestHeaderModifier,omitempty"` ResponseHeaderModifier *HeaderModifier `json:"responseHeaderModifier,omitempty" yaml:"responseHeaderModifier,omitempty"` RequestRedirect *RequestRedirect `json:"requestRedirect,omitempty" yaml:"requestRedirect,omitempty"` URLRewrite *URLRewrite `json:"urlRewrite,omitempty" yaml:"urlRewrite,omitempty"` RequestMirror *RequestMirror `json:"requestMirror,omitempty" yaml:"requestMirror,omitempty"` DirectResponse *DirectResponse `json:"directResponse,omitempty" yaml:"directResponse,omitempty"` CORS *CORS `json:"cors,omitempty" yaml:"cors,omitempty"` }
RouteFilter represents route filters
type RouteMatch ¶
type RouteMatch struct { Headers []HeaderMatch `json:"headers,omitempty" yaml:"headers,omitempty"` Path PathMatch `json:"path" yaml:"path"` Method *MethodMatch `json:"method,omitempty" yaml:"method,omitempty"` Query []QueryMatch `json:"query,omitempty" yaml:"query,omitempty"` }
RouteMatch represents route matching criteria
type SSETargetSpec ¶
type SSETargetSpec struct { Host string `json:"host" yaml:"host"` Port uint32 `json:"port" yaml:"port"` Path string `json:"path" yaml:"path"` }
SSETargetSpec represents SSE target specification
type Service ¶
type Service struct { Name string `json:"name" yaml:"name"` Namespace string `json:"namespace" yaml:"namespace"` Hostname string `json:"hostname" yaml:"hostname"` VIPs []NetworkAddress `json:"vips" yaml:"vips"` Ports map[uint16]uint16 `json:"ports" yaml:"ports"` AppProtocols map[uint16]AppProtocol `json:"appProtocols,omitempty" yaml:"appProtocols,omitempty"` Endpoints map[string]Endpoint `json:"endpoints,omitempty" yaml:"endpoints,omitempty"` SubjectAltNames []string `json:"subjectAltNames,omitempty" yaml:"subjectAltNames,omitempty"` Waypoint *GatewayAddress `json:"waypoint,omitempty" yaml:"waypoint,omitempty"` LoadBalancer *LoadBalancer `json:"loadBalancer,omitempty" yaml:"loadBalancer,omitempty"` IPFamilies *IPFamily `json:"ipFamilies,omitempty" yaml:"ipFamilies,omitempty"` }
Service represents a service in the mesh
type ServiceBackend ¶
type ServiceBackend struct { Name NamespacedHostname `json:"name" yaml:"name"` Port uint16 `json:"port" yaml:"port"` }
ServiceBackend represents a service backend
type SimpleBackend ¶
type SimpleBackend struct { Service *ServiceBackend `json:"service,omitempty" yaml:"service,omitempty"` Opaque *Target `json:"opaque,omitempty" yaml:"opaque,omitempty"` Invalid bool `json:"invalid,omitempty" yaml:"invalid,omitempty"` }
SimpleBackend represents simpler backend types
type StdioTargetSpec ¶
type StdioTargetSpec struct { Cmd string `json:"cmd" yaml:"cmd"` Args []string `json:"args,omitempty" yaml:"args,omitempty"` Env map[string]string `json:"env,omitempty" yaml:"env,omitempty"` }
StdioTargetSpec represents stdio target specification
type TCPFilterOrPolicy ¶
type TCPFilterOrPolicy struct {
BackendTLS *BackendTLS `json:"backendTLS,omitempty" yaml:"backendTLS,omitempty"`
}
TCPFilterOrPolicy represents TCP route policies
type TCPRouteBackend ¶
type TCPRouteBackend struct { Weight int `json:"weight" yaml:"weight"` Backend SimpleBackend `json:"backend" yaml:"backend"` }
TCPRouteBackend represents a TCP route backend
type Target ¶
type Target struct { Address *net.TCPAddr `json:"address,omitempty" yaml:"address,omitempty"` Hostname *struct { Host string `json:"host" yaml:"host"` Port uint16 `json:"port" yaml:"port"` } `json:"hostname,omitempty" yaml:"hostname,omitempty"` }
Target represents a backend target
type TimeoutPolicy ¶
type TimeoutPolicy struct { RequestTimeout *time.Duration `json:"requestTimeout,omitempty" yaml:"requestTimeout,omitempty"` BackendRequestTimeout *time.Duration `json:"backendRequestTimeout,omitempty" yaml:"backendRequestTimeout,omitempty"` }
TimeoutPolicy represents timeout policy
type Translator ¶
type Translator interface { TranslateTransportAdapterOutputs( ctx context.Context, server *v1alpha1.MCPServer, ) ([]client.Object, error) }
Translator is the interface for translating MCPServer objects to TransportAdapter objects.
func NewTransportAdapterTranslator ¶
func NewTransportAdapterTranslator(scheme *runtime.Scheme, plugins []TranslatorPlugin) Translator
type TranslatorPlugin ¶
type URLRewrite ¶
type URLRewrite struct { Authority *HostRedirect `json:"authority,omitempty" yaml:"authority,omitempty"` Path *PathRedirect `json:"path,omitempty" yaml:"path,omitempty"` }
URLRewrite represents URL rewriting
type Workload ¶
type Workload struct { WorkloadIPs []net.IP `json:"workloadIps" yaml:"workloadIps"` Waypoint *GatewayAddress `json:"waypoint,omitempty" yaml:"waypoint,omitempty"` NetworkGateway *GatewayAddress `json:"networkGateway,omitempty" yaml:"networkGateway,omitempty"` Protocol InboundProtocol `json:"protocol" yaml:"protocol"` NetworkMode NetworkMode `json:"networkMode" yaml:"networkMode"` UID string `json:"uid,omitempty" yaml:"uid,omitempty"` Name string `json:"name" yaml:"name"` Namespace string `json:"namespace" yaml:"namespace"` TrustDomain string `json:"trustDomain,omitempty" yaml:"trustDomain,omitempty"` ServiceAccount string `json:"serviceAccount,omitempty" yaml:"serviceAccount,omitempty"` Network string `json:"network,omitempty" yaml:"network,omitempty"` WorkloadName string `json:"workloadName,omitempty" yaml:"workloadName,omitempty"` WorkloadType string `json:"workloadType,omitempty" yaml:"workloadType,omitempty"` CanonicalName string `json:"canonicalName,omitempty" yaml:"canonicalName,omitempty"` CanonicalRev string `json:"canonicalRevision,omitempty" yaml:"canonicalRevision,omitempty"` Hostname string `json:"hostname,omitempty" yaml:"hostname,omitempty"` Node string `json:"node,omitempty" yaml:"node,omitempty"` AuthPolicies []string `json:"authorizationPolicies,omitempty" yaml:"authorizationPolicies,omitempty"` Status HealthStatus `json:"status" yaml:"status"` ClusterID string `json:"clusterId" yaml:"clusterId"` Locality Locality `json:"locality,omitempty" yaml:"locality,omitempty"` Services []NamespacedHostname `json:"services,omitempty" yaml:"services,omitempty"` Capacity uint32 `json:"capacity" yaml:"capacity"` }
Workload represents a workload in the mesh