mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-19 16:49:35 +00:00
Inject dependencies to rkt
This commit is contained in:
parent
1b7749b8d9
commit
5d0e5d7d61
@ -18,11 +18,10 @@ package rkt
|
||||
|
||||
// ImageManager manages and garbage collects the container images for rkt.
|
||||
type ImageManager struct {
|
||||
runtime *runtime
|
||||
}
|
||||
|
||||
func NewImageManager(r *runtime) *ImageManager {
|
||||
return &ImageManager{runtime: r}
|
||||
func NewImageManager() *ImageManager {
|
||||
return &ImageManager{}
|
||||
}
|
||||
|
||||
// GarbageCollect collects the images. It is not implemented by rkt yet.
|
||||
|
@ -34,6 +34,7 @@ import (
|
||||
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/api"
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/capabilities"
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/client/record"
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/credentialprovider"
|
||||
kubecontainer "github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/container"
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/prober"
|
||||
@ -104,7 +105,11 @@ var _ kubecontainer.Runtime = &runtime{}
|
||||
// New creates the rkt container runtime which implements the container runtime interface.
|
||||
// It will test if the rkt binary is in the $PATH, and whether we can get the
|
||||
// version of it. If so, creates the rkt container runtime, otherwise returns an error.
|
||||
func New(config *Config) (kubecontainer.Runtime, error) {
|
||||
func New(config *Config,
|
||||
generator kubecontainer.RunContainerOptionsGenerator,
|
||||
recorder record.EventRecorder,
|
||||
containerRefManager *kubecontainer.RefManager,
|
||||
readinessManager *kubecontainer.ReadinessManager) (kubecontainer.Runtime, error) {
|
||||
systemdVersion, err := getSystemdVersion()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -129,11 +134,14 @@ func New(config *Config) (kubecontainer.Runtime, error) {
|
||||
}
|
||||
|
||||
rkt := &runtime{
|
||||
systemd: systemd,
|
||||
rktBinAbsPath: rktBinAbsPath,
|
||||
config: config,
|
||||
dockerKeyring: credentialprovider.NewDockerKeyring(),
|
||||
generator: generator,
|
||||
readinessManager: readinessManager,
|
||||
systemd: systemd,
|
||||
rktBinAbsPath: rktBinAbsPath,
|
||||
config: config,
|
||||
dockerKeyring: credentialprovider.NewDockerKeyring(),
|
||||
}
|
||||
rkt.prober = prober.New(rkt, readinessManager, containerRefManager, recorder)
|
||||
|
||||
// Test the rkt version.
|
||||
version, err := rkt.Version()
|
||||
|
@ -23,6 +23,7 @@ import (
|
||||
"io"
|
||||
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/api"
|
||||
"github.com/GoogleCloudPlatform/kubernetes/pkg/client/record"
|
||||
kubecontainer "github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/container"
|
||||
)
|
||||
|
||||
@ -32,6 +33,14 @@ type unsupportedRuntime struct {
|
||||
|
||||
var _ kubecontainer.Runtime = &unsupportedRuntime{}
|
||||
|
||||
func New(config *Config,
|
||||
generator kubecontainer.RunContainerOptionsGenerator,
|
||||
recorder record.EventRecorder,
|
||||
containerRefManager *kubecontainer.RefManager,
|
||||
readinessManager *kubecontainer.ReadinessManager) (kubecontainer.Runtime, error) {
|
||||
return nil, unsupportedError
|
||||
}
|
||||
|
||||
var unsupportedError = fmt.Errorf("rkt runtime is unsupported in this platform")
|
||||
|
||||
func (ur *unsupportedRuntime) Version() (kubecontainer.Version, error) {
|
||||
|
Loading…
Reference in New Issue
Block a user