summaryrefslogtreecommitdiffstats
path: root/src/k8splugin/internal
AgeCommit message (Collapse)AuthorFilesLines
2019-08-26Add a namegenerator packageKiran Kamineni2-10/+151
Adds a namegenerator package which generates readable names for instances. This will go with a small change in the API where we expect instance names and will generate the names if they are not provided. Issue-ID: MULTICLOUD-716 Change-Id: I69d8b7fb62667b8b60f3e02eb26dc937961d26d2 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-19Merge "Add query parameters support to instance API"Ritu Sood2-155/+85
2019-08-13Add query parameters support to instance APIKiran Kamineni2-155/+85
Add support for query parameters to find instances with rb-name, rb-version, profile-name as query parameters eg: curl IP:PORT/v1/instance?rb-name=test&rb-version=v1 Issue-ID: MULTICLOUD-662 Change-Id: If68c87885c8b8dd097cbb3860e8c7320310a6ef7 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-13Fix bug in tagging podTemplatesKiran Kamineni1-24/+11
Fix a bug in tagging podTemplates Using the runtime converter to convert unstructured map data to podTemplateSpec now. Issue-ID: MULTICLOUD-675 Change-Id: I661d3c63ae39b3533bb9c0a9934fc507284c7074 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-07Add custom label to track created resourcesKiran Kamineni6-34/+108
Create a custom label on created resources Also, create it on pods where pods are being created. This will help us later for filtering and querying pods and resources. Issue-ID: MULTICLOUD-675 Change-Id: I4b4fce7b67f9f27559d99dcca94a9191b96cb7c6 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-05Merge "Minor improvement to log statements"Bin Yang2-5/+2
2019-07-23Merge "Add a listallhandler to definitions api"Bin Yang1-1/+4
2019-07-23Merge "Add port to ovn central ip"Bin Yang1-1/+1
2019-07-23Merge "Add a list api for instances"Bin Yang1-0/+42
2019-07-22Add port to ovn central ipKiran Kamineni1-1/+1
Add port to the default OVN central ip field. Issue-ID: MULTICLOUD-666 Change-Id: Ib1644aafc00472769422dffd48a83ed7e53b2910 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-22Minor improvement to log statementsKiran Kamineni2-5/+2
Removing some log statements that are cluttering the output. Added a log statement to print errors during instantiation. Issue-ID: MULTICLOUD-666 Change-Id: I76ad59c9cb36b5cb999573afec18e6f1adbed4ad Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-18Add list api for profilesKiran Kamineni2-1/+137
Add a list api for profiles for a specific definition and version. GET /v1/rb/definition/name/version/profile will list all the profiles. Issue-ID: MULTICLOUD-730 Change-Id: If1b8e6910c276a0f7139ab13340721c6ec8a49e8 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-18Add a listallhandler to definitions apiKiran Kamineni1-1/+4
GET calls to the v1/rb/definition will return all definitions and their versions Issue-ID: MULTICLOUD-715 Change-Id: Ia0951ac83283830e475bf727e7d5ced7aab3add2 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-18Make profile db tags specificKiran Kamineni3-13/+13
Tags used in profile such as metadata are too generic. Instead we are using specific ones with the type prefixed. Issue-ID: MULTICLOUD-730 Change-Id: I2f189d35bc202f4a71e0a92ca5b7188ebfd1cef2 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-18Make definition tags specificKiran Kamineni4-19/+19
Tags used in db such as metadata are too generic. Instead we are using specific ones with the type prefixed. Issue-ID: MULTICLOUD-730 Change-Id: Ice76cf743f0782a3d7e76747cde1f0e0b116b14e Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-18Add a list api for instancesKiran Kamineni1-0/+42
curl -X GET /v1/instance returns all the instances created. It returns abbreviated instances for improved readability. For details on what resources were created for each instance, use the ID with GET. Issue-ID: MULTICLOUD-715 Change-Id: I05afe0fd2c254acbca4329289c81545f95c9fac5 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-16Remove kubeconfigdir. Use a tempfile insteadKiran Kamineni3-11/+12
Kubeconfigdir does not need to be a configurable parameter. We just create a local file and use that to create the config after which it is not needed. Issue-ID: MULTICLOUD-614 Change-Id: I2df561d50b620e24c5ae5266b7200210e0c11caf Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-07-16Merge "Move connectionhandler.go into api package"Bin Yang1-144/+0
2019-07-16Merge "Add getconnectivityrecordbyname function"Bin Yang1-2/+43
2019-07-11Create dir before extracting archiveKiran Kamineni3-11/+22
Some archives don't include a directory entry. Eg: tgz archives generated by helm package. This bug fix checks that a directory exists before an extracted file is created there. Issue-ID: MULTICLOUD-705 Change-Id: If6720948d470b83786901574f5d8d3227835a047 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-06-26Move connectionhandler.go into api packageKiran Kamineni1-144/+0
Move connectionhandler.go into api package This brings it inline with the other API handlers Issue-ID: MULTICLOUD-666 Change-Id: Ia3b832159f537c6d8d8ecc93b56bc9b085649f7e Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-06-26Add getconnectivityrecordbyname functionKiran Kamineni1-2/+43
Plugins need this connectivity information Adding code to retrieve it Issue-ID: MULTICLOUD-688 Change-Id: I5fa1b69cdad754a432316edc4188c19b7fe10f84 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-06-24Change the import paths for go get accessKiran Kamineni17-34/+34
This allows other projects to do a go get and use this repo. go get github.com/multicloud-k8s/src/k8splugin will do the job. import github.com/multicloud-k8s/src/k8splugin will import the root package Issue-ID: MULTICLOUD-666 Change-Id: I2f41c88c5a7fb3305b78cce8a83a0e102baa444c Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-06-06Plugin code refactoringKiran Kamineni3-148/+127
The plugin code has been refactored to implement a common interface. This will allow us to do plugin validation at loadtime of the plugin instead of at runtime. This also makes the code calling the plugins cleaner and easier to read. Issue-ID: MULTICLOUD-557 Change-Id: Ice2bcc9b850d7c0e1707dcc42132c63dd77472a7 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-23Update broker responses to match spec and SOKiran Kamineni3-27/+63
The broker responses need to match the spec and what SO expects as responses. CREATE_COMPLETE instead of CREATED in both POST and GET DELETE now returns a response body GET by name is now supported Name is an alias for vf_module_id which is expected to be provided as an attribute in sdnc_directives in the original POST request Issue-ID: MULTICLOUD-645 Change-Id: Ifeca755a07298d0a858cbe9e80f9ce654d6d21b8 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-22Minor change to instance responseKiran Kamineni3-96/+117
Minor change to instance response. Now it includes the full request parameters in the response. Issue-ID: MULTICLOUD-649 Change-Id: Ia4a7e479f842dd580bcfb13aa91dc0b0a456cf25 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-20Print error message for etcd connection failureKiran Kamineni1-1/+1
Error message during client creation needs to be printed. Issue-ID: MULTICLOUD-637 Change-Id: Ic3929ae774235133673032e35a2388d2e0b98d36 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-15Move config to app and connect to instanceKiran Kamineni3-12/+50
Move config instantiation to app and connect it to the instance to allow updates and so on. Issue-ID: MULTICLOUD-464 Change-Id: Ic994ef78a6e0d2db5e695e33b7b8a302c74c10da Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-15Add find method in instanceKiran Kamineni2-0/+433
Add a find method to get instances based on rbname, version and profile. If only rbname is provided, all instances based on that resource bundle are returned. If only rbname and version are provided, all instances based on that combination are returned. When all three parameters are provided, a single instance that matches them is returned. Issue-ID: MULTICLOUD-613 Change-Id: If63e844c77829211b807ce6cd7c11dad247751fc Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-06Make service port configurable0.1.0Kiran Kamineni1-0/+2
Service port should be configurable. This patch removes the hardcoded value. The default value is 9015 Issue-ID: MULTICLOUD-609 Change-Id: Iae05f42bd06ecd061ec68a3a7c4a4a87f33b22fa Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-02Create kubeconfig files in kubeconfig dirKiran Kamineni6-21/+150
The connectivity api should allow the creation of kubeconfig files in the kubeconfig dir. Issue-ID: MULTICLOUD-292 Change-Id: I5ecc92622648c6c90b71ffad433a132e191cf4b3 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-05-01Merge cloudregionid and connectionnameKiran Kamineni2-15/+8
Merge cloudregionid and connectionname to form cloudregion Issue-ID: MULTICLOUD-292 Change-Id: If775ec5841636de37e1c10bc6d093c16a36c28dc Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-26Merge "Use the unstructured type for decode"Bin Yang1-1/+1
2019-04-25Adding healthcheck for OOM testingKiran Kamineni1-0/+4
Add a heathcheck endpoint for OOM testing Issue-ID: ONAPARC-363 Change-Id: Id5f77478d331fedb19ac162389d95852e10c5022 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-25Use the unstructured type for decodeKiran Kamineni1-1/+1
Use the unstructured type in the into field. This allows us to remove the convert part of the code and also allows decoding for CRDs. Issue-ID: MULTICLOUD-585 Change-Id: I27ecdba7127ce63137dfbcd1c0a6938343b4e759 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-19Move configuration into config filesKiran Kamineni8-43/+192
Move k8splugin configuration into config files instead of using environment variables. Issue-ID: MULTICLOUD-579 Change-Id: I7b76d5a14d24f002a8db484097a31fb5e908b6f8 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-16Replace Kind with GroupVersionKindKiran Kamineni9-221/+384
Kind is not unique to track resources in Kubernetes GroupVersionKind is unique. We are just using that to track our data. It is abstracted behind a couple of new types for templates and resources. This change makes a lot of the old kind based operations redundant and simplified. Issue-ID: MULTICLOUD-573 Change-Id: I8f4ded2ba6a0821a8fbd679dc99ce3a44d805524 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-16Rename plugin reference interfaceKiran Kamineni1-7/+8
Rename the plugin interface to something more relevant. KubernetesResource will be used to describe resources for creation. Issue-ID: MULTICLOUD-557 Change-Id: I2fff5363b897b968e95b26257d8f26509fb567fd Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-12Merge "Add Connectivity Info API"Bin Yang2-0/+247
2019-04-12Merge "Day 2 Configuration API's"Bin Yang7-0/+1578
2019-04-11Add Connectivity Info APIrsood2-0/+247
API to add connectivity information for Cloud Regions to K8s Plugin https://wiki.onap.org/display/DW/MultiCloud+K8s-Plugin-service+API%27s Change-Id: I0a9166df9b076a7fdacf0b2f9e51a9cdebe4b621 Signed-off-by: rsood <ritu.sood@intel.com> Issue-ID: MULTICLOUD-292 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-11Merge "Add option to start https listener"Bin Yang2-0/+154
2019-04-10Add option to start https listenerKiran Kamineni2-0/+154
Added support for tls connection for k8splugin. It will load the certificates from its current folder. Any installer needs to just put these files in the same folder as the executable and it will pick them up and start in https mode. Issue-ID: MULTICLOUD-570 Change-Id: I505135daa3933b76023c941e7bee54be65fa791f Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-11Day 2 Configuration API'srsood7-0/+1578
This patch adds Configuration API's https://wiki.onap.org/display/DW/MultiCloud+K8s-Plugin-service+API%27s Change-Id: I52ebfc5aa980ec8af4a31569d569216e9a2a760c Issue-ID: MULTICLOUD-464 Signed-off-by: rsood <ritu.sood@intel.com>
2019-04-10Add support for generic pluginKiran Kamineni1-4/+128
Add support for generic kinds We are currently using a known map to find the group version resource for a kind. Issue-ID: MULTICLOUD-350 Change-Id: I5a64f73760b73cf92b9a3fab8c22ad54e0a5f84f Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-10Export kubernetesClientKiran Kamineni3-12/+12
Export kubernetesClient. There are situations where this will need to be accessed in the plugins and we need the definition to be exported for that. Issue-ID: MULTICLOUD-350 Change-Id: I9eee03ea77e390effd33ed96cbbc25dc4cd09cdd Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-04Use consistent naming for Name and VersionKiran Kamineni4-38/+39
Definition Name and Definition Version are now using the consistent naming similar to the Profile and instance structure. Name becomes RBName Version becomes RBVersion Issue-ID: MULTICLOUD-350 Change-Id: Ifc329d4979a06cb017c6f9d916c227c696b664e0 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-03Refactor instance codeKiran Kamineni5-288/+613
Issue-ID: MULTICLOUD-350 Change-Id: I2574d94e4ebada1e138913b2a03549dd90906d7b Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-04-02Merge "Make profile key explicit"Victor Morales4-37/+37
2019-04-01Remove build tagsKiran Kamineni11-22/+0
Remove build tags as this is causing issues where mock plugins need to be loaded into files that do unit testing as well. Full integration testing is being done in the CSIT. Issue-ID: MULTICLOUD-559 Change-Id: Icd147dac80d16a6fb8f33048c76d4083158cecd2 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>