...

Package konfig

import "sigs.k8s.io/kustomize/api/konfig"
Overview
Index

Overview ▾

Package konfig provides configuration methods and constants for the kustomize API, e.g. the set of file names to look for to identify a kustomization root.

Constants

const (
    // An environment variable to consult for kustomization
    // configuration data.  See:
    // https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
    XdgConfigHomeEnv = "XDG_CONFIG_HOME"

    // Use this when XdgConfigHomeEnv not defined.
    XdgConfigHomeEnvDefault = ".config"

    // A program name, for use in help, finding the XDG_CONFIG_DIR, etc.
    ProgramName = "kustomize"

    // ConfigAnnoDomain is internal configuration-related annotation namespace.
    // See https://github.com/kubernetes-sigs/kustomize/blob/master/cmd/config/docs/api-conventions/functions-spec.md.
    ConfigAnnoDomain = "internal.config.kubernetes.io"

    // If a resource has this annotation, kustomize will drop it.
    IgnoredByKustomizeAnnotation = "config.kubernetes.io/local-config"

    // Label key that indicates the resources are built from Kustomize
    ManagedbyLabelKey = "app.kubernetes.io/managed-by"

    // An environment variable to turn on/off adding the ManagedByLabelKey
    EnableManagedbyLabelEnv = "KUSTOMIZE_ENABLE_MANAGEDBY_LABEL"

    // Label key that indicates the resources are validated by a validator
    ValidatedByLabelKey = "validated-by"
)
const (
    // Symbol that must be used inside Go plugins.
    PluginSymbol = "KustomizePlugin"

    // Name of environment variable used to set AbsPluginHome.
    // See that variable for an explanation.
    KustomizePluginHomeEnv = "KUSTOMIZE_PLUGIN_HOME"

    // Relative path below XDG_CONFIG_HOME/kustomize to find plugins.
    // e.g. AbsPluginHome = XDG_CONFIG_HOME/kustomize/plugin
    RelPluginHome = "plugin"

    // Location of builtin plugins below AbsPluginHome.
    BuiltinPluginPackage = "builtin"

    // The value of kubernetes ApiVersion to use in configuration
    // files for builtin plugins.
    // The value for non-builtins can be anything.
    BuiltinPluginApiVersion = BuiltinPluginPackage

    // Domain from which kustomize code is imported, for locating
    // plugin source code under $GOPATH when GOPATH is defined.
    DomainName = "sigs.k8s.io"

    // Injected into plugin paths when plugins are disabled.
    // Provides a clue in flows that shouldn't happen.
    NoPluginHomeSentinal = "/No/non-builtin/plugins!"
)

func CurrentWorkingDir

func CurrentWorkingDir() string

func DefaultAbsPluginHome

func DefaultAbsPluginHome(fSys filesys.FileSystem) (string, error)

DefaultAbsPluginHome returns the absolute path in the given file system to first directory that looks like a good candidate for the home of kustomize plugins.

func DefaultKustomizationFileName

func DefaultKustomizationFileName() string

func FirstDirThatExistsElseError

func FirstDirThatExistsElseError(
    what string,
    fSys filesys.FileSystem,
    pathFuncs []NotedFunc) (string, error)

FirstDirThatExistsElseError tests different path functions for existence, returning the first that works, else error if all fail.

func HomeDir

func HomeDir() string

func RecognizedKustomizationFileNames

func RecognizedKustomizationFileNames() []string

RecognizedKustomizationFileNames is a list of file names that kustomize recognizes. To avoid ambiguity, a kustomization directory may not contain more than one match to this list.

type NotedFunc

type NotedFunc struct {
    Note string
    F    func() string
}