Step: `mklabel`
-----------------------------------------------------------------------------

Create a partition table on a block device.

Step keys:

* `mklabel` &mdash; REQUIRED; type of partition table, MUST be one of
  `msdos` and `gpt`.

* `device` &mdash; REQUIRED; tag for the block device.

Example (in the .vmdb file):

    - mklabel: msdos
      device: "{{ output }}"

Step: `mkpart`
-----------------------------------------------------------------------------

Create a partition.

Step keys:

* `mkpart` &mdash; REQUIRED; type of partition to create: use
  `primary` (but any value acceped by `parted` is OK).

* `device` &mdash; REQUIRED; filename of block device where to create
  partition.

* `start` &mdash; REQUIRED; where does the partition start?

* `end` &mdash; REQUIRED; where does the partition end?

* `tag` &mdash; REQUIRED; tag for the new partition.

Example (in the .vmdb file):

    - mkpart: primary
      device: "{{ output }}"
      start: 0%
      end: 100%
      tag: root

Step: `kpartx`
-----------------------------------------------------------------------------

Create loop devices for partitions in an image file. Not needed when
installing to a real block device, instead of an image file.

Step keys:

* `kpartx` &mdash; REQUIRED; filename of block device with partitions.

Example (in the .vmdb file):

    - kpartx: "{{ output }}"
