applicationpackageversion

package
v1.74.0 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2025 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrImageIsNil = errors.New("image is nil")

Functions

func RegisterController

func RegisterController(
	runtimeManager manager.Manager,
	dc dependency.Container,
	logger *log.Logger,
) error

Types

type DowngradeRules

type DowngradeRules struct {
	To               string `yaml:"to"`
	AllowSkipPatches uint   `yaml:"allowSkipPatches"`
	AllowSkipMinor   uint   `yaml:"allowSkipMinor"`
	AllowSkipMajor   uint   `yaml:"allowSkipMajor"`
	MaxRollback      uint   `yaml:"maxRollback"`
}

type PackageDefinition

type PackageDefinition struct {
	Name        string              `yaml:"name"`        // Package name (required)
	Description *PackageDescription `yaml:"description"` // Description for catalog/UI (required)
	// Package category for classification like "Databases", "Monitoring", etc... (required)
	Category string `yaml:"category"`
	// Maturity stage, like "Preview" (required)
	Stage string `yaml:"stage"`
	// Package type, must be one of: Package, ClusterApplication, Application (required)
	Type PackageType `yaml:"type"`
	// Package version (required, injected during build)
	Version string `yaml:"version"`
	// Environment requirements (optional)
	Requirements *PackageRequirements `yaml:"requirements"`
	// Package availability by editions (optional)
	Licensing *PackageLicensing `yaml:"licensing"`
	// Rules for upgrade and downgrade
	VersionCompatibilityRules *VersionCompatibilityRules `yaml:"versionCompatibilityRules"`
}

Definition of package.yaml file

type PackageDescription

type PackageDescription struct {
	Ru string `yaml:"ru"`
	En string `yaml:"en"`
}

type PackageEdition

type PackageEdition struct {
	Available bool `yaml:"available"`
}

type PackageLicensing

type PackageLicensing struct {
	Editions map[string]PackageEdition `yaml:"editions"`
	// Only for modules, array of bundles, where module enabled by default
	EnabledInBundles []string `yaml:"enabledInBundles"`
}

type PackageMetadata

type PackageMetadata struct {
	Version           string
	Changelog         map[string]interface{}
	PackageDefinition *PackageDefinition
}

type PackageRequirements

type PackageRequirements struct {
	Deckhouse  string            `yaml:"deckhouse"`
	Kubernetes string            `yaml:"kubernetes"`
	Modules    map[string]string `yaml:"modules"`
}

type PackageType

type PackageType string
var (
	PackageTypeModule             PackageType = "Package"
	PackageTypeClusterApplication PackageType = "ClusterApplication"
	PackageTypeApplication        PackageType = "Application"
)

type UpgradeRules

type UpgradeRules struct {
	From             string `yaml:"from"`
	AllowSkipPatches uint   `yaml:"allowSkipPatches"`
	AllowSkipMinor   uint   `yaml:"allowSkipMinor"`
	AllowSkipMajor   uint   `yaml:"allowSkipMajor"`
}

type VersionCompatibilityRules

type VersionCompatibilityRules struct {
	Upgrade   UpgradeRules   `yaml:"upgrade"`
	Downgrade DowngradeRules `yaml:"downgrade"`
}

type VersionFile

type VersionFile struct {
	Version string `json:"version"`
}

Jump to

Keyboard shortcuts

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