From 63733c20a5f9a1fdc8d88d0f516e18614c5ba0c8 Mon Sep 17 00:00:00 2001 From: Alexander Todorov Date: Thu, 25 Mar 2021 14:46:01 +0200 Subject: [PATCH] API: new method KiwiTCMS.version() requires the user to be logged in and will return the string version of Kiwi TCMS. Primarily useful for informational purposes. We're also going to use this method in some of our performance evaluations because it doesn't touch the DB and essentially returns a static value! --- docs/source/modules/tcms.rpc.api.kiwitcms.rst | 7 +++++++ docs/source/modules/tcms.rpc.api.rst | 1 + tcms/rpc/api/kiwitcms.py | 20 +++++++++++++++++++ tcms/settings/common.py | 1 + 4 files changed, 29 insertions(+) create mode 100644 docs/source/modules/tcms.rpc.api.kiwitcms.rst create mode 100644 tcms/rpc/api/kiwitcms.py diff --git a/docs/source/modules/tcms.rpc.api.kiwitcms.rst b/docs/source/modules/tcms.rpc.api.kiwitcms.rst new file mode 100644 index 0000000000..e6409f5260 --- /dev/null +++ b/docs/source/modules/tcms.rpc.api.kiwitcms.rst @@ -0,0 +1,7 @@ +tcms.rpc.api.kiwitcms module +============================ + +.. automodule:: tcms.rpc.api.kiwitcms + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/modules/tcms.rpc.api.rst b/docs/source/modules/tcms.rpc.api.rst index c2f0c4c09e..e824f553a3 100644 --- a/docs/source/modules/tcms.rpc.api.rst +++ b/docs/source/modules/tcms.rpc.api.rst @@ -27,6 +27,7 @@ Submodules tcms.rpc.api.category tcms.rpc.api.classification tcms.rpc.api.component + tcms.rpc.api.kiwitcms tcms.rpc.api.markdown tcms.rpc.api.plantype tcms.rpc.api.priority diff --git a/tcms/rpc/api/kiwitcms.py b/tcms/rpc/api/kiwitcms.py new file mode 100644 index 0000000000..d64614be4c --- /dev/null +++ b/tcms/rpc/api/kiwitcms.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- + +from modernrpc.auth.basic import http_basic_auth_login_required +from modernrpc.core import rpc_method + +from tcms import __version__ + +__all__ = ("version",) + + +@http_basic_auth_login_required +@rpc_method(name="KiwiTCMS.version") +def version(): + """ + .. function:: RPC KiwiTCMS.version() + + :return: Current version of Kiwi TCMS installation. + :rtype: string + """ + return __version__ diff --git a/tcms/settings/common.py b/tcms/settings/common.py index 362c112d45..0d56480c0b 100644 --- a/tcms/settings/common.py +++ b/tcms/settings/common.py @@ -383,6 +383,7 @@ "tcms.rpc.api.classification", "tcms.rpc.api.component", "tcms.rpc.api.markdown", + "tcms.rpc.api.kiwitcms", "tcms.rpc.api.plantype", "tcms.rpc.api.priority", "tcms.rpc.api.product",