Fix inconsitencies between code assumptions and schema (#34901)

* Fix inconsitencies between code assumptions and schema

* Address a couple of RETURN issues, where the description was parsed as a dict
pull/34738/merge
Matt Martz 7 years ago committed by GitHub
parent 2a9daaa45b
commit 19ab882790
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -102,13 +102,13 @@ id:
sample: /subscriptions/12345678-1234-1234-1234-123412341234/testrg/providers/Microsoft.DBforMySQL/servers/mysqlsrv1b6dd89593
version:
description:
- Server version. Possible values include: C(5.6), C(5.7)
- 'Server version. Possible values include: C(5.6), C(5.7)'
returned: always
type: str
sample: 5.6
state:
description:
- A state of a server that is visible to user. Possible values include: C(Ready), C(Dropping), C(Disabled)
- 'A state of a server that is visible to user. Possible values include: C(Ready), C(Dropping), C(Disabled)'
returned: always
type: str
sample: Ready

@ -102,13 +102,13 @@ id:
sample: /subscriptions/12345678-1234-1234-1234-123412341234/resourceGroups/samplerg/providers/Microsoft.DBforPostgreSQL/servers/mysqlsrv1b6dd89593
version:
description:
- Server version. Possible values include: C(9.5), C(9.6)
- 'Server version. Possible values include: C(9.5), C(9.6)'
returned: always
type: str
sample: 9.6
state:
description:
- A state of a server that is visible to user. Possible values include: C(Ready), C(Dropping), C(Disabled)
- 'A state of a server that is visible to user. Possible values include: C(Ready), C(Dropping), C(Disabled)'
returned: always
type: str
sample: Ready

@ -1065,7 +1065,7 @@ class ModuleValidator(Validator):
for option, details in options.items():
try:
names = [option] + details.get('aliases', [])
except AttributeError:
except (TypeError, AttributeError):
# Reporting of this syntax error will be handled by schema validation.
continue

@ -25,7 +25,7 @@ suboption_schema = Schema(
Required('description'): Any(list_string_types, *string_types),
'required': bool,
'choices': list,
'aliases': Any(list, *string_types),
'aliases': Any(list_string_types),
'version_added': Any(float, *string_types),
'default': Any(None, float, int, bool, list, dict, *string_types),
# Note: Types are strings, not literal bools, such as True or False
@ -43,7 +43,7 @@ option_schema = Schema(
Required('description'): Any(list_string_types, *string_types),
'required': bool,
'choices': list,
'aliases': Any(list, *string_types),
'aliases': Any(list_string_types),
'version_added': Any(float, *string_types),
'default': Any(None, float, int, bool, list, dict, *string_types),
'suboptions': Any(None, *list_dict_suboption_schema),
@ -61,7 +61,7 @@ list_dict_option_schema = [{str_type: option_schema} for str_type in string_type
def return_schema(data):
return_schema_dict = {
Required('description'): Any(list, *string_types),
Required('description'): Any(list_string_types, *string_types),
Required('returned'): Any(*string_types),
Required('type'): Any('string', 'list', 'boolean', 'dict', 'complex', 'bool', 'float', 'int', 'dictionary', 'str'),
'version_added': Any(float, *string_types),

Loading…
Cancel
Save