示例#1
0
class ESXVirtualMachineDiskSchemaItem(ComplexSchemaItem):
    """
    Configuration Schema Item for ESX Virtual Machine Disk
    """

    title = "ESX Virtual Machine Disk Configuration"
    description = "ESX virtual machine disk properties"
    required = True

    size = NumberItem(title="Disk size",
                      description="Size of the disk in GB",
                      required=True)
    unit = StringItem(
        title="Disk size unit",
        description=(
            "Unit of the disk size, to VMware a GB is the same as GiB = 1024MiB"
        ),
        required=False,
        default="GB",
        enum=("KB", "MB", "GB"),
    )
    adapter = StringItem(
        title="Virtual Machine Adapter Name",
        description=("Unique adapter name for virtual machine "
                     "for creation an arbitrary value should be specified"),
        required=True,
    )
    filename = StringItem(
        title="Virtual Machine Disk File",
        description="File name of the virtual machine vmdk",
    )
    datastore = StringItem(
        title="Virtual Machine Disk Datastore",
        description=
        "Disk datastore where the virtual machine files will be placed",
        required=True,
    )
    address = StringItem(
        title="Virtual Machine SCSI Address",
        description="Address of the SCSI adapter for the virtual machine",
        pattern=r"\d:\d",
    )
    thin_provision = BooleanItem(
        title="Virtual Machine Disk Provision Type",
        description="Provision type of the disk",
        default=True,
        required=False,
    )
    eagerly_scrub = AnyOfItem(required=False,
                              items=[BooleanItem(), NullItem()])
    controller = StringItem(
        title="Virtual Machine SCSI Adapter",
        description="Name of the SCSI adapter where the disk will be connected",
        required=True,
    )
示例#2
0
class ESXVirtualMachineRemoveSchema(DefinitionsSchema):
    '''
    Remove Schema for ESX Virtual Machines to delete or unregister virtual machines
    '''
    name = StringItem(title='Virtual Machine name',
                      description='Name of the virtual machine',
                      required=True)
    datacenter = StringItem(title='Virtual Machine Datacenter',
                            description='Datacenter of the virtual machine',
                            required=True)
    placement = AnyOfItem(
        required=False,
        items=[ESXVirtualMachinePlacementSchemaItem(),
               NullItem()])
    power_off = BooleanItem(title='Power off vm',
                            description='Power off vm before delete operation',
                            required=False)
示例#3
0
class ESXVirtualMachineDiskSchemaItem(ComplexSchemaItem):
    '''
    Configuration Schema Item for ESX Virtual Machine Disk
    '''
    title = 'ESX Virtual Machine Disk Configuration'
    description = 'ESX virtual machine disk properties'
    required = True

    size = NumberItem(title='Disk size',
                      description='Size of the disk in GB',
                      required=True)
    unit = StringItem(title='Disk size unit',
                      description='Unit of the disk size, to VMware a '
                      'GB is the same as GiB = 1024MiB',
                      required=False,
                      default='GB',
                      enum=('KB', 'MB', 'GB'))
    adapter = StringItem(title='Virtual Machine Adapter Name',
                         description='Unique adapter name for virtual machine'
                         'for creation an arbitrary value should be specified',
                         required=True)
    filename = StringItem(title='Virtual Machine Disk File',
                          description='File name of the virtual machine vmdk')
    datastore = StringItem(
        title='Virtual Machine Disk Datastore',
        description=
        'Disk datastore where the virtual machine files will be placed',
        required=True)
    address = StringItem(
        title='Virtual Machine SCSI Address',
        description='Address of the SCSI adapter for the virtual machine',
        pattern=r'\d:\d')
    thin_provision = BooleanItem(title='Virtual Machine Disk Provision Type',
                                 description='Provision type of the disk',
                                 default=True,
                                 required=False)
    eagerly_scrub = AnyOfItem(required=False,
                              items=[BooleanItem(), NullItem()])
    controller = StringItem(
        title='Virtual Machine SCSI Adapter',
        description='Name of the SCSI adapter where the disk will be connected',
        required=True)
示例#4
0
文件: esxvm.py 项目: steverweber/salt
class ESXVirtualMachineRemoveSchema(DefinitionsSchema):
    """
    Remove Schema for ESX Virtual Machines to delete or unregister virtual machines
    """

    name = StringItem(
        title="Virtual Machine name",
        description="Name of the virtual machine",
        required=True,
    )
    datacenter = StringItem(
        title="Virtual Machine Datacenter",
        description="Datacenter of the virtual machine",
        required=True,
    )
    placement = AnyOfItem(
        required=False, items=[ESXVirtualMachinePlacementSchemaItem(), NullItem()]
    )
    power_off = BooleanItem(
        title="Power off vm",
        description="Power off vm before delete operation",
        required=False,
    )