added config file fallback
This commit is contained in:
parent
caff230188
commit
bcd05ebf4e
@ -3,6 +3,8 @@ package kubernetes
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"io"
|
"io"
|
||||||
|
"os"
|
||||||
|
"path/filepath"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@ -18,6 +20,7 @@ import (
|
|||||||
kubernetesclient "k8s.io/client-go/kubernetes"
|
kubernetesclient "k8s.io/client-go/kubernetes"
|
||||||
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
|
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
|
||||||
"k8s.io/client-go/rest"
|
"k8s.io/client-go/rest"
|
||||||
|
"k8s.io/client-go/tools/clientcmd"
|
||||||
"k8s.io/client-go/tools/remotecommand"
|
"k8s.io/client-go/tools/remotecommand"
|
||||||
"sigs.k8s.io/controller-runtime/pkg/client"
|
"sigs.k8s.io/controller-runtime/pkg/client"
|
||||||
)
|
)
|
||||||
@ -52,6 +55,9 @@ func convertServerManagerImage(image *servermanagerv1.Image) *instancemanager.Im
|
|||||||
// General
|
// General
|
||||||
// Read Only
|
// Read Only
|
||||||
func (i *InstanceManager) GetImage(ctx context.Context, imageId string) (*instancemanager.Image, error) {
|
func (i *InstanceManager) GetImage(ctx context.Context, imageId string) (*instancemanager.Image, error) {
|
||||||
|
if imageId == "" {
|
||||||
|
return &instancemanager.Image{}, nil
|
||||||
|
}
|
||||||
image := &servermanagerv1.Image{}
|
image := &servermanagerv1.Image{}
|
||||||
err := i.client.Get(ctx, client.ObjectKey{Name: imageId, Namespace: i.Config.Namespace}, image)
|
err := i.client.Get(ctx, client.ObjectKey{Name: imageId, Namespace: i.Config.Namespace}, image)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -337,12 +343,15 @@ func (i *InstanceManager) StopFileBrowser(ctx context.Context, serverId string)
|
|||||||
|
|
||||||
func NewInstanceManager(config models.KubernetesInstanceManagerConfig) (*InstanceManager, error) {
|
func NewInstanceManager(config models.KubernetesInstanceManagerConfig) (*InstanceManager, error) {
|
||||||
c, err := rest.InClusterConfig()
|
c, err := rest.InClusterConfig()
|
||||||
|
if err != nil {
|
||||||
|
kubeconfig := filepath.Join(os.Getenv("HOME"), ".kube", "config")
|
||||||
|
c, err = clientcmd.BuildConfigFromFlags("", kubeconfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
scheme := runtime.NewScheme()
|
scheme := runtime.NewScheme()
|
||||||
|
|
||||||
clientgoscheme.AddToScheme(scheme)
|
clientgoscheme.AddToScheme(scheme)
|
||||||
servermanagerv1.AddToScheme(scheme)
|
servermanagerv1.AddToScheme(scheme)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user