From fab8c884b8aec06d2eefa4d2fd935deacd7290ec Mon Sep 17 00:00:00 2001 From: Lucas Di Pentima Date: Tue, 26 Nov 2019 11:16:18 -0300 Subject: [PATCH] 15849: Errors out when a duplicated label is detected on the vocabulary. Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima --- tools/vocabulary-migrate/vocabulary-migrate.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/vocabulary-migrate/vocabulary-migrate.py b/tools/vocabulary-migrate/vocabulary-migrate.py index 72bbd0ecb0..e729838858 100644 --- a/tools/vocabulary-migrate/vocabulary-migrate.py +++ b/tools/vocabulary-migrate/vocabulary-migrate.py @@ -18,6 +18,9 @@ import arvados.util logger = logging.getLogger('arvados.vocabulary_migrate') logger.setLevel(logging.INFO) +class VocabularyError(Exception): + pass + opts = argparse.ArgumentParser(add_help=False) opts.add_argument('--vocabulary-file', type=str, metavar='PATH', default=None, help=""" @@ -54,7 +57,7 @@ def _label_to_id_mappings(data, obj_name): if obj_lbl not in result: result[obj_lbl] = obj_id else: - logger.warning('{} label "{}" for {} ID "{}" already seen at {} ID "{}". Skipping.'.format(obj_name, obj_lbl, obj_name, obj_id, obj_name, result[obj_lbl])) + raise VocabularyError('{} label "{}" for {} ID "{}" already seen at {} ID "{}".'.format(obj_name, obj_lbl, obj_name, obj_id, obj_name, result[obj_lbl])) return result def key_labels_to_ids(vocab): -- 2.30.2