bundle

package
v1.77.0 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package bundle provides a module floor rule: it enables a module when the cluster's active bundle is one that enables it in the active edition, and soft-disables it otherwise. It is intent, not a gate — the decision is always overridable by a higher-precedence rule (e.g. the user's ModuleConfig), so it never Forbids.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BundleChecker

type BundleChecker func(license edition.Licensing) bool

BundleChecker reports whether the active bundle enables the package given its licensing. It is the edition's bundle check (edition.Edition.IsEnabled) bound to the active edition, so the rule resolves the decision live against whatever edition/bundle the cluster runs.

type Rule

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

Rule is a module floor keyed on bundle membership. Which bundles enable the module depends on the active edition, so the rule defers to a BundleChecker (the active edition's IsEnabled) over the package's licensing: it Enables the module when the checker passes and soft-Disables it otherwise.

func NewRule

func NewRule(bundleChecker BundleChecker, licensing edition.Licensing) *Rule

NewRule builds a bundle rule from the active edition's bundle check and the package's licensing.

func (*Rule) Decide

func (r *Rule) Decide() rule.Decision

Decide enables the module when the active bundle enables it in the active edition; otherwise it soft-disables it with the DisabledByBundle reason. Never Forbids — bundle membership is intent, overridable by a higher-precedence rule.

Jump to

Keyboard shortcuts

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