Documentation ¶
Index ¶
- Constants
- func BuildConfigManagerContainerParams(cli client.Client, ctx context.Context, managerParams *CfgManagerBuildParams, ...) error
- func FindVolumeMount(volumeDirs []corev1.VolumeMount, volumeName string) *corev1.VolumeMount
- func FromReloadTypeConfig(reloadOptions *appsv1alpha1.ReloadOptions) appsv1alpha1.CfgReloadType
- func GetConfigMountPoint(configSpec appsv1alpha1.ComponentConfigSpec) string
- func GetConfigVolumeName(configSpec appsv1alpha1.ComponentConfigSpec) string
- func GetScriptsMountPoint(configSpec appsv1alpha1.ComponentConfigSpec) string
- func GetScriptsVolumeName(configSpec appsv1alpha1.ComponentConfigSpec) string
- func IsSupportReload(reload *appsv1alpha1.ReloadOptions) bool
- func IsValidUnixSignal(sig appsv1alpha1.SignalType) bool
- func NeedSharedProcessNamespace(configSpecs []ConfigSpecMeta) bool
- func ScanConfigVolume(mountPoint string) ([]string, error)
- func SetLogger(zapLogger *zap.Logger)
- func ValidateReloadOptions(reloadOptions *appsv1alpha1.ReloadOptions, cli client.Client, ...) error
- type CfgManagerBuildParams
- type ConfigHandler
- func CreateCombinedHandler(config string, backupPath string) (ConfigHandler, error)
- func CreateExecHandler(command []string, mountPoint string, configMeta *ConfigSpecInfo, ...) (ConfigHandler, error)
- func CreateSignalHandler(sig appsv1alpha1.SignalType, processName string, mountPoint string) (ConfigHandler, error)
- func CreateTPLScriptHandler(name, configPath string, dirs []string, backupPath string) (ConfigHandler, error)
- type ConfigLazyRenderedMeta
- type ConfigMapVolumeWatcher
- func (w *ConfigMapVolumeWatcher) AddFilter(filter NotifyEventFilter) *ConfigMapVolumeWatcher
- func (w *ConfigMapVolumeWatcher) AddHandler(handler WatchEventHandler) *ConfigMapVolumeWatcher
- func (w *ConfigMapVolumeWatcher) Close() error
- func (w *ConfigMapVolumeWatcher) Run() error
- func (w *ConfigMapVolumeWatcher) SetRetryCount(count int) *ConfigMapVolumeWatcher
- type ConfigSpecInfo
- type ConfigSpecMeta
- type DynamicParamUpdater
- type DynamicUpdater
- type NotifyEventFilter
- type PID
- type TPLScriptConfig
- type WatchEventHandler
Constants ¶
View Source
const ( KBScriptVolumePath = "/opt/kb-tools/reload" KBConfigVolumePath = "/opt/kb-tools/config" KBTOOLSScriptsPathEnv = "TOOLS_SCRIPTS_PATH" KBConfigManagerPathEnv = "TOOLS_PATH" )
View Source
const ( DefaultRetryCount = 3 DefaultSleepRetryTime = 10 )
View Source
const KBConfigSpecLazyRenderedYamlFile = "lazy-rendered-config.yaml"
Variables ¶
This section is empty.
Functions ¶
func BuildConfigManagerContainerParams ¶
func BuildConfigManagerContainerParams(cli client.Client, ctx context.Context, managerParams *CfgManagerBuildParams, volumeDirs []corev1.VolumeMount) error
func FindVolumeMount ¶
func FindVolumeMount(volumeDirs []corev1.VolumeMount, volumeName string) *corev1.VolumeMount
func FromReloadTypeConfig ¶
func FromReloadTypeConfig(reloadOptions *appsv1alpha1.ReloadOptions) appsv1alpha1.CfgReloadType
func GetConfigMountPoint ¶
func GetConfigMountPoint(configSpec appsv1alpha1.ComponentConfigSpec) string
func GetConfigVolumeName ¶
func GetConfigVolumeName(configSpec appsv1alpha1.ComponentConfigSpec) string
func GetScriptsMountPoint ¶
func GetScriptsMountPoint(configSpec appsv1alpha1.ComponentConfigSpec) string
func GetScriptsVolumeName ¶
func GetScriptsVolumeName(configSpec appsv1alpha1.ComponentConfigSpec) string
func IsSupportReload ¶
func IsSupportReload(reload *appsv1alpha1.ReloadOptions) bool
func IsValidUnixSignal ¶
func IsValidUnixSignal(sig appsv1alpha1.SignalType) bool
func NeedSharedProcessNamespace ¶
func NeedSharedProcessNamespace(configSpecs []ConfigSpecMeta) bool
func ScanConfigVolume ¶
func ValidateReloadOptions ¶
func ValidateReloadOptions(reloadOptions *appsv1alpha1.ReloadOptions, cli client.Client, ctx context.Context) error
Types ¶
type CfgManagerBuildParams ¶
type CfgManagerBuildParams struct { ManagerName string `json:"name"` Image string `json:"sidecarImage"` Args []string `json:"args"` Envs []corev1.EnvVar `json:"envs"` Volumes []corev1.VolumeMount `json:"volumes"` ComponentName string `json:"componentName"` CharacterType string `json:"characterType"` SecreteName string `json:"secreteName"` // add volume to pod ScriptVolume []corev1.Volume Cluster *appsv1alpha1.Cluster ConfigSpecsBuildParams []ConfigSpecMeta // init tools container ToolsContainers []corev1.Container DownwardAPIVolumes []corev1.VolumeMount CMConfigVolumes []corev1.Volume ConfigLazyRenderedVolumes map[string]corev1.VolumeMount // support host network ContainerPort int32 `json:"containerPort"` }
CfgManagerBuildParams is the params for building config manager sidecar
type ConfigHandler ¶
type ConfigHandler interface { OnlineUpdate(ctx context.Context, name string, updatedParams map[string]string) error VolumeHandle(ctx context.Context, event fsnotify.Event) error MountPoint() []string }
func CreateCombinedHandler ¶
func CreateCombinedHandler(config string, backupPath string) (ConfigHandler, error)
func CreateExecHandler ¶
func CreateExecHandler(command []string, mountPoint string, configMeta *ConfigSpecInfo, backupPath string) (ConfigHandler, error)
func CreateSignalHandler ¶
func CreateSignalHandler(sig appsv1alpha1.SignalType, processName string, mountPoint string) (ConfigHandler, error)
func CreateTPLScriptHandler ¶
func CreateTPLScriptHandler(name, configPath string, dirs []string, backupPath string) (ConfigHandler, error)
type ConfigLazyRenderedMeta ¶
type ConfigLazyRenderedMeta struct { *appsv1alpha1.ComponentConfigSpec `json:",inline"` // secondary template path Templates []string `json:"templates"` FormatterConfig appsv1alpha1.FormatterConfig `json:"formatterConfig"` }
type ConfigMapVolumeWatcher ¶
type ConfigMapVolumeWatcher struct {
// contains filtered or unexported fields
}
func NewVolumeWatcher ¶
func NewVolumeWatcher(volume []string, ctx context.Context, logger *zap.SugaredLogger) *ConfigMapVolumeWatcher
func (*ConfigMapVolumeWatcher) AddFilter ¶
func (w *ConfigMapVolumeWatcher) AddFilter(filter NotifyEventFilter) *ConfigMapVolumeWatcher
func (*ConfigMapVolumeWatcher) AddHandler ¶
func (w *ConfigMapVolumeWatcher) AddHandler(handler WatchEventHandler) *ConfigMapVolumeWatcher
func (*ConfigMapVolumeWatcher) Close ¶
func (w *ConfigMapVolumeWatcher) Close() error
func (*ConfigMapVolumeWatcher) Run ¶
func (w *ConfigMapVolumeWatcher) Run() error
func (*ConfigMapVolumeWatcher) SetRetryCount ¶
func (w *ConfigMapVolumeWatcher) SetRetryCount(count int) *ConfigMapVolumeWatcher
type ConfigSpecInfo ¶
type ConfigSpecInfo struct { *appsv1alpha1.ReloadOptions `json:",inline"` ReloadType appsv1alpha1.CfgReloadType `json:"reloadType"` ConfigSpec appsv1alpha1.ComponentConfigSpec `json:"configSpec"` FormatterConfig appsv1alpha1.FormatterConfig `json:"formatterConfig"` DownwardAPIOptions []appsv1alpha1.DownwardAPIOption `json:"downwardAPIOptions"` // config volume mount path MountPoint string `json:"mountPoint"` TPLConfig string `json:"tplConfig"` }
type ConfigSpecMeta ¶
type ConfigSpecMeta struct { ConfigSpecInfo `json:",inline"` ScriptConfig []appsv1alpha1.ScriptConfig ToolsImageSpec *appsv1alpha1.ToolsImageSpec }
func FilterSubPathVolumeMount ¶
func FilterSubPathVolumeMount(metas []ConfigSpecMeta, volumes []corev1.VolumeMount) []ConfigSpecMeta
func GetSupportReloadConfigSpecs ¶
func GetSupportReloadConfigSpecs(configSpecs []appsv1alpha1.ComponentConfigSpec, cli client.Client, ctx context.Context) ([]ConfigSpecMeta, error)
type DynamicParamUpdater ¶
type DynamicParamUpdater interface { ExecCommand(ctx context.Context, command string, args ...string) (string, error) Close() }
DynamicParamUpdater is designed to adapt to the dapper implementation.
func NewCommandChannel ¶
func NewCommandChannel(ctx context.Context, dataType, dsn string) (DynamicParamUpdater, error)
type DynamicUpdater ¶
type DynamicUpdater = func(ctx context.Context, configSpec string, updatedParams map[string]string) error
func OnlineUpdateParamsHandle ¶
func OnlineUpdateParamsHandle(tplScriptPath string, formatConfig *appsv1alpha1.FormatterConfig, dataType, dsn string) (DynamicUpdater, error)
type NotifyEventFilter ¶
func CreateCfgRegexFilter ¶
func CreateCfgRegexFilter(regexString string) (NotifyEventFilter, error)
func CreateValidConfigMapFilter ¶
func CreateValidConfigMapFilter() NotifyEventFilter
CreateValidConfigMapFilter processes configmap volume https://github.com/ossrs/srs/issues/1635
type TPLScriptConfig ¶
type TPLScriptConfig struct { Scripts string `json:"scripts"` FileRegex string `json:"fileRegex"` DataType string `json:"dataType"` DSN string `json:"dsn"` FormatterConfig appsv1alpha1.FormatterConfig `json:"formatterConfig"` }
Click to show internal directories.
Click to hide internal directories.