mirror of
https://github.com/hashicorp/vagrant.git
synced 2026-06-14 19:20:01 -04:00
This reverts commit1c26a4abb0, reversing changes made to186824a568. The changes broke plugin loading when using subcommands so these changes will be reverted until the underlying issue can be investigated and resolved.
88 lines
2.2 KiB
Protocol Buffer
88 lines
2.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package hashicorp.vagrant;
|
|
|
|
option go_package = "github.com/hashicorp/vagrant/internal/server/proto/ruby_vagrant";
|
|
|
|
import "google/protobuf/empty.proto";
|
|
import "google/protobuf/any.proto";
|
|
import "google/rpc/error_details.proto";
|
|
|
|
import "plugin.proto";
|
|
|
|
// The service that is implemented for the server backend.
|
|
service RubyVagrant {
|
|
// Gets available ruby plugins
|
|
rpc GetPlugins(google.protobuf.Empty) returns (GetPluginsResponse);
|
|
rpc ParseVagrantfile(ParseVagrantfileRequest) returns (ParseVagrantfileResponse);
|
|
rpc ParseVagrantfileProc(ParseVagrantfileProcRequest) returns (ParseVagrantfileResponse);
|
|
rpc ParseVagrantfileSubvm(ParseVagrantfileSubvmRequest) returns (ParseVagrantfileResponse);
|
|
rpc ParseVagrantfileProvider(ParseVagrantfileProviderRequest) returns (ParseVagrantfileResponse);
|
|
}
|
|
|
|
/********************************************************************
|
|
* Plugins
|
|
********************************************************************/
|
|
|
|
message GetPluginsResponse {
|
|
repeated Plugin plugins = 1;
|
|
}
|
|
|
|
message Plugin {
|
|
// name of the plugin
|
|
string name = 1;
|
|
|
|
// type of the plugin
|
|
Type type = 2;
|
|
|
|
// options for the plugin
|
|
google.protobuf.Any options = 3;
|
|
|
|
// Supported plugin types, the values here MUST match the enum values
|
|
// in the Go sdk/component package exactly. A test in internal/server
|
|
// validates this.
|
|
enum Type {
|
|
UNKNOWN = 0;
|
|
COMMAND = 1;
|
|
COMMUNICATOR = 2;
|
|
GUEST = 3;
|
|
HOST = 4;
|
|
PROVIDER = 5;
|
|
PROVISIONER = 6;
|
|
SYNCEDFOLDER = 7;
|
|
AUTHENTICATOR = 8;
|
|
LOGPLATFORM = 9;
|
|
LOGVIEWER = 10;
|
|
MAPPER = 11;
|
|
CONFIG = 12;
|
|
PLUGININFO = 13;
|
|
PUSH = 14;
|
|
}
|
|
}
|
|
|
|
/********************************************************************
|
|
* Vagrantfile
|
|
********************************************************************/
|
|
|
|
message ParseVagrantfileRequest {
|
|
// Path to the Vagrantfile
|
|
string path = 1;
|
|
}
|
|
|
|
message ParseVagrantfileProcRequest {
|
|
sdk.Args.ProcRef proc = 1;
|
|
}
|
|
|
|
message ParseVagrantfileResponse {
|
|
// Vagrantfile representation
|
|
sdk.Args.Hash data = 1;
|
|
}
|
|
|
|
message ParseVagrantfileSubvmRequest {
|
|
sdk.Config.RawRubyValue subvm = 1;
|
|
}
|
|
|
|
message ParseVagrantfileProviderRequest {
|
|
sdk.Config.RawRubyValue subvm = 1;
|
|
string provider = 2;
|
|
}
|