From 35d1027c3489df2e93320eb33f5a362a9fc98630 Mon Sep 17 00:00:00 2001 From: Revolyssup Date: Mon, 26 Dec 2022 13:58:29 +0000 Subject: [PATCH] [Patterns] Pattern components generated from latest Consul manifests Signed-off-by: l5io --- .../v1.0.2/exportedservices.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/ingressgateway.meshery.layer5.io_meshmodel.json | 2 +- .../components/v1.0.2/mesh.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/peeringacceptor.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/peeringdialer.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/proxydefaults.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/servicedefaults.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/serviceintentions.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/serviceresolver.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/servicerouter.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/servicesplitter.meshery.layer5.io_meshmodel.json | 2 +- .../v1.0.2/terminatinggateway.meshery.layer5.io_meshmodel.json | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/templates/meshmodel/components/v1.0.2/exportedservices.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/exportedservices.meshery.layer5.io_meshmodel.json index 464383a..659eb01 100644 --- a/templates/meshmodel/components/v1.0.2/exportedservices.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/exportedservices.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ExportedServices","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Exported Services","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ExportedServicesSpec defines the desired state of ExportedServices.\",\n \"properties\": {\n \"services\": {\n \"description\": \"Services is a list of services to be exported and the list of partitions to expose them to.\",\n \"items\": {\n \"description\": \"ExportedService manages the exporting of a service in the local partition to other partitions.\",\n \"properties\": {\n \"consumers\": {\n \"description\": \"Consumers is a list of downstream consumers of the service to be exported.\",\n \"items\": {\n \"description\": \"ServiceConsumer represents a downstream consumer of the service to be exported.\",\n \"properties\": {\n \"partition\": {\n \"description\": \"Partition is the admin partition to export the service to.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"[Experimental] Peer is the name of the peer to export the service to.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"name\": {\n \"description\": \"Name is the name of the service to be exported.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace to export the service from.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Exported Services\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ExportedServices","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Exported Services","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ExportedServicesSpec defines the desired state of ExportedServices.\",\n \"properties\": {\n \"services\": {\n \"description\": \"Services is a list of services to be exported and the list of partitions to expose them to.\",\n \"items\": {\n \"description\": \"ExportedService manages the exporting of a service in the local partition to other partitions.\",\n \"properties\": {\n \"consumers\": {\n \"description\": \"Consumers is a list of downstream consumers of the service to be exported.\",\n \"items\": {\n \"description\": \"ServiceConsumer represents a downstream consumer of the service to be exported.\",\n \"properties\": {\n \"partition\": {\n \"description\": \"Partition is the admin partition to export the service to.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"[Experimental] Peer is the name of the peer to export the service to.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"name\": {\n \"description\": \"Name is the name of the service to be exported.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace to export the service from.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Exported Services\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/ingressgateway.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/ingressgateway.meshery.layer5.io_meshmodel.json index 4fa7f39..9a45eb2 100644 --- a/templates/meshmodel/components/v1.0.2/ingressgateway.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/ingressgateway.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"IngressGateway","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Ingress Gateway","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"IngressGatewaySpec defines the desired state of IngressGateway.\",\n \"properties\": {\n \"defaults\": {\n \"description\": \"Defaults is default configuration for all upstream services\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"The maximum number of concurrent requests that will be allowed at a single point in time. Use this to limit HTTP/2 traffic, since HTTP/2 has many requests per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"The maximum number of connections a service instance will be allowed to establish against the given upstream. Use this to limit HTTP/1.1 traffic, since HTTP/1.1 has a request per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"The maximum number of requests that will be queued while waiting for a connection to be established.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"listeners\": {\n \"description\": \"Listeners declares what ports the ingress gateway should listen on, and what services to associated to those ports.\",\n \"items\": {\n \"description\": \"IngressListener manages the configuration for a listener on a specific port.\",\n \"properties\": {\n \"port\": {\n \"description\": \"Port declares the port on which the ingress gateway should listen for traffic.\",\n \"type\": \"integer\"\n },\n \"protocol\": {\n \"description\": \"Protocol declares what type of traffic this listener is expected to receive. Depending on the protocol, a listener might support multiplexing services over a single port, or additional discovery chain features. The current supported values are: (tcp | http | http2 | grpc).\",\n \"type\": \"string\"\n },\n \"services\": {\n \"description\": \"Services declares the set of services to which the listener forwards traffic. For \\\"tcp\\\" protocol listeners, only a single service is allowed. For \\\"http\\\" listeners, multiple services can be declared.\",\n \"items\": {\n \"description\": \"IngressService manages configuration for services that are exposed to ingress traffic.\",\n \"properties\": {\n \"hosts\": {\n \"description\": \"Hosts is a list of hostnames which should be associated to this service on the defined listener. Only allowed on layer 7 protocols, this will be used to route traffic to the service by matching the Host header of the HTTP request. \\n If a host is provided for a service that also has a wildcard specifier defined, the host will override the wildcard-specifier-provided \\\"\\u003cservice-name\\u003e.*\\\" domain for that listener. \\n This cannot be specified when using the wildcard specifier, \\\"*\\\", or when using a \\\"tcp\\\" listener.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"maxConcurrentRequests\": {\n \"description\": \"The maximum number of concurrent requests that will be allowed at a single point in time. Use this to limit HTTP/2 traffic, since HTTP/2 has many requests per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"The maximum number of connections a service instance will be allowed to establish against the given upstream. Use this to limit HTTP/1.1 traffic, since HTTP/1.1 has a request per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"The maximum number of requests that will be queued while waiting for a connection to be established.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"name\": {\n \"description\": \"Name declares the service to which traffic should be forwarded. \\n This can either be a specific service, or the wildcard specifier, \\\"*\\\". If the wildcard specifier is provided, the listener must be of \\\"http\\\" protocol and means that the listener will forward traffic to all services. \\n A name can be specified on multiple listeners, and will be exposed on both of the listeners.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace where the service is located. Namespacing is a Consul Enterprise feature.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the admin-partition where the service is located. Partitioning is a Consul Enterprise feature.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"tls\": {\n \"description\": \"TLS allows specifying some TLS configuration per listener.\",\n \"properties\": {\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"tls\": {\n \"description\": \"TLS config for this listener.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"Define a subset of cipher suites to restrict Only applicable to connections negotiated via TLS 1.2 or earlier.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"enabled\": {\n \"description\": \"Indicates that TLS should be enabled for this gateway service.\",\n \"type\": \"boolean\"\n },\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"enabled\"\n ],\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"tls\": {\n \"description\": \"TLS holds the TLS configuration for this gateway.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"Define a subset of cipher suites to restrict Only applicable to connections negotiated via TLS 1.2 or earlier.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"enabled\": {\n \"description\": \"Indicates that TLS should be enabled for this gateway service.\",\n \"type\": \"boolean\"\n },\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"enabled\"\n ],\n \"type\": \"object\"\n }\n },\n \"title\": \"Ingress Gateway\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"IngressGateway","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Ingress Gateway","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"IngressGatewaySpec defines the desired state of IngressGateway.\",\n \"properties\": {\n \"defaults\": {\n \"description\": \"Defaults is default configuration for all upstream services\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"The maximum number of concurrent requests that will be allowed at a single point in time. Use this to limit HTTP/2 traffic, since HTTP/2 has many requests per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"The maximum number of connections a service instance will be allowed to establish against the given upstream. Use this to limit HTTP/1.1 traffic, since HTTP/1.1 has a request per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"The maximum number of requests that will be queued while waiting for a connection to be established.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"listeners\": {\n \"description\": \"Listeners declares what ports the ingress gateway should listen on, and what services to associated to those ports.\",\n \"items\": {\n \"description\": \"IngressListener manages the configuration for a listener on a specific port.\",\n \"properties\": {\n \"port\": {\n \"description\": \"Port declares the port on which the ingress gateway should listen for traffic.\",\n \"type\": \"integer\"\n },\n \"protocol\": {\n \"description\": \"Protocol declares what type of traffic this listener is expected to receive. Depending on the protocol, a listener might support multiplexing services over a single port, or additional discovery chain features. The current supported values are: (tcp | http | http2 | grpc).\",\n \"type\": \"string\"\n },\n \"services\": {\n \"description\": \"Services declares the set of services to which the listener forwards traffic. For \\\"tcp\\\" protocol listeners, only a single service is allowed. For \\\"http\\\" listeners, multiple services can be declared.\",\n \"items\": {\n \"description\": \"IngressService manages configuration for services that are exposed to ingress traffic.\",\n \"properties\": {\n \"hosts\": {\n \"description\": \"Hosts is a list of hostnames which should be associated to this service on the defined listener. Only allowed on layer 7 protocols, this will be used to route traffic to the service by matching the Host header of the HTTP request. \\n If a host is provided for a service that also has a wildcard specifier defined, the host will override the wildcard-specifier-provided \\\"\\u003cservice-name\\u003e.*\\\" domain for that listener. \\n This cannot be specified when using the wildcard specifier, \\\"*\\\", or when using a \\\"tcp\\\" listener.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"maxConcurrentRequests\": {\n \"description\": \"The maximum number of concurrent requests that will be allowed at a single point in time. Use this to limit HTTP/2 traffic, since HTTP/2 has many requests per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"The maximum number of connections a service instance will be allowed to establish against the given upstream. Use this to limit HTTP/1.1 traffic, since HTTP/1.1 has a request per connection.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"The maximum number of requests that will be queued while waiting for a connection to be established.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"name\": {\n \"description\": \"Name declares the service to which traffic should be forwarded. \\n This can either be a specific service, or the wildcard specifier, \\\"*\\\". If the wildcard specifier is provided, the listener must be of \\\"http\\\" protocol and means that the listener will forward traffic to all services. \\n A name can be specified on multiple listeners, and will be exposed on both of the listeners.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace where the service is located. Namespacing is a Consul Enterprise feature.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the admin-partition where the service is located. Partitioning is a Consul Enterprise feature.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"tls\": {\n \"description\": \"TLS allows specifying some TLS configuration per listener.\",\n \"properties\": {\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"tls\": {\n \"description\": \"TLS config for this listener.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"Define a subset of cipher suites to restrict Only applicable to connections negotiated via TLS 1.2 or earlier.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"enabled\": {\n \"description\": \"Indicates that TLS should be enabled for this gateway service.\",\n \"type\": \"boolean\"\n },\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"enabled\"\n ],\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"tls\": {\n \"description\": \"TLS holds the TLS configuration for this gateway.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"Define a subset of cipher suites to restrict Only applicable to connections negotiated via TLS 1.2 or earlier.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"enabled\": {\n \"description\": \"Indicates that TLS should be enabled for this gateway service.\",\n \"type\": \"boolean\"\n },\n \"sds\": {\n \"description\": \"SDS allows configuring TLS certificate from an SDS service.\",\n \"properties\": {\n \"certResource\": {\n \"description\": \"CertResource is the SDS resource name to request when fetching the certificate from the SDS service.\",\n \"type\": \"string\"\n },\n \"clusterName\": {\n \"description\": \"ClusterName is the SDS cluster name to connect to, to retrieve certificates. This cluster must be specified in the Gateway's bootstrap configuration.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"enabled\"\n ],\n \"type\": \"object\"\n }\n },\n \"title\": \"Ingress Gateway\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/mesh.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/mesh.meshery.layer5.io_meshmodel.json index 7463158..d5b14bb 100644 --- a/templates/meshmodel/components/v1.0.2/mesh.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/mesh.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"Mesh","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Mesh","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"MeshSpec defines the desired state of Mesh.\",\n \"properties\": {\n \"http\": {\n \"description\": \"HTTP defines the HTTP configuration for the service mesh.\",\n \"properties\": {\n \"sanitizeXForwardedClientCert\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"sanitizeXForwardedClientCert\"\n ],\n \"type\": \"object\"\n },\n \"peering\": {\n \"description\": \"Peering defines the peering configuration for the service mesh.\",\n \"properties\": {\n \"peerThroughMeshGateways\": {\n \"description\": \"PeerThroughMeshGateways determines whether peering traffic between control planes should flow through mesh gateways. If enabled, Consul servers will advertise mesh gateway addresses as their own. Additionally, mesh gateways will configure themselves to expose the local servers using a peering-specific SNI.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"tls\": {\n \"description\": \"TLS defines the TLS configuration for the service mesh.\",\n \"properties\": {\n \"incoming\": {\n \"description\": \"Incoming defines the TLS configuration for inbound mTLS connections targeting the public listener on Connect and TerminatingGateway proxy kinds.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"CipherSuites sets the default list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Envoy will use a default server cipher list. The list of supported cipher suites can be seen in https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169 and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul may add new supported cipher suites if any are added to Envoy.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"outgoing\": {\n \"description\": \"Outgoing defines the TLS configuration for outbound mTLS connections dialing upstreams from Connect and IngressGateway proxy kinds.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"CipherSuites sets the default list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Envoy will use a default server cipher list. The list of supported cipher suites can be seen in https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169 and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul may add new supported cipher suites if any are added to Envoy.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls the configuration specific to proxies in \\\"transparent\\\" mode. Added in v1.10.0.\",\n \"properties\": {\n \"meshDestinationsOnly\": {\n \"description\": \"MeshDestinationsOnly determines whether sidecar proxies operating in \\\"transparent\\\" mode can proxy traffic to IP addresses not registered in Consul's catalog. If enabled, traffic will only be proxied to upstreams with service registrations in the catalog.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Mesh\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"Mesh","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Mesh","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"MeshSpec defines the desired state of Mesh.\",\n \"properties\": {\n \"http\": {\n \"description\": \"HTTP defines the HTTP configuration for the service mesh.\",\n \"properties\": {\n \"sanitizeXForwardedClientCert\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"sanitizeXForwardedClientCert\"\n ],\n \"type\": \"object\"\n },\n \"peering\": {\n \"description\": \"Peering defines the peering configuration for the service mesh.\",\n \"properties\": {\n \"peerThroughMeshGateways\": {\n \"description\": \"PeerThroughMeshGateways determines whether peering traffic between control planes should flow through mesh gateways. If enabled, Consul servers will advertise mesh gateway addresses as their own. Additionally, mesh gateways will configure themselves to expose the local servers using a peering-specific SNI.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"tls\": {\n \"description\": \"TLS defines the TLS configuration for the service mesh.\",\n \"properties\": {\n \"incoming\": {\n \"description\": \"Incoming defines the TLS configuration for inbound mTLS connections targeting the public listener on Connect and TerminatingGateway proxy kinds.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"CipherSuites sets the default list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Envoy will use a default server cipher list. The list of supported cipher suites can be seen in https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169 and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul may add new supported cipher suites if any are added to Envoy.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"outgoing\": {\n \"description\": \"Outgoing defines the TLS configuration for outbound mTLS connections dialing upstreams from Connect and IngressGateway proxy kinds.\",\n \"properties\": {\n \"cipherSuites\": {\n \"description\": \"CipherSuites sets the default list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Envoy will use a default server cipher list. The list of supported cipher suites can be seen in https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169 and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul may add new supported cipher suites if any are added to Envoy.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"tlsMaxVersion\": {\n \"description\": \"TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections.\",\n \"type\": \"string\"\n },\n \"tlsMinVersion\": {\n \"description\": \"TLSMinVersion sets the default minimum TLS version supported. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, while older releases of Envoy default to TLS 1.0.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls the configuration specific to proxies in \\\"transparent\\\" mode. Added in v1.10.0.\",\n \"properties\": {\n \"meshDestinationsOnly\": {\n \"description\": \"MeshDestinationsOnly determines whether sidecar proxies operating in \\\"transparent\\\" mode can proxy traffic to IP addresses not registered in Consul's catalog. If enabled, traffic will only be proxied to upstreams with service registrations in the catalog.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Mesh\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/peeringacceptor.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/peeringacceptor.meshery.layer5.io_meshmodel.json index d37ffa9..00a8251 100644 --- a/templates/meshmodel/components/v1.0.2/peeringacceptor.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/peeringacceptor.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"PeeringAcceptor","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Peering Acceptor","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"PeeringAcceptorSpec defines the desired state of PeeringAcceptor.\",\n \"properties\": {\n \"peer\": {\n \"description\": \"Peer describes the information needed to create a peering.\",\n \"properties\": {\n \"secret\": {\n \"description\": \"Secret describes how to store the generated peering token.\",\n \"properties\": {\n \"backend\": {\n \"description\": \"Backend is where the generated secret is stored. Currently supports the value: \\\"kubernetes\\\".\",\n \"type\": \"string\"\n },\n \"key\": {\n \"description\": \"Key is the key of the secret generated.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the secret generated.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"required\": [\n \"peer\"\n ],\n \"title\": \"Peering Acceptor\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"PeeringAcceptor","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Peering Acceptor","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"PeeringAcceptorSpec defines the desired state of PeeringAcceptor.\",\n \"properties\": {\n \"peer\": {\n \"description\": \"Peer describes the information needed to create a peering.\",\n \"properties\": {\n \"secret\": {\n \"description\": \"Secret describes how to store the generated peering token.\",\n \"properties\": {\n \"backend\": {\n \"description\": \"Backend is where the generated secret is stored. Currently supports the value: \\\"kubernetes\\\".\",\n \"type\": \"string\"\n },\n \"key\": {\n \"description\": \"Key is the key of the secret generated.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the secret generated.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"required\": [\n \"peer\"\n ],\n \"title\": \"Peering Acceptor\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/peeringdialer.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/peeringdialer.meshery.layer5.io_meshmodel.json index a8cb514..d17abef 100644 --- a/templates/meshmodel/components/v1.0.2/peeringdialer.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/peeringdialer.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"PeeringDialer","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Peering Dialer","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"PeeringDialerSpec defines the desired state of PeeringDialer.\",\n \"properties\": {\n \"peer\": {\n \"description\": \"Peer describes the information needed to create a peering.\",\n \"properties\": {\n \"secret\": {\n \"description\": \"Secret describes how to store the generated peering token.\",\n \"properties\": {\n \"backend\": {\n \"description\": \"Backend is where the generated secret is stored. Currently supports the value: \\\"kubernetes\\\".\",\n \"type\": \"string\"\n },\n \"key\": {\n \"description\": \"Key is the key of the secret generated.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the secret generated.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"required\": [\n \"peer\"\n ],\n \"title\": \"Peering Dialer\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"PeeringDialer","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Peering Dialer","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"PeeringDialerSpec defines the desired state of PeeringDialer.\",\n \"properties\": {\n \"peer\": {\n \"description\": \"Peer describes the information needed to create a peering.\",\n \"properties\": {\n \"secret\": {\n \"description\": \"Secret describes how to store the generated peering token.\",\n \"properties\": {\n \"backend\": {\n \"description\": \"Backend is where the generated secret is stored. Currently supports the value: \\\"kubernetes\\\".\",\n \"type\": \"string\"\n },\n \"key\": {\n \"description\": \"Key is the key of the secret generated.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the secret generated.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"required\": [\n \"peer\"\n ],\n \"title\": \"Peering Dialer\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/proxydefaults.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/proxydefaults.meshery.layer5.io_meshmodel.json index 47f4d8a..72cb99b 100644 --- a/templates/meshmodel/components/v1.0.2/proxydefaults.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/proxydefaults.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ProxyDefaults","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Proxy Defaults","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ProxyDefaultsSpec defines the desired state of ProxyDefaults.\",\n \"properties\": {\n \"config\": {\n \"description\": \"Config is an arbitrary map of configuration values used by Connect proxies. Any values that your proxy allows can be configured globally here. Supports JSON config values. See https://www.consul.io/docs/connect/proxies/envoy#configuration-formatting\",\n \"type\": \"object\",\n \"x-kubernetes-preserve-unknown-fields\": true\n },\n \"expose\": {\n \"description\": \"Expose controls the default expose path configuration for Envoy.\",\n \"properties\": {\n \"checks\": {\n \"description\": \"Checks defines whether paths associated with Consul checks will be exposed. This flag triggers exposing all HTTP and GRPC check paths registered for the service.\",\n \"type\": \"boolean\"\n },\n \"paths\": {\n \"description\": \"Paths is the list of paths exposed through the proxy.\",\n \"items\": {\n \"properties\": {\n \"listenerPort\": {\n \"description\": \"ListenerPort defines the port of the proxy's listener for exposed paths.\",\n \"type\": \"integer\"\n },\n \"localPathPort\": {\n \"description\": \"LocalPathPort is the port that the service is listening on for the given path.\",\n \"type\": \"integer\"\n },\n \"path\": {\n \"description\": \"Path is the path to expose through the proxy, ie. \\\"/metrics\\\".\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"http\\\" and \\\"http2\\\", defaults to \\\"http\\\".\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGateway controls the default mesh gateway configuration for this service.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"mode\": {\n \"description\": \"Mode can be one of \\\"direct\\\" or \\\"transparent\\\". \\\"transparent\\\" represents that inbound and outbound application traffic is being captured and redirected through the proxy. This mode does not enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if traffic is already being redirected. \\\"direct\\\" represents that the proxy's listeners must be dialed directly by the local application and other proxies. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"type\": \"string\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls configuration specific to proxies in transparent mode. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"properties\": {\n \"dialedDirectly\": {\n \"description\": \"DialedDirectly indicates whether transparent proxies can dial this proxy instance directly. The discovery chain is not considered when dialing a service instance directly. This setting is useful when addressing stateful services, such as a database cluster with a leader node.\",\n \"type\": \"boolean\"\n },\n \"outboundListenerPort\": {\n \"description\": \"OutboundListenerPort is the port of the listener where outbound application traffic is being redirected to.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Proxy Defaults\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ProxyDefaults","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Proxy Defaults","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ProxyDefaultsSpec defines the desired state of ProxyDefaults.\",\n \"properties\": {\n \"config\": {\n \"description\": \"Config is an arbitrary map of configuration values used by Connect proxies. Any values that your proxy allows can be configured globally here. Supports JSON config values. See https://www.consul.io/docs/connect/proxies/envoy#configuration-formatting\",\n \"type\": \"object\",\n \"x-kubernetes-preserve-unknown-fields\": true\n },\n \"expose\": {\n \"description\": \"Expose controls the default expose path configuration for Envoy.\",\n \"properties\": {\n \"checks\": {\n \"description\": \"Checks defines whether paths associated with Consul checks will be exposed. This flag triggers exposing all HTTP and GRPC check paths registered for the service.\",\n \"type\": \"boolean\"\n },\n \"paths\": {\n \"description\": \"Paths is the list of paths exposed through the proxy.\",\n \"items\": {\n \"properties\": {\n \"listenerPort\": {\n \"description\": \"ListenerPort defines the port of the proxy's listener for exposed paths.\",\n \"type\": \"integer\"\n },\n \"localPathPort\": {\n \"description\": \"LocalPathPort is the port that the service is listening on for the given path.\",\n \"type\": \"integer\"\n },\n \"path\": {\n \"description\": \"Path is the path to expose through the proxy, ie. \\\"/metrics\\\".\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"http\\\" and \\\"http2\\\", defaults to \\\"http\\\".\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGateway controls the default mesh gateway configuration for this service.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"mode\": {\n \"description\": \"Mode can be one of \\\"direct\\\" or \\\"transparent\\\". \\\"transparent\\\" represents that inbound and outbound application traffic is being captured and redirected through the proxy. This mode does not enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if traffic is already being redirected. \\\"direct\\\" represents that the proxy's listeners must be dialed directly by the local application and other proxies. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"type\": \"string\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls configuration specific to proxies in transparent mode. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"properties\": {\n \"dialedDirectly\": {\n \"description\": \"DialedDirectly indicates whether transparent proxies can dial this proxy instance directly. The discovery chain is not considered when dialing a service instance directly. This setting is useful when addressing stateful services, such as a database cluster with a leader node.\",\n \"type\": \"boolean\"\n },\n \"outboundListenerPort\": {\n \"description\": \"OutboundListenerPort is the port of the listener where outbound application traffic is being redirected to.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Proxy Defaults\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/servicedefaults.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/servicedefaults.meshery.layer5.io_meshmodel.json index 383b4cf..9a4a625 100644 --- a/templates/meshmodel/components/v1.0.2/servicedefaults.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/servicedefaults.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ServiceDefaults","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Defaults","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceDefaultsSpec defines the desired state of ServiceDefaults.\",\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination is an address(es)/port combination that represents an endpoint outside the mesh. This is only valid when the mesh is configured in \\\"transparent\\\" mode. Destinations live outside of Consul's catalog, and because of this, they do not require an artificial node to be created.\",\n \"properties\": {\n \"addresses\": {\n \"description\": \"Addresses is a list of IPs and/or hostnames that can be dialed and routed through a terminating gateway.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"port\": {\n \"description\": \"Port is the port that can be dialed on any of the addresses in this Destination.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"expose\": {\n \"description\": \"Expose controls the default expose path configuration for Envoy.\",\n \"properties\": {\n \"checks\": {\n \"description\": \"Checks defines whether paths associated with Consul checks will be exposed. This flag triggers exposing all HTTP and GRPC check paths registered for the service.\",\n \"type\": \"boolean\"\n },\n \"paths\": {\n \"description\": \"Paths is the list of paths exposed through the proxy.\",\n \"items\": {\n \"properties\": {\n \"listenerPort\": {\n \"description\": \"ListenerPort defines the port of the proxy's listener for exposed paths.\",\n \"type\": \"integer\"\n },\n \"localPathPort\": {\n \"description\": \"LocalPathPort is the port that the service is listening on for the given path.\",\n \"type\": \"integer\"\n },\n \"path\": {\n \"description\": \"Path is the path to expose through the proxy, ie. \\\"/metrics\\\".\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"http\\\" and \\\"http2\\\", defaults to \\\"http\\\".\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"externalSNI\": {\n \"description\": \"ExternalSNI is an optional setting that allows for the TLS SNI value to be changed to a non-connect value when federating with an external system.\",\n \"type\": \"string\"\n },\n \"localConnectTimeoutMs\": {\n \"description\": \"The number of milliseconds allowed to make connections to the local application instance before timing out. Defaults to 5000.\",\n \"type\": \"integer\"\n },\n \"localRequestTimeoutMs\": {\n \"description\": \"In milliseconds, the timeout for HTTP requests to the local application instance. Applies to HTTP-based protocols only. If not specified, inherits the Envoy default for route timeouts (15s).\",\n \"type\": \"integer\"\n },\n \"maxInboundConnections\": {\n \"description\": \"MaxInboundConnections is the maximum number of concurrent inbound connections to each service instance. Defaults to 0 (using consul's default) if not set.\",\n \"type\": \"integer\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGateway controls the default mesh gateway configuration for this service.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"mode\": {\n \"description\": \"Mode can be one of \\\"direct\\\" or \\\"transparent\\\". \\\"transparent\\\" represents that inbound and outbound application traffic is being captured and redirected through the proxy. This mode does not enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if traffic is already being redirected. \\\"direct\\\" represents that the proxy's listeners must be dialed directly by the local application and other proxies. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol sets the protocol of the service. This is used by Connect proxies for things like observability features and to unlock usage of the service-splitter and service-router config entries for a service.\",\n \"type\": \"string\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls configuration specific to proxies in transparent mode. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"properties\": {\n \"dialedDirectly\": {\n \"description\": \"DialedDirectly indicates whether transparent proxies can dial this proxy instance directly. The discovery chain is not considered when dialing a service instance directly. This setting is useful when addressing stateful services, such as a database cluster with a leader node.\",\n \"type\": \"boolean\"\n },\n \"outboundListenerPort\": {\n \"description\": \"OutboundListenerPort is the port of the listener where outbound application traffic is being redirected to.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"upstreamConfig\": {\n \"description\": \"UpstreamConfig controls default configuration settings that apply across all upstreams, and per-upstream configuration overrides. Note that per-upstream configuration applies across all federated datacenters to the pairing of source and upstream destination services.\",\n \"properties\": {\n \"defaults\": {\n \"description\": \"Defaults contains default configuration for all upstreams of a given service. The name field must be empty.\",\n \"properties\": {\n \"connectTimeoutMs\": {\n \"description\": \"ConnectTimeoutMs is the number of milliseconds to timeout making a new connection to this upstream. Defaults to 5000 (5 seconds) if not set.\",\n \"type\": \"integer\"\n },\n \"envoyClusterJSON\": {\n \"description\": \"EnvoyClusterJSON is a complete override (\\\"escape hatch\\\") for the upstream's cluster. The Connect client TLS certificate and context will be injected overriding any TLS settings present. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"envoyListenerJSON\": {\n \"description\": \"EnvoyListenerJSON is a complete override (\\\"escape hatch\\\") for the upstream's listener. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"limits\": {\n \"description\": \"Limits are the set of limits that are applied to the proxy for a specific upstream of a service instance.\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"MaxConcurrentRequests is the maximum number of in-flight requests that will be allowed to the upstream cluster at a point in time. This is mostly applicable to HTTP/2 clusters since all HTTP/1.1 requests are limited by MaxConnections.\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"MaxConnections is the maximum number of connections the local proxy can make to the upstream service.\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"MaxPendingRequests is the maximum number of requests that will be queued waiting for an available connection. This is mostly applicable to HTTP/1.1 clusters since all HTTP/2 requests are streamed over a single connection.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGatewayConfig controls how Mesh Gateways are configured and used.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"name\": {\n \"description\": \"Name is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"passiveHealthCheck\": {\n \"description\": \"PassiveHealthCheck configuration determines how upstream proxy instances will be monitored for removal from the load balancing pool.\",\n \"properties\": {\n \"enforcing_consecutive_5xx\": {\n \"description\": \"EnforcingConsecutive5xx is the % chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"interval\": {\n \"description\": \"Interval between health check analysis sweeps. Each sweep may remove hosts or return hosts to the pool.\",\n \"type\": \"string\"\n },\n \"maxFailures\": {\n \"description\": \"MaxFailures is the count of consecutive failures that results in a host being removed from the pool.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"tcp\\\", \\\"http\\\" and \\\"grpc\\\". Anything else is treated as tcp. This enables protocol aware features like per-request metrics and connection pooling, tracing, routing etc.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"overrides\": {\n \"description\": \"Overrides is a slice of per-service configuration. The name field is required.\",\n \"items\": {\n \"properties\": {\n \"connectTimeoutMs\": {\n \"description\": \"ConnectTimeoutMs is the number of milliseconds to timeout making a new connection to this upstream. Defaults to 5000 (5 seconds) if not set.\",\n \"type\": \"integer\"\n },\n \"envoyClusterJSON\": {\n \"description\": \"EnvoyClusterJSON is a complete override (\\\"escape hatch\\\") for the upstream's cluster. The Connect client TLS certificate and context will be injected overriding any TLS settings present. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"envoyListenerJSON\": {\n \"description\": \"EnvoyListenerJSON is a complete override (\\\"escape hatch\\\") for the upstream's listener. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"limits\": {\n \"description\": \"Limits are the set of limits that are applied to the proxy for a specific upstream of a service instance.\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"MaxConcurrentRequests is the maximum number of in-flight requests that will be allowed to the upstream cluster at a point in time. This is mostly applicable to HTTP/2 clusters since all HTTP/1.1 requests are limited by MaxConnections.\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"MaxConnections is the maximum number of connections the local proxy can make to the upstream service.\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"MaxPendingRequests is the maximum number of requests that will be queued waiting for an available connection. This is mostly applicable to HTTP/1.1 clusters since all HTTP/2 requests are streamed over a single connection.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGatewayConfig controls how Mesh Gateways are configured and used.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"name\": {\n \"description\": \"Name is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"passiveHealthCheck\": {\n \"description\": \"PassiveHealthCheck configuration determines how upstream proxy instances will be monitored for removal from the load balancing pool.\",\n \"properties\": {\n \"enforcing_consecutive_5xx\": {\n \"description\": \"EnforcingConsecutive5xx is the % chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"interval\": {\n \"description\": \"Interval between health check analysis sweeps. Each sweep may remove hosts or return hosts to the pool.\",\n \"type\": \"string\"\n },\n \"maxFailures\": {\n \"description\": \"MaxFailures is the count of consecutive failures that results in a host being removed from the pool.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"tcp\\\", \\\"http\\\" and \\\"grpc\\\". Anything else is treated as tcp. This enables protocol aware features like per-request metrics and connection pooling, tracing, routing etc.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Service Defaults\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ServiceDefaults","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Defaults","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceDefaultsSpec defines the desired state of ServiceDefaults.\",\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination is an address(es)/port combination that represents an endpoint outside the mesh. This is only valid when the mesh is configured in \\\"transparent\\\" mode. Destinations live outside of Consul's catalog, and because of this, they do not require an artificial node to be created.\",\n \"properties\": {\n \"addresses\": {\n \"description\": \"Addresses is a list of IPs and/or hostnames that can be dialed and routed through a terminating gateway.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"port\": {\n \"description\": \"Port is the port that can be dialed on any of the addresses in this Destination.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"expose\": {\n \"description\": \"Expose controls the default expose path configuration for Envoy.\",\n \"properties\": {\n \"checks\": {\n \"description\": \"Checks defines whether paths associated with Consul checks will be exposed. This flag triggers exposing all HTTP and GRPC check paths registered for the service.\",\n \"type\": \"boolean\"\n },\n \"paths\": {\n \"description\": \"Paths is the list of paths exposed through the proxy.\",\n \"items\": {\n \"properties\": {\n \"listenerPort\": {\n \"description\": \"ListenerPort defines the port of the proxy's listener for exposed paths.\",\n \"type\": \"integer\"\n },\n \"localPathPort\": {\n \"description\": \"LocalPathPort is the port that the service is listening on for the given path.\",\n \"type\": \"integer\"\n },\n \"path\": {\n \"description\": \"Path is the path to expose through the proxy, ie. \\\"/metrics\\\".\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"http\\\" and \\\"http2\\\", defaults to \\\"http\\\".\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"externalSNI\": {\n \"description\": \"ExternalSNI is an optional setting that allows for the TLS SNI value to be changed to a non-connect value when federating with an external system.\",\n \"type\": \"string\"\n },\n \"localConnectTimeoutMs\": {\n \"description\": \"The number of milliseconds allowed to make connections to the local application instance before timing out. Defaults to 5000.\",\n \"type\": \"integer\"\n },\n \"localRequestTimeoutMs\": {\n \"description\": \"In milliseconds, the timeout for HTTP requests to the local application instance. Applies to HTTP-based protocols only. If not specified, inherits the Envoy default for route timeouts (15s).\",\n \"type\": \"integer\"\n },\n \"maxInboundConnections\": {\n \"description\": \"MaxInboundConnections is the maximum number of concurrent inbound connections to each service instance. Defaults to 0 (using consul's default) if not set.\",\n \"type\": \"integer\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGateway controls the default mesh gateway configuration for this service.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"mode\": {\n \"description\": \"Mode can be one of \\\"direct\\\" or \\\"transparent\\\". \\\"transparent\\\" represents that inbound and outbound application traffic is being captured and redirected through the proxy. This mode does not enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if traffic is already being redirected. \\\"direct\\\" represents that the proxy's listeners must be dialed directly by the local application and other proxies. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"type\": \"string\"\n },\n \"protocol\": {\n \"description\": \"Protocol sets the protocol of the service. This is used by Connect proxies for things like observability features and to unlock usage of the service-splitter and service-router config entries for a service.\",\n \"type\": \"string\"\n },\n \"transparentProxy\": {\n \"description\": \"TransparentProxy controls configuration specific to proxies in transparent mode. Note: This cannot be set using the CRD and should be set using annotations on the services that are part of the mesh.\",\n \"properties\": {\n \"dialedDirectly\": {\n \"description\": \"DialedDirectly indicates whether transparent proxies can dial this proxy instance directly. The discovery chain is not considered when dialing a service instance directly. This setting is useful when addressing stateful services, such as a database cluster with a leader node.\",\n \"type\": \"boolean\"\n },\n \"outboundListenerPort\": {\n \"description\": \"OutboundListenerPort is the port of the listener where outbound application traffic is being redirected to.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"upstreamConfig\": {\n \"description\": \"UpstreamConfig controls default configuration settings that apply across all upstreams, and per-upstream configuration overrides. Note that per-upstream configuration applies across all federated datacenters to the pairing of source and upstream destination services.\",\n \"properties\": {\n \"defaults\": {\n \"description\": \"Defaults contains default configuration for all upstreams of a given service. The name field must be empty.\",\n \"properties\": {\n \"connectTimeoutMs\": {\n \"description\": \"ConnectTimeoutMs is the number of milliseconds to timeout making a new connection to this upstream. Defaults to 5000 (5 seconds) if not set.\",\n \"type\": \"integer\"\n },\n \"envoyClusterJSON\": {\n \"description\": \"EnvoyClusterJSON is a complete override (\\\"escape hatch\\\") for the upstream's cluster. The Connect client TLS certificate and context will be injected overriding any TLS settings present. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"envoyListenerJSON\": {\n \"description\": \"EnvoyListenerJSON is a complete override (\\\"escape hatch\\\") for the upstream's listener. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"limits\": {\n \"description\": \"Limits are the set of limits that are applied to the proxy for a specific upstream of a service instance.\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"MaxConcurrentRequests is the maximum number of in-flight requests that will be allowed to the upstream cluster at a point in time. This is mostly applicable to HTTP/2 clusters since all HTTP/1.1 requests are limited by MaxConnections.\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"MaxConnections is the maximum number of connections the local proxy can make to the upstream service.\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"MaxPendingRequests is the maximum number of requests that will be queued waiting for an available connection. This is mostly applicable to HTTP/1.1 clusters since all HTTP/2 requests are streamed over a single connection.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGatewayConfig controls how Mesh Gateways are configured and used.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"name\": {\n \"description\": \"Name is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"passiveHealthCheck\": {\n \"description\": \"PassiveHealthCheck configuration determines how upstream proxy instances will be monitored for removal from the load balancing pool.\",\n \"properties\": {\n \"enforcing_consecutive_5xx\": {\n \"description\": \"EnforcingConsecutive5xx is the % chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"interval\": {\n \"description\": \"Interval between health check analysis sweeps. Each sweep may remove hosts or return hosts to the pool.\",\n \"type\": \"string\"\n },\n \"maxFailures\": {\n \"description\": \"MaxFailures is the count of consecutive failures that results in a host being removed from the pool.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"tcp\\\", \\\"http\\\" and \\\"grpc\\\". Anything else is treated as tcp. This enables protocol aware features like per-request metrics and connection pooling, tracing, routing etc.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"overrides\": {\n \"description\": \"Overrides is a slice of per-service configuration. The name field is required.\",\n \"items\": {\n \"properties\": {\n \"connectTimeoutMs\": {\n \"description\": \"ConnectTimeoutMs is the number of milliseconds to timeout making a new connection to this upstream. Defaults to 5000 (5 seconds) if not set.\",\n \"type\": \"integer\"\n },\n \"envoyClusterJSON\": {\n \"description\": \"EnvoyClusterJSON is a complete override (\\\"escape hatch\\\") for the upstream's cluster. The Connect client TLS certificate and context will be injected overriding any TLS settings present. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"envoyListenerJSON\": {\n \"description\": \"EnvoyListenerJSON is a complete override (\\\"escape hatch\\\") for the upstream's listener. Note: This escape hatch is NOT compatible with the discovery chain and will be ignored if a discovery chain is active.\",\n \"type\": \"string\"\n },\n \"limits\": {\n \"description\": \"Limits are the set of limits that are applied to the proxy for a specific upstream of a service instance.\",\n \"properties\": {\n \"maxConcurrentRequests\": {\n \"description\": \"MaxConcurrentRequests is the maximum number of in-flight requests that will be allowed to the upstream cluster at a point in time. This is mostly applicable to HTTP/2 clusters since all HTTP/1.1 requests are limited by MaxConnections.\",\n \"type\": \"integer\"\n },\n \"maxConnections\": {\n \"description\": \"MaxConnections is the maximum number of connections the local proxy can make to the upstream service.\",\n \"type\": \"integer\"\n },\n \"maxPendingRequests\": {\n \"description\": \"MaxPendingRequests is the maximum number of requests that will be queued waiting for an available connection. This is mostly applicable to HTTP/1.1 clusters since all HTTP/2 requests are streamed over a single connection.\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"meshGateway\": {\n \"description\": \"MeshGatewayConfig controls how Mesh Gateways are configured and used.\",\n \"properties\": {\n \"mode\": {\n \"description\": \"Mode is the mode that should be used for the upstream connection. One of none, local, or remote.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"name\": {\n \"description\": \"Name is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is only accepted within a service-defaults config entry.\",\n \"type\": \"string\"\n },\n \"passiveHealthCheck\": {\n \"description\": \"PassiveHealthCheck configuration determines how upstream proxy instances will be monitored for removal from the load balancing pool.\",\n \"properties\": {\n \"enforcing_consecutive_5xx\": {\n \"description\": \"EnforcingConsecutive5xx is the % chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"interval\": {\n \"description\": \"Interval between health check analysis sweeps. Each sweep may remove hosts or return hosts to the pool.\",\n \"type\": \"string\"\n },\n \"maxFailures\": {\n \"description\": \"MaxFailures is the count of consecutive failures that results in a host being removed from the pool.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"protocol\": {\n \"description\": \"Protocol describes the upstream's service protocol. Valid values are \\\"tcp\\\", \\\"http\\\" and \\\"grpc\\\". Anything else is treated as tcp. This enables protocol aware features like per-request metrics and connection pooling, tracing, routing etc.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Service Defaults\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/serviceintentions.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/serviceintentions.meshery.layer5.io_meshmodel.json index e0d6259..24410e2 100644 --- a/templates/meshmodel/components/v1.0.2/serviceintentions.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/serviceintentions.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ServiceIntentions","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Intentions","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceIntentionsSpec defines the desired state of ServiceIntentions.\",\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination is the intention destination that will have the authorization granted to.\",\n \"properties\": {\n \"name\": {\n \"description\": \"Name is the destination of all intentions defined in this config entry. This may be set to the wildcard character (*) to match all services that don't otherwise have intentions defined.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace specifies the namespace the config entry will apply to. This may be set to the wildcard character (*) to match all services in all namespaces that don't otherwise have intentions defined.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"sources\": {\n \"description\": \"Sources is the list of all intention sources and the authorization granted to those sources. The order of this list does not matter, but out of convenience Consul will always store this reverse sorted by intention precedence, as that is the order that they will be evaluated at enforcement time.\",\n \"items\": {\n \"properties\": {\n \"action\": {\n \"description\": \"Action is required for an L4 intention, and should be set to one of \\\"allow\\\" or \\\"deny\\\" for the action that should be taken if this intention matches a request.\",\n \"type\": \"string\"\n },\n \"description\": {\n \"description\": \"Description for the intention. This is not used by Consul, but is presented in API responses to assist tooling.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the source of the intention. This is the name of a Consul service. The service doesn't need to be registered.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace for the Name parameter.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Admin Partition for the Name parameter.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"[Experimental] Peer is the peer name for the Name parameter.\",\n \"type\": \"string\"\n },\n \"permissions\": {\n \"description\": \"Permissions is the list of all additional L7 attributes that extend the intention match criteria. Permission precedence is applied top to bottom. For any given request the first permission to match in the list is terminal and stops further evaluation. As with L4 intentions, traffic that fails to match any of the provided permissions in this intention will be subject to the default intention behavior is defined by the default ACL policy. This should be omitted for an L4 intention as it is mutually exclusive with the Action field.\",\n \"items\": {\n \"properties\": {\n \"action\": {\n \"description\": \"Action is one of \\\"allow\\\" or \\\"deny\\\" for the action that should be taken if this permission matches a request.\",\n \"type\": \"string\"\n },\n \"http\": {\n \"description\": \"HTTP is a set of HTTP-specific authorization criteria.\",\n \"properties\": {\n \"header\": {\n \"description\": \"Header is a set of criteria that can match on HTTP request headers. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact matches if the header with the given name is this value.\",\n \"type\": \"string\"\n },\n \"invert\": {\n \"description\": \"Invert inverts the logic of the match.\",\n \"type\": \"boolean\"\n },\n \"name\": {\n \"description\": \"Name is the name of the header to match.\",\n \"type\": \"string\"\n },\n \"prefix\": {\n \"description\": \"Prefix matches if the header with the given name has this prefix.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present matches if the header with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex matches if the header with the given name matches this pattern.\",\n \"type\": \"string\"\n },\n \"suffix\": {\n \"description\": \"Suffix matches if the header with the given name has this suffix.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"methods\": {\n \"description\": \"Methods is a list of HTTP methods for which this match applies. If unspecified all HTTP methods are matched. If provided the names must be a valid method.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"pathExact\": {\n \"description\": \"PathExact is the exact path to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathPrefix\": {\n \"description\": \"PathPrefix is the path prefix to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathRegex\": {\n \"description\": \"PathRegex is the regular expression to match on the HTTP request path.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Intentions\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ServiceIntentions","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Intentions","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceIntentionsSpec defines the desired state of ServiceIntentions.\",\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination is the intention destination that will have the authorization granted to.\",\n \"properties\": {\n \"name\": {\n \"description\": \"Name is the destination of all intentions defined in this config entry. This may be set to the wildcard character (*) to match all services that don't otherwise have intentions defined.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace specifies the namespace the config entry will apply to. This may be set to the wildcard character (*) to match all services in all namespaces that don't otherwise have intentions defined.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"sources\": {\n \"description\": \"Sources is the list of all intention sources and the authorization granted to those sources. The order of this list does not matter, but out of convenience Consul will always store this reverse sorted by intention precedence, as that is the order that they will be evaluated at enforcement time.\",\n \"items\": {\n \"properties\": {\n \"action\": {\n \"description\": \"Action is required for an L4 intention, and should be set to one of \\\"allow\\\" or \\\"deny\\\" for the action that should be taken if this intention matches a request.\",\n \"type\": \"string\"\n },\n \"description\": {\n \"description\": \"Description for the intention. This is not used by Consul, but is presented in API responses to assist tooling.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the source of the intention. This is the name of a Consul service. The service doesn't need to be registered.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace for the Name parameter.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Admin Partition for the Name parameter.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"[Experimental] Peer is the peer name for the Name parameter.\",\n \"type\": \"string\"\n },\n \"permissions\": {\n \"description\": \"Permissions is the list of all additional L7 attributes that extend the intention match criteria. Permission precedence is applied top to bottom. For any given request the first permission to match in the list is terminal and stops further evaluation. As with L4 intentions, traffic that fails to match any of the provided permissions in this intention will be subject to the default intention behavior is defined by the default ACL policy. This should be omitted for an L4 intention as it is mutually exclusive with the Action field.\",\n \"items\": {\n \"properties\": {\n \"action\": {\n \"description\": \"Action is one of \\\"allow\\\" or \\\"deny\\\" for the action that should be taken if this permission matches a request.\",\n \"type\": \"string\"\n },\n \"http\": {\n \"description\": \"HTTP is a set of HTTP-specific authorization criteria.\",\n \"properties\": {\n \"header\": {\n \"description\": \"Header is a set of criteria that can match on HTTP request headers. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact matches if the header with the given name is this value.\",\n \"type\": \"string\"\n },\n \"invert\": {\n \"description\": \"Invert inverts the logic of the match.\",\n \"type\": \"boolean\"\n },\n \"name\": {\n \"description\": \"Name is the name of the header to match.\",\n \"type\": \"string\"\n },\n \"prefix\": {\n \"description\": \"Prefix matches if the header with the given name has this prefix.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present matches if the header with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex matches if the header with the given name matches this pattern.\",\n \"type\": \"string\"\n },\n \"suffix\": {\n \"description\": \"Suffix matches if the header with the given name has this suffix.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"methods\": {\n \"description\": \"Methods is a list of HTTP methods for which this match applies. If unspecified all HTTP methods are matched. If provided the names must be a valid method.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"pathExact\": {\n \"description\": \"PathExact is the exact path to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathPrefix\": {\n \"description\": \"PathPrefix is the path prefix to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathRegex\": {\n \"description\": \"PathRegex is the regular expression to match on the HTTP request path.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Intentions\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/serviceresolver.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/serviceresolver.meshery.layer5.io_meshmodel.json index 69dcd15..35a34ee 100644 --- a/templates/meshmodel/components/v1.0.2/serviceresolver.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/serviceresolver.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ServiceResolver","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Resolver","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceResolverSpec defines the desired state of ServiceResolver.\",\n \"properties\": {\n \"connectTimeout\": {\n \"description\": \"ConnectTimeout is the timeout for establishing new network connections to this service.\",\n \"type\": \"string\"\n },\n \"defaultSubset\": {\n \"description\": \"DefaultSubset is the subset to use when no explicit subset is requested. If empty the unnamed subset is used.\",\n \"type\": \"string\"\n },\n \"failover\": {\n \"additionalProperties\": {\n \"properties\": {\n \"datacenters\": {\n \"description\": \"Datacenters is a fixed list of datacenters to try during failover.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace to resolve the requested service from to form the failover group of instances. If empty the current namespace is used.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default as the failover group of instances during failover.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is the named subset of the requested service to resolve as the failover group of instances. If empty the default subset for the requested service is used.\",\n \"type\": \"string\"\n },\n \"targets\": {\n \"description\": \"Targets specifies a fixed list of failover targets to try during failover.\",\n \"items\": {\n \"properties\": {\n \"datacenter\": {\n \"description\": \"Datacenter specifies the datacenter to try during failover.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace specifies the namespace to try during failover.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition specifies the partition to try during failover.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"Peer specifies the name of the cluster peer to try during failover.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service specifies the name of the service to try during failover.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset specifies the service subset to try during failover.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"description\": \"Failover controls when and how to reroute traffic to an alternate pool of service instances. The map is keyed by the service subset it applies to and the special string \\\"*\\\" is a wildcard that applies to any subset not otherwise specified here.\",\n \"type\": \"object\"\n },\n \"loadBalancer\": {\n \"description\": \"LoadBalancer determines the load balancing policy and configuration for services issuing requests to this upstream service.\",\n \"properties\": {\n \"hashPolicies\": {\n \"description\": \"HashPolicies is a list of hash policies to use for hashing load balancing algorithms. Hash policies are evaluated individually and combined such that identical lists result in the same hash. If no hash policies are present, or none are successfully evaluated, then a random backend host will be selected.\",\n \"items\": {\n \"properties\": {\n \"cookieConfig\": {\n \"description\": \"CookieConfig contains configuration for the \\\"cookie\\\" hash policy type.\",\n \"properties\": {\n \"path\": {\n \"description\": \"Path is the path to set for the cookie.\",\n \"type\": \"string\"\n },\n \"session\": {\n \"description\": \"Session determines whether to generate a session cookie with no expiration.\",\n \"type\": \"boolean\"\n },\n \"ttl\": {\n \"description\": \"TTL is the ttl for generated cookies. Cannot be specified for session cookies.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"field\": {\n \"description\": \"Field is the attribute type to hash on. Must be one of \\\"header\\\", \\\"cookie\\\", or \\\"query_parameter\\\". Cannot be specified along with sourceIP.\",\n \"type\": \"string\"\n },\n \"fieldValue\": {\n \"description\": \"FieldValue is the value to hash. ie. header name, cookie name, URL query parameter name Cannot be specified along with sourceIP.\",\n \"type\": \"string\"\n },\n \"sourceIP\": {\n \"description\": \"SourceIP determines whether the hash should be of the source IP rather than of a field and field value. Cannot be specified along with field or fieldValue.\",\n \"type\": \"boolean\"\n },\n \"terminal\": {\n \"description\": \"Terminal will short circuit the computation of the hash when multiple hash policies are present. If a hash is computed when a Terminal policy is evaluated, then that hash will be used and subsequent hash policies will be ignored.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"leastRequestConfig\": {\n \"description\": \"LeastRequestConfig contains configuration for the \\\"leastRequest\\\" policy type.\",\n \"properties\": {\n \"choiceCount\": {\n \"description\": \"ChoiceCount determines the number of random healthy hosts from which to select the one with the least requests.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"policy\": {\n \"description\": \"Policy is the load balancing policy used to select a host.\",\n \"type\": \"string\"\n },\n \"ringHashConfig\": {\n \"description\": \"RingHashConfig contains configuration for the \\\"ringHash\\\" policy type.\",\n \"properties\": {\n \"maximumRingSize\": {\n \"description\": \"MaximumRingSize determines the maximum number of entries in the hash ring.\",\n \"format\": \"int64\",\n \"type\": \"integer\"\n },\n \"minimumRingSize\": {\n \"description\": \"MinimumRingSize determines the minimum number of entries in the hash ring.\",\n \"format\": \"int64\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"redirect\": {\n \"description\": \"Redirect when configured, all attempts to resolve the service this resolver defines will be substituted for the supplied redirect EXCEPT when the redirect has already been applied. When substituting the supplied redirect, all other fields besides Kind, Name, and Redirect will be ignored.\",\n \"properties\": {\n \"datacenter\": {\n \"description\": \"Datacenter is the datacenter to resolve the service from instead of the current one.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"Peer is the name of the cluster peer to resolve the service from instead of the current one.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service is a service to resolve instead of the current service.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of one defined as that service's DefaultSubset If empty the default subset is used.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"subsets\": {\n \"additionalProperties\": {\n \"properties\": {\n \"filter\": {\n \"description\": \"Filter is the filter expression to be used for selecting instances of the requested service. If empty all healthy instances are returned. This expression can filter on the same selectors as the Health API endpoint.\",\n \"type\": \"string\"\n },\n \"onlyPassing\": {\n \"description\": \"OnlyPassing specifies the behavior of the resolver's health check interpretation. If this is set to false, instances with checks in the passing as well as the warning states will be considered healthy. If this is set to true, only instances with checks in the passing state will be considered healthy.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"description\": \"Subsets is map of subset name to subset definition for all usable named subsets of this service. The map key is the name of the subset and all names must be valid DNS subdomain elements. This may be empty, in which case only the unnamed default subset will be usable.\",\n \"type\": \"object\"\n }\n },\n \"title\": \"Service Resolver\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ServiceResolver","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Resolver","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceResolverSpec defines the desired state of ServiceResolver.\",\n \"properties\": {\n \"connectTimeout\": {\n \"description\": \"ConnectTimeout is the timeout for establishing new network connections to this service.\",\n \"type\": \"string\"\n },\n \"defaultSubset\": {\n \"description\": \"DefaultSubset is the subset to use when no explicit subset is requested. If empty the unnamed subset is used.\",\n \"type\": \"string\"\n },\n \"failover\": {\n \"additionalProperties\": {\n \"properties\": {\n \"datacenters\": {\n \"description\": \"Datacenters is a fixed list of datacenters to try during failover.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the namespace to resolve the requested service from to form the failover group of instances. If empty the current namespace is used.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default as the failover group of instances during failover.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is the named subset of the requested service to resolve as the failover group of instances. If empty the default subset for the requested service is used.\",\n \"type\": \"string\"\n },\n \"targets\": {\n \"description\": \"Targets specifies a fixed list of failover targets to try during failover.\",\n \"items\": {\n \"properties\": {\n \"datacenter\": {\n \"description\": \"Datacenter specifies the datacenter to try during failover.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace specifies the namespace to try during failover.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition specifies the partition to try during failover.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"Peer specifies the name of the cluster peer to try during failover.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service specifies the name of the service to try during failover.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset specifies the service subset to try during failover.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"description\": \"Failover controls when and how to reroute traffic to an alternate pool of service instances. The map is keyed by the service subset it applies to and the special string \\\"*\\\" is a wildcard that applies to any subset not otherwise specified here.\",\n \"type\": \"object\"\n },\n \"loadBalancer\": {\n \"description\": \"LoadBalancer determines the load balancing policy and configuration for services issuing requests to this upstream service.\",\n \"properties\": {\n \"hashPolicies\": {\n \"description\": \"HashPolicies is a list of hash policies to use for hashing load balancing algorithms. Hash policies are evaluated individually and combined such that identical lists result in the same hash. If no hash policies are present, or none are successfully evaluated, then a random backend host will be selected.\",\n \"items\": {\n \"properties\": {\n \"cookieConfig\": {\n \"description\": \"CookieConfig contains configuration for the \\\"cookie\\\" hash policy type.\",\n \"properties\": {\n \"path\": {\n \"description\": \"Path is the path to set for the cookie.\",\n \"type\": \"string\"\n },\n \"session\": {\n \"description\": \"Session determines whether to generate a session cookie with no expiration.\",\n \"type\": \"boolean\"\n },\n \"ttl\": {\n \"description\": \"TTL is the ttl for generated cookies. Cannot be specified for session cookies.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"field\": {\n \"description\": \"Field is the attribute type to hash on. Must be one of \\\"header\\\", \\\"cookie\\\", or \\\"query_parameter\\\". Cannot be specified along with sourceIP.\",\n \"type\": \"string\"\n },\n \"fieldValue\": {\n \"description\": \"FieldValue is the value to hash. ie. header name, cookie name, URL query parameter name Cannot be specified along with sourceIP.\",\n \"type\": \"string\"\n },\n \"sourceIP\": {\n \"description\": \"SourceIP determines whether the hash should be of the source IP rather than of a field and field value. Cannot be specified along with field or fieldValue.\",\n \"type\": \"boolean\"\n },\n \"terminal\": {\n \"description\": \"Terminal will short circuit the computation of the hash when multiple hash policies are present. If a hash is computed when a Terminal policy is evaluated, then that hash will be used and subsequent hash policies will be ignored.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"leastRequestConfig\": {\n \"description\": \"LeastRequestConfig contains configuration for the \\\"leastRequest\\\" policy type.\",\n \"properties\": {\n \"choiceCount\": {\n \"description\": \"ChoiceCount determines the number of random healthy hosts from which to select the one with the least requests.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"policy\": {\n \"description\": \"Policy is the load balancing policy used to select a host.\",\n \"type\": \"string\"\n },\n \"ringHashConfig\": {\n \"description\": \"RingHashConfig contains configuration for the \\\"ringHash\\\" policy type.\",\n \"properties\": {\n \"maximumRingSize\": {\n \"description\": \"MaximumRingSize determines the maximum number of entries in the hash ring.\",\n \"format\": \"int64\",\n \"type\": \"integer\"\n },\n \"minimumRingSize\": {\n \"description\": \"MinimumRingSize determines the minimum number of entries in the hash ring.\",\n \"format\": \"int64\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"redirect\": {\n \"description\": \"Redirect when configured, all attempts to resolve the service this resolver defines will be substituted for the supplied redirect EXCEPT when the redirect has already been applied. When substituting the supplied redirect, all other fields besides Kind, Name, and Redirect will be ignored.\",\n \"properties\": {\n \"datacenter\": {\n \"description\": \"Datacenter is the datacenter to resolve the service from instead of the current one.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"peer\": {\n \"description\": \"Peer is the name of the cluster peer to resolve the service from instead of the current one.\",\n \"type\": \"string\"\n },\n \"service\": {\n \"description\": \"Service is a service to resolve instead of the current service.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of one defined as that service's DefaultSubset If empty the default subset is used.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"subsets\": {\n \"additionalProperties\": {\n \"properties\": {\n \"filter\": {\n \"description\": \"Filter is the filter expression to be used for selecting instances of the requested service. If empty all healthy instances are returned. This expression can filter on the same selectors as the Health API endpoint.\",\n \"type\": \"string\"\n },\n \"onlyPassing\": {\n \"description\": \"OnlyPassing specifies the behavior of the resolver's health check interpretation. If this is set to false, instances with checks in the passing as well as the warning states will be considered healthy. If this is set to true, only instances with checks in the passing state will be considered healthy.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"description\": \"Subsets is map of subset name to subset definition for all usable named subsets of this service. The map key is the name of the subset and all names must be valid DNS subdomain elements. This may be empty, in which case only the unnamed default subset will be usable.\",\n \"type\": \"object\"\n }\n },\n \"title\": \"Service Resolver\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/servicerouter.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/servicerouter.meshery.layer5.io_meshmodel.json index 7466f43..59aa9cb 100644 --- a/templates/meshmodel/components/v1.0.2/servicerouter.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/servicerouter.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ServiceRouter","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Router","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceRouterSpec defines the desired state of ServiceRouter.\",\n \"properties\": {\n \"routes\": {\n \"description\": \"Routes are the list of routes to consider when processing L7 requests. The first route to match in the list is terminal and stops further evaluation. Traffic that fails to match any of the provided routes will be routed to the default service.\",\n \"items\": {\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination controls how to proxy the matching request(s) to a service.\",\n \"properties\": {\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"numRetries\": {\n \"description\": \"NumRetries is the number of times to retry the request when a retryable result occurs\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"prefixRewrite\": {\n \"description\": \"PrefixRewrite defines how to rewrite the HTTP request path before proxying it to its final destination. This requires that either match.http.pathPrefix or match.http.pathExact be configured on this route.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"requestTimeout\": {\n \"description\": \"RequestTimeout is the total amount of time permitted for the entire downstream request (and retries) to be processed.\",\n \"type\": \"string\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"retryOnConnectFailure\": {\n \"description\": \"RetryOnConnectFailure allows for connection failure errors to trigger a retry.\",\n \"type\": \"boolean\"\n },\n \"retryOnStatusCodes\": {\n \"description\": \"RetryOnStatusCodes is a flat list of http response status codes that are eligible for retry.\",\n \"items\": {\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"type\": \"array\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default service. If empty then the default service name is used.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of the one defined as that service's DefaultSubset. If empty, the default subset is used.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"match\": {\n \"description\": \"Match is a set of criteria that can match incoming L7 requests. If empty or omitted it acts as a catch-all.\",\n \"properties\": {\n \"http\": {\n \"description\": \"HTTP is a set of http-specific match criteria.\",\n \"properties\": {\n \"header\": {\n \"description\": \"Header is a set of criteria that can match on HTTP request headers. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact will match if the header with the given name is this value.\",\n \"type\": \"string\"\n },\n \"invert\": {\n \"description\": \"Invert inverts the logic of the match.\",\n \"type\": \"boolean\"\n },\n \"name\": {\n \"description\": \"Name is the name of the header to match.\",\n \"type\": \"string\"\n },\n \"prefix\": {\n \"description\": \"Prefix will match if the header with the given name has this prefix.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present will match if the header with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex will match if the header with the given name matches this pattern.\",\n \"type\": \"string\"\n },\n \"suffix\": {\n \"description\": \"Suffix will match if the header with the given name has this suffix.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"methods\": {\n \"description\": \"Methods is a list of HTTP methods for which this match applies. If unspecified all http methods are matched.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"pathExact\": {\n \"description\": \"PathExact is an exact path to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathPrefix\": {\n \"description\": \"PathPrefix is a path prefix to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathRegex\": {\n \"description\": \"PathRegex is a regular expression to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"queryParam\": {\n \"description\": \"QueryParam is a set of criteria that can match on HTTP query parameters. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact will match if the query parameter with the given name is this value.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the query parameter to match on.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present will match if the query parameter with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex will match if the query parameter with the given name matches this pattern.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Router\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ServiceRouter","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Router","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceRouterSpec defines the desired state of ServiceRouter.\",\n \"properties\": {\n \"routes\": {\n \"description\": \"Routes are the list of routes to consider when processing L7 requests. The first route to match in the list is terminal and stops further evaluation. Traffic that fails to match any of the provided routes will be routed to the default service.\",\n \"items\": {\n \"properties\": {\n \"destination\": {\n \"description\": \"Destination controls how to proxy the matching request(s) to a service.\",\n \"properties\": {\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"numRetries\": {\n \"description\": \"NumRetries is the number of times to retry the request when a retryable result occurs\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"prefixRewrite\": {\n \"description\": \"PrefixRewrite defines how to rewrite the HTTP request path before proxying it to its final destination. This requires that either match.http.pathPrefix or match.http.pathExact be configured on this route.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"requestTimeout\": {\n \"description\": \"RequestTimeout is the total amount of time permitted for the entire downstream request (and retries) to be processed.\",\n \"type\": \"string\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"retryOnConnectFailure\": {\n \"description\": \"RetryOnConnectFailure allows for connection failure errors to trigger a retry.\",\n \"type\": \"boolean\"\n },\n \"retryOnStatusCodes\": {\n \"description\": \"RetryOnStatusCodes is a flat list of http response status codes that are eligible for retry.\",\n \"items\": {\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"type\": \"array\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default service. If empty then the default service name is used.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of the one defined as that service's DefaultSubset. If empty, the default subset is used.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"match\": {\n \"description\": \"Match is a set of criteria that can match incoming L7 requests. If empty or omitted it acts as a catch-all.\",\n \"properties\": {\n \"http\": {\n \"description\": \"HTTP is a set of http-specific match criteria.\",\n \"properties\": {\n \"header\": {\n \"description\": \"Header is a set of criteria that can match on HTTP request headers. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact will match if the header with the given name is this value.\",\n \"type\": \"string\"\n },\n \"invert\": {\n \"description\": \"Invert inverts the logic of the match.\",\n \"type\": \"boolean\"\n },\n \"name\": {\n \"description\": \"Name is the name of the header to match.\",\n \"type\": \"string\"\n },\n \"prefix\": {\n \"description\": \"Prefix will match if the header with the given name has this prefix.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present will match if the header with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex will match if the header with the given name matches this pattern.\",\n \"type\": \"string\"\n },\n \"suffix\": {\n \"description\": \"Suffix will match if the header with the given name has this suffix.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"methods\": {\n \"description\": \"Methods is a list of HTTP methods for which this match applies. If unspecified all http methods are matched.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"pathExact\": {\n \"description\": \"PathExact is an exact path to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathPrefix\": {\n \"description\": \"PathPrefix is a path prefix to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"pathRegex\": {\n \"description\": \"PathRegex is a regular expression to match on the HTTP request path.\",\n \"type\": \"string\"\n },\n \"queryParam\": {\n \"description\": \"QueryParam is a set of criteria that can match on HTTP query parameters. If more than one is configured all must match for the overall match to apply.\",\n \"items\": {\n \"properties\": {\n \"exact\": {\n \"description\": \"Exact will match if the query parameter with the given name is this value.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the query parameter to match on.\",\n \"type\": \"string\"\n },\n \"present\": {\n \"description\": \"Present will match if the query parameter with the given name is present with any value.\",\n \"type\": \"boolean\"\n },\n \"regex\": {\n \"description\": \"Regex will match if the query parameter with the given name matches this pattern.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Router\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/servicesplitter.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/servicesplitter.meshery.layer5.io_meshmodel.json index eec3d4d..2df9902 100644 --- a/templates/meshmodel/components/v1.0.2/servicesplitter.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/servicesplitter.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"ServiceSplitter","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Splitter","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceSplitterSpec defines the desired state of ServiceSplitter.\",\n \"properties\": {\n \"splits\": {\n \"description\": \"Splits defines how much traffic to send to which set of service instances during a traffic split. The sum of weights across all splits must add up to 100.\",\n \"items\": {\n \"properties\": {\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of one defined as that service's DefaultSubset. If empty the default subset is used.\",\n \"type\": \"string\"\n },\n \"weight\": {\n \"description\": \"Weight is a value between 0 and 100 reflecting what portion of traffic should be directed to this split. The smallest representable weight is 1/10000 or .01%.\",\n \"type\": \"number\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Splitter\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"ServiceSplitter","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Service Splitter","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"ServiceSplitterSpec defines the desired state of ServiceSplitter.\",\n \"properties\": {\n \"splits\": {\n \"description\": \"Splits defines how much traffic to send to which set of service instances during a traffic split. The sum of weights across all splits must add up to 100.\",\n \"items\": {\n \"properties\": {\n \"namespace\": {\n \"description\": \"Namespace is the Consul namespace to resolve the service from instead of the current namespace. If empty the current namespace is assumed.\",\n \"type\": \"string\"\n },\n \"partition\": {\n \"description\": \"Partition is the Consul partition to resolve the service from instead of the current partition. If empty the current partition is assumed.\",\n \"type\": \"string\"\n },\n \"requestHeaders\": {\n \"description\": \"Allow HTTP header manipulation to be configured.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"responseHeaders\": {\n \"description\": \"HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.\",\n \"properties\": {\n \"add\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Add is a set of name -\\u003e value pairs that should be appended to the request or response (i.e. allowing duplicates if the same header already exists).\",\n \"type\": \"object\"\n },\n \"remove\": {\n \"description\": \"Remove is the set of header names that should be stripped from the request or response.\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n },\n \"set\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Set is a set of name -\\u003e value pairs that should be added to the request or response, overwriting any existing header values of the same name.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"service\": {\n \"description\": \"Service is the service to resolve instead of the default.\",\n \"type\": \"string\"\n },\n \"serviceSubset\": {\n \"description\": \"ServiceSubset is a named subset of the given service to resolve instead of one defined as that service's DefaultSubset. If empty the default subset is used.\",\n \"type\": \"string\"\n },\n \"weight\": {\n \"description\": \"Weight is a value between 0 and 100 reflecting what portion of traffic should be directed to this split. The smallest representable weight is 1/10000 or .01%.\",\n \"type\": \"number\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Service Splitter\",\n \"type\": \"object\"\n}"} \ No newline at end of file diff --git a/templates/meshmodel/components/v1.0.2/terminatinggateway.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/v1.0.2/terminatinggateway.meshery.layer5.io_meshmodel.json index 7cce66a..95c81a6 100644 --- a/templates/meshmodel/components/v1.0.2/terminatinggateway.meshery.layer5.io_meshmodel.json +++ b/templates/meshmodel/components/v1.0.2/terminatinggateway.meshery.layer5.io_meshmodel.json @@ -1 +1 @@ -{"kind":"TerminatingGateway","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Terminating Gateway","format":"JSON","metadata":{"Logo URL":"","Primary Color":"#D62783","SVG_Color":"","SVG_White":"\u003csvg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg clip-path=\"url(#a)\" fill=\"#fff\"\u003e\u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15.401 19.383c-1.873 0-3.33-1.503-3.33-3.436s1.457-3.436 3.33-3.436 3.33 1.503 3.33 3.436-1.457 3.436-3.33 3.436Zm6.504-1.825c-.832 0-1.56-.698-1.56-1.611 0-.86.675-1.61 1.56-1.61.832 0 1.561.697 1.561 1.61 0 .913-.728 1.61-1.56 1.61Zm5.62 1.503a1.516 1.516 0 0 1-1.874 1.126c-.832-.214-1.3-1.073-1.092-1.932a1.516 1.516 0 0 1 1.873-1.128c.779.214 1.3.966 1.144 1.825 0 0 0 .054-.052.107v.002Zm-1.095-4.082c-.833.214-1.665-.323-1.873-1.182a1.604 1.604 0 0 1 1.145-1.933c.832-.215 1.664.323 1.872 1.182.052.215.052.43 0 .644-.052.59-.468 1.128-1.144 1.289Zm5.515 3.865c-.157.859-.938 1.45-1.77 1.289a1.574 1.574 0 0 1-1.248-1.826c.155-.858.936-1.45 1.768-1.288.781.16 1.354.912 1.302 1.718-.052.053-.052.053-.052.107Zm-1.247-3.971c-.832.161-1.613-.43-1.769-1.288a1.575 1.575 0 0 1 1.25-1.826c.832-.161 1.612.43 1.768 1.289 0 .16.052.268 0 .429-.052.698-.572 1.289-1.249 1.396Zm-1.092 9.503c-.416.752-1.353 1.02-2.082.59-.728-.429-.988-1.395-.572-2.147.416-.752 1.353-1.02 2.081-.59.52.322.833.912.78 1.503-.051.215-.103.43-.207.644Zm-.573-14.603c-.728.43-1.665.16-2.08-.591-.417-.752-.157-1.718.572-2.148.728-.43 1.664-.16 2.08.591.157.322.209.59.209.913-.052.483-.312.966-.78 1.235\"/\u003e\u003cpath d=\"M15.453 32c-4.162 0-8.013-1.664-10.978-4.67A16.56 16.56 0 0 1 0 16c0-4.296 1.613-8.27 4.527-11.33C7.44 1.664 11.343 0 15.453 0c3.434 0 6.712 1.127 9.418 3.276l-1.924 2.576c-2.186-1.717-4.788-2.63-7.493-2.63-3.278 0-6.4 1.343-8.741 3.759-2.34 2.416-3.59 5.584-3.59 9.02 0 3.382 1.301 6.604 3.643 9.02 2.341 2.415 5.411 3.704 8.741 3.704 2.758 0 5.36-.913 7.492-2.63l1.874 2.576c-2.706 2.147-5.984 3.328-9.418 3.328l-.002.001Z\"/\u003e\u003c/g\u003e\u003cdefs\u003e\u003cclipPath id=\"a\"\u003e\u003cpath fill=\"#fff\" d=\"M0 0h32v32H0z\"/\u003e\u003c/clipPath\u003e\u003c/defs\u003e\u003c/svg\u003e","Secondary Color":"#ed74b4","Shape":"circle"},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"TerminatingGatewaySpec defines the desired state of TerminatingGateway.\",\n \"properties\": {\n \"services\": {\n \"description\": \"Services is a list of service names represented by the terminating gateway.\",\n \"items\": {\n \"description\": \"A LinkedService is a service represented by a terminating gateway.\",\n \"properties\": {\n \"caFile\": {\n \"description\": \"CAFile is the optional path to a CA certificate to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"certFile\": {\n \"description\": \"CertFile is the optional path to a client certificate to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"keyFile\": {\n \"description\": \"KeyFile is the optional path to a private key to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the service, as defined in Consul's catalog.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"The namespace the service is registered in.\",\n \"type\": \"string\"\n },\n \"sni\": {\n \"description\": \"SNI is the optional name to specify during the TLS handshake with a linked service.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Terminating Gateway\",\n \"type\": \"object\"\n}"} \ No newline at end of file +{"kind":"TerminatingGateway","apiVersion":"consul.hashicorp.com/v1alpha1","display-name":"Terminating Gateway","format":"JSON","metadata":{},"model":{"name":"CONSUL","version":"v1.0.2","display-name":"CONSUL","category":"Orchestration \u0026 Management","sub-category":"Service Mesh"},"schema":"{\n \"description\": \"TerminatingGatewaySpec defines the desired state of TerminatingGateway.\",\n \"properties\": {\n \"services\": {\n \"description\": \"Services is a list of service names represented by the terminating gateway.\",\n \"items\": {\n \"description\": \"A LinkedService is a service represented by a terminating gateway.\",\n \"properties\": {\n \"caFile\": {\n \"description\": \"CAFile is the optional path to a CA certificate to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"certFile\": {\n \"description\": \"CertFile is the optional path to a client certificate to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"keyFile\": {\n \"description\": \"KeyFile is the optional path to a private key to use for TLS connections from the gateway to the linked service.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"description\": \"Name is the name of the service, as defined in Consul's catalog.\",\n \"type\": \"string\"\n },\n \"namespace\": {\n \"description\": \"The namespace the service is registered in.\",\n \"type\": \"string\"\n },\n \"sni\": {\n \"description\": \"SNI is the optional name to specify during the TLS handshake with a linked service.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"title\": \"Terminating Gateway\",\n \"type\": \"object\"\n}"} \ No newline at end of file