@@ -41,7 +41,7 @@ func NewCommand(s *provider.Store) *cobra.Command {
|
|||||||
fmt.Fprintln(cmd.OutOrStderr(), "no such provider", args[0])
|
fmt.Fprintln(cmd.OutOrStderr(), "no such provider", args[0])
|
||||||
|
|
||||||
// TODO(@cpuuy83): would be nice to not short-circuit the exit here
|
// TODO(@cpuuy83): would be nice to not short-circuit the exit here
|
||||||
// But at the momemt this seems to be the only way to exit non-zero and
|
// But at the moment this seems to be the only way to exit non-zero and
|
||||||
// handle our own error output
|
// handle our own error output
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ func RegisterTracingExporter(name string, f TracingExporterInitFunc) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GetTracingExporter gets the specified tracing exporter passing in the options to the exporter init function.
|
// GetTracingExporter gets the specified tracing exporter passing in the options to the exporter init function.
|
||||||
// For an exporter to be availbale here it must be registered with `RegisterTracingExporter`.
|
// For an exporter to be available here it must be registered with `RegisterTracingExporter`.
|
||||||
func GetTracingExporter(name string, opts TracingExporterOptions) (trace.Exporter, error) {
|
func GetTracingExporter(name string, opts TracingExporterOptions) (trace.Exporter, error) {
|
||||||
f, ok := tracingExporters[name]
|
f, ok := tracingExporters[name]
|
||||||
if !ok {
|
if !ok {
|
||||||
|
|||||||
2
doc.go
2
doc.go
@@ -14,7 +14,7 @@ code wrapping what is provided in the node package is what consumers of this
|
|||||||
project would implement. In the interest of not duplicating examples, please
|
project would implement. In the interest of not duplicating examples, please
|
||||||
see that package on how to get started using virtual kubelet.
|
see that package on how to get started using virtual kubelet.
|
||||||
|
|
||||||
Virtual Kubelet supports propgagation of logging and traces through a context.
|
Virtual Kubelet supports propagation of logging and traces through a context.
|
||||||
See the "log" and "trace" packages for how to use this.
|
See the "log" and "trace" packages for how to use this.
|
||||||
|
|
||||||
Errors produced by and consumed from the node package are expected to conform to
|
Errors produced by and consumed from the node package are expected to conform to
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ var (
|
|||||||
G = GetLogger
|
G = GetLogger
|
||||||
|
|
||||||
// L is the default logger. It should be initialized before using `G` or `GetLogger`
|
// L is the default logger. It should be initialized before using `G` or `GetLogger`
|
||||||
// If L is unitialized and no logger is available in a provided context, a
|
// If L is uninitialized and no logger is available in a provided context, a
|
||||||
// panic will occur.
|
// panic will occur.
|
||||||
L Logger = nopLogger{}
|
L Logger = nopLogger{}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Package node implements the components for operating a node in Kubernetes.
|
Package node implements the components for operating a node in Kubernetes.
|
||||||
This includes controllers for managin the node object, running scheduled pods,
|
This includes controllers for managing the node object, running scheduled pods,
|
||||||
and exporting HTTP endpoints expected by the Kubernets API server.
|
and exporting HTTP endpoints expected by the Kubernetes API server.
|
||||||
|
|
||||||
There are two primary controllers, the node runner and the pod runner.
|
There are two primary controllers, the node runner and the pod runner.
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ type PodLifecycleHandler interface {
|
|||||||
|
|
||||||
// PodNotifier notifies callers of pod changes.
|
// PodNotifier notifies callers of pod changes.
|
||||||
// Providers should implement this interface to enable callers to be notified
|
// Providers should implement this interface to enable callers to be notified
|
||||||
// of pod status updates asyncronously.
|
// of pod status updates asynchronously.
|
||||||
type PodNotifier interface {
|
type PodNotifier interface {
|
||||||
// NotifyPods instructs the notifier to call the passed in function when
|
// NotifyPods instructs the notifier to call the passed in function when
|
||||||
// the pod status changes.
|
// the pod status changes.
|
||||||
@@ -112,7 +112,7 @@ type PodControllerConfig struct {
|
|||||||
|
|
||||||
// Informers used for filling details for things like downward API in pod spec.
|
// Informers used for filling details for things like downward API in pod spec.
|
||||||
//
|
//
|
||||||
// We are using informers here instead of listers because we'll need the
|
// We are using informers here instead of listeners because we'll need the
|
||||||
// informer for certain features (like notifications for updated ConfigMaps)
|
// informer for certain features (like notifications for updated ConfigMaps)
|
||||||
ConfigMapInformer corev1informers.ConfigMapInformer
|
ConfigMapInformer corev1informers.ConfigMapInformer
|
||||||
SecretInformer corev1informers.SecretInformer
|
SecretInformer corev1informers.SecretInformer
|
||||||
@@ -233,7 +233,7 @@ func (pc *PodController) Run(ctx context.Context, podSyncWorkers int) error {
|
|||||||
|
|
||||||
// Ready returns a channel which gets closed once the PodController is ready to handle scheduled pods.
|
// Ready returns a channel which gets closed once the PodController is ready to handle scheduled pods.
|
||||||
// This channel will never close if there is an error on startup.
|
// This channel will never close if there is an error on startup.
|
||||||
// The status of this channel after sthudown is indeterminate.
|
// The status of this channel after shutdown is indeterminate.
|
||||||
func (pc *PodController) Ready() <-chan struct{} {
|
func (pc *PodController) Ready() <-chan struct{} {
|
||||||
return pc.ready
|
return pc.ready
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
// Package trace abstracts virtual-kubelet's tracing capabilties into a set of
|
// Package trace abstracts virtual-kubelet's tracing capabilities into a set of
|
||||||
// interfaces.
|
// interfaces.
|
||||||
// While this does allow consumers to use whatever tracing library they want,
|
// While this does allow consumers to use whatever tracing library they want,
|
||||||
// the primary goal is to share logging data between the configured logger and
|
// the primary goal is to share logging data between the configured logger and
|
||||||
@@ -27,7 +27,7 @@ import (
|
|||||||
|
|
||||||
// Tracer is the interface used for creating a tracing span
|
// Tracer is the interface used for creating a tracing span
|
||||||
type Tracer interface {
|
type Tracer interface {
|
||||||
// StartSpan starts a new span. The span details are emebedded into the returned
|
// StartSpan starts a new span. The span details are embedded into the returned
|
||||||
// context
|
// context
|
||||||
StartSpan(context.Context, string) (context.Context, Span)
|
StartSpan(context.Context, string) (context.Context, Span)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user