diff --git a/docs/reference/api_spec.md b/docs/reference/api_spec.md index e9e219d0..ec45323f 100644 --- a/docs/reference/api_spec.md +++ b/docs/reference/api_spec.md @@ -9,931 +9,7 @@
Package v1beta2 contains API Schema definitions for the appmesh v1beta2 API group
Resource Types: --
GatewayRoute is the Schema for the gatewayroutes API
- -Field | -Description | -||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||||||||
-kind
-string
- |
-GatewayRoute |
-||||||||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||||||
-spec
-
-
-GatewayRouteSpec
-
-
- |
-
- - -
|
-||||||||||||
-status
-
-
-GatewayRouteStatus
-
-
- |
-- | -
-
Mesh is the Schema for the meshes API
- -Field | -Description | -||||||||
---|---|---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||||
-kind
-string
- |
-Mesh |
-||||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||
-spec
-
-
-MeshSpec
-
-
- |
-
- - -
|
-||||||||
-status
-
-
-MeshStatus
-
-
- |
-- | -
-
VirtualGateway is the Schema for the virtualgateways API
- -Field | -Description | -||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||||||||||
-kind
-string
- |
-VirtualGateway |
-||||||||||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||||||||
-spec
-
-
-VirtualGatewaySpec
-
-
- |
-
- - -
|
-||||||||||||||
-status
-
-
-VirtualGatewayStatus
-
-
- |
-- | -
-
VirtualNode is the Schema for the virtualnodes API
- -Field | -Description | -||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||||||||||||
-kind
-string
- |
-VirtualNode |
-||||||||||||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||||||||||
-spec
-
-
-VirtualNodeSpec
-
-
- |
-
- - -
|
-||||||||||||||||
-status
-
-
-VirtualNodeStatus
-
-
- |
-- | -
-
VirtualRouter is the Schema for the virtualrouters API
- -Field | -Description | -||||||||
---|---|---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||||
-kind
-string
- |
-VirtualRouter |
-||||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||
-spec
-
-
-VirtualRouterSpec
-
-
- |
-
- - -
|
-||||||||
-status
-
-
-VirtualRouterStatus
-
-
- |
-- | -
-
VirtualService is the Schema for the virtualservices API
- -Field | -Description | -||||||
---|---|---|---|---|---|---|---|
-apiVersion
-string |
-
-
-appmesh.k8s.aws/v1beta2
-
- |
-||||||
-kind
-string
- |
-VirtualService |
-||||||
-metadata
-
-
-Kubernetes meta/v1.ObjectMeta
-
-
- |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||
-spec
-
-
-VirtualServiceSpec
-
-
- |
-
- - -
|
-||||||
-status
-
-
-VirtualServiceStatus
-
-
- |
-- | -
@@ -1259,6 +335,7 @@ string GRPCTimeout, HTTPRetryPolicy, HTTPTimeout, +OutlierDetection, TCPTimeout)
@@ -1326,33 +403,63 @@ int64
type
-
-EgressFilterType
-
+
+EgressFilterType
+
+
+The egress filter type.
+string
alias)+(Appears on: +EgressFilter) +
++
++(Appears on: +AccessLog) +
++
FileAccessLog refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_FileAccessLog.html
+ +Field | +Description | +
---|---|
+path
+
+string
|
- The egress filter type. +The file path to write access logs to. |
string
alias)-(Appears on: -EgressFilter) -
--
-(Appears on: -AccessLog) +VirtualGatewayConnectionPool, +VirtualNodeConnectionPool)
-
FileAccessLog refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_FileAccessLog.html
-path
+maxRequests
-string
+int64
|
- The file path to write access logs to. +Represents the maximum number of inflight requests that an envoy +can concurrently support across all the hosts in the upstream cluster |
+
GatewayRoute is the Schema for the gatewayroutes API
+ +Field | +Description | +||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||||||
+spec
+
+
+GatewayRouteSpec
+
+
+ |
+
+ + +
|
+||||||||||||
+status
+
+
+GatewayRouteStatus
+
+
+ |
++ | +
@@ -2118,14 +1372,104 @@ Read-only.
-+(Appears on: +GatewayRoute) +
++
GatewayRouteStatus defines the observed state of GatewayRoute
+ +Field | +Description | +
---|---|
+gatewayRouteARN
+
+string
+
+ |
+
+(Optional)
+ GatewayRouteARN is the AppMesh GatewayRoute object’s Amazon Resource Name + |
+
+conditions
+
+
+[]GatewayRouteCondition
+
+
+ |
+
+(Optional)
+ The current GatewayRoute status. + |
+
+observedGeneration
+
+int64
+
+ |
+
+(Optional)
+ The generation observed by the GatewayRoute controller. + |
+
+(Appears on: +GRPCGatewayRouteAction, +HTTPGatewayRouteAction) +
++
GatewayRouteTarget refers to https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
+ +Field | +Description | +
---|---|
+virtualService
+
+
+GatewayRouteVirtualService
+
+
+ |
+
+ The virtual service to associate with the gateway route target. + |
+
(Appears on: -GatewayRoute) +GatewayRouteTarget)
-
GatewayRouteStatus defines the observed state of GatewayRoute
+GatewayRouteVirtualService refers to https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
-gatewayRouteARN
-
-string
-
- |
-
-(Optional)
- GatewayRouteARN is the AppMesh GatewayRoute object’s Amazon Resource Name - |
-
-conditions
+virtualServiceRef
-
-[]GatewayRouteCondition
+
+VirtualServiceReference
|
(Optional)
- The current GatewayRoute status. +Reference to Kubernetes VirtualService CR in cluster to associate with the gateway route virtual service target. Exactly one of ‘virtualServiceRef’ or ‘virtualServiceARN’ must be specified. |
-observedGeneration
+virtualServiceARN
-int64
+string
|
(Optional)
- The generation observed by the GatewayRoute controller. +Amazon Resource Name to AppMesh VirtualService object to associate with the gateway route virtual service target. Exactly one of ‘virtualServiceRef’ or ‘virtualServiceARN’ must be specified. |
(Appears on: -GRPCGatewayRouteAction, -HTTPGatewayRouteAction) +VirtualGatewayConnectionPool, +VirtualNodeConnectionPool)
-
GatewayRouteTarget refers to https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
-virtualService
+maxRequests
-
-GatewayRouteVirtualService
-
+int64
|
- The virtual service to associate with the gateway route target. +Represents the maximum number of inflight requests that an envoy +can concurrently support across all the hosts in the upstream cluster |
(Appears on: -GatewayRouteTarget) +VirtualGatewayConnectionPool, +VirtualNodeConnectionPool)
-
GatewayRouteVirtualService refers to https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
-virtualServiceRef
+maxConnections
-
-VirtualServiceReference
-
+int64
|
-(Optional)
- Reference to Kubernetes VirtualService CR in cluster to associate with the gateway route virtual service target. Exactly one of ‘virtualServiceRef’ or ‘virtualServiceARN’ must be specified. +Represents the maximum number of outbound TCP connections +the envoy can establish concurrently with all the hosts in the upstream cluster. |
-virtualServiceARN
+maxPendingRequests
-string
+int64
|
(Optional)
- Amazon Resource Name to AppMesh VirtualService object to associate with the gateway route virtual service target. Exactly one of ‘virtualServiceRef’ or ‘virtualServiceARN’ must be specified. +Represents the number of overflowing requests after max_connections +that an envoy will queue to an upstream cluster. |
+outlierDetection
+
+
+OutlierDetection
+
+
+ |
+
+(Optional)
+ The outlier detection for the listener + |
+
+connectionPool
+
+
+VirtualNodeConnectionPool
+
+
+ |
+
+(Optional)
+ The connection pool settings for the listener + |
+
tls
@@ -3294,6 +2651,121 @@ int64
|
+
Mesh is the Schema for the meshes API
+ +Field | +Description | +||||||||
---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||
+spec
+
+
+MeshSpec
+
+
+ |
+
+ + +
|
+||||||||
+status
+
+
+MeshStatus
+
+
+ |
++ | +
@@ -3532,34 +3004,105 @@ string
MeshARN is the AppMesh Mesh object’s Amazon Resource Name
+(Optional) +MeshARN is the AppMesh Mesh object’s Amazon Resource Name
+conditions
+
+
+[]MeshCondition
+
+
+The current Mesh status.
+observedGeneration
+
+int64
+
+The generation observed by the Mesh controller.
++(Appears on: +Listener) +
++
OutlierDetection defines the health check policy that temporarily ejects an endpoint/host of a VirtualNode +from the load balancing set when it meets failure threshold
+ +Field | +Description | +
---|---|
+maxServerErrors
+
+int64
+
+ |
+
+ The threshold for the number of server errors returned by a given host during an outlier detection interval. +If the server error count meets/exceeds this threshold the host is ejected. +A server error is defined as any HTTP 5xx response (or the equivalent for gRPC and TCP connections) + |
+
+interval
+
+
+Duration
+
+
+ |
+
+ The time interval between ejection analysis sweeps. This can result in both new ejections as well as hosts being returned to service |
-conditions
+baseEjectionDuration
-
-[]MeshCondition
+
+Duration
|
-(Optional)
- The current Mesh status. +The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected |
-observedGeneration
+maxEjectionPercent
int64
|
-(Optional)
- The generation observed by the Mesh controller. +The threshold for the max percentage of outlier hosts that can be ejected from the load balancing set. +maxEjectionPercent=100 means outlier detection can potentially eject all of the hosts from the upstream service if they are all considered outliers, leaving the load balancing set with zero hosts |
+(Appears on: +VirtualNodeConnectionPool) +
++
+Field | +Description | +
---|---|
+maxConnections
+
+int64
+
+ |
+
+ Represents the maximum number of outbound TCP connections +the envoy can establish concurrently with all the hosts in the upstream cluster. + |
+
string
alias)@@ -4036,6 +3609,166 @@ TLSValidationContextFileTrust +
+
VirtualGateway is the Schema for the virtualgateways API
+ +Field | +Description | +||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||||||||
+spec
+
+
+VirtualGatewaySpec
+
+
+ |
+
+ + +
|
+||||||||||||||
+status
+
+
+VirtualGatewayStatus
+
+
+ |
++ | +
@@ -4271,19 +4004,83 @@ string
A human readable message indicating details about the transition.
+A human readable message indicating details about the transition.
+string
alias)+(Appears on: +VirtualGatewayCondition) +
++
++(Appears on: +VirtualGatewayListener) +
++
VirtualGatewayConnectionPool refers to the connection pools settings for Virtual Gateway. +Connection pool limits the number of connections that an Envoy can concurrently establish with +all the hosts in the upstream cluster. Currently connection pool is supported only at the listener +level and it is intended protect your local application from being overwhelmed with connections.
+ +Field | +Description | +
---|---|
+http
+
+
+HTTPConnectionPool
+
+
+ |
+
+(Optional)
+ Specifies http connection pool settings for the virtual gateway listener + |
+
+http2
+
+
+HTTP2ConnectionPool
+
+
+ |
+
+(Optional)
+ Specifies http2 connection pool settings for the virtual gateway listener + |
+
+grpc
+
+
+GRPCConnectionPool
+
+
+ |
+
+(Optional)
+ Specifies grpc connection pool settings for the virtual gateway listener |
string
alias)-(Appears on: -VirtualGatewayCondition) -
--
@@ -4464,6 +4261,20 @@ VirtualGatewayHealthCheckPolicy
connectionPool
+
+
+VirtualGatewayConnectionPool
+
+
+The connection pool settings for the listener
+tls
@@ -5109,6 +4920,181 @@ VirtualGatewayTLSValidationContextFileTrust
+
VirtualNode is the Schema for the virtualnodes API
+ +Field | +Description | +||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||||||||||
+spec
+
+
+VirtualNodeSpec
+
+
+ |
+
+ + +
|
+||||||||||||||||
+status
+
+
+VirtualNodeStatus
+
+
+ |
++ | +
@@ -5140,65 +5126,143 @@ VirtualNodeConditionType
status
+status
+
+
+Kubernetes core/v1.ConditionStatus
+
+
+Status of the condition, one of True, False, Unknown.
+lastTransitionTime
+
+
+Kubernetes meta/v1.Time
+
+
+Last time the condition transitioned from one status to another.
+reason
+
+string
+
+The reason for the condition’s last transition.
+message
+
+string
+
+A human readable message indicating details about the transition.
+string
alias)+(Appears on: +VirtualNodeCondition) +
++
++(Appears on: +Listener) +
++
VirtualNodeConnectionPool refers to the connection pools settings for Virtual Node. +Connection pool limits the number of connections that an Envoy can concurrently establish with +all the hosts in the upstream cluster. Currently connection pool is supported only at the listener +level and it is intended protect your local application from being overwhelmed with connections.
+ +Field | +Description | +
---|---|
+tcp
-
-Kubernetes core/v1.ConditionStatus
+
+TCPConnectionPool
|
- Status of the condition, one of True, False, Unknown. +(Optional) +Specifies tcp connection pool settings for the virtual node listener |
-lastTransitionTime
+http
-
-Kubernetes meta/v1.Time
+
+HTTPConnectionPool
|
(Optional)
- Last time the condition transitioned from one status to another. +Specifies http connection pool settings for the virtual node listener |
-reason
+http2
-string
+
+HTTP2ConnectionPool
+
|
(Optional)
- The reason for the condition’s last transition. +Specifies http2 connection pool settings for the virtual node listener |
-message
+grpc
-string
+
+GRPCConnectionPool
+
|
(Optional)
- A human readable message indicating details about the transition. +Specifies grpc connection pool settings for the virtual node listener |
string
alias)-(Appears on: -VirtualNodeCondition) -
--
@@ -5361,7 +5425,8 @@ ServiceDiscovery
The service discovery information for the virtual node.
+The service discovery information for the virtual node. Optional if there is no +inbound traffic(no listeners). Mandatory if a listener is specified.
+
VirtualRouter is the Schema for the virtualrouters API
+ +Field | +Description | +||||||||
---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||
+spec
+
+
+VirtualRouterSpec
+
+
+ |
+
+ + +
|
+||||||||
+status
+
+
+VirtualRouterStatus
+
+
+ |
++ | +
@@ -5838,6 +6017,107 @@ int64 +
+
VirtualService is the Schema for the virtualservices API
+ +Field | +Description | +||||||
---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||
+spec
+
+
+VirtualServiceSpec
+
+
+ |
+
+ + +
|
+||||||
+status
+
+
+VirtualServiceStatus
+
+
+ |
++ | +
diff --git a/hack/api-docs/README.md b/hack/api-docs/README.md index e12d4736..c151254d 100644 --- a/hack/api-docs/README.md +++ b/hack/api-docs/README.md @@ -1,24 +1,27 @@ Follow below instructions to generate docs -1. create a doc.go under apis/appmesh/v1beta2/ with below contents +1. Setup the [gen-crd-api-reference-docs](https://github.com/ahmetb/gen-crd-api-reference-docs/) tool +The tool does not support kubebuilder v2 so we need to add manual hooks to generate the docs + +2. Create a doc.go under apis/appmesh/v1beta2/ with below contentseifjc ``` // Package v1beta2 contains API Schema definitions for the appmesh v1beta2 API group // +kubebuilder:object:generate=true // +groupName=appmesh.k8s.aws package v1beta2 ``` -2. add `// +genclient` to CRD object type declarations(VirtualNode/Mesh/etc) with a blank line before other comments. e.g. +3. Add `// +genclient` to CRD object type declarations(VirtualNode/Mesh/etc) with a blank line before other comments. e.g. ``` // +genclient // // +kubebuilder:object:root=true ``` -3. generate doc with below commend +4. Generate API docs with command below ``` gen-crd-api-reference-docs \ -template-dir=hack/api-docs/template/ \ -config=hack/api-docs/config.json \ -api-dir=github.com/aws/aws-app-mesh-controller-for-k8s/apis/appmesh/v1beta2 \ -out-file docs/reference/api_spec.md -``` \ No newline at end of file +```