{ "id": "501c6b0f-8e10-48ca-9287-1d89a4385812", "name": "Cloud-Native Web Application v2", "schemaVersion": "designs.meshery.io/v1beta3", "version": "0.0.3", "components": [ { "id": "610c451f-1cd7-45e4-a112-5859eb41c395", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "devops-platform", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-image": "none", "background-opacity": 0.5, "border-style": "dashed", "border-width": 2, "height": 80, "position": { "x": 1071.5783083367032, "y": 2364.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "rectangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/namespace-color.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/namespace-complete.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/namespace-white.svg", "width": 80 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "parent", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "devops-platform" } }, "component": { "version": "v1", "kind": "Namespace", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "dd1e63de-9b7b-4561-850e-213679163cdd", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "postgres-secret", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-clip": "node", "background-image-containment": "over", "background-opacity": 0, "height": 32, "padding": 1, "position": { "x": 1011.5783083367032, "y": 2640.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "shield", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/secret-color.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/secret-complete.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/secret-white.svg", "width": 32, "z-index": 3 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "postgres-secret", "namespace": "devops-platform" }, "stringData": { "POSTGRES_PASSWORD": "change-me" }, "type": "Opaque" }, "component": { "version": "v1", "kind": "Secret", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "c1c9dafd-9e65-4a8e-b298-dd4e466f2182", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "postgres-data", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "position": { "x": 1357.5783083367032, "y": 2514.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-rectangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/persistentvolumeclaim-color.svg", "svgComplete": "", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/persistentvolumeclaim-white.svg", "z-index": 4 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "postgres-data", "namespace": "devops-platform" }, "spec": { "accessModes": [ "ReadWriteOnce" ], "resources": { "requests": { "storage": "5Gi" } } } }, "component": { "version": "v1", "kind": "PersistentVolumeClaim", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "b55094aa-251f-4dbc-8d9a-bc3e9ba35204", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "service-postgres", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-position-y": "4.5", "height": 20, "padding": 12, "position": { "x": 1149.5783083367032, "y": 2522.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-triangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/service-color.svg", "svgComplete": "", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/service-white.svg", "width": 20, "z-index": 5 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "service-postgres", "namespace": "devops-platform" }, "spec": { "clusterIP": "None", "ports": [ { "port": 5432, "protocol": "TCP", "targetPort": 5432 } ], "selector": { "app": "postgres" } } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "fcda8495-f122-4234-8ce5-e0406c1411d1", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "stateful-set-postgres", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-opacity": 0.2, "height": 15, "position": { "x": 1094.5783083367032, "y": 2635.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-rectangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/statefulset-color.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/statefulset-complete.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/statefulset-white.svg", "width": 15, "x": 12, "y": 20, "z-index": 6 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "parent", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "stateful-set-postgres", "namespace": "devops-platform" }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app": "postgres" } }, "serviceName": "service-postgres", "template": { "metadata": { "labels": { "app": "postgres" } }, "spec": { "containers": [ { "env": [ { "name": "POSTGRES_DB", "value": "appdb" }, { "name": "POSTGRES_USER", "value": "appuser" }, { "name": "POSTGRES_PASSWORD", "valueFrom": { "secretKeyRef": { "key": "POSTGRES_PASSWORD", "name": "postgres-secret" } } } ], "image": "postgres:16", "name": "postgres", "ports": [ { "containerPort": 5432, "protocol": "TCP" } ], "volumeMounts": [ { "mountPath": "/var/lib/postgresql/data", "name": "postgres-data" } ] } ], "volumes": [ { "name": "postgres-data", "persistentVolumeClaim": { "claimName": "postgres-data" } } ] } } } }, "component": { "version": "apps/v1", "kind": "StatefulSet", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "b2d5524d-d645-42a0-b201-1f2a68d47674", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "deployment-backend", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-image": "none", "background-opacity": 0.5, "border-width": 2, "position": { "x": 1239.5783083367032, "y": 2324.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-rectangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/deployment-color.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/deployment-complete.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/deployment-white.svg", "z-index": 7 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "parent", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "deployment-backend", "namespace": "devops-platform" }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app": "backend" } }, "template": { "metadata": { "labels": { "app": "backend" } }, "spec": { "containers": [ { "command": [ "node", "-e", "require('http').createServer((q,r)=\u003er.end('backend ok')).listen(8080)" ], "env": [ { "name": "DB_HOST", "value": "service-postgres" }, { "name": "DB_PORT", "value": "5432" } ], "image": "node:22-alpine", "name": "backend", "ports": [ { "containerPort": 8080, "protocol": "TCP" } ] } ] } } } }, "component": { "version": "apps/v1", "kind": "Deployment", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "5c98565b-ef3d-4483-a911-315724a1a9ba", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "service-backend", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-position-y": "4.5", "height": 20, "padding": 12, "position": { "x": 1257.5783083367032, "y": 2522.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-triangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/service-color.svg", "svgComplete": "", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/service-white.svg", "width": 20, "z-index": 8 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "service-backend", "namespace": "devops-platform" }, "spec": { "ports": [ { "port": 8080, "protocol": "TCP", "targetPort": 8080 } ], "selector": { "app": "backend" } } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "7e0166ba-a31a-4767-acd5-4a09d2e1750e", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "deployment-frontend", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-image": "none", "background-opacity": 0.5, "border-width": 2, "position": { "x": 1031.5783083367032, "y": 2532.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-rectangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/deployment-color.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/deployment-complete.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/deployment-white.svg", "z-index": 9 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "parent", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "deployment-frontend", "namespace": "devops-platform" }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app": "frontend" } }, "template": { "metadata": { "labels": { "app": "frontend" } }, "spec": { "containers": [ { "image": "nginx:stable", "name": "frontend", "ports": [ { "containerPort": 80, "name": "http", "protocol": "TCP" } ] } ] } } } }, "component": { "version": "apps/v1", "kind": "Deployment", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "34279129-7d92-47e2-bddf-6227dd80b9c3", "schemaVersion": "components.meshery.io/v1beta2", "version": "v1.0.0", "displayName": "service-frontend", "description": "", "format": "", "model": null, "modelReference": { "displayName": "Kubernetes", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "v1.38.0-alpha.2" }, "name": "kubernetes", "registrant": { "kind": "github" }, "version": "v1.0.0" }, "styles": { "background-position-y": "4.5", "height": 20, "padding": 12, "position": { "x": 1357.5783083367032, "y": 2314.5305822547225 }, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "shape": "round-triangle", "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/service-color.svg", "svgComplete": "", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/service-white.svg", "width": 20, "z-index": 10 }, "capabilities": null, "status": "enabled", "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": true, "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3" }, "configuration": { "metadata": { "name": "service-frontend", "namespace": "devops-platform" }, "spec": { "ports": [ { "name": "http", "port": 80, "protocol": "TCP", "targetPort": 80 } ], "selector": { "app": "frontend" } } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" } ], "relationships": [] }