summaryrefslogtreecommitdiffstats
path: root/ms/command-executor/src
AgeCommit message (Collapse)AuthorFilesLines
2022-04-14Update cmd-exec for Python 3.7kuldipr1-1/+2
Issue-ID: CCSDK-3632 Signed-off-by: kuldipr <kuldip.rai@amdocs.com> Change-Id: I351203e1935ccee9327edf39b9809b873e391f86
2021-11-30CCSDK-3531 improve cmd-exec returned err msgOleg Mitsura6-111/+222
Issue-ID: CCSDK-3531 Improve end-user CBA's Python scripts ability to return error messages on failues. See JIRA story for examples: https://jira.onap.org/browse/CCSDK-3531 adds functions send_response_err_msg(err_message) and send_response_err_msg_and_exit(ret_err_msg, code=1) Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Ideda64dd108f987c3c4515c70daf9f7b6d2b1f2f
2021-11-29Correct dynamic properties grpc json serializingAbdelmuhaimen Seaudi1-1/+1
Correct the json serializing and escaping in command executor for grpc server Issue-ID: CCSDK-3521 Signed-off-by: Abdelmuhaimen Seaudi <abdelmuhaimen.seaudi@orange.com> Change-Id: I5d0c9fbb7190e8de52bf954ef1af29a6f854f685
2021-10-22Merge "Add missing code for Metrics and PV/PVC elimination"Dan Timoney2-8/+18
2021-10-20Add missing code for Metrics and PV/PVC eliminationJozsef Csongvai2-8/+18
Earlier patch introducing MeterRegistry to AbstractComponentFunction was not initializing the lateinit property and causing NPE. Also add additional code to handle compatibility issues after the introduction of PV/PVC elminiation for CommandExecutor. This allows blueprintsprocessor to communicate with earlier versions of command- executor which still use the shared pvc. Issue-ID: CCSDK-3471 Change-Id: I84a04601c4fe09c5f3a06664ce877800a30531f1 Signed-off-by: Jozsef Csongvai <jozsef.csongvai@bell.ca>
2021-10-20Add home directory for onap user in command-executor dockerfileJozsef Csongvai1-1/+1
Without a home directory, pip install would fail for CBAs that require additional modules. Issue-ID: CCSDK-3477 Change-Id: If99790a0c8c015639c489e9a498f8df8da4cbe77 Signed-off-by: Jozsef Csongvai <jozsef.csongvai@bell.ca>
2021-09-12Add requests library to cds-command-executor dockerAbdelmuhaimen Seaudi1-1/+1
Add requests to Dockerfile for command executor helps running in offline installation Issue-ID: CCSDK-3456 Signed-off-by: Abdelmuhaimen Seaudi <abdelmuhaimen.seaudi@orange.com> Change-Id: I9b3a34ea40c4f1127c169c23bd7107e6a469b8a6
2021-09-01CCSDK-3451 Prometheus Metrics for command-executorKuldip Rai3-5/+82
Issue-ID: CCSDK-3451 Signed-off-by: Kuldip Rai <kuldip.rai@bell.ca> Change-Id: Ibd11257037ec6f1941b5dee08cc97177b2c798c9
2021-03-29Fixing DockerFile to avoid IOExceptionSingal, Kapil (ks220y)1-12/+10
chown on /opt isn't enough as files/directory permissions needs change so that onap user can access to execute Even if chown onap:onap was done, it was failing to create/run script due to permission issues Adding noCache to docker-maven-plugin so that it won't pick cached layers Issue-ID: CCSDK-3224 Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com> Change-Id: Idf56465eff6fa42b523bccfca56f84e93496a8d2
2021-03-02Fix import error in commandexecutorDan Timoney1-1/+1
Fixed bad import statement, which causes command executor to fail on startup. Issue-ID: CCSDK-3197 Signed-off-by: Dan Timoney <dtimoney@att.com> Change-Id: I645562fcce9164a52a45a33f61019b9bb2c5a150
2021-01-26PV/PVC eliminationOleg Mitsura5-90/+401
Issue-ID: CCSDK-3086 1. initial commit 2. fix accidental paste / rebased cleaned up unneeded validation call in cmd-exec upload Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Ife5460c5be59aa8d8592d82099b27c507b08c6c6
2020-12-30[docker] use `--no-cache-dir` flag to `pip` in dockerfiles to save spacePratik raj1-3/+2
using "--no-cache-dir" flag in pip install ,make sure downloaded packages by pip don't cached on system . This is a best practice which make sure to fetch from repo instead of using local cached one . Further , in case of Docker Containers , by restricting caching , we can reduce image size. In term of stats , it depends upon the number of python packages multiplied by their respective size . e.g for heavy packages with a lot of dependencies it reduce a lot by don't caching pip packages. Further , more detail information can be found at https://medium.com/sciforce/strategies-of-docker-images-optimization-2ca9cc5719b6 Issue-ID: CCSDK-3071 Signed-off-by: Pratik Raj <rajpratik71@gmail.com> Change-Id: I9c957bda7fbcf631ce9be65bd5bcc41d2c9ada48
2020-09-18Fixing dockerFileSingal, Kapil (ks220y)1-7/+7
Fixing dockerFile and related items Refactoring pom properties Issue-ID: CCSDK-2794 Change-Id: Ib9d3cc38c2db65778cef2590ab774035305a16fa Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com>
2020-09-15Fixing DockerFilesSingal, Kapil (ks220y)1-8/+8
refactoring to use onap certified base image and combining run commands Issue-ID: CCSDK-2794 Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com> Change-Id: Id31d5a0018cbce14e54f4aa3e5caebb75dda2276
2020-09-15Fixing DockerFilesSingal, Kapil (ks220y)1-6/+7
Copying starting script to respective dir as root and then running as user onap Issue-ID: CCSDK-2794 Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com> Change-Id: I2b3c27cc8e3a378f9ceeeb0de62f81de9fc38c6b
2020-08-24Add request IDs in command-executor logJulien Fontaine5-78/+123
* Update gRPC interface to handle SubRequestID and Originator ID * Update command-executor log format to handle request IDs in the log statement * Add SubRequest ID and Originator ID in BP log statement Issue-ID: CCSDK-2687 Change-Id: If261bb0912df5800ed2fc65371c5ee784d6a45fb Signed-off-by: Julien Fontaine <julien.fontaine@bell.ca>
2020-07-27Fix empty dict in the script arguments when running a script in the cmd-execJulien Fontaine1-1/+6
Add a test to check if dynamic properties are empty. If empty we don't pass them to the script. Issue-ID: CCSDK-2614 Signed-off-by: Julien Fontaine <julien.fontaine@bell.ca> Change-Id: Iaa5a2b49e38d9a120fb193966af13f0843773e5f
2020-07-08cmd-exec server-side timeout.Oleg Mitsura2-29/+53
Issue-ID: CCSDK-2535 Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: I897678a5a8a23503a878f2d3eb836ba4597a6e6e
2020-07-02Command Executor : Invalid response_data when executed script failsJulien Fontaine4-49/+36
* Modified command exec returned value in case of failure during execution. It now prints the response_data defined by the user * Modified truncation method of the gRPC returned object to use ByteSize() to get the exact sizxe consumed within the buffer Issue-ID: CCSDK-2501 Signed-off-by: Julien Fontaine <julien.fontaine@bell.ca> Change-Id: Ie1db8db265623b5137ab3946ff4e3abda1c54a78
2020-06-26Explicit error message in command-executor when script is failingJulien Fontaine1-1/+6
Changed error message to print the last execution log (if possible) when the executed script fails. Issue-ID: CCSDK-2481 Signed-off-by: Julien Fontaine <julien.fontaine@bell.ca> Change-Id: I9df9dfeeaf95d98049c4f80f827deb85a29137da
2020-06-03Set explicit uid and gid in dockerfilesJozsef Csongvai1-1/+1
This fixes permission issues with shared nfs volumes caused by mismatch in dynamically assigned gid and uid between containers. Issue-ID: CCSDK-2398 Signed-off-by: Jozsef Csongvai <jozsef.csongvai@bell.ca> Change-Id: Ie47873c98211b280490ee7a6bcc60ceef49dd690
2020-05-06Merge "Truncate message published on Kafka / Spike: Define solution for logs ↵Dan Timoney4-65/+92
separation"
2020-05-05Truncate message published on Kafka / Spike: Define solution for logs separationJulien Fontaine4-65/+92
Refactoring of cmd-exec component - Improve display of error messages within the response - Fix gRPC buffer limitation (4Mb) by truncating error messages and cmd-exec logs if too heavy (>3Mb) Truncation of BP responses (<4Kb) before sending them in kafka audit topics. - Truncation if needed of error messages for every response - Truncation of cmd-exec logs in cmd-exec responses (Spike) Add a flag in the application.properties to enable/disable the display of cmd-exec responses on the BP side (Fix) Correction of BP processing with kafka regression (Fix) Changed default SSL Endpoint Algo Issue-ID: CCSDK-2326 Change-Id: If4d0e661117d1dd156cf19c95774824e754d870a Signed-off-by: Julien Fontaine <julien.fontaine@bell.ca>
2020-04-23Making POD run as non-rootjananib1-1/+3
Non-root user addition Change-Id: Id110aebea3d3526aaf319d8994670644a7bab698 Issue-ID: CCSDK-2149 Signed-off-by: jananib <janani.b@huawei.com>
2020-04-20Merge "cmd-exec had a merge issue from elalto..."Dan Timoney1-17/+19
2020-04-15cmd-exec had a merge issue from elalto...Oleg Mitsura1-17/+19
Issue-ID: CCSDK-2049 Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: I611fff488b339f03b85c58ed097525a0bcda35a3
2020-04-16Making POD run as non-rootjananib1-1/+4
Non-root user addition Change-Id: I45ebc75940c020fdda79fbe454461a19df39c525 Issue-ID: CCSDK-2149 Signed-off-by: jananib <janani.b@huawei.com>
2020-04-08Improving CMD-exec err msgs/handling.Oleg Mitsura3-60/+112
Issue-ID: CCSDK-2049 rev1. initial commit rev2. added better logging/passing errors. rev3. bugfixes rev4. bugfix for CommandExecutorServer.prepareEnv return status was still returning bool. (was caught only during a defective mariadb pip package install!) Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Ifbddaeb0e15857f42b121af10e30e29dec5c20b2
2020-02-20virtualenv lib changed. need to pin to older version.Oleg Mitsura1-1/+1
Issue-ID: CCSDK-2108 virtualenv no longer has "writefile" function, also activate_this.py has changed. we don't have time to investigate the impact right now, so doing this work-around. Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: I9503050163ba420cf0e39ded4d992a34bf5d0ae3
2019-11-28Pass requestID/subreqID to python script.Oleg Mitsura1-2/+10
Issue-ID: CCSDK-1860 1. initial commit 2. rebased with return value 3. CDS_CORRELATION_ID Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Ia64a0ee9c8eb60e3f39ec00ee17e7ab1b4aa3638
2019-11-19Changes return value from boolean to typical process return code;Serge Simard1-2/+2
Also ensure that if environment preparation does not succeed the processing fails. Issue-ID: CCSDK-1855 Signed-off-by: Serge Simard <serge@agilitae.com> Change-Id: Iab2ec8b44a0e9e7edef68d0d5c13860eedc5be67 Signed-off-by: Serge Simard <serge@agilitae.com>
2019-10-30Removed all http_proxy reference from build.Sebastien Premont-Tendland1-4/+1
http_proxy is an environment configuration and should not be defined in in the build script. If you need to use a proxy to build docker images then add it to the mvn command like this : -Ddocker.buildArg.http_proxy=$PROXY -Ddocker.buildArg.https_proxy=$PROXY Also adding http_proxy in the Dockerfile directly will add the environment variable in the POD statically using the proxy the was built with at runtime. If a proxy is needed at runtime then the environment variables should be injecting using helm charts and overrides. Issue-ID: CCSDK-1877 Signed-off-by: Sebastien Premont-Tendland <sebastien.premont@bell.ca> Change-Id: I2b99b277b594408c974cf29a5804384293776a22
2019-10-27Merge "Improve Remote Python Executor error handling and allow for ↵Brinda Santh Muthuramalingam6-48/+109
structured response"
2019-10-24Increase num workers to 15Oleg Mitsura1-1/+1
Issue-ID: CCSDK-1859 Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Id11ed788e2a4d02c93c8e313ba4aef555ffe7885
2019-10-24Improve Remote Python Executor error handling and allow for structured responseSerge Simard6-48/+109
Issue-ID: CCSDK-1855 Signed-off-by: Serge Simard <serge@agilitae.com> Change-Id: I924918fb06a5a0f118772dedaa41c536c7eca9e7 Signed-off-by: Serge Simard <serge@agilitae.com>
2019-09-26Fixing distribution and propertiesSingal, Kapil (ks220y)1-1/+1
Excluding to embedd Target path, and renaming blueprint to blueprints in properties Issue-ID: CCSDK-1758 Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com> Change-Id: Ie6f0ff177e0945fb252710a425a16afade1b01a3
2019-09-18Refactoring Netconf NetconfMessageUtilsSingal, Kapil (ks220y)2-2/+3
Appending New Line before and after request body within doWrapRpc and removing new line is child API's which forms the request body Issue-ID: CCSDK-1743 Signed-off-by: Singal, Kapil (ks220y) <ks220y@att.com> Change-Id: Ic58566e24a21c71d545c45fb95a667c17de2fe66
2019-09-06Revert "Use ProcessPool rather than ThreadPool Executor"Alexis de Talhouët3-7/+6
This reverts commit cd29a05ccd4279d7fb740d03bbeee6a0839b287e. Issue-ID: CCSDK-1681 Change-Id: I5827256ea5dc76b6ff8806250c684d155656dfc5 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-09-03Use ProcessPool rather than ThreadPool ExecutorAlexis de Talhouët3-6/+7
Change-Id: I66a800bf30cabce35123b0ac24b3b3e00eef6026 Issue-ID: CCSDK-1681 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-08-09Add dynamic-properties as python script argAlexis de Talhouët1-3/+3
For the remote python executor, we have the ability to provide dynamic properties, that will end up marshall as Json. Through the gRPC session, it will be transform to a Google Proto Struct. Once in the remote python executor, we use utility method from Proto to convert the Struct into a Json string, and we pass it as the last argument of the script execution. That way, user can access them in their script, simply by loading the content using json.loads and then interact with the data through the python dict. Change-Id: Ib3552c06734aed252ec28f47173bc8668afe085d Issue-ID: CCSDK-1606 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-07-08Merge "Do not dump a collection of outputs at the end."Dan Timoney1-1/+1
2019-06-28Do not dump a collection of outputs at the end.Oleg Mitsura1-1/+1
Issue-ID: CCSDK-1404 Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: I50b5d0823b0ae10b87beaebd056d8f6148fcb6af
2019-06-25Remote Python executor Handler class process fails with Arguments list too longSerge Simard1-0/+7
Issue-ID: CCSDK-1435 Change-Id: I02b1d8393c2506850cf37df6e3447d195f4fabb5 Signed-off-by: Serge Simard <serge@agilitae.com>
2019-06-25python-executor will provide output line-by-lineOleg Mitsura3-11/+17
* python-executor STDOUT contains cleaner logs * return status has been reworked to return a list of lines Issue-ID: CCSDK-1404 Signed-off-by: Oleg Mitsura <oleg.mitsura@amdocs.com> Change-Id: Ib17495e92a136ff4f950bb6e049246a9e100eb7d
2019-04-25Finalize ansible usageAlexis de Talhouët1-3/+12
Change-Id: Iaca6bb573e31607eaa9a3a603e1e4beae60c817c Issue-ID: CCSDK-1215 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-04-23Support for dynamic property in command argsAlexis de Talhouët1-1/+4
Change-Id: I47c65557a553c79fefbbc28f8dab54b1c0a4a798 Issue-ID: CCCSDK-125 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-04-22Add support for requirements.txt for pip depsAlexis de Talhouët1-5/+11
Change-Id: I10bbe95a4d06ce9361d3ab6553953022e1196a3d Issue-ID: CCCSDK-125 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-04-22Update package type nameAlexis de Talhouët3-17/+20
- split log output: prepare-env and exec-cmd - fix proxy support when not provided Change-Id: I40cdf90e7e3ebe31b0152923f8b6a38f6b6e9ca0 Issue-ID: CCCSDK-125 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-04-18Add support for Ansible packagesAlexis de Talhouët3-75/+160
- rework how to provide packages - support proxy as parameters Change-Id: I1d10d921ead0837aa0f74b965cadf985424ceedc Issue-ID: CCCSDK-1215 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
2019-04-16Add logger to python codeAlexis de Talhouët6-59/+101
Change-Id: I526059b2a18685dbb978c0776cc728bbbd90e9cd Issue-ID: CCSDK-1164 Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>