Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterTargetResolver ¶
func RegisterTargetResolver(r TargetResolver) error
RegisterTargetResolver registers a custom target resolver, else the default will be used
Types ¶
type TargetResolver ¶
type TargetResolver interface { // Name the display name that will be shown in places like `choria buildinfo` Name() string // Targets will be called to determine the provisioning destination Targets(context.Context, *logrus.Entry) []string // Configure will be called during server configuration and can be used to configure the target or adjust build settings or configuration // this will always be called even when not in provisioning mode, one can use this to programmatically set a provisioner token for example // // The intention of this function is that all the settings needed by provisioning (all the things in build) should be set during configure // stage. Later when Targets() are called the intention is that either the configured targets are returned verbatim or if for example the // plugin queries something like SRV records those queries are done there. // // Today Configure() is expected to set the JWT file using bi.SetProvisionJWTFile() and that the file should exist before probisioning will // happen, this will be revisited in future. See the shouldProvision() function in server_run.go for current logic that would trigger a // server into provisioning. Configure(context.Context, *config.Config, *logrus.Entry) }
TargetResolver is capable of resolving the target brokers for provisioning into list of strings in the format host:port
Click to show internal directories.
Click to hide internal directories.