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 theinline
option.inline
(string) - Inline cloud-init user data. This will be added to the multipart user-data file along with itscontent_type
. Incompatible withpath
option.
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 supportedtype
is:user_data
. If a type is not defined, it will default to:user_data
.