Documentation ¶
Index ¶
Constants ¶
View Source
const (
PodNamespace = statusutils.PodNamespaceEnvName
)
Variables ¶
This section is empty.
Functions ¶
func Main ¶
Main is the main entrypoint for running Gloo Edge components It works by performing the following:
- Initialize a SettingsClient backed either by Kubernetes or a File
- Run an event loop, watching events on the Settings resource, and executing the opts.SetupFunc whenever settings change
This allows Gloo components to automatically receive updates to Settings and reload their configuration, without needing to restart the container
func SetupLogging ¶ added in v1.15.2
SetupLogging sets up controller-runtime logging
Types ¶
type SetupFunc ¶
type SetupFunc func(ctx context.Context, kubeCache kube.SharedCache, inMemoryCache memory.InMemoryResourceCache, settings *v1.Settings, identity leaderelector.Identity) error
tell us how to setup
type SetupOpts ¶
type SetupOpts struct { LoggerName string // logged as the version of Gloo currently executing Version string SetupFunc SetupFunc ExitOnError bool CustomCtx context.Context // optional - if present, add these values in each JSON log line in the gloo pod. // By default, we already log the gloo version. LoggingPrefixVals []interface{} ElectionConfig *leaderelector.ElectionConfig }
type SetupSyncer ¶
type SetupSyncer struct {
// contains filtered or unexported fields
}
func NewSetupSyncer ¶
func NewSetupSyncer(settingsRef *core.ResourceRef, setupFunc SetupFunc, identity leaderelector.Identity) *SetupSyncer
func (*SetupSyncer) ShouldSync ¶ added in v1.17.9
func (s *SetupSyncer) ShouldSync(ctx context.Context, oldSnapshot, newSnapshot *v1.SetupSnapshot) bool
ShouldSync compares two snapshots and determines whether a sync is needed based on the following conditions 1. The settings CR has changed 2. A namespace is added / deleted / modified that changes the namespaces to watch
func (*SetupSyncer) Sync ¶
func (s *SetupSyncer) Sync(ctx context.Context, snap *v1.SetupSnapshot) error
Click to show internal directories.
Click to hide internal directories.