Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Merge cloudregionid and connectionname to form cloudregion
Issue-ID: MULTICLOUD-292
Change-Id: If775ec5841636de37e1c10bc6d093c16a36c28dc
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
|
|
Add a heathcheck endpoint for OOM testing
Issue-ID: ONAPARC-363
Change-Id: Id5f77478d331fedb19ac162389d95852e10c5022
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Issue-ID: MULTICLOUD-350
Change-Id: I2574d94e4ebada1e138913b2a03549dd90906d7b
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
|
|
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>
|
|
Using profilename instead of name in the db key
protects it from getting overwritten by anything
else that might use name as a key.
Using explicit key names makes sure that we don't
have to add bson structure tags in the code.
Issue-ID: MULTICLOUD-558
Change-Id: I9bd6f757496af22d8662b0d114f0ef7d33a5784a
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
The TestUpdate method was updated properly with the
merge on to master. This fixes that issue.
Issue-ID: MULTICLOUD-553
Change-Id: I97c95b628fade37304590de59bb4bb6faaeb4450
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
|
|
Add update interface to the db.
This will allow us to support PUT http methods
in the future.
Issue-ID: MULTICLOUD-553
Change-Id: I7263d42e893734eadbdaf78022005d6004601772
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
Bringing all the definition and profile code upto the latest spec.
Integrated the end to end instance code changes that were made.
P9: Added updated plugin.sh with updated uri paths based on spec
Issue-ID: MULTICLOUD-291
Change-Id: Id6e3c6bc2cd02cfb7005e203ccf03e0793b97e95
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
|
|
Namespace is being created by k8splugin
if it doesn't exist. This is done before
other resources are created in kubernetes.
This patch removes check that failed if
namespace didn't exist
Change-Id: I8c5b2409ad1cf77d5f529f601870fcf87e8e8760
Signed-off-by: Ritu Sood <ritu.sood@intel.com>
Issue-ID: MULTICLOUD-462
|
|
Composite keys help us store objects which are unique
for a given set of pre-existing objects.
Eg: Many profiles can exist for a definition and its
key will have a definition name as a part of the composite key.
P2: Use a predefined interface for keys instead of generic interfaceP{}
P3: Add check for empty strings in stringer interface
P5: Add appropriate keys in other packages.
Issue-ID: MULTICLOUD-531
Change-Id: I314b1fbd718489ae8a45f0f38915c08ca32f9f43
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
Bring in all the helper functions added for end to end
integration. This allows the api level upload of helm charts,
profiles and also instantiation of said helm charts.
P3: Plugin index is based on lowercase kind name
whereas the map contains the correct case for kind.
Convert to lower case before loading the plugin.
Changes after rebasing on the new folder structure.
Rebasing over the new folder structure
P8: Add unit tests for Resolve function
Fix the integration tests for createvnf
I had to add a huge blob of base64 encoded data
based on the profile and sample helm chart to test
the flow.
P12: Update the integration test with the rb_profile_id parameter
Issue-ID: MULTICLOUD-291
Change-Id: If04c41cb185074989ab6c96557958140c43e456d
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
Mongo driver 1.0 was released recently
Upgrading from 0.2.0 which we were on right now.
Issue-ID: MULTICLOUD-530
Change-Id: I6d968e99b129d4307414ec31410505200b7bd47d
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
Add support for evaluating helm templates
The interface provides a way to get a map which
contains a mapping from kubernetes kind to the
corresponding yaml file that defines a resource
of that kind. This map is then provided to the
instantiation code at instantiation time to create
in the kubernetes cluster.
P5: Use filepath.join instead of strings.join
P9: rebase with new folder structure
P10: moved the helm code into its own package.
P12: Add unit tests
update the go.mod to use latest docker version
Issue-ID: MULTICLOUD-291
Change-Id: Ie75f5c616cc0cdc3e0ace49ff2c2f6c356a4c0d1
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
|
|
Add code to parse profile configuration yaml
The parsing function is global and returns a client
which can then be used to get or apply specific parts
of the configuration on top of an extracted helm chart.
P14: Add unit test that covers both ProcessProfileYaml
and CopyConfigurationOverrides
P15: Adding mock_charts and mock_profiles
We expect to reuse these files for other unit tests
Issue-ID: ONAPARC-348
Change-Id: I4504d0b158fdfef476b8c2a461d33306926545d7
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
ChartName should not be mandatory field
If not provided it will be detected by inspection
of the tar.gz archive.
Issue-ID: MULTICLOUD-525
Change-Id: Idaf9672f2cbbb882d78b1987467472ce73c651da
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
Add support for downloading content for creating
the merged helm charts. This api will be used mainly
by the profile api to create a converged chart which
will then be created by the instantiation code
P2: Add unit tests for archive.go
Add download method for profile.go
Update comments for download method
P3: Add unit test for empty files
P4: Add unit tests for Download functions
P5: Rebase against new folder structure
Issue-ID: MULTICLOUD-291
Change-Id: I9779eaf95366f527f0360eaddea663722c13b196
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
|
|
CheckEnvVariables, CheckDatabaseConnection, LoadPlugins and
CheckInitialSettings functions are utility functions which are not
related with the API. These functions need to be moved to utils.go
file.
Change-Id: Ie6dfbafe8909962fba31534916a7e0f07ded116b
Signed-off-by: Victor Morales <victor.morales@intel.com>
Issue-ID: MULTICLOUD-301
|
|
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
|