modules

package
v0.30.9 Latest Latest
Warning

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

Go to latest
Published: May 21, 2026 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ExactTagConstraint added in v0.29.0

type ExactTagConstraint struct {
	// contains filtered or unexported fields
}

func NewExactTagConstraint added in v0.29.0

func NewExactTagConstraint(tag string) *ExactTagConstraint

func NewExactTagConstraintWithChannel added in v0.29.0

func NewExactTagConstraintWithChannel(tag string, channel string) *ExactTagConstraint

func (*ExactTagConstraint) Channel added in v0.29.0

func (e *ExactTagConstraint) Channel() string

func (*ExactTagConstraint) HasChannelAlias added in v0.29.0

func (e *ExactTagConstraint) HasChannelAlias() bool

func (*ExactTagConstraint) IsExact added in v0.29.0

func (e *ExactTagConstraint) IsExact() bool

func (*ExactTagConstraint) Match added in v0.29.0

func (e *ExactTagConstraint) Match(version interface{}) bool

func (*ExactTagConstraint) Tag added in v0.29.0

func (e *ExactTagConstraint) Tag() string

type Filter added in v0.3.0

type Filter struct {
	// contains filtered or unexported fields
}

Filter for modules by black and whitelists. Maps module names to minimal versions of these modules to be pulled. By default, this is a whitelist filter, but that can be changed via SetType.

func NewFilter added in v0.3.0

func NewFilter(filterExpressions []string, filterType FilterType) (*Filter, error)

func (*Filter) GetConstraint added in v0.29.0

func (f *Filter) GetConstraint(moduleName string) (VersionConstraint, bool)

func (*Filter) Len added in v0.29.0

func (f *Filter) Len() int

func (*Filter) Match added in v0.29.0

func (f *Filter) Match(mod *Module) bool

func (*Filter) ShouldMirrorReleaseChannels added in v0.29.0

func (f *Filter) ShouldMirrorReleaseChannels(moduleName string) bool

func (*Filter) UseLogger added in v0.29.0

func (f *Filter) UseLogger(logger params.Logger) *Filter

func (*Filter) VersionsToMirror added in v0.29.0

func (f *Filter) VersionsToMirror(mod *Module) []string

VersionsToMirror resolves module constraints from --include-module into concrete tags to pull. Returns nil when no explicit version tags should be added for this module.

type FilterType added in v0.29.0

type FilterType int
const (
	FilterTypeWhitelist FilterType = iota
	FilterTypeBlacklist
)

type ImageDownloadList added in v0.22.9

type ImageDownloadList struct {
	Module                map[string]*puller.ImageMeta
	ModuleReleaseChannels map[string]*puller.ImageMeta
	ModuleExtra           map[string]*puller.ImageMeta
	// contains filtered or unexported fields
}

func NewImageDownloadList added in v0.22.9

func NewImageDownloadList(rootURL string) *ImageDownloadList

func (*ImageDownloadList) FillForTag added in v0.22.9

func (l *ImageDownloadList) FillForTag(tag string)

type ImageLayouts added in v0.22.9

type ImageLayouts struct {

	// Modules is the main module image layout (modules/<name>/)
	Modules *regimage.ImageLayout
	// ModulesReleaseChannels is the release channel layout (modules/<name>/release/)
	ModulesReleaseChannels *regimage.ImageLayout
	// ExtraImages holds layouts for each extra image (modules/<name>/extra/<extra-name>/)
	// Key is the extra image name (e.g., "scanner", "enforcer")
	ExtraImages map[string]*regimage.ImageLayout
	// contains filtered or unexported fields
}

func NewImageLayouts added in v0.22.9

func NewImageLayouts(rootFolder string) *ImageLayouts

func (*ImageLayouts) AsList added in v0.22.9

func (l *ImageLayouts) AsList() []layout.Path

AsList returns a list of layout.Path's in it. Undefined path's are not included in the list.

func (*ImageLayouts) GetOrCreateExtraLayout added in v0.26.4

