From 84961349afab74ad5bffb288c0543203f2332136 Mon Sep 17 00:00:00 2001 From: leecalcote Date: Wed, 23 Oct 2024 00:12:45 +0000 Subject: [PATCH] [Patterns] Pattern components generated from latest Kuma Helm chart Signed-off-by: l5io --- templates/meshmodel/components/2.9.0/kumamesh_meshmodel.json | 1 + .../meshgatewayinstance.Kuma.meshery.layer5.io_meshmodel.json | 1 + 2 files changed, 2 insertions(+) create mode 100644 templates/meshmodel/components/2.9.0/kumamesh_meshmodel.json create mode 100644 templates/meshmodel/components/2.9.0/meshgatewayinstance.Kuma.meshery.layer5.io_meshmodel.json diff --git a/templates/meshmodel/components/2.9.0/kumamesh_meshmodel.json b/templates/meshmodel/components/2.9.0/kumamesh_meshmodel.json new file mode 100644 index 00000000..7ffae4b0 --- /dev/null +++ b/templates/meshmodel/components/2.9.0/kumamesh_meshmodel.json @@ -0,0 +1 @@ +{"kind":"KumaMesh","apiVersion":"core.meshmodel.dev/v1alpha1","displayName":"","format":"JSON","metadata":{"Logo URL":"https://github.com/cncf/artwork/blob/master/projects/kuma/icon/white/kuma-icon-white.svg","Primary Color":"#291953","SVG_Color":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#291953;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e","SVG_White":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#fff;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e","Secondary Color":"#6942c9","Shape":"circle"},"model":{"name":"KUMA","version":"2.9.0","displayName":"","category":{"name":"Orchestration \u0026 Management","metadata":null},"metadata":null},"schema":"{\"$id\":\"http://meshery.layer5.io/definition/Workload/KumaMesh\",\"$schema\":\"http://json-schema.org/draft-07/schema\",\"title\":\"KumaMesh\",\"type\":\"object\"}"} \ No newline at end of file diff --git a/templates/meshmodel/components/2.9.0/meshgatewayinstance.Kuma.meshery.layer5.io_meshmodel.json b/templates/meshmodel/components/2.9.0/meshgatewayinstance.Kuma.meshery.layer5.io_meshmodel.json new file mode 100644 index 00000000..2b730ffc --- /dev/null +++ b/templates/meshmodel/components/2.9.0/meshgatewayinstance.Kuma.meshery.layer5.io_meshmodel.json @@ -0,0 +1 @@ +{"kind":"MeshGatewayInstance","apiVersion":"kuma.io/v1alpha1","displayName":"Mesh Gateway Instance","format":"JSON","metadata":{"logoURL":"https://github.com/cncf/artwork/blob/master/projects/kuma/icon/white/kuma-icon-white.svg","primaryColor":"#291953","secondaryColor":"#6942c9","shape":"circle","svgColor":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#291953;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e","svgWhite":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#fff;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e"},"model":{"name":"kuma","version":"2.9.0","displayName":"KUMA","category":{"name":"Cloud Native Network","metadata":null},"metadata":{"logoURL":"https://github.com/cncf/artwork/blob/master/projects/kuma/icon/white/kuma-icon-white.svg","primaryColor":"#291953","secondaryColor":"#6942c9","shape":"circle","svgColor":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#291953;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e","svgWhite":"\u003csvg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1173.18 1173.18\"\u003e\u003cdefs\u003e\u003cstyle\u003e.cls-1{fill:#fff;}.cls-2{fill:none;}\u003c/style\u003e\u003c/defs\u003e\u003cg id=\"Layer_2\" data-name=\"Layer 2\"\u003e\u003cg id=\"Layer_1-2\" data-name=\"Layer 1-2\"\u003e\u003cpath class=\"cls-1\" d=\"M887.62,422.54a6.21,6.21,0,0,1,1-5.9c24.85-31.37,47.4-67.46,47.4-95.14C936,260,900.91,210,824.51,210c-37.85,0-65.61,12.3-83.86,32.11a6.39,6.39,0,0,1-6.68,1.8,570.26,570.26,0,0,0-89.24-21.12,6.24,6.24,0,0,0-7,5.35,6.14,6.14,0,0,0,.16,2.45c6.31,23.66,44.2,174,74.71,288.44,18.45,69.26-29.36,137.3-101,137.09H567.19c-72.42,0-116.38-68.28-99.69-136.35,28.17-115,66.76-264.17,73-288.77a6.19,6.19,0,0,0-4.37-7.59,6,6,0,0,0-2.39-.16,486.69,486.69,0,0,0-103.38,23.66,6.37,6.37,0,0,1-7-1.93c-18.24-21.45-46.7-34.86-86.11-34.86-76.4,0-111.5,49.91-111.5,111.5,0,32.28,30.67,76,59.87,110.31a6.36,6.36,0,0,1,1.15,6.07l-49.7,144.35a1.14,1.14,0,0,0,0,.45c-1.31,5-20.51,90.22,125.32,225.79C406,849.23,558,995.66,585.35,1021.83a6.16,6.16,0,0,0,8.49,0c28.09-26.13,185.77-172.48,229.65-213.24,157.55-146.93,120-226.24,120-226.24Z\"/\u003e\u003cpath class=\"cls-1\" d=\"M619.23,560.53H559.85a17.8,17.8,0,0,1-17.8-17.79v-.09l-7.38-73.11a17.8,17.8,0,0,1,17.8-17.8h73.85a17.8,17.8,0,0,1,17.84,17.76v0l-7.09,73.11a17.8,17.8,0,0,1-17.72,17.88Z\"/\u003e\u003crect class=\"cls-2\" width=\"1173.18\" height=\"1173.18\"/\u003e\u003c/g\u003e\u003c/g\u003e\u003c/svg\u003e"}},"schema":"{\n \"description\": \"MeshGatewayInstance represents a managed instance of a dataplane proxy for a Kuma\\nGateway.\",\n \"properties\": {\n \"apiVersion\": {\n \"description\": \"APIVersion defines the versioned schema of this representation of an object.\\nServers should convert recognized schemas to the latest internal value, and\\nmay reject unrecognized values.\\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources\",\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": \"Kind is a string value representing the REST resource this object represents.\\nServers may infer this from the endpoint the client submits requests to.\\nCannot be updated.\\nIn CamelCase.\\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds\",\n \"type\": \"string\"\n },\n \"metadata\": {\n \"type\": \"object\"\n },\n \"spec\": {\n \"description\": \"MeshGatewayInstanceSpec specifies the options available for a GatewayDataplane.\",\n \"properties\": {\n \"podTemplate\": {\n \"description\": \"PodTemplate configures the Pod owned by this config.\",\n \"properties\": {\n \"metadata\": {\n \"description\": \"Metadata holds metadata configuration for a Service.\",\n \"properties\": {\n \"annotations\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Annotations holds annotations to be set on an object.\",\n \"type\": \"object\"\n },\n \"labels\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Labels holds labels to be set on an objects.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"spec\": {\n \"description\": \"Spec holds some customizable fields of a Pod.\",\n \"properties\": {\n \"container\": {\n \"description\": \"Container corresponds to PodSpec.Container\",\n \"properties\": {\n \"securityContext\": {\n \"description\": \"ContainerSecurityContext corresponds to PodSpec.Container.SecurityContext\",\n \"properties\": {\n \"readOnlyRootFilesystem\": {\n \"description\": \"ReadOnlyRootFilesystem corresponds to PodSpec.Container.SecurityContext.ReadOnlyRootFilesystem\",\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"securityContext\": {\n \"description\": \"PodSecurityContext corresponds to PodSpec.SecurityContext\",\n \"properties\": {\n \"fsGroup\": {\n \"description\": \"FSGroup corresponds to PodSpec.SecurityContext.FSGroup\",\n \"format\": \"int64\",\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"serviceAccountName\": {\n \"description\": \"ServiceAccountName corresponds to PodSpec.ServiceAccountName.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"replicas\": {\n \"default\": 1,\n \"description\": \"Replicas is the number of dataplane proxy replicas to create. For\\nnow this is a fixed number, but in the future it could be\\nautomatically scaled based on metrics.\",\n \"format\": \"int32\",\n \"minimum\": 1,\n \"type\": \"integer\"\n },\n \"resources\": {\n \"description\": \"Resources specifies the compute resources for the proxy container.\\nThe default can be set in the control plane config.\",\n \"properties\": {\n \"claims\": {\n \"description\": \"Claims lists the names of resources, defined in spec.resourceClaims,\\nthat are used by this container.\\n\\nThis is an alpha field and requires enabling the\\nDynamicResourceAllocation feature gate.\\n\\nThis field is immutable. It can only be set for containers.\",\n \"items\": {\n \"description\": \"ResourceClaim references one entry in PodSpec.ResourceClaims.\",\n \"properties\": {\n \"name\": {\n \"description\": \"Name must match the name of one entry in pod.spec.resourceClaims of\\nthe Pod where this field is used. It makes that resource available\\ninside a container.\",\n \"type\": \"string\"\n },\n \"request\": {\n \"description\": \"Request is the name chosen for a request in the referenced claim.\\nIf empty, everything from the claim is made available, otherwise\\nonly the result of this request.\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\",\n \"x-kubernetes-list-map-keys\": [\n \"name\"\n ],\n \"x-kubernetes-list-type\": \"map\"\n },\n \"limits\": {\n \"additionalProperties\": {\n \"anyOf\": [\n {\n \"type\": \"integer\"\n },\n {\n \"type\": \"string\"\n }\n ],\n \"pattern\": \"^(\\\\+|-)?(([0-9]+(\\\\.[0-9]*)?)|(\\\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\\\+|-)?(([0-9]+(\\\\.[0-9]*)?)|(\\\\.[0-9]+))))?$\",\n \"x-kubernetes-int-or-string\": true\n },\n \"description\": \"Limits describes the maximum amount of compute resources allowed.\\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\",\n \"type\": \"object\"\n },\n \"requests\": {\n \"additionalProperties\": {\n \"anyOf\": [\n {\n \"type\": \"integer\"\n },\n {\n \"type\": \"string\"\n }\n ],\n \"pattern\": \"^(\\\\+|-)?(([0-9]+(\\\\.[0-9]*)?)|(\\\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\\\+|-)?(([0-9]+(\\\\.[0-9]*)?)|(\\\\.[0-9]+))))?$\",\n \"x-kubernetes-int-or-string\": true\n },\n \"description\": \"Requests describes the minimum amount of compute resources required.\\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\\notherwise to an implementation-defined value. Requests cannot exceed Limits.\\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"serviceTemplate\": {\n \"description\": \"ServiceTemplate configures the Service owned by this config.\",\n \"properties\": {\n \"metadata\": {\n \"description\": \"Metadata holds metadata configuration for a Service.\",\n \"properties\": {\n \"annotations\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Annotations holds annotations to be set on an object.\",\n \"type\": \"object\"\n },\n \"labels\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Labels holds labels to be set on an objects.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"spec\": {\n \"description\": \"Spec holds some customizable fields of a Service.\",\n \"properties\": {\n \"loadBalancerIP\": {\n \"description\": \"LoadBalancerIP corresponds to ServiceSpec.LoadBalancerIP.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"serviceType\": {\n \"default\": \"LoadBalancer\",\n \"description\": \"ServiceType specifies the type of managed Service that will be\\ncreated to expose the dataplane proxies to traffic from outside\\nthe cluster. The ports to expose will be taken from the matching Gateway\\nresource. If there is no matching Gateway, the managed Service will\\nbe deleted.\",\n \"enum\": [\n \"LoadBalancer\",\n \"ClusterIP\",\n \"NodePort\"\n ],\n \"type\": \"string\"\n },\n \"tags\": {\n \"additionalProperties\": {\n \"type\": \"string\"\n },\n \"description\": \"Tags specifies the Kuma tags that are propagated to the managed\\ndataplane proxies. These tags should not include `kuma.io/service` tag\\nsince is auto-generated, and should match exactly one Gateway\\nresource.\",\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"status\": {\n \"description\": \"MeshGatewayInstanceStatus holds information about the status of the gateway\\ninstance.\",\n \"properties\": {\n \"conditions\": {\n \"description\": \"Conditions is an array of gateway instance conditions.\",\n \"items\": {\n \"description\": \"Condition contains details for one aspect of the current state of this API Resource.\",\n \"properties\": {\n \"lastTransitionTime\": {\n \"description\": \"lastTransitionTime is the last time the condition transitioned from one status to another.\\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n },\n \"message\": {\n \"description\": \"message is a human readable message indicating details about the transition.\\nThis may be an empty string.\",\n \"maxLength\": 32768,\n \"type\": \"string\"\n },\n \"observedGeneration\": {\n \"description\": \"observedGeneration represents the .metadata.generation that the condition was set based upon.\\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\\nwith respect to the current state of the instance.\",\n \"format\": \"int64\",\n \"minimum\": 0,\n \"type\": \"integer\"\n },\n \"reason\": {\n \"description\": \"reason contains a programmatic identifier indicating the reason for the condition's last transition.\\nProducers of specific condition types may define expected values and meanings for this field,\\nand whether the values are considered a guaranteed API.\\nThe value should be a CamelCase string.\\nThis field may not be empty.\",\n \"maxLength\": 1024,\n \"minLength\": 1,\n \"pattern\": \"^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$\",\n \"type\": \"string\"\n },\n \"status\": {\n \"description\": \"status of the condition, one of True, False, Unknown.\",\n \"enum\": [\n \"True\",\n \"False\",\n \"Unknown\"\n ],\n \"type\": \"string\"\n },\n \"type\": {\n \"description\": \"type of condition in CamelCase or in foo.example.com/CamelCase.\",\n \"maxLength\": 316,\n \"pattern\": \"^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"lastTransitionTime\",\n \"message\",\n \"reason\",\n \"status\",\n \"type\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\",\n \"x-kubernetes-list-map-keys\": [\n \"type\"\n ],\n \"x-kubernetes-list-type\": \"map\"\n },\n \"loadBalancer\": {\n \"description\": \"LoadBalancer contains the current status of the load-balancer,\\nif one is present.\",\n \"properties\": {\n \"ingress\": {\n \"description\": \"Ingress is a list containing ingress points for the load-balancer.\\nTraffic intended for the service should be sent to these ingress points.\",\n \"items\": {\n \"description\": \"LoadBalancerIngress represents the status of a load-balancer ingress point:\\ntraffic intended for the service should be sent to an ingress point.\",\n \"properties\": {\n \"hostname\": {\n \"description\": \"Hostname is set for load-balancer ingress points that are DNS based\\n(typically AWS load-balancers)\",\n \"type\": \"string\"\n },\n \"ip\": {\n \"description\": \"IP is set for load-balancer ingress points that are IP based\\n(typically GCE or OpenStack load-balancers)\",\n \"type\": \"string\"\n },\n \"ipMode\": {\n \"description\": \"IPMode specifies how the load-balancer IP behaves, and may only be specified when the ip field is specified.\\nSetting this to \\\"VIP\\\" indicates that traffic is delivered to the node with\\nthe destination set to the load-balancer's IP and port.\\nSetting this to \\\"Proxy\\\" indicates that traffic is delivered to the node or pod with\\nthe destination set to the node's IP and node port or the pod's IP and port.\\nService implementations may use this information to adjust traffic routing.\",\n \"type\": \"string\"\n },\n \"ports\": {\n \"description\": \"Ports is a list of records of service ports\\nIf used, every port defined in the service should have an entry in it\",\n \"items\": {\n \"properties\": {\n \"error\": {\n \"description\": \"Error is to record the problem with the service port\\nThe format of the error shall comply with the following rules:\\n- built-in error values shall be specified in this file and those shall use\\n CamelCase names\\n- cloud provider specific error values must have names that comply with the\\n format foo.example.com/CamelCase.\",\n \"maxLength\": 316,\n \"pattern\": \"^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$\",\n \"type\": \"string\"\n },\n \"port\": {\n \"description\": \"Port is the port number of the service port of which status is recorded here\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n },\n \"protocol\": {\n \"description\": \"Protocol is the protocol of the service port of which status is recorded here\\nThe supported values are: \\\"TCP\\\", \\\"UDP\\\", \\\"SCTP\\\"\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"error\",\n \"port\",\n \"protocol\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\",\n \"x-kubernetes-list-type\": \"atomic\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\",\n \"x-kubernetes-list-type\": \"atomic\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"title\": \"Mesh Gateway Instance\",\n \"type\": \"object\"\n}"} \ No newline at end of file