Change in vdsm[master]: contrib: schema converter

piotr.kliczewski at gmail.com piotr.kliczewski at gmail.com
Wed Feb 24 08:14:36 UTC 2016


Piotr Kliczewski has posted comments on this change.

Change subject: contrib: schema converter
......................................................................


Patch Set 14:

(5 comments)

https://gerrit.ovirt.org/#/c/52864/14/lib/api/Makefile.am
File lib/api/Makefile.am:

Line 31: 	$(NULL)
Line 32: 
Line 33: dist_vdsmpyrpc_PYTHON = \
Line 34: 	__init__.py \
Line 35: 	schemaapi.py\
> schemaapi is strange.  I would merge this module into vdsmapi.py.
I want to remove vdsmapi.py once the migration is done and change its name.
Line 36: 	vdsmapi.py \
Line 37: 	$(NULL)
Line 38: 
Line 39: dist_vdsmrpc_DATA = \


https://gerrit.ovirt.org/#/c/52864/14/lib/api/schemaapi.py
File lib/api/schemaapi.py:

Line 48:     raise SchemaNotFound("Unable to find API schema file in %s or %s",
Line 49:                          localpath, installedpath)
Line 50: 
Line 51: 
Line 52: class SchemaCache(object):
> Why do we need the cache? 
Good idea will change
Line 53: 
Line 54:     def __init__(self):
Line 55:         try:
Line 56:             with open(find_schema()) as f:


https://gerrit.ovirt.org/#/c/52864/14/lib/api/vdsmapi.py
File lib/api/vdsmapi.py:

Line 87:         return tokens[0], tokens[1:]
Line 88: 
Line 89: 
Line 90: def evaluate(string):
Line 91:     return parse(list(map(lambda x: x, tokenize(string))))[0]
> Why this change is needed? 
There was an issue when running schema converter using py3. This code will be dropped once we migrate to new schema.
Line 92: 
Line 93: 
Line 94: def parse_schema(fp):
Line 95:     exprs = []


Line 251:     if _api_info is None or schema not in _api_info:
Line 252:         _load_api_info(schema)
Line 253:     return _api_info[schema]
Line 254: 
Line 255: 
> Why the next function moved from the old location?
I was not able to import functions from process-schema.py so moved it to this module because they seem to share responsibility. The code will be dropped anyway.
Line 256: def strip_stars(items):
Line 257:     """
Line 258:     A symbol prepended with '*' means the symbol is optional.  Strip this
Line 259:     when looking up the symbol documentation.


https://gerrit.ovirt.org/#/c/52864/14/tests/schemaValidationTest.py
File tests/schemaValidationTest.py:

Line 54:     def test_verify_schema(self):
Line 55:         apiobj = self._get_api('API')
Line 56:         self._validate(apiobj)
Line 57: 
Line 58:     @SkipTest
> Better mark as @brokentest("explain why we must skip this now...")
Done
Line 59:     def test_verify_gluster_schema(self):
Line 60:         if _glusterEnabled:
Line 61:             apiobj = self._get_api('gapi')
Line 62:             self._validate(apiobj)


-- 
To view, visit https://gerrit.ovirt.org/52864
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3921cebb7f550f63849f3bc5c80636b6e9495c92
Gerrit-PatchSet: 14
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski at gmail.com>
Gerrit-Reviewer: Adam Litke <alitke at redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken at redhat.com>
Gerrit-Reviewer: Edward Haas <edwardh at redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani at redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Martin Polednik <mpolednik at redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak at redhat.com>
Gerrit-Reviewer: Milan Zamazal <mzamazal at redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer at redhat.com>
Gerrit-Reviewer: Oved Ourfali <oourfali at redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski at gmail.com>
Gerrit-Reviewer: Vinzenz Feenstra <vfeenstr at redhat.com>
Gerrit-Reviewer: Yaniv Bronhaim <ybronhei at redhat.com>
Gerrit-Reviewer: gerrit-hooks <automation at ovirt.org>
Gerrit-HasComments: Yes


More information about the vdsm-patches mailing list