func (l *ImageLayouts) GetOrCreateExtraLayout(extraName string) (*regimage.ImageLayout, error)

GetOrCreateExtraLayout returns or creates a layout for a specific extra image. Extra images are stored under: modules/<name>/extra/<extra-name>/

func (*ImageLayouts) HasImages added in v0.30.4

func (l *ImageLayouts) HasImages() bool

HasImages reports whether any sub-layout of this module contains at least one image manifest. Returns false when all layouts are empty (i.e. the module was discovered but no images were pulled into it).

type Module

type Module struct {
	Name         string
	RegistryPath string
	Releases     []string
}

func (*Module) Versions added in v0.29.0

func (m *Module) Versions() []*semver.Version

type ModulesDownloadList added in v0.24.3

type ModulesDownloadList struct {
	// contains filtered or unexported fields
}

func NewModulesDownloadList added in v0.24.3

func NewModulesDownloadList(rootURL string) *ModulesDownloadList

func (*ModulesDownloadList) FillModulesImages added in v0.24.3

func (l *ModulesDownloadList) FillModulesImages(modules []string)

func (*ModulesDownloadList) Module added in v0.24.3

func (l *ModulesDownloadList) Module(moduleName string) *ImageDownloadList

type ModulesImageLayouts added in v0.24.3

type ModulesImageLayouts struct {
	// contains filtered or unexported fields
}

func NewModulesImageLayouts added in v0.24.3

func NewModulesImageLayouts(rootFolder string) *ModulesImageLayouts

func (*ModulesImageLayouts) AsList added in v0.24.3

func (l *ModulesImageLayouts) AsList() []layout.Path

AsList returns a list of layout.Path's from all modules. Undefined path's are not included in the list.

func (*ModulesImageLayouts) Module added in v0.24.3

func (l *ModulesImageLayouts) Module(moduleName string) *ImageLayouts

type Options added in v0.24.3

type Options struct {
	// Filter is the module filter (whitelist/blacklist)
	Filter *Filter
	// OnlyExtraImages pulls only extra images without main module images
	OnlyExtraImages bool
	// SkipVexImages allows skipping VEX images
	SkipVexImages bool
	// BundleDir is the directory to store the bundle
	BundleDir string
	// BundleChunkSize is the max size of bundle chunks in bytes (0 = no chunking)
	BundleChunkSize int64
	// Timeout is the timeout for the modules access check
	Timeout time.Duration
	// DryRun prints the pull plan without downloading any image blobs
	DryRun bool
}

Options contains configuration options for the modules service

type SemanticVersionConstraint added in v0.29.0

type SemanticVersionConstraint struct {
	// contains filtered or unexported fields
}

func NewSemanticVersionConstraint added in v0.29.0

func NewSemanticVersionConstraint(c string) (*SemanticVersionConstraint, error)

func (*SemanticVersionConstraint) HasChannelAlias added in v0.29.0

func (s *SemanticVersionConstraint) HasChannelAlias() bool

func (*SemanticVersionConstraint) IsExact added in v0.29.0

func (s *SemanticVersionConstraint) IsExact() bool

func (*SemanticVersionConstraint) Match added in v0.29.0

func (s *SemanticVersionConstraint) Match(version interface{}) bool

type Service added in v0.22.9

type Service struct {
	// contains filtered or unexported fields
}

func NewService added in v0.22.9

func NewService(
	registryService *registryservice.Service,
	workingDir string,
	options *Options,
	logger *dkplog.Logger,
	userLogger *log.SLogger,
) *Service

func (*Service) PullModules added in v0.22.9

func (svc *Service) PullModules(ctx context.Context) error

PullModules pulls the Deckhouse modules It validates access to the registry and pulls the module images

type VersionConstraint added in v0.29.0

type VersionConstraint interface {
	Match(version interface{}) bool
	IsExact() bool
	HasChannelAlias() bool
}

Jump to

Keyboard shortcuts

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