mirror of
https://github.com/caddyserver/caddy.git
synced 2026-06-07 06:25:24 -04:00
caddytls: Change clustering to be a plugin to the caddytls package (#2459)
* caddytls: Change clustering to be a plugin to the caddytls package Should resolve the failure in https://github.com/coredns/coredns/pull/2541. This change is breaking to clustering plugin developers (not Caddy users), but logical, since only the caddytls package uses CertMagic directly (the httpserver package also uses it, but only because it also uses the caddytls plugin); and it is early enough that no clustering plugins really exist yet. This will also require a change of devportal so that it looks for a different registration function, which has moved to the caddytls package. * Remove unused variable * caddyhttp: Fix test (adjust plugin counting) * ummmm, remove extra line break somehow VS Code didn't fmt on save... weird.
This commit is contained in:
-21
@@ -22,7 +22,6 @@ import (
|
||||
"sync"
|
||||
|
||||
"github.com/mholt/caddy/caddyfile"
|
||||
"github.com/mholt/certmagic"
|
||||
)
|
||||
|
||||
// These are all the registered plugins.
|
||||
@@ -107,11 +106,6 @@ func ListPlugins() map[string][]string {
|
||||
p["caddyfile_loaders"] = append(p["caddyfile_loaders"], defaultCaddyfileLoader.name)
|
||||
}
|
||||
|
||||
// cluster plugins in registration order
|
||||
for name := range clusterProviders {
|
||||
p["clustering"] = append(p["clustering"], name)
|
||||
}
|
||||
|
||||
// List the event hook plugins
|
||||
eventHooks.Range(func(k, _ interface{}) bool {
|
||||
p["event_hooks"] = append(p["event_hooks"], k.(string))
|
||||
@@ -456,21 +450,6 @@ func loadCaddyfileInput(serverType string) (Input, error) {
|
||||
return caddyfileToUse, nil
|
||||
}
|
||||
|
||||
// ClusterPluginConstructor is a function type that is used to
|
||||
// instantiate a new implementation of both certmagic.Storage
|
||||
// and certmagic.Locker, which are required for successful
|
||||
// use in cluster environments.
|
||||
type ClusterPluginConstructor func() (certmagic.Storage, error)
|
||||
|
||||
// clusterProviders is the list of storage providers
|
||||
var clusterProviders = make(map[string]ClusterPluginConstructor)
|
||||
|
||||
// RegisterClusterPlugin registers provider by name for facilitating
|
||||
// cluster-wide operations like storage and synchronization.
|
||||
func RegisterClusterPlugin(name string, provider ClusterPluginConstructor) {
|
||||
clusterProviders[name] = provider
|
||||
}
|
||||
|
||||
// OnProcessExit is a list of functions to run when the process
|
||||
// exits -- they are ONLY for cleanup and should not block,
|
||||
// return errors, or do anything fancy. They will be run with
|
||||
|
||||
Reference in New Issue
Block a user