schema

package
v0.1.0-proto2 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2026 License: MPL-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CurrentVersion = Version{Major: 1, Minor: 0, Patch: 0}

Current schema version

View Source
var ValidAgentTypes = []string{"service", "timer", "socket", "pipe", "event", "init", "oneshot"}

ValidAgentTypes are the supported agent unit types

Functions

func CheckSchemaVersion

func CheckSchemaVersion(v Version) error

CheckSchemaVersion validates schema version compatibility

func ValidateAgentDescribe

func ValidateAgentDescribe(desc AgentDescribe) error

ValidateAgentDescribe validates agent metadata

func ValidateCPULimit

func ValidateCPULimit(limit string) error

ValidateCPULimit validates CPU limit format Accepts: "0.5", "500m", "1", "1.5"

func ValidateMemoryLimit

func ValidateMemoryLimit(limit string) error

ValidateMemoryLimit validates memory limit format Accepts: "100MB", "1GB", "512M", "1G"

func ValidateSchedule

func ValidateSchedule(schedule string) error

ValidateSchedule validates systemd-style timer schedule or cron expression Accepts: "OnUnitActiveSec=5s", "OnBootSec=30s", "OnStartupSec=1m", "*/5 * * * *", "@hourly", etc.

Types

type AgentDescribe

type AgentDescribe struct {
	SchemaVersion string
	ID            string
	Type          string
	CPULimit      string
	MemoryLimit   string
	Schedule      string
	ListenStream  string
	Requires      []string
	Wants         []string
	WantedBy      []string
	RequiredBy    []string
	Capabilities  []string
}

AgentDescribe represents agent metadata for validation

type Version

type Version struct {
	Major uint32
	Minor uint32
	Patch uint32
}

Version represents a semantic version

func ParseVersion

func ParseVersion(v string) (Version, error)

ParseVersion parses a version string like "1.0.0"

Jump to

Keyboard shortcuts

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