vagrant/plugins/communicators/none/plugin.rb
Chris Roberts eee6fefd67
Add a :none communicator
Adds a communicator which does not provide communication to the
guest machine. All methods for the communicator are simply stubbed
with a successful result. This allows a guest to be configured
with the `:none` communicator and Vagrant to properly `up` it.

This currently lacks any user notification or guards within
configuration to verify guest configuration does not rely on
the communicator. It is wrapped as experimental to allow early
access to the basic functionality without making it generally
available.
2025-04-22 15:50:36 -07:00

26 lines
768 B
Ruby

# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: BUSL-1.1
require "vagrant"
module VagrantPlugins
Vagrant::Util::Experimental.guard_with(:none_communicator) do
module CommunicatorNone
class Plugin < Vagrant.plugin("2")
name "none communicator"
description <<-DESC
This plugin provides no communication to remote machines.
It allows Vagrant to manage remote machines without the
ability to connect to them for configuration/provisioning.
Any calls to methods provided by this communicator will
always be successful.
DESC
communicator("none") do
require File.expand_path("../communicator", __FILE__)
Communicator
end
end
end
end
end