diff options
author | Ritu Sood <Ritu.Sood@intel.com> | 2019-09-05 17:18:00 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2019-09-05 17:18:00 +0000 |
commit | 77ce224e1b3736f0c0b398b5a5b57ea58ebbaa55 (patch) | |
tree | 2d6fd63387b78c9bdeac0865f54d6f9a99e1876e /src/k8splugin/plugins/network/plugin.go | |
parent | ffa9e22fe906c805928d952bb6e60d5ece86f77d (diff) | |
parent | b5431ed7c0f4659269143daedb1651ef9a303a89 (diff) |
Merge "Remove ovn4nfvk8s network plugin"
Diffstat (limited to 'src/k8splugin/plugins/network/plugin.go')
-rw-r--r-- | src/k8splugin/plugins/network/plugin.go | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/src/k8splugin/plugins/network/plugin.go b/src/k8splugin/plugins/network/plugin.go deleted file mode 100644 index aa0d584b..00000000 --- a/src/k8splugin/plugins/network/plugin.go +++ /dev/null @@ -1,111 +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 main - -import ( - "regexp" - - v1 "github.com/onap/multicloud-k8s/src/k8splugin/plugins/network/v1" - - utils "github.com/onap/multicloud-k8s/src/k8splugin/internal" - "github.com/onap/multicloud-k8s/src/k8splugin/internal/helm" - "github.com/onap/multicloud-k8s/src/k8splugin/internal/plugin" - - pkgerrors "github.com/pkg/errors" - "k8s.io/apimachinery/pkg/runtime/schema" -) - -// Compile time check to see if networkPlugin implements the correct interface -var _ plugin.Reference = networkPlugin{} - -// ExportedVariable is what we will look for when calling the plugin -var ExportedVariable networkPlugin - -type networkPlugin struct { -} - -func extractData(data string) (cniType, networkName string, err error) { - re := regexp.MustCompile("_") - split := re.Split(data, -1) - if len(split) != 2 { - err = pkgerrors.New("Couldn't split resource '" + data + - "' into CNI type and Network name") - return - } - cniType = split[0] - networkName = split[1] - return -} - -// Create an ONAP Network object -func (p networkPlugin) Create(yamlFilePath string, namespace string, client plugin.KubernetesConnector) (string, error) { - network := &v1.OnapNetwork{} - if _, err := utils.DecodeYAML(yamlFilePath, network); err != nil { - return "", pkgerrors.Wrap(err, "Decode network object error") - } - - cniType := network.Spec.CniType - typePlugin, ok := utils.LoadedPlugins[cniType+"-network"] - if !ok { - return "", pkgerrors.New("No plugin for resource " + cniType + " found") - } - - symCreateNetworkFunc, err := typePlugin.Lookup("CreateNetwork") - if err != nil { - return "", pkgerrors.Wrap(err, "Error fetching "+cniType+" plugin") - } - - name, err := symCreateNetworkFunc.(func(*v1.OnapNetwork) (string, error))(network) - if err != nil { - return "", pkgerrors.Wrap(err, "Error during the creation for "+cniType+" plugin") - } - - return cniType + "_" + name, nil -} - -// Get a Network -func (p networkPlugin) Get(resource helm.KubernetesResource, namespace string, client plugin.KubernetesConnector) (string, error) { - return "", nil -} - -// List of Networks -func (p networkPlugin) List(gvk schema.GroupVersionKind, namespace string, - client plugin.KubernetesConnector) ([]helm.KubernetesResource, error) { - - return nil, nil -} - -// Delete an existing Network -func (p networkPlugin) Delete(resource helm.KubernetesResource, namespace string, client plugin.KubernetesConnector) error { - cniType, networkName, err := extractData(resource.Name) - if err != nil { - return pkgerrors.Wrap(err, "Error extracting CNI type from resource") - } - - typePlugin, ok := utils.LoadedPlugins[cniType+"-network"] - if !ok { - return pkgerrors.New("No plugin for resource " + cniType + " found") - } - - symDeleteNetworkFunc, err := typePlugin.Lookup("DeleteNetwork") - if err != nil { - return pkgerrors.Wrap(err, "Error fetching "+cniType+" plugin") - } - - if err := symDeleteNetworkFunc.(func(string) error)(networkName); err != nil { - return pkgerrors.Wrap(err, "Error during the deletion for "+cniType+" plugin") - } - - return nil -} |