Hi everyone. Can anyone explain the relationship between models, components, categories and relationships?/api/meshmodels/models/{model}/components/
returns multiple components with multiple Kind. Does Kind refer to component’s name?
While I strongly think this needs to be documented visually, but I would just scratch the surface here to give you enough context to move ahead.
Categories: Higher level constructs which defines the behavior and use case of models inside it.
Models: Each Model corresponds to a category, so the category shows the high-level use case of that model, e.g., prometheus is under “Observability and Analysis category”.
Components:
They are the atomic constructs of MeshModel and each model have some components within them.
They are the fundamental entities that can constitute a design-file.
components has its own definition like:
- version
- API version
- Kind
- DisplayName
- Metadata
- Model
- schema
Kind
is the Kuneretes kind, if it pod, its kind would be Pod
(kubernetes understands it as a Pod resource), or if it is cluster-role then its kind would be ClusterRole
(the one you see in k8s manifest)
Does Kind refer to component’s name?
Internally yes, externally No. The display name is used as a human facing name instead, but the components internally are identified via Kind
.
Hi @usman_siddique , are we good to mark Maintainer Abhi’s explanation as the solution?
Thank you @Abhi for the detailed explanation.
Yep @vishalvivekm, please mark it as a solution.