Added DiskGroupsDiskIdSchema JSON schema and DiskGroupDiskIdItem complex schema item

This commit is contained in:
Alexandru Bleotu 2017-09-25 06:05:43 -04:00
parent 23fbb26f31
commit 40589adc0c

View file

@ -13,12 +13,50 @@
from __future__ import absolute_import
# Import Salt libs
from salt.utils.schema import (Schema,
from salt.utils.schema import (DefinitionsSchema,
Schema,
ComplexSchemaItem,
ArrayItem,
IntegerItem,
StringItem)
class DiskGroupDiskIdItem(ComplexSchemaItem):
'''
Schema item of a ESXi host disk group containg disk ids
'''
title = 'Diskgroup Disk Id Item'
description = 'ESXi host diskgroup item containing disk ids'
cache_id = StringItem(
title='Cache Disk Id',
description='Specifies the id of the cache disk',
pattern=r'[^\s]+')
capacity_ids = ArrayItem(
title='Capacity Disk Ids',
description='Array with the ids of the capacity disks',
items=StringItem(pattern=r'[^\s]+'),
min_items=1)
class DiskGroupsDiskIdSchema(DefinitionsSchema):
'''
Schema of ESXi host diskgroups containing disk ids
'''
title = 'Diskgroups Disk Id Schema'
description = 'ESXi host diskgroup schema containing disk ids'
diskgroups = ArrayItem(
title='DiskGroups',
description='List of disk groups in an ESXi host',
min_items = 1,
items=DiskGroupDiskIdItem(),
required=True)
class EsxiProxySchema(Schema):
'''
Schema of the esxi proxy input