mirror of
https://github.com/hashicorp/vagrant.git
synced 2026-05-28 04:36:05 -04:00
providers/docker: smarter about setting ID to nil for machine
This commit is contained in:
parent
d526dd54fe
commit
b26ecb0150
2 changed files with 16 additions and 10 deletions
|
|
@ -143,6 +143,7 @@ module VagrantPlugins
|
|||
b.use Call, IsState, :not_created do |env, b2|
|
||||
if env[:result]
|
||||
b2.use Message, I18n.t("docker_provider.messages.not_created")
|
||||
b2.use Destroy
|
||||
next
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -7,20 +7,25 @@ module VagrantPlugins
|
|||
end
|
||||
|
||||
def call(env)
|
||||
env[:ui].info I18n.t("docker_provider.messages.destroying")
|
||||
|
||||
machine = env[:machine]
|
||||
driver = machine.provider.driver
|
||||
|
||||
# If we have a build image, store that
|
||||
image_file = machine.data_dir.join("docker_build_image")
|
||||
image = nil
|
||||
if image_file.file?
|
||||
image = image_file.read.chomp
|
||||
# If the container actually exists, destroy it
|
||||
if machine.state.id != :not_created
|
||||
driver = machine.provider.driver
|
||||
|
||||
# If we have a build image, store that
|
||||
image_file = machine.data_dir.join("docker_build_image")
|
||||
image = nil
|
||||
if image_file.file?
|
||||
image = image_file.read.chomp
|
||||
end
|
||||
env[:build_image] = image
|
||||
|
||||
env[:ui].info I18n.t("docker_provider.messages.destroying")
|
||||
driver.rm(machine.id)
|
||||
end
|
||||
env[:build_image] = image
|
||||
|
||||
driver.rm(machine.id)
|
||||
# Otherwise, always make sure we remove the ID
|
||||
machine.id = nil
|
||||
|
||||
@app.call(env)
|
||||
|
|
|
|||
Loading…
Reference in a new issue