Vagrant
Configuration
Vagrant cloud-init has several options that allow users to define a config to be used with cloud-init.
For more detailed information about these config values and how to use cloud-init, please read the official documentation for cloud-init.
cloud_init Options
It should be noted that Vagrant will not validate the correctness of the cloud-init
config provided, only that a cloud-init config has been provided through path
or directly inline in a Vagrantfile.
content_type(string) - Required argument that defines the Content-Type of the given cloud_init config. Vagrant only supports the following options forcontent_type:path(string) - Path to a file on the host machine that contains cloud-init user data. This will be added to the multipart user-data file along with itscontent_type. Incompatible with theinlineoption.inline(string) - Inline cloud-init user data. This will be added to the multipart user-data file along with itscontent_type. Incompatible withpathoption.
Examples of how to define these options can be found in the usage documentation.
cloud_init Type
When defining a config for cloud_init, you can optionally define a type for the config:
config.vm.cloud_init :user_data, content_type: "text/cloud-config", path: "config.cfg"
config.vm.cloud_init :user_data do |cloud_init|
cloud_init.content_type = "text/cloud-config"
cloud_init.path = "config.cfg"
end
However, this is not a requirement. Leaving off type will default to :user_data.
type(Symbol) - This is an optional config that defines the type of cloud-init config. Currently, the only supportedtypeis:user_data. If a type is not defined, it will default to:user_data.