package common // CPU is a struct that represents a CPU type CPU struct { Model string `bson:"platform,omitempty" json:"platform,omitempty"` FrequencyGhz float64 `bson:"frenquency,omitempty" json:"frenquency,omitempty"` Cores int `bson:"cores,omitempty" json:"cores,omitempty"` Architecture string `bson:"architecture,omitempty" json:"architecture,omitempty"` } type RAM struct { SizeGb float64 `bson:"size,omitempty" json:"size,omitempty" description:"Units in MB"` Ecc bool `bson:"ecc" json:"ecc" default:"true"` } type GPU struct { Model string `bson:"platform,omitempty" json:"platform,omitempty"` MemoryGb float64 `bson:"memory,omitempty" json:"memory,omitempty" description:"Units in MB"` } type InfrastructureType int const ( DOCKER InfrastructureType = iota KUBERNETES SLURM HW CONDOR ) func (t InfrastructureType) String() string { return [...]string{"DOCKER", "KUBERNETES", "SLURM", "HW", "CONDOR"}[t] }