Don't use globals for API server

Refactors how HTTP servers are started and binds them to objects that
can store the provider rather than relying on a global.
This commit is contained in:
Brian Goff
2018-08-20 11:52:54 -07:00
parent 99e0cfad5c
commit 8de6693460
2 changed files with 34 additions and 24 deletions

View File

@@ -115,7 +115,7 @@ func New(nodeName, operatingSystem, namespace, kubeConfig, provider, providerCon
Effect: vkTaintEffect,
}
p, err = lookupProvider(provider, providerConfig, rm, nodeName, operatingSystem, internalIP, daemonEndpointPort)
p, err := lookupProvider(provider, providerConfig, rm, nodeName, operatingSystem, internalIP, daemonEndpointPort)
if err != nil {
return nil, err
}
@@ -137,7 +137,13 @@ func New(nodeName, operatingSystem, namespace, kubeConfig, provider, providerCon
return s, err
}
go ApiserverStart(p, metricsAddr)
go KubeletServerStart(p)
if metricsAddr != "" {
go MetricsServerStart(p, metricsAddr)
} else {
log.G(ctx).Info("Skipping metrics server startup since no address was provided")
}
tick := time.Tick(5 * time.Second)