From d2e6da21fb1134e62ecc77b00a742843ca19d495 Mon Sep 17 00:00:00 2001 From: moonbak Date: Thu, 5 Sep 2024 09:34:09 +0200 Subject: [PATCH] start refactor: will change code, so metadat uses "dependencies" from now on --- src/pyvcmdline/__main__.py | 2 +- src/pyvcmdline/cmdline_utils.py | 52 ++++++++++++++++++--------------- 2 files changed, 29 insertions(+), 25 deletions(-) diff --git a/src/pyvcmdline/__main__.py b/src/pyvcmdline/__main__.py index c2872f1..aedcc43 100644 --- a/src/pyvcmdline/__main__.py +++ b/src/pyvcmdline/__main__.py @@ -324,7 +324,7 @@ def bump_subcommand(bundle_name): """ print('bump bundle to current version that is', __version__) my_metadat = read_metadata(bundle_name) - my_metadat['vmlib_ver'] = __version__.replace('.', '_') + my_metadat['dependencies']['pyved_engine'] = [__version__.replace('.', '_'), 'pyv'] # alias = pyv rewrite_metadata(bundle_name, my_metadat) diff --git a/src/pyvcmdline/cmdline_utils.py b/src/pyvcmdline/cmdline_utils.py index f2bd6b5..bc4b2f1 100644 --- a/src/pyvcmdline/cmdline_utils.py +++ b/src/pyvcmdline/cmdline_utils.py @@ -8,29 +8,30 @@ EXP_METADAT_KEYS = ( - 'asset_base_folder', - 'asset_list', - 'sound_base_folder', - 'sound_list', - - 'vmlib_ver', - 'author', - 'build_date', - 'dependencies', - 'description', - 'title', - 'instructions', - 'slug', - 'thumbnail512x384', - 'thumbnail512x512', - 'ktg_services', - 'source_files', - - 'uses_challenge', - 'has_game_server', - 'ncr_faucet', - 'game_genre' - ) + 'dependencies', + 'asset_base_folder', + 'asset_list', + 'sound_base_folder', + 'sound_list', + + 'vmlib_ver', + 'author', + 'build_date', + 'dependencies', + 'description', + 'title', + 'instructions', + 'slug', + 'thumbnail512x384', + 'thumbnail512x512', + 'ktg_services', + 'source_files', + + 'uses_challenge', + 'has_game_server', + 'ncr_faucet', + 'game_genre' +) template_pyconnector_config_file =""" { @@ -58,6 +59,9 @@ def verify_metadata(mdat_obj) -> str: for k in EXP_METADAT_KEYS: if k not in mdat_obj: return 'Missing key= {}'.format(k) + # need to test that pyved_engine is in dependencies... + if "pyved_engine" not in mdat_obj['dependencies']: + return 'Invalid list detected: "pyved_engine" not listed in the list of dependencies' # we also need to test whether Y or N, categories specified are still recognized within the CMS! if (not isinstance(mdat_obj['game_genre'], list)) or (len(mdat_obj['game_genre']) == 0): @@ -66,7 +70,7 @@ def verify_metadata(mdat_obj) -> str: for elt in mdat_obj['game_genre']: if elt not in ok_game_genres: return f'Game genre "{elt}" rejected by the Kata.Games system, please contact an Admin, or replace value' - print('--Metadata is valid--') + print('Metadata->OK') def read_metadata(bundle_name):