summaryrefslogtreecommitdiffstats
path: root/src/k8splugin/krd
diff options
context:
space:
mode:
authorVictor Morales <victor.morales@intel.com>2019-01-24 17:46:43 -0800
committerVictor Morales <victor.morales@intel.com>2019-01-25 16:52:38 -0800
commit083465d10c8fdeaffa89aa7daa93def3eca77df1 (patch)
tree23135a724a1628e986f9c6748b82f275763cdf10 /src/k8splugin/krd
parent5c4e91705457dc4bdb5526e6f5210fa879ab659d (diff)
Use a standard Go project layout
This project wasn't following some Standard Go Project Layout guidelines(https://github.com/golang-standards/project-layout). This change pretends to organize the source code and following those guidelines. Change-Id: I61085ac20f28069cede013f83034bed06892d87c Signed-off-by: Victor Morales <victor.morales@intel.com> Issue-ID: MULTICLOUD-301
Diffstat (limited to 'src/k8splugin/krd')
-rw-r--r--src/k8splugin/krd/krd.go44
-rw-r--r--src/k8splugin/krd/krd_test.go36
-rw-r--r--src/k8splugin/krd/plugins.go63
-rw-r--r--src/k8splugin/krd/plugins_test.go95
4 files changed, 0 insertions, 238 deletions
diff --git a/src/k8splugin/krd/krd.go b/src/k8splugin/krd/krd.go
deleted file mode 100644
index 2d06e104..00000000
--- a/src/k8splugin/krd/krd.go
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-Copyright 2018 Intel Corporation.
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package krd
-
-import (
- "errors"
-
- pkgerrors "github.com/pkg/errors"
-
- "k8s.io/client-go/kubernetes"
- "k8s.io/client-go/tools/clientcmd"
-)
-
-// GetKubeClient loads the Kubernetes configuation values stored into the local configuration file
-var GetKubeClient = func(configPath string) (kubernetes.Clientset, error) {
- var clientset *kubernetes.Clientset
-
- if configPath == "" {
- return *clientset, errors.New("config not passed and is not found in ~/.kube. ")
- }
-
- config, err := clientcmd.BuildConfigFromFlags("", configPath)
- if err != nil {
- return kubernetes.Clientset{}, pkgerrors.Wrap(err, "setConfig: Build config from flags raised an error")
- }
-
- clientset, err = kubernetes.NewForConfig(config)
- if err != nil {
- return *clientset, err
- }
-
- return *clientset, nil
-}
diff --git a/src/k8splugin/krd/krd_test.go b/src/k8splugin/krd/krd_test.go
deleted file mode 100644
index ad52f7e4..00000000
--- a/src/k8splugin/krd/krd_test.go
+++ /dev/null
@@ -1,36 +0,0 @@
-// +build unit
-
-/*
-Copyright 2018 Intel Corporation.
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package krd
-
-import (
- "reflect"
- "testing"
-)
-
-func TestGetKubeClient(t *testing.T) {
- t.Run("Successfully create Kube Client", func(t *testing.T) {
-
- clientset, err := GetKubeClient("../mock_files/mock_configs/mock_config")
- if err != nil {
- t.Fatalf("TestGetKubeClient returned an error (%s)", err)
- }
-
- if reflect.TypeOf(clientset).Name() != "Clientset" {
- t.Fatalf("TestGetKubeClient returned :\n result=%v\n expected=%v", clientset, "Clientset")
- }
-
- })
-}
diff --git a/src/k8splugin/krd/plugins.go b/src/k8splugin/krd/plugins.go
deleted file mode 100644
index 1086a2bb..00000000
--- a/src/k8splugin/krd/plugins.go
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
-Copyright 2018 Intel Corporation.
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package krd
-
-import (
- "io/ioutil"
- "log"
- "os"
- "plugin"
-
- pkgerrors "github.com/pkg/errors"
- "k8s.io/apimachinery/pkg/runtime"
- "k8s.io/client-go/kubernetes/scheme"
-)
-
-// LoadedPlugins stores references to the stored plugins
-var LoadedPlugins = map[string]*plugin.Plugin{}
-
-const ResourcesListLimit = 10
-
-// ResourceData stores all supported Kubernetes plugin types
-type ResourceData struct {
- YamlFilePath string
- Namespace string
- VnfId string
-}
-
-// DecodeYAML reads a YAMl file to extract the Kubernetes object definition
-var DecodeYAML = func(path string, into runtime.Object) (runtime.Object, error) {
- if _, err := os.Stat(path); err != nil {
- if os.IsNotExist(err) {
- return nil, pkgerrors.New("File " + path + " not found")
- } else {
- return nil, pkgerrors.Wrap(err, "Stat file error")
- }
- }
-
- log.Println("Reading YAML file")
- rawBytes, err := ioutil.ReadFile(path)
- if err != nil {
- return nil, pkgerrors.Wrap(err, "Read YAML file error")
- }
-
- log.Println("Decoding deployment YAML")
- decode := scheme.Codecs.UniversalDeserializer().Decode
- obj, _, err := decode(rawBytes, nil, into)
- if err != nil {
- return nil, pkgerrors.Wrap(err, "Deserialize YAML error")
- }
-
- return obj, nil
-}
diff --git a/src/k8splugin/krd/plugins_test.go b/src/k8splugin/krd/plugins_test.go
deleted file mode 100644
index 46499adb..00000000
--- a/src/k8splugin/krd/plugins_test.go
+++ /dev/null
@@ -1,95 +0,0 @@
-// +build unit
-
-/*
-Copyright 2018 Intel Corporation.
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package krd
-
-import (
- "strings"
- "testing"
-
- appsV1 "k8s.io/api/apps/v1"
- coreV1 "k8s.io/api/core/v1"
- metaV1 "k8s.io/apimachinery/pkg/apis/meta/v1"
- "k8s.io/apimachinery/pkg/runtime"
-)
-
-func TestDecodeYAML(t *testing.T) {
- testCases := []struct {
- label string
- input string
- expectedResult runtime.Object
- expectedError string
- }{
- {
- label: "Fail to read non-existing YAML file",
- input: "unexisting-file.yaml",
- expectedError: "not found",
- },
- {
- label: "Fail to read invalid YAML format",
- input: "./plugins_test.go",
- expectedError: "mapping values are not allowed in this contex",
- },
- {
- label: "Successfully read YAML file",
- input: "../mock_files/mock_yamls/deployment.yaml",
- expectedResult: &appsV1.Deployment{
- ObjectMeta: metaV1.ObjectMeta{
- Name: "mock-deployment",
- },
- Spec: appsV1.DeploymentSpec{
- Template: coreV1.PodTemplateSpec{
- ObjectMeta: metaV1.ObjectMeta{
- Labels: map[string]string{"app": "sise"},
- },
- Spec: coreV1.PodSpec{
- Containers: []coreV1.Container{
- coreV1.Container{
- Name: "sise",
- Image: "mhausenblas/simpleservice:0.5.0",
- },
- },
- },
- },
- },
- },
- },
- }
-
- for _, testCase := range testCases {
- t.Run(testCase.label, func(t *testing.T) {
- result, err := DecodeYAML(testCase.input, nil)
- if err != nil {
- if testCase.expectedError == "" {
- t.Fatalf("Decode YAML method return an un-expected (%s)", err)
- }
- if !strings.Contains(string(err.Error()), testCase.expectedError) {
- t.Fatalf("Decode YAML method returned an error (%s)", err)
- }
- } else {
- if testCase.expectedError != "" && testCase.expectedResult == nil {
- t.Fatalf("Decode YAML method was expecting \"%s\" error message", testCase.expectedError)
- }
- if result == nil {
- t.Fatal("Decode YAML method returned nil result")
- }
- // if !reflect.DeepEqual(testCase.expectedResult, result) {
-
- // t.Fatalf("Decode YAML method returned: \n%v\n and it was expected: \n%v", result, testCase.expectedResult)
- // }
- }
- })
- }
-}