Revert "Remove custom Disconnect action"

This reverts commit a8825b0b28.

I'm still having issues with SSH connections, even with 1.1.5
This commit is contained in:
Fabio Rehm 2013-04-10 01:36:53 -03:00
parent e4c74dadd2
commit e4dd0620ce
2 changed files with 21 additions and 0 deletions

View file

@ -5,6 +5,7 @@ require 'vagrant-lxc/action/clear_forwarded_ports'
require 'vagrant-lxc/action/create'
require 'vagrant-lxc/action/created'
require 'vagrant-lxc/action/destroy'
require 'vagrant-lxc/action/disconnect'
require 'vagrant-lxc/action/compress_rootfs'
require 'vagrant-lxc/action/forced_halt'
require 'vagrant-lxc/action/forward_ports'
@ -117,6 +118,8 @@ module Vagrant
# b.use CheckDependencies
b.use Vagrant::Action::Builtin::Call, Created do |env, b2|
if env[:result]
# TODO: If vagrant >=...
b2.use Disconnect
b2.use ClearForwardedPorts
b2.use Vagrant::Action::Builtin::Call, Vagrant::Action::Builtin::GracefulHalt, :stopped, :running do |env2, b3|
if !env2[:result]

View file

@ -0,0 +1,18 @@
module Vagrant
module LXC
module Action
class Disconnect
def initialize(app, env)
@app = app
end
def call(env)
@app.call env
# FIXME: Vagrant >= 1.1.3 should not need this
# https://github.com/mitchellh/vagrant/compare/715539eac30bc9ae62ddbb6337d13f036f7b774d...ec1bae0#L2R128
env[:machine].instance_variable_set(:@communicator, nil)
end
end
end
end
end