summaryrefslogtreecommitdiffstats
path: root/src/k8splugin
AgeCommit message (Collapse)AuthorFilesLines
2021-08-11Support pre/post install/delete hooks  hthieu16-27/+1857
Update instance create and delete handler to support pre/post install/delete hooks.  Add hook.go: to execute and delete hook (base on delete policy).  Implement watchUntilReady in generic plugin to wait for readiness of hook rss. Add hook_sorter.go: to sort hook based on weight. User can define timeout for each type of hooks in overwrite-values. Variable name is k8s-rb-instance-pre-install-timeout (default 60s), k8s-rb-instance-post-install-timeout (default 600s), k8s-rb-instance-pre-delete-timeout (default 60s) and k8s-rb-instance-post-delete-timeout (600s). This is timeout for each hook of a hook event (not a total time). Add recovery capability to continue the execution of instantiation (create or delete) when the plugin stop unexpectedly. For now, this is disabled because we have data-race issue during test. Will enable when we find the solution. Add basic test for hooks (in hook_test.go) Add test for hook in instance_test For instance get request, we can request for full data by adding query param to the request: full=true. Issue-ID: MULTICLOUD-1347 Signed-off-by: hthieu <huu_trung.thieu@nokia-bell-labs.com> Change-Id: If2b4a90831b9bfce1af8b926e4062a7d706bee08
2021-08-09Fixed issue of leftovers after instace create failureLukasz Rajewski2-3/+8
Fixed issue of leftovers after instace create failure Issue-ID: MULTICLOUD-1269 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I69b4a170d72a482f29fd79ecdfc949f55c70a61a
2021-08-06Optimized status discovery0.9.0Lukasz Rajewski1-10/+7
Optimized status discovery Issue-ID: MULTICLOUD-1372 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I854bc88676f4bc3b5f35e8a303d94603ce61a91d
2021-08-06Fixed issue in Status handlerLukasz Rajewski1-7/+12
Fixed issue in Status handler when reading status of not ready resource Issue-ID: MULTICLOUD-1372 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I3739bb30a7ab28f6bb4b6648c522bddee37db96b
2021-08-05Update status check endpoint hthieu22-17/+1595
  Update status check endpoint to use helm (3.5) official implementation of resource status check. Move utils to new module and update import. Issue-ID: MULTICLOUD-1372 Signed-off-by: hthieu <huu_trung.thieu@nokia-bell-labs.com> Change-Id: I57a827d09466f5f554c89c2fa5533696285f9c37
