Documentation ¶
Index ¶
- Constants
- Variables
- func CommandWithDefaultUsageTemplate(kpApp *kingpin.Application, name, help string) *kingpin.CmdClause
- func DefineConversionWebhookFlags(cmd *kingpin.CmdClause)
- func DefineDebugFlags(kpApp *kingpin.Application, cmd *kingpin.CmdClause)
- func DefineDebugUnixSocketFlag(cmd *kingpin.CmdClause)
- func DefineJqFlags(cmd *kingpin.CmdClause)
- func DefineKubeClientFlags(cmd *kingpin.CmdClause)
- func DefineLoggingFlags(cmd *kingpin.CmdClause)
- func DefineStartCommandFlags(kpApp *kingpin.Application, cmd *kingpin.CmdClause)
- func DefineValidatingWebhookFlags(cmd *kingpin.CmdClause)
- func OperatorUsageTemplate(appName string) string
- func SetupLogging(runtimeConfig *config.Config)
- type FlagInfo
- type ProxyJsonWrapperFormatter
Constants ¶
View Source
const ForcedDurationForDebugLevel = 30 * time.Minute
ForcedDurationForDebugLevel - force expiration for debug level.
View Source
const ProxyJsonLogKey = "proxyJsonLog"
Variables ¶
View Source
var AppDescription = "Run your custom cluster-wide scripts in reaction to Kubernetes events or on schedule."
View Source
var AppName = "shell-operator"
View Source
var AppStartMessage = "shell-operator"
View Source
var CommonFlagsInfo = map[string]FlagInfo{ "hooks-dir": { "hooks-dir", "A path to a hooks file structure. Can be set with $SHELL_OPERATOR_HOOKS_DIR.", "SHELL_OPERATOR_HOOKS_DIR", true, }, "tmp-dir": { "tmp-dir", "A path to store temporary files with data for hooks. Can be set with $SHELL_OPERATOR_TMP_DIR.", "SHELL_OPERATOR_TMP_DIR", true, }, "listen-address": { "listen-address", "Address to use to serve metrics to Prometheus. Can be set with $SHELL_OPERATOR_LISTEN_ADDRESS.", "SHELL_OPERATOR_LISTEN_ADDRESS", true, }, "listen-port": { "listen-port", "Port to use to serve metrics to Prometheus. Can be set with $SHELL_OPERATOR_LISTEN_PORT.", "SHELL_OPERATOR_LISTEN_PORT", true, }, "prometheus-metrics-prefix": { "prometheus-metrics-prefix", "Prefix for Prometheus metrics. Can be set with $SHELL_OPERATOR_PROMETHEUS_METRICS_PREFIX.", "SHELL_OPERATOR_PROMETHEUS_METRICS_PREFIX", true, }, "hook-metrics-listen-port": { "hook-metrics-listen-port", "Port to use to serve hooks’ custom metrics to Prometheus. Can be set with $SHELL_OPERATOR_HOOK_METRICS_LISTEN_PORT. Equal to listen-port if empty.", "SHELL_OPERATOR_HOOK_METRICS_LISTEN_PORT", true, }, "namespace": { "namespace", "A namespace of a shell-operator. Used to setup validating webhooks. Can be set with $SHELL_OPERATOR_NAMESPACE.", "SHELL_OPERATOR_NAMESPACE", true, }, }
View Source
var ConversionWebhookSettings = &conversion.WebhookSettings{ Settings: server.Settings{ ServerCertPath: "/conversion-certs/tls.crt", ServerKeyPath: "/conversion-certs/tls.key", ClientCAPaths: nil, ServiceName: "shell-operator-conversion-svc", ListenAddr: "0.0.0.0", ListenPort: "9681", }, CAPath: "/conversion-certs/ca.crt", }
View Source
var DebugKeepTmpFiles = "no"
View Source
var DebugKubernetesAPI = false
View Source
var DebugUnixSocket = "/var/run/shell-operator/debug.socket"
View Source
var HookMetricsListenPort = ""
View Source
var HooksDir = "hooks"
View Source
var JqLibraryPath = ""
View Source
var KubeClientBurst int
View Source
var KubeClientBurstDefault = "10" // DefaultBurst from k8s.io/client-go/rest/config.go
View Source
var KubeClientQps float32
View Source
var KubeClientQpsDefault = "5" // DefaultQPS from k8s.io/client-go/rest/config.go
View Source
var KubeConfig = ""
View Source
var KubeContext = ""
View Source
var KubeServer = ""
View Source
var ListenAddress = "0.0.0.0"
View Source
var ListenPort = "9115"
View Source
var LogLevel = "info"
Use info level with timestamps and a text output by default
View Source
var LogNoTime = false
View Source
var LogProxyHookJSON = false
View Source
var LogType = "text"
View Source
var Namespace = ""
View Source
var ObjectPatcherKubeClientBurst int
View Source
var ObjectPatcherKubeClientBurstDefault = "10" // DefaultBurst from k8s.io/client-go/rest/config.go
View Source
var ObjectPatcherKubeClientQps float32
View Source
var ObjectPatcherKubeClientQpsDefault = "5" // DefaultQPS from k8s.io/client-go/rest/config.go
View Source
var ObjectPatcherKubeClientTimeout time.Duration
View Source
var ObjectPatcherKubeClientTimeoutDefault = "10s"
View Source
var PrometheusMetricsPrefix = "shell_operator_"
View Source
var TempDir = "/tmp/shell-operator"
View Source
var ValidatingWebhookSettings = &validating.WebhookSettings{ Settings: server.Settings{ ServerCertPath: "/validating-certs/tls.crt", ServerKeyPath: "/validating-certs/tls.key", ClientCAPaths: nil, ServiceName: "shell-operator-validating-svc", ListenAddr: "0.0.0.0", ListenPort: "9680", }, CAPath: "/validating-certs/ca.crt", ConfigurationName: "shell-operator-hooks", }
View Source
var Version = "dev"
Functions ¶
func CommandWithDefaultUsageTemplate ¶
func CommandWithDefaultUsageTemplate(kpApp *kingpin.Application, name, help string) *kingpin.CmdClause
CommandWithDefaultUsageTemplate is used to workaround an absence of per-command usage templates
func DefineConversionWebhookFlags ¶
func DefineConversionWebhookFlags(cmd *kingpin.CmdClause)
DefineConversionWebhookFlags defines flags for ConversionWebhook server.
func DefineDebugFlags ¶
func DefineDebugFlags(kpApp *kingpin.Application, cmd *kingpin.CmdClause)
DefineDebugFlags init global command line flags for debug.
func DefineDebugUnixSocketFlag ¶
func DefineDebugUnixSocketFlag(cmd *kingpin.CmdClause)
func DefineJqFlags ¶
func DefineJqFlags(cmd *kingpin.CmdClause)
DefineJqFlags set flag for jq library
func DefineKubeClientFlags ¶
func DefineKubeClientFlags(cmd *kingpin.CmdClause)
func DefineLoggingFlags ¶
func DefineLoggingFlags(cmd *kingpin.CmdClause)
DefineLoggingFlags defines flags for logger settings.
func DefineStartCommandFlags ¶
func DefineStartCommandFlags(kpApp *kingpin.Application, cmd *kingpin.CmdClause)
DefineStartCommandFlags set shell-operator flags for cmd
func DefineValidatingWebhookFlags ¶
func DefineValidatingWebhookFlags(cmd *kingpin.CmdClause)
DefineValidatingWebhookFlags defines flags for ValidatingWebhook server.
func OperatorUsageTemplate ¶
func SetupLogging ¶
SetupLogging sets logger formatter and level.
Types ¶
Click to show internal directories.
Click to hide internal directories.