internal

package
v0.30.20 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	InstallSegment           = "install"
	InstallStandaloneSegment = "install-standalone"
	ReleaseChannelSegment    = "release-channel"

	ModulesSegment        = "modules"
	ModulesReleaseSegment = "release"
	ModulesExtraSegment   = "extra"

	PackagesSegment        = "packages"
	PackagesVersionSegment = "version"
	PackagesExtraSegment   = "extra"

	InstallerSegment = "installer"

	SecuritySegment = "security"

	SecurityTrivyDBSegment     = "trivy-db"
	SecurityTrivyBDUSegment    = "trivy-bdu"
	SecurityTrivyJavaDBSegment = "trivy-java-db"
	SecurityTrivyChecksSegment = "trivy-checks"
)

deckhouse repo structure (relative to root path like registry.deckhouse.io/deckhouse/fe)

Platform:

<root>:<version>                                    - Deckhouse main image
<root>/release-channel:<channel>                    - Release channel metadata
<root>/install:<version>                            - Installer image
<root>/install-standalone:<version>                 - Standalone installer

Security:

<root>/security/<security-name>:<version>           - Security databases (trivy-db, trivy-bdu, etc.)

Modules:

<root>/modules/<module-name>:<version>                    - Module main image
<root>/modules/<module-name>/release:<channel>            - Module release channel metadata
<root>/modules/<module-name>/extra/<extra-name>:<version> - Module extra images

Packages (same shape as modules, but under packages/ with a version/ release segment):

<root>/packages/<package-name>:<version>                    - Package main image
<root>/packages/<package-name>/version:<channel>            - Package version channel metadata
<root>/packages/<package-name>/extra/<extra-name>:<version> - Package extra images
View Source
const (
	AlphaChannel       = "alpha"
	BetaChannel        = "beta"
	EarlyAccessChannel = "early-access"
	StableChannel      = "stable"
	RockSolidChannel   = "rock-solid"
	LTSChannel         = "lts"
)

Variables

This section is empty.

Functions

func ChannelIsValid added in v0.20.14

func ChannelIsValid(c string) bool

func GetAllDefaultReleaseChannels added in v0.20.14

func GetAllDefaultReleaseChannels() []string

func InstallPathByMirrorType added in v0.22.9

func InstallPathByMirrorType(mirrorType MirrorType) string

InstallPathByMirrorType returns the path segment for install based on the mirror type.

Types

type AnyOfGroup added in v0.30.11

type AnyOfGroup struct {
	Description string
	Modules     []ModuleRequirement
}

AnyOfGroup represents an "at least one of" group of module requirements. Description is used in user-facing error messages.

type DeckhouseRequirement added in v0.30.11

type DeckhouseRequirement struct {
	Constraint string
}

DeckhouseRequirement represents a constraint on the Deckhouse cluster version.

type EnvVar

type EnvVar struct {
	Name string
}

EnvVar represents an environment variable required by the plugin

type Flag

type Flag struct {
	Name string
}

Flag represents a command-line flag supported by the plugin

type KubernetesRequirement

type KubernetesRequirement struct {
	Constraint string
}

KubernetesRequirement represents Kubernetes version constraint

type MirrorType added in v0.22.1

type MirrorType int
const (
	MirrorTypeDeckhouse MirrorType = iota
	MirrorTypeDeckhouseInstall
	MirrorTypeDeckhouseInstallStandalone
	MirrorTypeDeckhouseReleaseChannels
	MirrorTypeModules
	MirrorTypeModulesReleaseChannels
	MirrorTypeSecurity
	MirrorTypeSecurityTrivyDBSegment
	MirrorTypeSecurityTrivyBDUSegment
	MirrorTypeSecurityTrivyJavaDBSegment
	MirrorTypeSecurityTrivyChecksSegment
	MirrorTypePackages
	MirrorTypePackagesVersionChannels
)

type ModuleRequirement

type ModuleRequirement struct {
	Name       string
	Constraint string
}

ModuleRequirement represents a required Deckhouse module

type ModuleRequirementsGroup added in v0.30.11

type ModuleRequirementsGroup struct {
	Mandatory   []ModuleRequirement
	Conditional []ModuleRequirement
	AnyOf       []AnyOfGroup
}

ModuleRequirementsGroup splits module requirements into Mandatory, Conditional, and AnyOf.

  • Mandatory: the module must be in the cluster AND satisfy the constraint.
  • Conditional: only enforced if the module is in the cluster.
  • AnyOf: at least one module per group must be in the cluster and satisfy its constraint.

type Plugin

type Plugin struct {
	Name         string
	Version      string
	Description  string
	Env          []EnvVar
	Flags        []Flag
	Requirements Requirements
}

Plugin represents a plugin domain entity

type PluginRequirement added in v0.26.4

type PluginRequirement struct {
	Name       string
	Constraint string
}

PluginRequirement represents a required plugin

type PluginRequirementsGroup added in v0.30.11

type PluginRequirementsGroup struct {
	Mandatory   []PluginRequirement
	Conditional []PluginRequirement
}

PluginRequirementsGroup splits plugin requirements into Mandatory and Conditional.

  • Mandatory: the dependent plugin must be installed AND satisfy the constraint.
  • Conditional: only enforced if the dependent plugin is installed; otherwise skipped.

type Requirements

