aboutsummaryrefslogtreecommitdiffstats
path: root/src/k8splugin
AgeCommit message (Collapse)AuthorFilesLines
2020-11-18Improve early-detection of empty templateKonrad Bańka7-13/+104
Previous empty template detection pattern matched only against templates resolved to empty-or-whitespace-only files. This change makes it handle other case of empty yaml correctly, namely, yaml containing comments only. Issue-ID: MULTICLOUD-1252 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I9132e167ec607c8a4a4ca5584141ed043c6ddd4f
2020-09-30Fix Status API to actually provide instance statusKonrad Bańka6-313/+188
Provide information about instance resources and Pods inside status response. Issue-ID: MULTICLOUD-1177 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Iee6fd56120d091dddfa6b6d0e4aa7eb36d40e888
2020-09-22Fix missing operator-sdk dependency goautonegIgor D.C2-114/+434
goautoneg used to be available from bitbucket.org/ww/goautoneg but not anymore. operator-sdk has been importing it from github.com/munnerz/goautoneg for some time now but since we were using operator-sdk v0.9.0, it was still pointing at the old (now deleted) repository. This patch bumps operator-sdk to v0.19.0 (which doesn't use goautoneg from bitbucket), controller-runtime to v0.5.11, helm to v2.16.12 and all k8s.io dependencies to v0.16.9 (consistent with the k8s v1.16.9 we use). Code changes have been made to make all modules compatible with the new dependencies. All src go.sums have been cleaned (deleted and re-built). Issue-ID: MULTICLOUD-1143 Change-Id: I89fc39e9595b4a6a38dd90028b161bcecd3ef349 Signed-off-by: Igor D.C <igor.duarte.cardoso@intel.com>
2020-09-14Provide tests for nested labels provisioningKonrad Bańka3-1/+90
Issue-ID: MULTICLOUD-1179 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I2f8facefc5299408a47dd9f8bdba9410aa8171de
2020-09-08Provide capability to specify release-name during instantiationKonrad Bańka5-129/+201
Allow release-name property to be provided during instantiation that, if provided, overrides release-name specified in profile. Additionally updated Makefile to allow easy compilation with different go version easily. Issue-ID: MULTICLOUD-1175 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Id8db484369045cfb0bc99543a80317644fc838f9
2020-08-26Improve configure API to support k8s resource updationsvamshi.nemalikonda8-2/+145
Code fore review. Issue-ID: MULTICLOUD-1124 Change-Id: I6bb9786660f6760c15008132f1c254e7f9b39561 Signed-off-by: vamshi.nemalikonda <vn00480215@techmahindra.com> Improve configure API to support k8s resource updations create resource enabled. Issue-ID: MULTICLOUD-1124 Change-Id: I6bb9786660f6760c15008132f1c254e7f9b39561 Signed-off-by: vamshi.nemalikonda <vn00480215@techmahindra.com> Improve configure API to support k8s resource updations code improvements. Issue-ID: MULTICLOUD-1124 Change-Id: I6bb9786660f6760c15008132f1c254e7f9b39561 Signed-off-by: vamshi.nemalikonda <vn00480215@techmahindra.com> Improve configure API to support k8s resource updations fixing unit test failures. Issue-ID: MULTICLOUD-1124 Change-Id: I6bb9786660f6760c15008132f1c254e7f9b39561 Signed-off-by: vamshi.nemalikonda <vn00480215@techmahindra.com>
2020-08-21Expose override parameters usage in KUD API testsKonrad Bańka1-1/+0
Update plugin_fw.sh test script to also check for proper work of override parameters functionality of instance API. Also update instance API response to exclude duplicated override-parameters entry, that's anyway accessible under '.request.override-values' json path. Issue-ID: MULTICLOUD-1176 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ie1a336ceb7de1a656f77d4c43ee4775c60cb88fb
2020-05-06Revert "Update brokerhandler API to conform with /v1/ path pattern"0.6.0Konrad Banka2-9/+8
This reverts commit 4ae60c1b50750587ab9d3960617a47d7db57b311. Reason for revert: Unable to reproduce bug, reverting fix implementation Issue-ID: MULTICLOUD-1053 Change-Id: Icc12260f9c122c6e5ac038d07a0e6cd56201e3ba Signed-off-by: Konrad Bańka <k.banka@samsung.com>
2020-04-16Update brokerhandler API to conform with /v1/ path patternKonrad Bańka2-8/+9
Issue-ID: MULTICLOUD-1053 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I8f567bed2783e7257784cd4ce4c9f76207634e7a
2020-04-13Test cases for resolving the helm templatesRajamohan Raj2-2/+1
Added test cases for overriding values and resolving the helm charts. Also addressed the merge conflicts and review comments Issue-ID: MULTICLOUD-1041 Signed-off-by: Rajamohan Raj <rajamohan.raj@intel.com> Change-Id: I511e8e2e71c60e878df434370fc053f09cda1f66
2020-04-11Resolve the helm templatesRajamohan Raj2-1/+2
Resolving the helm templates for each of the apps in the compositeApp by utilizing the helm libraries and thus getting the sorted templates with all values rendered. This is a subtask of adding instantiation APIs. Issue-ID: MULTICLOUD-1041 Signed-off-by: Rajamohan Raj <rajamohan.raj@intel.com> Change-Id: Id4fddda69b5276b2409d835723b11367400ab6ea
2020-03-18Added the new plugin_collection_v2 script.Rajamohan Raj1-1/+1
The script calls the major creation APIs in v2 starting from project api, composite app, composite profile, generic placement intent & deployment intent. This should be used every time we need to test the Instantiation code. Also added the helm charts for composite app consisting of collectd and prometheus. Issue-ID: MULTICLOUD-1035 Signed-off-by: Rajamohan Raj <rajamohan.raj@intel.com> Change-Id: I95237c234cca674dd54f4ef7527083b5cf3e0a55
2020-03-10Handle uncommon format of proper tar archiveKonrad Bańka2-2/+46
Provide proper handling of tar archives containing "current directory", but stored in format: ``` . file2.txt dir1/ dir1/file1.txt ``` instead of typical: ``` ./ ./file2.txt ./dir1/ ./dir1/file1.txt ``` Issue-ID: MULTICLOUD-1025 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ideffd019255a9f2d029527066e5a6a03d45a2d7b
2020-02-20Provide OverrideParameters capability for infra_workload APIKonrad Bańka3-87/+272
Provide parameters provided in sdnc, oof and user directives as override parameters for instantiate call. Issue-ID: MULTICLOUD-838 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I69c6dab82ee233b2365a656bfaf1c7d64e375c98
2020-01-23Merge "Update profilehandler comments"Ritu Sood1-9/+9
2020-01-17Merge "Add readme.md for database shim layer"Ritu Sood1-0/+123
2020-01-10Merge "Instantiate infra_workload based on vf-module-*-ids"Ritu Sood2-42/+21
2020-01-07Change missing profile HTTP response code to 404Konrad Bańka2-4/+20
Issue-ID: MULTICLOUD-967 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I3d213f65ee37443a55b74255b475e27c0d93cf2c
2020-01-07Instantiate infra_workload based on vf-module-*-idsKonrad Bańka2-42/+21
Deprecate k8s-rb-definition-* parameters from sdnc_directives in favor of vf-module-*-id that are used by newer artifact broker. Issue-ID: MULTICLOUD-836 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I26ae16bd53ced56ae11523584f900a102f6e0bb9
2020-01-03Merge "Add support for override values"Ritu Sood1-9/+18
2019-12-31Add readme.md for database shim layerKiran Kamineni1-0/+123
Add some documentation related to how the mongo backend is implemented Issue-ID: MULTICLOUD-666 Change-Id: I9dae429b1da004fbaa7ea694e6e58fa2d337a042 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-30Add support for a default profileKiran Kamineni2-0/+76
Added support for a default profile A profile with the name "default" gets created automatically when a rb definition is uploaded. Issue-ID: MULTICLOUD-885 Change-Id: I2baab179ff119f3e6335643ff619f071f11b017a Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-20Update write to store dataKiran Kamineni1-0/+14
This is to support multiple calls that might hit the database such as creation of profile within another definition create. Issue-ID: MULTICLOUD-666 Change-Id: I2cb8e705eaa5f825936156d7c626f16f373e28c0 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-19Add support for override valuesKiran Kamineni1-9/+18
Add support for override values which are equivalent to HELM --set options. A typical JSON with this option would look like this: { "rb-name": "edgex", "rb-version": "v1", "profile-name": "profile1", "override-values": { "edgex-core-consul.enabled": "false", "edgex-core-data.enabled": "false" }, "cloud-region": "k8sregionone" } Issue-ID: MULTICLOUD-863 Change-Id: I050b4c1a2922bfe1206964a0135863448638e4ef Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-11Fix ensureNamespace behavior failing on missing nsKonrad Bańka1-1/+4
The behavior is now amended to ignore namespace not found errors. Signed-off-by: Konrad Bańka <k.banka@samsung.com> Issue-ID: MULTICLOUD-955 Change-Id: Ifc180eca9e8195c38f0b0f268dd142a329405d3d Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-09Use http when not using tlsKiran Kamineni1-1/+6
Issue-ID: MULTICLOUD-666 Change-Id: I8838fb2d312c841fd421d0a887bcfe181f6281e9 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-12-06Set proper defaults for etcd configurationKiran Kamineni1-3/+3
Issue-ID: MULTICLOUD-666 Change-Id: I662555822b0bcf7264b64bbee9ff3760913be873 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-11-26Switch instantiation parameters source from user to sdnc parametersKonrad Bańka2-13/+40
Issue-ID: MULTICLOUD-941 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I3a6c67eb442023f64600b65f5af54a49117a8c51
2019-11-08Update logutils to support multiple fieldsKiran Kamineni3-32/+104
Added support for multiple fields and updated instancehandler and app/client.go to use the new functions Issue-ID: MULTICLOUD-577 Change-Id: I7cc04f67e72448aa121d10cfd80d66d544981933 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-11-06Add race condition detectionKiran Kamineni1-3/+3
Add the -race flag to detect any race conditions in the k8splugin code It is enabled only for tests right now because of performance impact on builds. Issue-ID: MULTICLOUD-870 Change-Id: I53a90df39d2d8b51cbdb6c320f2247721ed98a07 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-11-01Check for err when namespace plugin returnsKiran Kamineni1-1/+8
Check for err when a namespace GET is called. This will catch any errors related to the cluster GET operations before the subsequent call is made. Issue-ID: MULTICLOUD-666 Change-Id: I47de130f7ae9e6fea627f3a881ea84b2880db886 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-10-29Update profilehandler commentsMarcus G K Williams1-9/+9
Issue-ID: MULTICLOUD-828 Signed-off-by: Marcus G K Williams <marcus.williams@intel.com> Change-Id: Ib7678c6829916cb7e29611d151f7d67c2a274faf
2019-10-25Implementing suggested changessanjaymekhale3-0/+34
Renamed package from logs to logutils Issue-ID: MULTICLOUD-577 Change-Id: I05e2acbfbb5dd79bd26df73e0ad64c2068b9f6e5 Signed-off-by: sanjaymekhale <sm00557598@techmahindra.com>
2019-10-15Add unit testsKiran Kamineni2-3/+219
Add unit tests for the handler as well as backend status function Issue-ID: MULTICLOUD-675 Change-Id: I4c73e2c18f243702f3e791fec48d4bc5023cafd5 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-10-15Add a status getter api endpointKiran Kamineni3-4/+73
Add a status endpoint to get status of instances. Status information will be added to the database asynchronously. Issue-ID: MULTICLOUD-675 Change-Id: Ia7d79a6f18f01bf24f2690caf74a48c2a082bd73 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-10-11Remove unused codeKiran Kamineni2-127/+0
Remove unused code. This is part of the old legacy code and will anyway have to be re-implemented whenever the update functionality gets added. Issue-ID: MULTICLOUD-666 Change-Id: I02a91a2b221da9d82433f8c2ee1dd014a81e4f4d Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-09-13Update to kubernetes 1.14.1Kiran Kamineni4-144/+465
Updated package to use kubernetes 1.14.1 Also updated the other packages that no longer worked because of this change. Issue-ID: MULTICLOUD-666 Change-Id: Ibfdf7215d8d7beceabe1bf895a356017da0b7d9c Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-09-05Merge "Remove ovn4nfvk8s network plugin"Ritu Sood9-689/+0
2019-09-05Merge "Add a namegenerator package"Ritu Sood4-11/+158
2019-09-05Remove ovn4nfvk8s network pluginKonrad Bańka9-689/+0
As ovn4nfv networks are now handled on k8s side by created CRD, this plugin is no longer necessary. Removed all references to ovn Issue-ID: MULTICLOUD-733 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I7ad6c6d9b3b4fd8f249796f437e69c7df4e701cc
2019-09-04Fix test failure in threaded testsKiran Kamineni11-4/+176
Fix bug in tests where they can fail in highly threaded environments where a file can be accessed by two test processes. Fixed it by duplicating the test case. Issue-ID: MULTICLOUD-689 Change-Id: I93b9862fac52eb307e52c355e3cb0d4332768b4f Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-09-03Merge "Remove double thread restriction on build"Ritu Sood1-1/+1
2019-08-30Remove gopath from buildsKiran Kamineni1-3/+0
Remove gopath from builds as go mod does not require them. Issue-ID: MULTICLOUD-666 Change-Id: I3fa4057fb4d40c7f509a52fb82beceddc8f3e090 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-30Remove double thread restriction on buildKiran Kamineni1-1/+1
The double thread restriction on the build was introduced to alleviate runtime memory exceptions. Now that we have a larger VM for builds, this is not required. Issue-ID: MULTICLOUD-666 Change-Id: I7568c094a3b4ef0b33dde456d4abfacd0606ffc8 Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
2019-08-26Add a namegenerator packageKiran Kamineni4-11/+158
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 Sood6-177/+146
2019-08-13Add query parameters support to instance APIKiran Kamineni6-177/+146
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 Kamineni10-35/+142
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 "Add static compile time check to plugins"Bin Yang4-1/+14