Documentation ¶
Index ¶
- Constants
- func GetAPIVersionFromComponent(comp Component) string
- func GetAnnotationsForWorkload(w ComponentDefinition) map[string]string
- func GetKindFromComponent(comp Component) string
- type ArtifactHub
- type Category
- func (cat *Category) Create(db *database.Handler, _ uuid.UUID) (uuid.UUID, error)
- func (cat *Category) GenerateID() (uuid.UUID, error)
- func (cat *Category) GetEntityDetail() string
- func (cat Category) GetID() uuid.UUID
- func (c Category) TableName() string
- func (cat Category) Type() entity.EntityType
- func (m *Category) UpdateStatus(db database.Handler, status entity.EntityStatus) error
- type Component
- type ComponentDefinition
- func (c *ComponentDefinition) Create(db *database.Handler, hostID uuid.UUID) (uuid.UUID, error)
- func (c *ComponentDefinition) GenerateID() (uuid.UUID, error)
- func (c *ComponentDefinition) GetEntityDetail() string
- func (c ComponentDefinition) GetID() uuid.UUID
- func (c ComponentDefinition) TableName() string
- func (c ComponentDefinition) Type() entity.EntityType
- func (m *ComponentDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
- func (c ComponentDefinition) WriteComponentDefinition(componentDirPath string) error
- type ComponentEntity
- type ComponentFormat
- type ComponentParameter
- type ComponentSpec
- type EntitySummary
- type Host
- type HostFilter
- type IHost
- type Kubernetes
- type MeshModelHostsWithEntitySummary
- type MesheryHostSummaryDB
- type Model
- func (m *Model) Create(db *database.Handler, hostID uuid.UUID) (uuid.UUID, error)
- func (m *Model) GenerateID() (uuid.UUID, error)
- func (m *Model) GetEntityDetail() string
- func (m Model) GetID() uuid.UUID
- func (m Model) TableName() string
- func (m Model) Type() entity.EntityType
- func (m *Model) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
- func (c Model) WriteModelDefinition(modelDefPath string, outputType string) error
- type ModelEntity
- type PolicyDefinition
- func (p *PolicyDefinition) Create(db *database.Handler, hostID uuid.UUID) (uuid.UUID, error)
- func (p *PolicyDefinition) GenerateID() (uuid.UUID, error)
- func (p *PolicyDefinition) GetEntityDetail() string
- func (p PolicyDefinition) GetID() uuid.UUID
- func (p PolicyDefinition) Type() entity.EntityType
- func (m *PolicyDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
- func (p PolicyDefinition) WritePolicyDefinition(policyDirPath string) error
- type TypeMeta
- type VersionMeta
Constants ¶
const DefaultCategory = "Uncategorized"
"Uncategorized" is assigned when Category is empty in the component definitions.
const MesheryAnnotationPrefix = "design.meshmodel.io"
const ModelSchemaVersion = "models.meshery.io/v1beta1"
Variables ¶
This section is empty.
Functions ¶
func GetAnnotationsForWorkload ¶
func GetAnnotationsForWorkload(w ComponentDefinition) map[string]string
func GetKindFromComponent ¶
Types ¶
type ArtifactHub ¶
type ArtifactHub struct{}
func (ArtifactHub) HandleDependents ¶
func (ah ArtifactHub) HandleDependents(comp Component, kc *kubernetes.Client, isDeploy, performUpgrade bool) (summary string, err error)
func (ArtifactHub) String ¶
func (ah ArtifactHub) String() string
type Category ¶
type Category struct { ID uuid.UUID `json:"-"` Name string `json:"name" gorm:"name"` Metadata map[string]interface{} `json:"metadata" yaml:"metadata" gorm:"type:bytes;serializer:json"` }
swagger:response Category
func (*Category) GetEntityDetail ¶
func (Category) Type ¶
func (cat Category) Type() entity.EntityType
func (*Category) UpdateStatus ¶
type Component ¶
type Component struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ComponentSpec `json:"spec,omitempty"` }
Component is the structure for the core Application Component
type ComponentDefinition ¶
type ComponentDefinition struct { ID uuid.UUID `json:"id"` VersionMeta `json:",inline" yaml:",inline"` DisplayName string `json:"displayName" gorm:"column:display_name"` Description string `json:"description" gorm:"column:description"` Format ComponentFormat `json:"format" yaml:"format"` ModelID uuid.UUID `json:"-" gorm:"index:idx_component_definition_dbs_model_id,column:model_id"` Model Model `json:"model" gorm:"foreignKey:ModelID;references:ID"` Metadata map[string]interface{} `json:"metadata" yaml:"metadata" gorm:"type:bytes;serializer:json"` Component ComponentEntity `json:"component,omitempty" yaml:"component" gorm:"type:bytes;serializer:json"` }
swagger:response ComponentDefinition
func (*ComponentDefinition) GenerateID ¶ added in v0.7.34
func (c *ComponentDefinition) GenerateID() (uuid.UUID, error)
func (*ComponentDefinition) GetEntityDetail ¶
func (c *ComponentDefinition) GetEntityDetail() string
func (ComponentDefinition) GetID ¶
func (c ComponentDefinition) GetID() uuid.UUID
func (ComponentDefinition) TableName ¶
func (c ComponentDefinition) TableName() string
func (ComponentDefinition) Type ¶
func (c ComponentDefinition) Type() entity.EntityType
func (*ComponentDefinition) UpdateStatus ¶
func (m *ComponentDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
func (ComponentDefinition) WriteComponentDefinition ¶
func (c ComponentDefinition) WriteComponentDefinition(componentDirPath string) error
type ComponentEntity ¶
Contains information as extracted from the core underlying component eg: Pod's apiVersion, kind and schema
type ComponentFormat ¶
type ComponentFormat string
const ( JSON ComponentFormat = "JSON" YAML ComponentFormat = "YAML" CUE ComponentFormat = "CUE" ComponentSchemaVersion = "components.meshery.io/v1beta1" )
type ComponentParameter ¶
type ComponentParameter struct { Name string `json:"name"` FieldPaths []string `json:"fieldPaths"` Required *bool `json:"required,omitempty"` Description *string `json:"description,omitempty"` }
ComponentParameter is the structure for the core Application Component Paramater
type ComponentSpec ¶
type ComponentSpec struct { Type string `json:"type"` Version string `json:"version"` APIVersion string `json:"apiVersion"` Model string `json:"model"` Settings map[string]interface{} `json:"settings"` Parameters []ComponentParameter `json:"parameters"` }
ComponentSpec is the structure for the core Application Component Spec
type EntitySummary ¶
type Host ¶
type HostFilter ¶
type HostFilter struct { Name string Greedy bool //when set to true - instead of an exact match, name will be prefix matched Trim bool //when set to true - the schema is not returned DisplayName string Version string Sort string //asc or desc. Default behavior is asc OrderOn string Limit int //If 0 or unspecified then all records are returned and limit is not used Offset int }
type IHost ¶
type IHost interface { HandleDependents(comp Component, kc *kubernetes.Client, isDeploy, performUpgrade bool) (string, error) String() string }
Each host from where meshmodels can be generated needs to implement this interface HandleDependents, contains host specific logic for provisioning required CRDs/operators for corresponding components.
type Kubernetes ¶
type Kubernetes struct{}
func (Kubernetes) HandleDependents ¶
func (k Kubernetes) HandleDependents(comp Component, kc *kubernetes.Client, isDeploy, performUpgrade bool) (summary string, err error)
func (Kubernetes) String ¶
func (k Kubernetes) String() string
type MeshModelHostsWithEntitySummary ¶
type MeshModelHostsWithEntitySummary struct { ID uuid.UUID `json:"id"` Hostname string `json:"hostname"` Port int `json:"port"` Summary EntitySummary `json:"summary"` }
type MesheryHostSummaryDB ¶
type MesheryHostSummaryDB struct { HostID uuid.UUID `json:"-" gorm:"id"` Hostname string `json:"-" gorm:"hostname"` Port int `json:"-" gorm:"port"` Models int64 `json:"-" gorm:"models"` Components int64 `json:"-" gorm:"components"` Relationships int64 `json:"-" gorm:"relationships"` Policies int64 `json:"-" gorm:"policies"` }
type Model ¶
type Model struct { ID uuid.UUID `json:"id"` VersionMeta `yaml:",inline"` Name string `json:"name" gorm:"modelName"` DisplayName string `json:"displayName"` Description string `json:"description" gorm:"description"` Status entity.EntityStatus `json:"status" gorm:"status"` RegistrantID uuid.UUID `json:"hostID" gorm:"column:host_id"` // make as a foreign refer to host's table Registrant Host `json:"registrant" gorm:"foreignKey:RegistrantID;references:ID"` CategoryID uuid.UUID `json:"-" gorm:"categoryID"` Category Category `json:"category" gorm:"foreignKey:CategoryID;references:ID"` SubCategory string `json:"subCategory" gorm:"subCategory"` Metadata map[string]interface{} `json:"metadata" gorm:"type:bytes;serializer:json"` Model ModelEntity `json:"model,omitempty" gorm:"model;type:bytes;serializer:json"` Components []ComponentDefinition `json:"components" gorm:"-"` Relationships interface{} `json:"relationships" gorm:"-"` }
swagger:response Model
func (*Model) GetEntityDetail ¶
func (Model) Type ¶
func (m Model) Type() entity.EntityType
func (*Model) UpdateStatus ¶
func (Model) WriteModelDefinition ¶
WriteModelDefinition writes out the model to the given `modelDefPath` in the `outputType` format. `outputType` can be `yaml` or `json`. Usage: model.WriteModelDefinition("./modelName/model.yaml", "yaml")
type ModelEntity ¶
type ModelEntity struct {
Version string `json:"version,omitempty" yaml:"version"`
}
type PolicyDefinition ¶
type PolicyDefinition struct { ID uuid.UUID `json:"-"` TypeMeta ModelID uuid.UUID `json:"-" gorm:"column:modelID"` Model Model `json:"model"` SubType string `json:"subType" yaml:"subType"` Expression map[string]interface{} `json:"expression" yaml:"expression" gorm:"type:bytes;serializer:json"` CreatedAt time.Time `json:"-"` UpdatedAt time.Time `json:"-"` }
swagger:response PolicyDefinition
func (*PolicyDefinition) GenerateID ¶ added in v0.7.34
func (p *PolicyDefinition) GenerateID() (uuid.UUID, error)
func (*PolicyDefinition) GetEntityDetail ¶
func (p *PolicyDefinition) GetEntityDetail() string
func (PolicyDefinition) GetID ¶
func (p PolicyDefinition) GetID() uuid.UUID
func (PolicyDefinition) Type ¶
func (p PolicyDefinition) Type() entity.EntityType
func (*PolicyDefinition) UpdateStatus ¶
func (m *PolicyDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
func (PolicyDefinition) WritePolicyDefinition ¶
func (p PolicyDefinition) WritePolicyDefinition(policyDirPath string) error