27 lines
711 B
Ruby
27 lines
711 B
Ruby
# Copyright (c) HashiCorp, Inc.
|
|
# SPDX-License-Identifier: BUSL-1.1
|
|
|
|
module VagrantPlugins
|
|
module ProviderVirtualBox
|
|
module Action
|
|
class CheckAccessible
|
|
def initialize(app, env)
|
|
@app = app
|
|
end
|
|
|
|
def call(env)
|
|
if env[:machine].state.id == :inaccessible
|
|
# The VM we are attempting to manipulate is inaccessible. This
|
|
# is a very bad situation and can only be fixed by the user. It
|
|
# also prohibits us from actually doing anything with the virtual
|
|
# machine, so we raise an error.
|
|
raise Vagrant::Errors::VMInaccessible
|
|
end
|
|
|
|
@app.call(env)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|