cloud-init-pre-network:
runs before network service.
this service gets metadata from local datasources
in order to configure network stuff before network service
and configures the instance on its first booot
cloud-init:
runs after network service and will get userdata/metadata
from datasources(local/network). This service fixes disk
and filesystem
add first-boot-setup and no-network options
update documentation
cloud-init-firstboot service will do initial tasks
* create and set up default user
* get and process metadata/userdata from datasources
* disable root login
this service will run once (firstboot)
cloud-init service won't run at the first boot
but it will do at next boot times
* verify/fix/resize/grow up partitions and filesystems
* get and process userdata from datasources (TODO: optional)