diff --git a/operatorcourier/cli.py b/operatorcourier/cli.py index 0aa0a13..ea392bb 100644 --- a/operatorcourier/cli.py +++ b/operatorcourier/cli.py @@ -59,7 +59,7 @@ def verify(self): parser.add_argument('source_dir', help='Path of your directory of yaml ' 'files to bundle. Either set this or ' 'use the files argument for bundle data.') - parser.add_argument('--ui_validate_io', + parser.add_argument('--ui-validate-io', help='Validate bundle for operatorhub.io UI', action='store_true') parser.add_argument('--validation-output', dest='validation_output', diff --git a/operatorcourier/validate.py b/operatorcourier/validate.py index 49b9145..f68f023 100644 --- a/operatorcourier/validate.py +++ b/operatorcourier/validate.py @@ -373,14 +373,15 @@ def is_email(field): def is_version(field): pattern1 = re.compile(r'v(\d+\.)(\d+\.)(\d)') pattern2 = re.compile(r'(\d+\.)(\d+\.)(\d)') - return pattern1.match(field) or pattern2.match(field) + pattern3 = re.compile(r'(v)?(\d+\.)(\d+\.)(\d)(-[a-z0-9\-\.]+)?') + return pattern1.match(field) or pattern2.match(field) or pattern3.match(field) def is_capability_level(field): levels = [ "Basic Install", "Seamless Upgrades", "Full Lifecycle", - "Deep Insight", + "Deep Insights", "Auto Pilot" ] return field in levels @@ -467,7 +468,7 @@ def get_alm_kinds(alm_examples): # capabilities check if not is_capability_level(annotations["capabilities"]): self._log_error("metadata.annotations.capabilities %s is not a " - "valid capabilities level", annotations["capability"]) + "valid capabilities level", annotations["capabilities"]) valid = False return valid