api

package
v0.0.0-...-d82845d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2018 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var GetVNFClient = func(kubeConfigPath string) (kubernetes.Clientset, error) {
	client, err := krd.GetKubeClient(kubeConfigPath)
	if err != nil {
		return client, err
	}
	return client, nil
}

GetVNFClient retrieve the client used to communicate with a Kubernetes Cluster

Functions

func CheckDatabaseConnection

func CheckDatabaseConnection() error

CheckDatabaseConnection checks if the database is up and running and plugin can talk to it

func CheckEnvVariables

func CheckEnvVariables() error

CheckEnvVariables checks for required Environment variables

func CheckInitialSettings

func CheckInitialSettings() error

CheckInitialSettings is used to check initial settings required to start api

func CreateHandler

func CreateHandler(w http.ResponseWriter, r *http.Request)

CreateHandler is the POST method creates a new VNF instance resource.

func DeleteHandler

func DeleteHandler(w http.ResponseWriter, r *http.Request)

DeleteHandler method terminates an individual VNF instance.

func GetHandler

func GetHandler(w http.ResponseWriter, r *http.Request)

GetHandler retrieves information about a VNF instance by reading an individual VNF instance resource.

func ListHandler

func ListHandler(w http.ResponseWriter, r *http.Request)

ListHandler the existing VNF instances created in a given Kubernetes cluster

func LoadPlugins

func LoadPlugins() error

LoadPlugins loads all the compiled .so plugins

func NewRouter

func NewRouter(kubeconfig string) (s *mux.Router)

NewRouter creates a router instance that serves the VNFInstance web methods

Types

type CreateVnfRequest

type CreateVnfRequest struct {
	CloudRegionID string                   `json:"cloud_region_id"`
	CsarID        string                   `json:"csar_id"`
	OOFParams     []map[string]interface{} `json:"oof_parameters"`
	NetworkParams NetworkParameters        `json:"network_parameters"`
	Namespace     string                   `json:"namespace"`
	Name          string                   `json:"vnf_instance_name"`
	Description   string                   `json:"vnf_instance_description"`
}

CreateVnfRequest contains the VNF creation request parameters

type CreateVnfResponse

type CreateVnfResponse struct {
	VNFID         string              `json:"vnf_id"`
	CloudRegionID string              `json:"cloud_region_id"`
	Namespace     string              `json:"namespace"`
	VNFComponents map[string][]string `json:"vnf_components"`
}

CreateVnfResponse contains the VNF creation response parameters

type GeneralResponse

type GeneralResponse struct {
	Response string `json:"response"`
}

GeneralResponse is a generic response

type GetVnfResponse

type GetVnfResponse struct {
	VNFID         string              `json:"vnf_id"`
	CloudRegionID string              `json:"cloud_region_id"`
	Namespace     string              `json:"namespace"`
	VNFComponents map[string][]string `json:"vnf_components"`
}

GetVnfResponse returns information about a specific VNF instance

type ListVnfsResponse

type ListVnfsResponse struct {
	VNFs []string `json:"vnf_id_list"`
}

ListVnfsResponse contains the list of VNFs response parameters

type NetworkParameters

type NetworkParameters struct {
	OAMI OAMIPParams `json:"oam_ip_address"`
}

NetworkParameters contains the networking info required by the VNF instance

type OAMIPParams

type OAMIPParams struct {
	ConnectionPoint string `json:"connection_point"`
	IPAddress       string `json:"ip_address"`
	WorkLoadName    string `json:"workload_name"`
}

OAMIPParams contains the management networking info required by the VNF instance

type UpdateVnfRequest

type UpdateVnfRequest struct {
	CloudRegionID string                   `json:"cloud_region_id"`
	CsarID        string                   `json:"csar_id"`
	OOFParams     []map[string]interface{} `json:"oof_parameters"`
	NetworkParams NetworkParameters        `json:"network_parameters"`
	Namespace     string                   `json:"namespace"`
	Name          string                   `json:"vnf_instance_name"`
	Description   string                   `json:"vnf_instance_description"`
}

UpdateVnfRequest contains the VNF creation parameters

type UpdateVnfResponse

type UpdateVnfResponse struct {
	DeploymentID string `json:"vnf_id"`
	Name         string `json:"name"`
}

UpdateVnfResponse contains the VNF update response parameters

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL