def call(env)
config = env[:machine].provider_config
container_name = config.container_name
case container_name
when :machine
container_name = env[:machine].name.to_s
when String
else
container_name = generate_container_name(env)
end
backingstore = config.backingstore
if backingstore.nil?
backingstore = config.privileged ? "best" : "dir"
end
driver = env[:machine].provider.driver
template_options = env[:lxc_template_opts]
if driver.supports_new_config_format
if env[:lxc_box_config]
driver.update_config_keys(env[:lxc_box_config])
end
else
template_options['--oldconfig'] = ''
end
driver.create(
container_name,
backingstore,
config.backingstore_options,
env[:lxc_template_src],
env[:lxc_template_config],
template_options
)
driver.update_config_keys
env[:machine].id = container_name
@app.call env
end