+`cicustom`: `[meta=<volume>] [,network=<volume>] [,user=<volume>] [,vendor=<volume>]` ::
+
+Specify custom files to replace the automatically generated ones at start.
+
+`meta`=`<volume>` ;;
+
+Specify a custom file containing all meta data passed to the VM via"
+ ." cloud-init. This is provider specific meaning configdrive2 and nocloud differ.
+
+`network`=`<volume>` ;;
+
+Specify a custom file containing all network data passed to the VM via cloud-init.
+
+`user`=`<volume>` ;;
+
+Specify a custom file containing all user data passed to the VM via cloud-init.
+
+`vendor`=`<volume>` ;;
+
+Specify a custom file containing all vendor data passed to the VM via cloud-init.
+
`cipassword`: `<string>` ::
Password to assign the user. Using this is generally not recommended. Use ssh keys instead. Also note that older cloud-init versions do not support hashed passwords.
-`citype`: `<configdrive2 | nocloud>` ::
+`citype`: `<configdrive2 | nocloud | opennebula>` ::
Specifies the cloud-init configuration format. The default depends on the configured operating system type (`ostype`. We use the `nocloud` format for Linux, and `configdrive2` for windows.
+
IP addresses use CIDR notation, gateways are optional but need an IP of the same type specified.
+
-The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit gateway should be provided.
-SLAAC is not supported by cloud-init but at least netplan activates SLAAC when selecting 'dhcp' so it should work with up-to-date netplan versions.
+The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit
+gateway should be provided.
+For IPv6 the special string 'auto' can be used to use stateless autoconfiguration. This requires
+cloud-init 19.4 or newer.
+
-If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using dhcp on IPv4.
+If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using
+dhcp on IPv4.
`gw`=`<GatewayIPv4>` ;;