type Requirements struct {
	Kubernetes KubernetesRequirement
	Deckhouse  DeckhouseRequirement
	Modules    ModuleRequirementsGroup
	Plugins    PluginRequirementsGroup
}

Requirements represents plugin dependencies (v2 schema).

v1 schema: flat array of plugin and module requirements v2 schema: structured groups (with matchers anyOf, mandatory, conditional) + deckhouse

Directories

Path Synopsis
auth
backup
cmd
cni
cr
cmd
Package cr wires the `d8 cr` subtree.
Package cr wires the `d8 cr` subtree.
cmd/completion
Package completion provides shell-completion helpers for the `d8 cr` subtree.
Package completion provides shell-completion helpers for the `d8 cr` subtree.
cmd/fs
Package fs implements the `d8 cr fs` subtree - filesystem inspection of container images.
Package fs implements the `d8 cr fs` subtree - filesystem inspection of container images.
cmd/rootflagnames
Package rootflagnames holds the persistent-flag names of the `d8 cr` root command in one place.
Package rootflagnames holds the persistent-flag names of the `d8 cr` root command in one place.
internal/image
Package image holds pure operations over v1.Image / v1.ImageIndex values that stand on their own (multi-arch resolution, future diff helpers, ...).
Package image holds pure operations over v1.Image / v1.ImageIndex values that stand on their own (multi-arch resolution, future diff helpers, ...).
internal/imagefs
Package imagefs reads the filesystem of an OCI/Docker image as the merged view that a running container would see, and extracts it to disk with path-traversal and absolute-symlink-rewrite protection.
Package imagefs reads the filesystem of an OCI/Docker image as the merged view that a running container would see, and extracts it to disk with path-traversal and absolute-symlink-rewrite protection.
internal/imageio
Package imageio bridges v1.Image / v1.ImageIndex and the local filesystem: loading and saving tarballs (docker format) and OCI image layouts.
Package imageio bridges v1.Image / v1.ImageIndex and the local filesystem: loading and saving tarballs (docker format) and OCI image layouts.
internal/output
Package output renders imagefs data for `d8 cr fs` subcommands as human-readable text.
Package output renders imagefs data for `d8 cr fs` subcommands as human-readable text.
internal/registry
Package registry is the thin domain layer of `d8 cr` on top of go-containerregistry/pkg/v1/*.
Package registry is the thin domain layer of `d8 cr` on top of go-containerregistry/pkg/v1/*.
cmd
iam
cmd
listget/cmd
Package listget hosts the top-level read-only commands `d8 iam get` and `d8 iam list`.
Package listget hosts the top-level read-only commands `d8 iam get` and `d8 iam list`.
types
Package types holds the constants and GVRs shared across the iam subpackages (access, group, user).
Package types holds the constants and GVRs shared across the iam subpackages (access, group, user).
cmd
cmd/pull/errdetect
Package errdetect classifies registry errors for d8 mirror pull with pull-specific causes and solutions.
Package errdetect classifies registry errors for d8 mirror pull with pull-specific causes and solutions.
cmd/push/errdetect
Package errdetect classifies registry errors for d8 mirror push with push-specific causes and solutions.
Package errdetect classifies registry errors for d8 mirror push with push-specific causes and solutions.
errmatch
Package errmatch provides error matchers for container registry responses.
Package errmatch provides error matchers for container registry responses.
pack
Package pack contains the atomic-write helper shared by every component that emits a tar artifact into the user's bundle directory (platform, installer, security, per-module).
Package pack contains the atomic-write helper shared by every component that emits a tar artifact into the user's bundle directory (platform, installer, security, per-module).
packages
Package packages mirrors Deckhouse "packages", which are structurally identical to modules but live under a different set of registry segments:
Package packages mirrors Deckhouse "packages", which are structurally identical to modules but live under a different set of registry segments:
internal/packages/values/schema/defaults
Package defaults synthesizes an example value map from an OpenAPI schema.
Package defaults synthesizes an example value map from an OpenAPI schema.
internal/packages/values/schema/reggen
Package reggen produces example strings that match a Perl-flavored regular expression.
Package reggen produces example strings that match a Perl-flavored regular expression.
internal/utils/iconutil
Package iconutil discovers the package icon at the package root and exposes its on-disk and decoded properties as a single Icon value.
Package iconutil discovers the package icon at the package root and exposes its on-disk and decoded properties as a single Icon value.
internal/verify/lint/linters/icon
Package icon validates package-icon content (format, size, dimensions).
Package icon validates package-icon content (format, size, dimensions).
internal/verify/lint/linters/oss
Package oss validates optional oss.yaml package metadata.
Package oss validates optional oss.yaml package metadata.
plugins
cmd
Package plugins implements the d8-cli plugin system.
Package plugins implements the d8-cli plugin system.
cmd/flags
Package flags defines the shared CLI flag set used by the d8 plugins management subcommands and consumed during registry client initialisation.
Package flags defines the shared CLI flag set used by the d8 plugins management subcommands and consumed during registry client initialisation.
cmd/layout
Package layout centralizes the on-disk filesystem layout used by the d8 plugins subsystem: directory names, suffixes, and helpers that build concrete paths from the install root.
Package layout centralizes the on-disk filesystem layout used by the d8 plugins subsystem: directory names, suffixes, and helpers that build concrete paths from the install root.
status
cmd
system
cmd

Jump to

Keyboard shortcuts

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