2021-08-02Merge "Add suport for query api on root level"Lukasz Rajewski13-84/+247
2021-08-02Add suport for query api on root levelLukasz Rajewski13-84/+247
Add suport for query api on root level. Instance query handler and root query handler merged. Issue-ID: MULTICLOUD-1379 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I1dc95c7aca0e734edf5794e7c36143dc12070f2b
2021-08-02Config List handler added to Config APILukasz Rajewski7-7/+132
Config List handler added to Config API Issue-ID: MULTICLOUD-1332 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I63355dd6b05e70398cfc89744efa332926286c40
2021-07-29Fix of release name for configLukasz Rajewski2-7/+16
Fix of release name for config. It is taken now from the instance first, and then from the profile. Issue-ID: MULTICLOUD-1379 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I3bd41a1e51abf6326de1eda42361782bea3147b2
2021-07-23Change rb-definition-version identifierLukasz Rajewski1-1/+1
rb-definition-version identifier was changed to vf-omdule-model-customization-uuid to enable vf-module model update scenarios Issue-ID: MULTICLOUD-1377 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I2877d9c282abcdbad14f4120e5e67f8c5e5d3e59
2021-05-05DeletePropagationPolicy changed to backgroundLukasz Rajewski3-3/+3
The policy is changed to Background operation which is default for helm application. Later on dedicated parametr will be added to the profile to let it be changed for particular helm chart. Issue-ID: MULTICLOUD-1338 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@orange.com> Change-Id: I29978bc39fe6e1d10b0278fe10736ff1b7cc2006
2021-04-20Merge "Migrate to use Helm v3 libraries"Lukasz Rajewski16-685/+1558
2021-04-12Migrate to use Helm v3 librariesRitu Sood16-685/+1558
Moving to Helm v3. Updated unit tests. Reworked Healthcheck Execution to align with v3 design. Helm v3 requires newer version for K8s libraries. Moved to use version 0.19.4. Issue-ID: MULTICLOUD-1295 Signed-off-by: Ritu Sood <ritu.sood@intel.com> Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I091b75d69841dde56ad2c294cca2d5a0291ffa8f
2021-04-02Merge "Fix Healthcheck API"Ritu Sood6-47/+330
2021-03-31Fix Healthcheck APIKonrad Bańka6-47/+330
Fix several issues related to Healthcheck creation. Updated GET/DELETE methods to work properly. This commit leaves few FIXME/TODOs that will be handled within Helm3 Rebase commit Issue-ID: MULTICLOUD-1308 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I5da50363bb240fdc85d3624f43cb0526786da542
2021-03-11Merge "Correct Day2 Config Template creation response"Ritu Sood1-2/+7
2021-03-11Correct Day2 Config Template creation responseKonrad Bańka1-2/+7
Modified day2 config template handler to return metadata of created configuration template on its creation. Issue-ID: MULTICLOUD-1311 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I139486a41c7dbd67d414a07776e9a5d711d9887b
2021-03-11Remove Hooks field from InstanceResponse http resp jsonKonrad Bańka1-1/+1
Addition of hooks in instantiation response needs to be handled by other parties or else it may break connectivity. Because currently Hooks field doesn't provide any relevant public data, this change makes it hidden. Issue-ID: MULTICLOUD-1311 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I4ca522cf8c6409ddf71fe06de0b905cfdf219a2f
2021-03-09Correct Query API endpoint registrationKonrad Bańka3-2/+276
Apart from corrections, corrected handling of name-only query requests as well as provided bunch of UTs. Issue-ID: MULTICLOUD-1307 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ida3d3e434525f323bd8c40ddc7ffd58df9c5e831
2021-02-25Provide Healthcheck API MVP0.8.0Konrad Bańka20-60/+468
Implements basic functionality of running starting Healthcheck. Results can be inspected so-far without dedicated API, by using, for example, Query API. Issue-ID: MULTICLOUD-1233 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ia4d96d936d573173d7d8f41e6c39d059bf5f8b1f
2021-02-25Merge "Provide Query API for CNF Instances"Ritu Sood4-1/+148
2021-02-24Provide Query API for CNF InstancesKonrad Bańka4-2/+150
Query API doesn't directly use Status API code, in order to allow for querying derived resources that might not be typically returned by Status API like replicasets for deployment. Issue-ID: MULTICLOUD-1305 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: If15adce23845880f3e6771cc8eab78a78ab13517
2021-02-23Move Day2 Config Values API to new endpointKonrad Bańka6-132/+211
Issue-ID: MULTICLOUD-1280 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ibeb0920b4ce083f4294b83c887fc7c793a2c3df5
2021-01-13Provide simple v3 chart mock testKonrad Bańka4-0/+55
Issue-ID: MULTICLOUD-1267 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: Ib05167a6e0e2c69268bcd85c0ae3fa30fdd78e39
2020-12-16Rollback helm library to version not failing v3 chartsKonrad Bańka2-485/+129
This change reverts fef2f1a959341d2abaea6dadaecccc4952c284c9 commit that updated helm library to a version, that no longer allowed helm v3 charts by explicitly failing when parsing them. Proper support of helm v3 is still not implemented in k8splugin, but at least it shouldn't fail on v3 packages that don't implement v3-specific features. Also apart from revert, go.mod/sum have been also tidied. Issue-ID: MULTICLOUD-1267 Signed-off-by: Konrad Bańka <k.banka@samsung.com> Change-Id: I992004d30802134039f0a6aca2d07a42db9c2459
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>