{"id": "9f249a4b-13da-4ea1-860e-98c4060a444a", "name": "pv-pvc-edge-non-binding-reference-relationship", "version": "0.0.3", "metadata": {"resolvedAliases": {}}, "components": [{"id": "11111111-1111-1111-1111-111111111111", "format": "JSON", "status": "enabled", "styles": {"shape": "round-rectangle", "position": {"x": 1095.5, "y": 718.0955290033617}, "svgColor": "", "svgWhite": "", "svgComplete": "", "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "background-opacity": 1}, "version": "v1.0.0", "metadata": {"genealogy": "", "published": false, "isAnnotation": false, "isNamespaced": false, "instanceDetails": null, "configurationUISchema": ""}, "component": {"kind": "PersistentVolume", "schema": "", "version": "v1"}, "description": "A PersistentVolume that provides storage", "displayName": "my-persistent-volume", "capabilities": null, "configuration": {"spec": {"capacity": {"storage": "10Gi"}, "hostPath": {"path": "/mnt/data"}, "accessModes": ["ReadWriteOnce"], "persistentVolumeReclaimPolicy": "Retain"}, "metadata": {"name": "my-persistent-volume"}}, "schemaVersion": "components.meshery.io/v1beta1", "modelReference": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": "v1.35.0-rc.0"}, "version": "v1.0.0", "registrant": {"kind": "github"}, "displayName": "Kubernetes"}}, {"id": "22222222-2222-2222-2222-222222222222", "format": "JSON", "status": "enabled", "styles": {"shape": "round-rectangle", "position": {"x": 1095.5, "y": 896.9044709966383}, "svgColor": "", "svgWhite": "", "svgComplete": "", "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "background-opacity": 1}, "version": "v1.0.0", "metadata": {"genealogy": "", "published": false, "isAnnotation": false, "isNamespaced": true, "instanceDetails": null, "configurationUISchema": ""}, "component": {"kind": "PersistentVolumeClaim", "schema": "", "version": "v1"}, "description": "A PersistentVolumeClaim that binds to the PV", "displayName": "my-persistent-volume-claim", "capabilities": null, "configuration": {"spec": {"resources": {"requests": {"storage": "5Gi"}}, "volumeName": "my-persistent-volume", "accessModes": ["ReadWriteOnce"]}, "metadata": {"name": "my-persistent-volume-claim", "namespace": "default"}}, "schemaVersion": "components.meshery.io/v1beta1", "modelReference": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": "v1.35.0-rc.0"}, "version": "v1.0.0", "registrant": {"kind": "github"}, "displayName": "Kubernetes"}}, {"id": "bffc1e2e-d42d-46a9-85a0-34c3e804cd16", "format": "JSON", "status": "enabled", "styles": {"shape": "rectangle", "width": 80, "height": 80, "svgColor": "ui/public/static/img/meshmodels/kubernetes/color/namespace-color.svg", "svgWhite": "ui/public/static/img/meshmodels/kubernetes/white/namespace-white.svg", "svgComplete": "ui/public/static/img/meshmodels/kubernetes/complete/namespace-complete.svg", "border-style": "dashed", "border-width": 2, "primaryColor": "#326CE5", "secondaryColor": "#7aa1f0", "background-image": "none", "background-opacity": 0.5}, "version": "v1.0.0", "metadata": {"genealogy": "parent", "published": false, "source_uri": "git://github.com/kubernetes/kubernetes/master/api/openapi-spec/v3", "isAnnotation": false, "isNamespaced": true, "instanceDetails": null, "configurationUISchema": ""}, "component": {"kind": "Namespace", "schema": "", "version": "v1"}, "description": "", "displayName": "default", "capabilities": null, "configuration": null, "schemaVersion": "components.meshery.io/v1beta1", "modelReference": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": "v1.35.0-rc.0"}, "version": "v1.0.0", "registrant": {"kind": "github"}, "displayName": "Kubernetes"}}], "preferences": {"layers": null}, "relationships": [{"id": "33333333-3333-3333-3333-333333333333", "kind": "edge", "type": "non-binding", "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": "v1.35.0-rc.0"}, "version": "v1.0.0", "registrant": {"kind": "github"}, "displayName": "Kubernetes"}, "status": "pending", "subType": "reference", "version": "", "metadata": {"styles": {"svgColor": "", "svgWhite": "", "primaryColor": ""}, "description": "A PVC binds to a matching PV either dynamically (via a StorageClass) or statically (by explicitly matching fields like name, storage, and accessModes). The PVC acts as an abstraction layer, allowing workloads to request storage without knowing the underlying volume details.", "isAnnotation": false}, "selectors": [{"deny": {"to": [], "from": []}, "allow": {"to": [{"id": "22222222-2222-2222-2222-222222222222", "kind": "PersistentVolumeClaim", "match": {}, "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": ""}, "version": "", "registrant": {"kind": "github"}, "displayName": ""}, "patch": {"mutatedRef": [["configuration", "spec", "volumeName"]], "patchStrategy": "replace"}, "match_strategy_matrix": null}], "from": [{"id": "11111111-1111-1111-1111-111111111111", "kind": "PersistentVolume", "match": {}, "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": ""}, "version": "", "registrant": {"kind": "github"}, "displayName": ""}, "patch": {"mutatorRef": [["configuration", "metadata", "name"]], "patchStrategy": "replace"}, "match_strategy_matrix": null}]}}], "schemaVersion": "relationships.meshery.io/v1alpha3", "evaluationQuery": null}, {"id": "223f9e9f-50e5-4cd3-a655-7d3a4352413e", "kind": "hierarchical", "type": "parent", "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": "v1.35.0-rc.0"}, "version": "v1.0.0", "registrant": {"kind": "github"}, "displayName": "Kubernetes"}, "status": "approved", "subType": "inventory", "version": "v1.0.0", "metadata": {"styles": {"svgColor": "", "svgWhite": "", "primaryColor": ""}, "description": "Namespace to namespaced components", "isAnnotation": false}, "selectors": [{"allow": {"to": [{"id": "bffc1e2e-d42d-46a9-85a0-34c3e804cd16", "kind": "Namespace", "match": {}, "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "kubernetes", "model": {"version": ""}, "version": "", "registrant": {"kind": "github"}, "displayName": ""}, "patch": {"mutatorRef": [["displayName"]], "patchStrategy": "replace"}, "match_strategy_matrix": null}], "from": [{"id": "22222222-2222-2222-2222-222222222222", "kind": "*", "match": {}, "model": {"id": "00000000-0000-0000-0000-000000000000", "name": "*", "model": {"version": ""}, "version": "", "registrant": {"kind": ""}, "displayName": ""}, "patch": {"mutatedRef": [["configuration", "metadata", "namespace"]], "patchStrategy": "replace"}, "match_strategy_matrix": null}]}}], "schemaVersion": "relationships.meshery.io/v1alpha3", "evaluationQuery": ""}], "schemaVersion": "designs.meshery.io/v1beta1"}