discovery

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 26, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Component = &component.Component{
	Name: "cluster.discovery",
	Dependencies: component.Components{
		discoveryConfig.Component,
		grpc.Component,
	},
	PostExecute: component.StepFunc(func(container container.Container) error {
		return container.Invoke(func(
			config *discoveryConfig.Config,
			grpcConfig *grpc.Config,
			replicaConfig *managerConfig.Replica,
			delayConfig *managerConfig.Delay,
			m cluster.Manager,
			logger logger.Logger,
			closer closer.Closer,
		) (err error) {
			if len(config.Hosts) == 0 || (len(config.Hosts) == 1 && config.Hosts[0] == m.Me().GetHost()) {
				m.Me().AddRole(domain.Master)
				return
			}

			for _, host := range config.Hosts {
				if host == replicaConfig.Host {
					continue
				}

				err = m.AddPeer(manager.NewPeer(host, m.Me(), delayConfig, &grpcConfig.GrpcConfig, logger, closer))
			}

			return nil
		})
	}),
}

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL