model

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CPU

type CPU struct {
	Architecture   string `json:"Architecture,omitzero"`
	Vendor         string `json:"Vendor,omitzero"`
	Family         string `json:"Family,omitzero"`
	ModelName      string `json:"ModelName,omitzero"`
	Model          string `json:"Model,omitzero"`
	Stepping       string `json:"Stepping,omitzero"`
	SocketCount    uint64 `json:"SocketCount,omitzero"`
	CoreCount      uint64 `json:"CoreCount,omitzero"`
	ThreadCount    uint64 `json:"ThreadCount,omitzero"`
	Virtualization string `json:"Virtualization,omitzero"`
	Hypervisor     string `json:"Hypervisor,omitzero"`
}

CPU holds information about the CPU architecture, vendor, family, model, stepping, socket count, core count, thread count, virtualization support, and hypervisor.

func (CPU) IsZero

func (cpu CPU) IsZero() bool

IsZero checks if the CPU instance has no meaningful data.

type ComputerSystem

type ComputerSystem struct {
	CPU    CPU    `json:"CPU,omitzero"`
	Memory Memory `json:"Memory,omitzero"`
	Disk   []Disk `json:"Disk,omitzero"`
}

ComputerSystem contains information about the computer system, including CPU, memory, and disk details.

func (ComputerSystem) IsZero

func (cs ComputerSystem) IsZero() bool

IsZero checks if the ComputerSystem instance has no meaningful data.

type Disk

type Disk struct {
	Name          string `json:"Name,omitzero"`
	Vendor        string `json:"Vendor,omitzero"`
	Model         string `json:"Model,omitzero"`
	Size          uint64 `json:"Size,omitzero"`
	ChildrenCount int    `json:"ChildrenCount,omitzero"`
}

Disk represents a disk device in the system, including its name, vendor, model, size, and number of children.

func (Disk) IsZero

func (d Disk) IsZero() bool

IsZero checks if the Disk instance has no meaningful data.

type Identity

type Identity struct {
	MachineID        string `json:"MachineId"`
	InitialMachineID string `json:"InitialMachineId"`
	GroupID          string `json:"GroupId"`
}

Identity holds the unique identifiers for the machine and its group.

type Kernel

type Kernel struct {
	Machine string `json:"Machine,omitzero"`
	Name    string `json:"Name,omitzero"`
	Release string `json:"Release,omitzero"`
	Version string `json:"Version,omitzero"`
	System  string `json:"System,omitzero"`
}

Kernel contains information about the system's kernel, including machine type, name, release version, and system type.

func (Kernel) IsZero

func (k Kernel) IsZero() bool

IsZero checks if the Kernel instance has no meaningful data.

type Kubernetes

type Kubernetes struct {
	Provider      string                  `json:"Provider,omitzero"`
	ServerVersion string                  `json:"ServerVersion,omitzero"`
	Applications  []KubernetesApplication `json:"Applications,omitzero"`
}

Kubernetes holds information about the Kubernetes provider, server version, and applications running in the cluster.

func (Kubernetes) IsZero

func (k8s Kubernetes) IsZero() bool

IsZero checks if the Kubernetes instance has no meaningful data.

type KubernetesApplication

type KubernetesApplication struct {
	Name       string `json:"com.intel.edgeplatform.application.name,omitzero"`
	Version    string `json:"com.intel.edgeplatform.application.version,omitzero"`
	AppName    string `json:"app.kubernetes.io/name,omitzero"`
	AppVersion string `json:"app.kubernetes.io/version,omitzero"`
	AppPartOf  string `json:"app.kubernetes.io/part-of,omitzero"`
	HelmChart  string `json:"helm.sh/chart,omitzero"`
}

KubernetesApplication represents an application running in a Kubernetes cluster, including its name, version, app name, app version, part of, and Helm chart.

func (KubernetesApplication) GetKey

func (ka KubernetesApplication) GetKey() string

GetKey generates a unique key for the KubernetesApplication based on its attributes.

