[Kimchi-devel] [PATCH] [Wok] Add system arch to /config API

Aline Manera alinefm at linux.vnet.ibm.com
Wed Apr 26 17:02:51 UTC 2017


Please, ignore this patch.

I realized that Kimchi as a /host API which may be used to return the arch.

I will send that solution that only changes Kimchi.

On 04/25/2017 04:06 PM, Aline Manera wrote:
> It may be useful when UI differs depending on system arch.
>
> It is part of solution to remove Ginger Base dependency from Kimchi.
>
> Signed-off-by: Aline Manera <alinefm at linux.vnet.ibm.com>
> ---
>   docs/API/config.md         | 2 ++
>   src/wok/model/config.py    | 4 ++++
>   tests/test_api.py          | 2 +-
>   tests/test_config_model.py | 2 +-
>   tests/test_server_root.py  | 6 +++---
>   5 files changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/docs/API/config.md b/docs/API/config.md
> index d1d1007..b810f2a 100644
> --- a/docs/API/config.md
> +++ b/docs/API/config.md
> @@ -12,6 +12,8 @@ Contains information about the application environment and configuration.
>       * proxy_port: SSL port to list on
>       * websockets_port: Port for websocket proxy to listen on
>       * auth: Authentication method used to log in to Wok
> +    * server_root: Wok root API path
> +    * arch: System architecture
>       * version: Wok version
>   * **POST**: *See Task Actions*
>
> diff --git a/src/wok/model/config.py b/src/wok/model/config.py
> index b69f2dd..54aaf54 100644
> --- a/src/wok/model/config.py
> +++ b/src/wok/model/config.py
> @@ -18,12 +18,15 @@
>   # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
>
>   import cherrypy
> +import platform
>   import time
>
>   from wok.config import config, get_version
>   from wok.model.notifications import add_notification
>   from wok.utils import wok_log
>
> +ARCH = platform.machine()
> +
>
>   class ConfigModel(object):
>       def __init__(self, **kargs):
> @@ -34,6 +37,7 @@ class ConfigModel(object):
>                   'websockets_port': config.get('server', 'websockets_port'),
>                   'auth': config.get('authentication', 'method'),
>                   'server_root': config.get('server', 'server_root'),
> +                'arch': ARCH,
>                   'version': get_version()}
>
>       def reload(self, name):
> diff --git a/tests/test_api.py b/tests/test_api.py
> index 6fbee75..4e2e413 100644
> --- a/tests/test_api.py
> +++ b/tests/test_api.py
> @@ -52,7 +52,7 @@ class APITests(unittest.TestCase):
>       def test_config(self):
>           resp = self.request('/config').read()
>           conf = json.loads(resp)
> -        keys = ["auth", "proxy_port", "websockets_port", "version",
> +        keys = ["arch", "auth", "proxy_port", "websockets_port", "version",
>                   "server_root"]
>           self.assertEquals(sorted(keys), sorted(conf.keys()))
>
> diff --git a/tests/test_config_model.py b/tests/test_config_model.py
> index f8b0848..df2b058 100644
> --- a/tests/test_config_model.py
> +++ b/tests/test_config_model.py
> @@ -30,7 +30,7 @@ class ConfigModelTests(unittest.TestCase):
>           config = inst.config_lookup('')
>           self.assertItemsEqual(
>               ['proxy_port', 'websockets_port', 'auth',
> -             'server_root', 'version'],
> +             'server_root', 'arch', 'version'],
>               config.keys()
>           )
>
> diff --git a/tests/test_server_root.py b/tests/test_server_root.py
> index e95a13b..89f34d3 100644
> --- a/tests/test_server_root.py
> +++ b/tests/test_server_root.py
> @@ -1,7 +1,7 @@
>   #
>   # Project Wok
>   #
> -# Copyright IBM Corp, 2016
> +# Copyright IBM Corp, 2016-2017
>   #
>   # This library is free software; you can redistribute it and/or
>   # modify it under the terms of the GNU Lesser General Public
> @@ -49,7 +49,7 @@ class ServerRootTests(unittest.TestCase):
>           # check if server_root in config is the same used to start server
>           resp = request(server_root + '/config').read()
>           conf = json.loads(resp)
> -        self.assertEquals(len(conf), 5)
> +        self.assertEquals(len(conf), 6)
>
>       def test_development_env(self):
>           """
> @@ -61,4 +61,4 @@ class ServerRootTests(unittest.TestCase):
>           # check if server_root in config is the same used to start server
>           resp = request(server_root + '/config').read()
>           conf = json.loads(resp)
> -        self.assertEquals(len(conf), 5)
> +        self.assertEquals(len(conf), 6)



More information about the Kimchi-devel mailing list