RIC-208 - KA Decision: ask K8S to restart E2T instance - comment code of kubernetes
[ric-plt/e2mgr.git] / E2Manager / managers / kubernetes_manager.go
1 //
2 // Copyright 2019 AT&T Intellectual Property
3 // Copyright 2019 Nokia
4 //
5 // Licensed under the Apache License, Version 2.0 (the "License");
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //      http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 //  This source code is part of the near-RT RIC (RAN Intelligent Controller)
19 //  platform project (RICP).
20
21 package managers
22
23 import (
24         "e2mgr/configuration"
25         "e2mgr/logger"
26         "k8s.io/client-go/kubernetes"
27 )
28
29 type KubernetesManager struct {
30         Logger    *logger.Logger
31         ClientSet kubernetes.Interface
32         Config    *configuration.Configuration
33 }
34
35 func NewKubernetesManager(logger *logger.Logger, config *configuration.Configuration) *KubernetesManager {
36         return &KubernetesManager{
37                 Logger:    logger,
38                 //ClientSet: createClientSet(logger, config),
39                 Config:    config,
40         }
41 }
42
43 /*func createClientSet(logger *logger.Logger, config *configuration.Configuration) kubernetes.Interface {
44
45         absConfigPath,err := filepath.Abs(config.Kubernetes.ConfigPath)
46         if err != nil {
47                 logger.Errorf("#KubernetesManager.init - error: %s", err)
48                 return nil
49         }
50
51         kubernetesConfig, err := clientcmd.BuildConfigFromFlags("", absConfigPath)
52         if err != nil {
53                 logger.Errorf("#KubernetesManager.init - error: %s", err)
54                 return nil
55         }
56
57         clientSet, err := kubernetes.NewForConfig(kubernetesConfig)
58         if err != nil {
59                 logger.Errorf("#KubernetesManager.init - error: %s", err)
60                 return nil
61         }
62         return clientSet
63 }*/
64
65 /*func (km KubernetesManager) DeletePod(podName string) error {
66         km.Logger.Infof("#KubernetesManager.DeletePod - POD name: %s ", podName)
67
68         if km.ClientSet == nil {
69                 km.Logger.Errorf("#KubernetesManager.DeletePod - no kubernetesManager connection")
70                 return e2managererrors.NewInternalError()
71         }
72
73         if len(podName) == 0 {
74                 km.Logger.Warnf("#KubernetesManager.DeletePod - empty pod name")
75                 return e2managererrors.NewInternalError()
76         }
77
78         err := km.ClientSet.CoreV1().Pods(km.Config.Kubernetes.KubeNamespace).Delete(podName, &metaV1.DeleteOptions{})
79
80         if err != nil {
81                 km.Logger.Errorf("#KubernetesManager.DeletePod - POD %s can't be deleted, error: %s", podName, err)
82                 return err
83         }
84
85         km.Logger.Infof("#KubernetesManager.DeletePod - POD %s was deleted", podName)
86         return nil
87 }*/