pybind/ceph_argparse: validate csv if desc.N
if desc.N is not None, we should take the argument as a comma separated
values, and validate the values individually.
restructure the validate() function and its helpers to pass the
validated args if desc.N explicitly, as desc.instance.val should only
hold a single value of desc.instance type, otherwise we need to reset
it after collecting all the argument in a CSV string value is parsed.
this change would be less consistent and hackish.
and update a test to verify this behavior.
Fixes: https://tracker.ceph.com/issues/51145
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit
0948a78ee6524911bd1fb76f1bf285e90e3cd349)