summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2022-09-21 15:49:19 -0400
committerScott Murray <scott.murray@konsulko.com>2022-09-21 15:51:03 -0400
commitd9043ccc5fac5d0e82871f1a7449feed36048fe0 (patch)
tree8f2267562fa027085dc6514e6a4c25545c26c0c9
parentab559762e86055ead1ffa2a5f93c91a4f743f9c4 (diff)
kuksa-viss-client: add patch to fix command-line tool
Add a patch for kuksa-viss-client to fix the cmd2 Python module usage to work with newer versions of cmd2. Bug-AGL: SPEC-4552 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I7599f2e07b4ad3d57796a06677d5fda170240229
-rw-r--r--recipes-connectivity/kuksa-val/kuksa-viss-client/0002-kuksa_viss_client-Update-cmd2-completer-usage.patch104
-rw-r--r--recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb4
2 files changed, 107 insertions, 1 deletions
diff --git a/recipes-connectivity/kuksa-val/kuksa-viss-client/0002-kuksa_viss_client-Update-cmd2-completer-usage.patch b/recipes-connectivity/kuksa-val/kuksa-viss-client/0002-kuksa_viss_client-Update-cmd2-completer-usage.patch
new file mode 100644
index 000000000..944d8bb1a
--- /dev/null
+++ b/recipes-connectivity/kuksa-val/kuksa-viss-client/0002-kuksa_viss_client-Update-cmd2-completer-usage.patch
@@ -0,0 +1,104 @@
+From 525122ade01998e34eabce74cb24d1c427c4b48d Mon Sep 17 00:00:00 2001
+From: Scott Murray <scott.murray@konsulko.com>
+Date: Wed, 21 Sep 2022 13:27:49 -0400
+Subject: [PATCH] kuksa_viss_client: Update cmd2 completer usage
+
+Update cmd2 usage to avoid using internal methods and fix breakage
+with newer versions of the cmd2 module.
+
+Upstream-Status: pending
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+---
+ kuksa_viss_client/__main__.py | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/kuksa_viss_client/__main__.py b/kuksa_viss_client/__main__.py
+index 4d61433..d0b1af3 100755
+--- a/kuksa_viss_client/__main__.py
++++ b/kuksa_viss_client/__main__.py
+@@ -14,7 +14,7 @@ from typing import Dict, List
+ import queue, time, os
+ from pygments import highlight, lexers, formatters
+ from cmd2 import Cmd, with_argparser, with_category, Cmd2ArgumentParser, CompletionItem
+-from cmd2.utils import CompletionError, basic_complete
++from cmd2.exceptions import CompletionError
+ import functools, subprocess
+ DEFAULT_SERVER_ADDR = "127.0.0.1"
+ DEFAULT_SERVER_PORT = 8090
+@@ -82,7 +82,7 @@ class TestClient(Cmd):
+ self.pathCompletionItems.append(CompletionItem(prefix + key+seperator, "Children of branch "+prefix+key))
+
+
+- return basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
++ return Cmd.basic_complete(self, text, line, begidx, endidx, self.pathCompletionItems)
+
+ def subscribeCallback(self, path, attr, resp):
+ print(path, attr)
+@@ -93,7 +93,7 @@ class TestClient(Cmd):
+ self.pathCompletionItems = []
+ for id in self.subscribeIdToPath.keys():
+ self.pathCompletionItems.append(CompletionItem(id))
+- return basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
++ return Cmd.basic_complete(self, text, line, begidx, endidx, self.pathCompletionItems)
+
+ COMM_SETUP_COMMANDS = "Communication Set-up Commands"
+ VISS_COMMANDS = "Kuksa Interaction Commands"
+@@ -106,44 +106,44 @@ class TestClient(Cmd):
+ ap_authorize = argparse.ArgumentParser()
+ tokenfile_completer_method = functools.partial(Cmd.path_complete,
+ path_filter=lambda path: (os.path.isdir(path) or path.endswith(".token")))
+- ap_authorize.add_argument('Token', help='JWT(or the file storing the token) for authorizing the client.', completer_method=tokenfile_completer_method)
++ ap_authorize.add_argument('Token', help='JWT(or the file storing the token) for authorizing the client.', completer=tokenfile_completer_method)
+ ap_setServerAddr = argparse.ArgumentParser()
+ ap_setServerAddr.add_argument('IP', help='VISS Server IP Address', default=DEFAULT_SERVER_ADDR)
+ ap_setServerAddr.add_argument('Port', type=int, help='VISS Server Websocket Port', default=DEFAULT_SERVER_PORT)
+
+ ap_setValue = argparse.ArgumentParser()
+- ap_setValue.add_argument("Path", help="Path to be set", completer_method=path_completer)
++ ap_setValue.add_argument("Path", help="Path to be set", completer=path_completer)
+ ap_setValue.add_argument("Value", help="Value to be set")
+ ap_setValue.add_argument("Attribute", help="Attribute to be set", default="value", nargs=(0,1))
+
+ ap_getValue = argparse.ArgumentParser()
+- ap_getValue.add_argument("Path", help="Path to be read", completer_method=path_completer)
++ ap_getValue.add_argument("Path", help="Path to be read", completer=path_completer)
+ ap_getValue.add_argument("Attribute", help="Attribute to be get", default="value", nargs=(0,1))
+
+ ap_setTargetValue = argparse.ArgumentParser()
+- ap_setTargetValue.add_argument("Path", help="Path whose target value to be set", completer_method=path_completer)
++ ap_setTargetValue.add_argument("Path", help="Path whose target value to be set", completer=path_completer)
+ ap_setTargetValue.add_argument("Value", help="Value to be set")
+
+ ap_getTargetValue = argparse.ArgumentParser()
+- ap_getTargetValue.add_argument("Path", help="Path whose target value to be read", completer_method=path_completer)
++ ap_getTargetValue.add_argument("Path", help="Path whose target value to be read", completer=path_completer)
+
+ ap_subscribe = argparse.ArgumentParser()
+- ap_subscribe.add_argument("Path", help="Path to be subscribed", completer_method=path_completer)
+- ap_subscribe.add_argument("Attribute", help="Attribute to be subscribed", default="value", completer_method=path_completer, nargs=(0,1))
++ ap_subscribe.add_argument("Path", help="Path to be subscribed", completer=path_completer)
++ ap_subscribe.add_argument("Attribute", help="Attribute to be subscribed", default="value", completer=path_completer, nargs=(0,1))
+
+ ap_unsubscribe = argparse.ArgumentParser()
+- ap_unsubscribe.add_argument("SubscribeId", help="Corresponding subscription Id", completer_method=subscriptionIdCompleter)
++ ap_unsubscribe.add_argument("SubscribeId", help="Corresponding subscription Id", completer=subscriptionIdCompleter)
+
+ ap_getMetaData = argparse.ArgumentParser()
+- ap_getMetaData.add_argument("Path", help="Path whose metadata is to be read", completer_method=path_completer)
++ ap_getMetaData.add_argument("Path", help="Path whose metadata is to be read", completer=path_completer)
+ ap_updateMetaData = argparse.ArgumentParser()
+- ap_updateMetaData.add_argument("Path", help="Path whose MetaData is to update", completer_method=path_completer)
++ ap_updateMetaData.add_argument("Path", help="Path whose MetaData is to update", completer=path_completer)
+ ap_updateMetaData.add_argument("Json", help="MetaData to update. Note, only attributes can be update, if update children or the whole vss tree, use `updateVSSTree` instead.")
+
+ ap_updateVSSTree = argparse.ArgumentParser()
+ jsonfile_completer_method = functools.partial(Cmd.path_complete,
+ path_filter=lambda path: (os.path.isdir(path) or path.endswith(".json")))
+- ap_updateVSSTree.add_argument("Json", help="Json tree to update VSS", completer_method=jsonfile_completer_method)
++ ap_updateVSSTree.add_argument("Json", help="Json tree to update VSS", completer=jsonfile_completer_method)
+
+
+ # Constructor
+--
+2.37.3
+
diff --git a/recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb b/recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb
index e2830a8c3..67f4af254 100644
--- a/recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb
+++ b/recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb
@@ -9,7 +9,9 @@ DEPENDS = "python3-setuptools-git-versioning-native"
require kuksa-val.inc
-SRC_URI += "file://0001-Update-kuksa-viss-client-to-support-Python-3.10.patch"
+SRC_URI += "file://0001-Update-kuksa-viss-client-to-support-Python-3.10.patch \
+ file://0002-kuksa_viss_client-Update-cmd2-completer-usage.patch \
+"
inherit setuptools3