Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ObjectVisitor ¶
type ObjectVisitor func(obj ast.FileObject) status.Error
ObjectVisitor is a function that validates a single FileObject at a time.
type Raw ¶
type Raw struct {
ClusterName string
Scope declared.Scope
SyncName string
PolicyDir cmpath.Relative
Objects []ast.FileObject
PreviousCRDs []*apiextensionsv1.CustomResourceDefinition
BuildScoper utildiscovery.BuildScoperFunc
Converter *declared.ValueConverter
Scheme *runtime.Scheme
AllowUnknownKinds bool
// AllowAPICall indicates whether the hydration process can send k8s API
// calls. Currently, only dynamic NamespaceSelector requires talking to
// k8s-api-server.
AllowAPICall bool
// DynamicNSSelectorEnabled indicates whether the dynamic mode of
// NamespaceSelector is enabled.
DynamicNSSelectorEnabled bool
// NSControllerState caches the NamespaceSelectors and selected Namespaces
// in the namespace controller.
NSControllerState *namespacecontroller.State
// WebhookEnabled indicates whether Webhook configuration is enabled
WebhookEnabled bool
}
Raw contains a collection of FileObjects that have just been parsed from a Git repo for a cluster.
type RawVisitor ¶
type RawVisitor func(r *Raw) status.MultiError
RawVisitor is a function that validates or hydrates Raw objects.
func VisitAllRaw ¶
func VisitAllRaw(visit ObjectVisitor) RawVisitor
VisitAllRaw returns a RawVisitor which will call the given ObjectVisitor on every FileObject in the Raw objects.
type Scoped ¶
type Scoped struct {
Cluster []ast.FileObject
Namespace []ast.FileObject
Unknown []ast.FileObject
Scope declared.Scope
SyncName string
// AllowAPICall indicates whether the hydration process can send k8s API
// calls. Currently, only dynamic NamespaceSelector requires talking to
// k8s-api-server.
AllowAPICall bool
// DynamicNSSelectorEnabled indicates whether the dynamic mode of
// NamespaceSelector is enabled.
DynamicNSSelectorEnabled bool
// NSControllerState caches the NamespaceSelectors and selected Namespaces
// in the namespace controller.
NSControllerState *namespacecontroller.State
}
Scoped contains a collection of FileObjects that are organized based upon if they are cluster-scoped or namespace-scoped.
func (*Scoped) Objects ¶
func (s *Scoped) Objects() []ast.FileObject
Objects returns all FileObjects in the Scoped collection.
type ScopedVisitor ¶
type ScopedVisitor func(s *Scoped) status.MultiError
ScopedVisitor is a function that validates or hydrates Scoped objects.
func VisitClusterScoped ¶
func VisitClusterScoped(validate ObjectVisitor) ScopedVisitor
VisitClusterScoped returns a ScopedVisitor which will call the given ObjectVisitor on all cluster-scoped FileObjects in the Scoped objects.
func VisitNamespaceScoped ¶
func VisitNamespaceScoped(validate ObjectVisitor) ScopedVisitor
VisitNamespaceScoped returns a ScopedVisitor which will call the given ObjectVisitor on all namespace-scoped FileObjects in the Scoped objects.
type Tree ¶
type Tree struct {
Repo ast.FileObject
HierarchyConfigs []ast.FileObject
NamespaceSelectors map[string]ast.FileObject
Cluster []ast.FileObject
Tree *ast.TreeNode
}
Tree contains a collection of FileObjects that are organized based upon the structure of a hierarchical repo. This includes system-level objects like HierarchyConfigs as well as a hierarchical tree of namespaces and namespace- scoped objects.
func BuildTree ¶
func BuildTree(scoped *Scoped) (*Tree, status.MultiError)
BuildTree builds a Tree collection of objects from the given Scoped objects.
func (*Tree) Objects ¶
func (t *Tree) Objects() []ast.FileObject
Objects returns all FileObjects in the Tree collection.
type TreeVisitor ¶
type TreeVisitor func(t *Tree) status.MultiError
TreeVisitor is a function that validates or hydrates Raw objects.