func (KubernetesApplication) IsZero

func (ka KubernetesApplication) IsZero() bool

IsZero checks if the KubernetesApplication instance has no meaningful data.

type Locale

type Locale struct {
	CountryName string `json:"CountryName,omitzero"`
	CountryAbbr string `json:"CountryAbbr,omitzero"`
	LangName    string `json:"LangName,omitzero"`
	LangAbbr    string `json:"LangAbbr,omitzero"`
}

Locale holds information about the system's locale settings, including country and language names and abbreviations.

func (Locale) IsZero

func (l Locale) IsZero() bool

IsZero checks if the Locale instance has no meaningful data.

type Memory

type Memory struct {
	Summary MemorySummary  `json:"Summary,omitzero"`
	Devices []MemoryDevice `json:"Devices,omitzero"`
}

Memory contains information about the system's memory, including a summary and details of individual memory devices.

func (Memory) IsZero

func (m Memory) IsZero() bool

IsZero checks if the Memory instance has no meaningful data.

type MemoryDevice

type MemoryDevice struct {
	FormFactor   string `json:"FormFactor,omitzero"`
	Size         string `json:"Size,omitzero"`
	Type         string `json:"Type,omitzero"`
	Speed        string `json:"Speed,omitzero"`
	Manufacturer string `json:"Manufacturer,omitzero"`
}

MemoryDevice holds information about individual memory devices, including form factor, size, type, speed, and manufacturer.

func (MemoryDevice) IsZero

func (md MemoryDevice) IsZero() bool

IsZero checks if the MemoryDevice instance has no meaningful data.

type MemorySummary

type MemorySummary struct {
	TotalSizeMB      uint64 `json:"TotalSizeMB,omitzero"`
	CommonType       string `json:"CommonType,omitzero"`
	CommonFormFactor string `json:"CommonFormFactor,omitzero"`
}

MemorySummary provides a summary of the system's memory, including total size, common type, and common form factor.

func (MemorySummary) IsZero

func (ms MemorySummary) IsZero() bool

IsZero checks if the MemorySummary instance has no meaningful data.

type OperatingSystem

type OperatingSystem struct {
	Timezone      string  `json:"Timezone,omitzero"`
	Locale        Locale  `json:"Locale,omitzero"`
	Kernel        Kernel  `json:"Kernel,omitzero"`
	Release       Release `json:"Release,omitzero"`
	UptimeSeconds float64 `json:"UptimeSeconds,omitzero"`
}

OperatingSystem contains information about the operating system, including timezone, locale, kernel, release, and uptime.

func (OperatingSystem) IsZero

func (os OperatingSystem) IsZero() bool

IsZero checks if the Root instance has no meaningful data.

type Release

type Release struct {
	ID           string `json:"Id,omitzero"`
	VersionID    string `json:"VersionId,omitzero"`
	Version      string `json:"Version,omitzero"`
	Codename     string `json:"Codename,omitzero"`
	Family       string `json:"Family,omitzero"`
	BuildID      string `json:"BuildID,omitzero"`
	ImageID      string `json:"ImageID,omitzero"`
	ImageVersion string `json:"ImageVersion,omitzero"`
}

Release holds information about the operating system release, including ID, version, codename, family, build ID, image ID, and image version.

func (Release) IsZero

func (r Release) IsZero() bool

IsZero checks if the Release instance has no meaningful data.

type Root

type Root struct {
	Identity        Identity        `json:"Identity"`
	OperatingSystem OperatingSystem `json:"OperatingSystem,omitzero"`
	ComputerSystem  ComputerSystem  `json:"ComputerSystem,omitzero"`
	Kubernetes      Kubernetes      `json:"Kubernetes,omitzero"`
}

Root represents the root structure of the system information model.

func InitializeRoot

func InitializeRoot() Root

InitializeRoot creates a new Root instance with default values for its fields (except slices, which are initialized to empty slices to avoid nulls in JSON).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL