Get all config.vm.* variables

This commit is contained in:
sophia 2021-05-21 17:14:02 -05:00 committed by Paul Hinze
parent b152cc4f2b
commit da58bbc1c1
No known key found for this signature in database
GPG Key ID: B69DEDF2D55501C0
5 changed files with 551 additions and 201 deletions

3
Vagrantfile vendored
View File

@ -19,6 +19,7 @@ Vagrant.configure("2") do |config|
["a", "b"].each do |m| ["a", "b"].each do |m|
config.vm.define m do |c| config.vm.define m do |c|
c.vm.hostname = "computer-#{m}"
c.vm.box = "hashicorp/bionic64" c.vm.box = "hashicorp/bionic64"
c.vm.network "forwarded_port", guest: 80, host: 8080 c.vm.network "forwarded_port", guest: 80, host: 8080
@ -29,6 +30,8 @@ Vagrant.configure("2") do |config|
end end
config.vm.define "one" do |c| config.vm.define "one" do |c|
c.vm.hostname = "one"
c.vm.usable_port_range = 8070..8090
c.vm.box = "bento/ubuntu" c.vm.box = "bento/ubuntu"
c.vm.provision "shell", inline: "echo hello world" c.vm.provision "shell", inline: "echo hello world"
c.vm.provision "shell" do |s| c.vm.provision "shell" do |s|

View File

@ -334,15 +334,39 @@ type VagrantfileComponents_ConfigVM struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
AllowFstabModification bool `protobuf:"varint,1,opt,name=allow_fstab_modification,json=allowFstabModification,proto3" json:"allow_fstab_modification,omitempty"` AllowedSyncedFolderTypes []string `protobuf:"bytes,1,rep,name=allowed_synced_folder_types,json=allowedSyncedFolderTypes,proto3" json:"allowed_synced_folder_types,omitempty"`
AllowHostsModificaion bool `protobuf:"varint,2,opt,name=allow_hosts_modificaion,json=allowHostsModificaion,proto3" json:"allow_hosts_modificaion,omitempty"` AllowFstabModification bool `protobuf:"varint,2,opt,name=allow_fstab_modification,json=allowFstabModification,proto3" json:"allow_fstab_modification,omitempty"`
Box string `protobuf:"bytes,3,opt,name=box,proto3" json:"box,omitempty"` AllowHostsModificaion bool `protobuf:"varint,3,opt,name=allow_hosts_modificaion,json=allowHostsModificaion,proto3" json:"allow_hosts_modificaion,omitempty"`
BaseMac string `protobuf:"bytes,4,opt,name=base_mac,json=baseMac,proto3" json:"base_mac,omitempty"`
BaseAddress string `protobuf:"bytes,5,opt,name=base_address,json=baseAddress,proto3" json:"base_address,omitempty"`
BootTimeout int32 `protobuf:"varint,6,opt,name=boot_timeout,json=bootTimeout,proto3" json:"boot_timeout,omitempty"`
Box string `protobuf:"bytes,7,opt,name=box,proto3" json:"box,omitempty"`
IgnoreBoxVagrantfile bool `protobuf:"varint,8,opt,name=ignore_box_vagrantfile,json=ignoreBoxVagrantfile,proto3" json:"ignore_box_vagrantfile,omitempty"`
BoxCheckUpdate bool `protobuf:"varint,9,opt,name=box_check_update,json=boxCheckUpdate,proto3" json:"box_check_update,omitempty"`
BoxUrl string `protobuf:"bytes,10,opt,name=box_url,json=boxUrl,proto3" json:"box_url,omitempty"`
BoxServerUrl string `protobuf:"bytes,11,opt,name=box_server_url,json=boxServerUrl,proto3" json:"box_server_url,omitempty"`
BoxVersion string `protobuf:"bytes,12,opt,name=box_version,json=boxVersion,proto3" json:"box_version,omitempty"`
BoxDownloadCaCert string `protobuf:"bytes,13,opt,name=box_download_ca_cert,json=boxDownloadCaCert,proto3" json:"box_download_ca_cert,omitempty"`
BoxDownloadCaPath string `protobuf:"bytes,14,opt,name=box_download_ca_path,json=boxDownloadCaPath,proto3" json:"box_download_ca_path,omitempty"`
BoxDownloadChecksum string `protobuf:"bytes,15,opt,name=box_download_checksum,json=boxDownloadChecksum,proto3" json:"box_download_checksum,omitempty"`
BoxDownloadChecksumType string `protobuf:"bytes,16,opt,name=box_download_checksum_type,json=boxDownloadChecksumType,proto3" json:"box_download_checksum_type,omitempty"`
BoxDownloadClientCert string `protobuf:"bytes,17,opt,name=box_download_client_cert,json=boxDownloadClientCert,proto3" json:"box_download_client_cert,omitempty"`
BoxDownloadInsecure bool `protobuf:"varint,18,opt,name=box_download_insecure,json=boxDownloadInsecure,proto3" json:"box_download_insecure,omitempty"`
BoxDownloadLocationTrusted bool `protobuf:"varint,19,opt,name=box_download_location_trusted,json=boxDownloadLocationTrusted,proto3" json:"box_download_location_trusted,omitempty"`
BoxDownloadOptions map[string]string `protobuf:"bytes,20,rep,name=box_download_options,json=boxDownloadOptions,proto3" json:"box_download_options,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
Communicator string `protobuf:"bytes,21,opt,name=communicator,proto3" json:"communicator,omitempty"`
GracefulHaltTimeout int32 `protobuf:"varint,22,opt,name=graceful_halt_timeout,json=gracefulHaltTimeout,proto3" json:"graceful_halt_timeout,omitempty"`
Guest string `protobuf:"bytes,23,opt,name=guest,proto3" json:"guest,omitempty"`
Hostname string `protobuf:"bytes,24,opt,name=hostname,proto3" json:"hostname,omitempty"`
PostUpMessage string `protobuf:"bytes,25,opt,name=post_up_message,json=postUpMessage,proto3" json:"post_up_message,omitempty"`
UsablePortRange []int32 `protobuf:"varint,26,rep,packed,name=usable_port_range,json=usablePortRange,proto3" json:"usable_port_range,omitempty"`
BoxExtraDownloadOptions []string `protobuf:"bytes,27,rep,name=box_extra_download_options,json=boxExtraDownloadOptions,proto3" json:"box_extra_download_options,omitempty"`
// TODO: CloudInit = 4 (Experimental) // TODO: CloudInit = 4 (Experimental)
Providers []*VagrantfileComponents_Provider `protobuf:"bytes,5,rep,name=providers,proto3" json:"providers,omitempty"` Providers []*VagrantfileComponents_Provider `protobuf:"bytes,29,rep,name=providers,proto3" json:"providers,omitempty"`
// TODO: Disks = 6 (Experimental) // TODO: Disks = 6 (Experimental)
Networks []*VagrantfileComponents_Network `protobuf:"bytes,7,rep,name=networks,proto3" json:"networks,omitempty"` Networks []*VagrantfileComponents_Network `protobuf:"bytes,31,rep,name=networks,proto3" json:"networks,omitempty"`
Provisioners []*VagrantfileComponents_Provisioner `protobuf:"bytes,8,rep,name=provisioners,proto3" json:"provisioners,omitempty"` Provisioners []*VagrantfileComponents_Provisioner `protobuf:"bytes,32,rep,name=provisioners,proto3" json:"provisioners,omitempty"`
SyncedFolders []*VagrantfileComponents_SyncedFolder `protobuf:"bytes,9,rep,name=synced_folders,json=syncedFolders,proto3" json:"synced_folders,omitempty"` SyncedFolders []*VagrantfileComponents_SyncedFolder `protobuf:"bytes,33,rep,name=synced_folders,json=syncedFolders,proto3" json:"synced_folders,omitempty"`
} }
func (x *VagrantfileComponents_ConfigVM) Reset() { func (x *VagrantfileComponents_ConfigVM) Reset() {
@ -377,6 +401,13 @@ func (*VagrantfileComponents_ConfigVM) Descriptor() ([]byte, []int) {
return file_proto_ruby_vagrant_ruby_server_proto_rawDescGZIP(), []int{4, 0} return file_proto_ruby_vagrant_ruby_server_proto_rawDescGZIP(), []int{4, 0}
} }
func (x *VagrantfileComponents_ConfigVM) GetAllowedSyncedFolderTypes() []string {
if x != nil {
return x.AllowedSyncedFolderTypes
}
return nil
}
func (x *VagrantfileComponents_ConfigVM) GetAllowFstabModification() bool { func (x *VagrantfileComponents_ConfigVM) GetAllowFstabModification() bool {
if x != nil { if x != nil {
return x.AllowFstabModification return x.AllowFstabModification
@ -391,6 +422,27 @@ func (x *VagrantfileComponents_ConfigVM) GetAllowHostsModificaion() bool {
return false return false
} }
func (x *VagrantfileComponents_ConfigVM) GetBaseMac() string {
if x != nil {
return x.BaseMac
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBaseAddress() string {
if x != nil {
return x.BaseAddress
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBootTimeout() int32 {
if x != nil {
return x.BootTimeout
}
return 0
}
func (x *VagrantfileComponents_ConfigVM) GetBox() string { func (x *VagrantfileComponents_ConfigVM) GetBox() string {
if x != nil { if x != nil {
return x.Box return x.Box
@ -398,6 +450,146 @@ func (x *VagrantfileComponents_ConfigVM) GetBox() string {
return "" return ""
} }
func (x *VagrantfileComponents_ConfigVM) GetIgnoreBoxVagrantfile() bool {
if x != nil {
return x.IgnoreBoxVagrantfile
}
return false
}
func (x *VagrantfileComponents_ConfigVM) GetBoxCheckUpdate() bool {
if x != nil {
return x.BoxCheckUpdate
}
return false
}
func (x *VagrantfileComponents_ConfigVM) GetBoxUrl() string {
if x != nil {
return x.BoxUrl
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxServerUrl() string {
if x != nil {
return x.BoxServerUrl
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxVersion() string {
if x != nil {
return x.BoxVersion
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadCaCert() string {
if x != nil {
return x.BoxDownloadCaCert
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadCaPath() string {
if x != nil {
return x.BoxDownloadCaPath
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadChecksum() string {
if x != nil {
return x.BoxDownloadChecksum
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadChecksumType() string {
if x != nil {
return x.BoxDownloadChecksumType
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadClientCert() string {
if x != nil {
return x.BoxDownloadClientCert
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadInsecure() bool {
if x != nil {
return x.BoxDownloadInsecure
}
return false
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadLocationTrusted() bool {
if x != nil {
return x.BoxDownloadLocationTrusted
}
return false
}
func (x *VagrantfileComponents_ConfigVM) GetBoxDownloadOptions() map[string]string {
if x != nil {
return x.BoxDownloadOptions
}
return nil
}
func (x *VagrantfileComponents_ConfigVM) GetCommunicator() string {
if x != nil {
return x.Communicator
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetGracefulHaltTimeout() int32 {
if x != nil {
return x.GracefulHaltTimeout
}
return 0
}
func (x *VagrantfileComponents_ConfigVM) GetGuest() string {
if x != nil {
return x.Guest
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetHostname() string {
if x != nil {
return x.Hostname
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetPostUpMessage() string {
if x != nil {
return x.PostUpMessage
}
return ""
}
func (x *VagrantfileComponents_ConfigVM) GetUsablePortRange() []int32 {
if x != nil {
return x.UsablePortRange
}
return nil
}
func (x *VagrantfileComponents_ConfigVM) GetBoxExtraDownloadOptions() []string {
if x != nil {
return x.BoxExtraDownloadOptions
}
return nil
}
func (x *VagrantfileComponents_ConfigVM) GetProviders() []*VagrantfileComponents_Provider { func (x *VagrantfileComponents_ConfigVM) GetProviders() []*VagrantfileComponents_Provider {
if x != nil { if x != nil {
return x.Providers return x.Providers
@ -1171,158 +1363,235 @@ var file_proto_ruby_vagrant_ruby_server_proto_rawDesc = []byte{
0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66,
0x69, 0x6c, 0x65, 0x52, 0x0b, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x69, 0x6c, 0x65, 0x52, 0x0b, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65,
0x22, 0xe8, 0x10, 0x0a, 0x15, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xaa, 0x1a, 0x0a, 0x15, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0xe5, 0x03, 0x0a, 0x08, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0xa7, 0x0d, 0x0a, 0x08, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x4d, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x4d, 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
0x5f, 0x66, 0x73, 0x74, 0x61, 0x62, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72,
0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x18, 0x61, 0x6c,
0x46, 0x73, 0x74, 0x61, 0x62, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65,
0x6e, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x66, 0x73, 0x74, 0x61, 0x62, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
0x28, 0x08, 0x52, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x4d, 0x6f, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x46,
0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x6f, 0x78, 0x73, 0x74, 0x61, 0x62, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x62, 0x6f, 0x78, 0x12, 0x4f, 0x0a, 0x09, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x5f,
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x08, 0x52, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x4d, 0x6f, 0x64,
0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x69, 0x66, 0x69, 0x63, 0x61, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65,
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x5f, 0x6d, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65,
0x72, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x08, 0x4d, 0x61, 0x63, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x41,
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x74,
0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6f,
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x6f, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x6f, 0x78,
0x52, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x58, 0x0a, 0x0c, 0x70, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x62, 0x6f, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x69,
0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x6f, 0x78, 0x5f, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e,
0x32, 0x34, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, 0x67, 0x6e,
0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x6f, 0x72, 0x65, 0x42, 0x6f, 0x78, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x6f, 0x78, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x75,
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x6f, 0x78,
0x6e, 0x65, 0x72, 0x73, 0x12, 0x5c, 0x0a, 0x0e, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x66, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x62,
0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x68, 0x6f, 0x78, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f,
0x78, 0x55, 0x72, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x6f, 0x78, 0x5f, 0x73, 0x65, 0x72, 0x76,
0x65, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x6f,
0x78, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f,
0x78, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0a, 0x62, 0x6f, 0x78, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x14, 0x62,
0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x61, 0x5f, 0x63,
0x65, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x62, 0x6f, 0x78, 0x44, 0x6f,
0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x14,
0x62, 0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x61, 0x5f,
0x70, 0x61, 0x74, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x62, 0x6f, 0x78, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x50, 0x61, 0x74, 0x68, 0x12, 0x32, 0x0a,
0x15, 0x62, 0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x68,
0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x62, 0x6f,
0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75,
0x6d, 0x12, 0x3b, 0x0a, 0x1a, 0x62, 0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
0x64, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x62, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f,
0x61, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37,
0x0a, 0x18, 0x62, 0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63,
0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09,
0x52, 0x15, 0x62, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6c, 0x69,
0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x6f, 0x78, 0x5f, 0x64,
0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65,
0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x62, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c,
0x6f, 0x61, 0x64, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x62,
0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01,
0x28, 0x08, 0x52, 0x1a, 0x62, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x12, 0x7b,
0x0a, 0x14, 0x62, 0x6f, 0x78, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x68,
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74,
0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70,
0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x4d, 0x2e,
0x64, 0x65, 0x72, 0x52, 0x0d, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x42, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x72, 0x73, 0x1a, 0x58, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x53, 0x48, 0x12, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x62, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e,
0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x63,
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x73, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x15, 0x20, 0x01, 0x28,
0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12,
0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x6f, 0x32, 0x0a, 0x15, 0x67, 0x72, 0x61, 0x63, 0x65, 0x66, 0x75, 0x6c, 0x5f, 0x68, 0x61, 0x6c, 0x74,
0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x45, 0x0a, 0x0b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x52, 0x4d, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x67, 0x72, 0x61, 0x63, 0x65, 0x66, 0x75, 0x6c, 0x48, 0x61, 0x6c, 0x74, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6f, 0x75, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x75, 0x65, 0x73, 0x74, 0x18, 0x17, 0x20, 0x01,
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x28, 0x09, 0x52, 0x05, 0x67, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73,
0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73,
0x6f, 0x72, 0x64, 0x1a, 0x54, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x75, 0x70,
0x73, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x77, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a,
0x61, 0x72, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x77, 0x11, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e,
0x61, 0x72, 0x64, 0x5f, 0x65, 0x6e, 0x76, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x67, 0x65, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65,
0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x76, 0x1a, 0x3d, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x62, 0x6f, 0x78,
0x66, 0x69, 0x67, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f,
0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x17, 0x62,
0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x6f, 0x78, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4f,
0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x1a, 0xda, 0x03, 0x0a, 0x0d, 0x4d, 0x61, 0x63, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x65, 0x72, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4e, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61,
0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
0x0b, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x09, 0x70, 0x72,
0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x72, 0x6b, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x68, 0x61, 0x73, 0x68,
0x69, 0x67, 0x56, 0x4d, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x6d, 0x12, 0x51, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61,
0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
0x28, 0x0b, 0x32, 0x32, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x6e, 0x74, 0x73, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x08, 0x6e, 0x65, 0x74,
0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x58, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x68, 0x61,
0x66, 0x69, 0x67, 0x53, 0x53, 0x48, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x73, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e,
0x68, 0x12, 0x57, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x77, 0x69, 0x6e, 0x72, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65,
0x72, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x12,
0x5c, 0x0a, 0x0e, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72,
0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63,
0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72,
0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x52, 0x4d, 0x52, 0x0b, 0x63, 0x73, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x52, 0x0d,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x72, 0x6d, 0x12, 0x5a, 0x0a, 0x0d, 0x63, 0x6f, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x1a, 0x45, 0x0a,
0x6e, 0x66, 0x69, 0x67, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x17, 0x42, 0x6f, 0x78, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69,
0x0b, 0x32, 0x35, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x69, 0x67, 0x57, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x58, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x53,
0x57, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x12, 0x5d, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x73, 0x69, 0x6f,
0x5f, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73,
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e,
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x45,
0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x52, 0x4d, 0x12, 0x1a, 0x0a,
0x67, 0x72, 0x61, 0x6e, 0x74, 0x1a, 0xc6, 0x01, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x69, 0x6f, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73,
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, 0x54, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57,
0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x6f,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x15, 0x63, 0x72, 0x77, 0x61, 0x72, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6f,
0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x6e, 0x76, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
0x69, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x0a, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x76, 0x1a, 0x3d, 0x0a, 0x0d, 0x43,
0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74,
0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x4c, 0x09, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x1a, 0xda, 0x03, 0x0a, 0x0d, 0x4d,
0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x12, 0x4e, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x6d, 0x18, 0x02, 0x20,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x5b, 0x0a, 0x07,
0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x06, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e,
0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x9f, 0x02, 0x0a, 0x0c, 0x53, 0x79,
0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01,
0x28, 0x08, 0x52, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69,
0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69,
0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18,
0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02,
0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d,
0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x1a, 0xbd, 0x01, 0x0a, 0x0b,
0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70,
0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12,
0x10, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x61,
0x77, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x0f, 0x6d, 0x61,
0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x04, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66,
0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f,
0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x6d, 0x61, 0x63, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x4d, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x6d,
0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x32, 0xc7, 0x01, 0x0a, 0x0b, 0x12, 0x51, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x73, 0x73, 0x68, 0x18, 0x03,
0x52, 0x75, 0x62, 0x79, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x0a, 0x47, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70,
0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43,
0x79, 0x1a, 0x25, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x53, 0x48, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x53, 0x73, 0x68, 0x12, 0x57, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x77, 0x69,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x10, 0x50, 0x61, 0x72, 0x73, 0x6e, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x68, 0x61, 0x73, 0x68,
0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2a, 0x2e, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61,
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x52, 0x4d, 0x52,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x72, 0x6d, 0x12, 0x5a, 0x0a, 0x0d,
0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x18, 0x05, 0x20,
0x73, 0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x41, 0x5a, 0x3f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66,
0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x76, 0x61, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f,
0x67, 0x72, 0x61, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x73, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66,
0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x75, 0x62, 0x79, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x73, 0x73, 0x68, 0x12, 0x5d, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x66,
0x5f, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x36, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67,
0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x1a, 0xc6, 0x01, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74,
0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
0x16, 0x0a, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x12, 0x33, 0x0a,
0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x72, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x63, 0x6f,
0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x64, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x1a, 0x4c, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04,
0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x5b,
0x0a, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a,
0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x9f, 0x02, 0x0a, 0x0c,
0x53, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x04,
0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08,
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75,
0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23,
0x0a, 0x0d, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x1a, 0xbd, 0x01,
0x0a, 0x0b, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a,
0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74,
0x68, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x61, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x72, 0x61, 0x77, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x0f,
0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18,
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72,
0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e,
0x74, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e,
0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x6d,
0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x32, 0xc7, 0x01,
0x0a, 0x0b, 0x52, 0x75, 0x62, 0x79, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x4b, 0x0a,
0x0a, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x1a, 0x25, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69,
0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x10, 0x50, 0x61,
0x72, 0x73, 0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2a,
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61,
0x6e, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66,
0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x68, 0x61, 0x73,
0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2e, 0x50,
0x61, 0x72, 0x73, 0x65, 0x56, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x41, 0x5a, 0x3f, 0x67, 0x69, 0x74, 0x68, 0x75,
0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2f,
0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x75,
0x62, 0x79, 0x5f, 0x76, 0x61, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x33,
} }
var ( var (
@ -1338,7 +1607,7 @@ func file_proto_ruby_vagrant_ruby_server_proto_rawDescGZIP() []byte {
} }
var file_proto_ruby_vagrant_ruby_server_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_proto_ruby_vagrant_ruby_server_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_proto_ruby_vagrant_ruby_server_proto_msgTypes = make([]protoimpl.MessageInfo, 16) var file_proto_ruby_vagrant_ruby_server_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
var file_proto_ruby_vagrant_ruby_server_proto_goTypes = []interface{}{ var file_proto_ruby_vagrant_ruby_server_proto_goTypes = []interface{}{
(Plugin_Type)(0), // 0: hashicorp.vagrant.Plugin.Type (Plugin_Type)(0), // 0: hashicorp.vagrant.Plugin.Type
(*GetPluginsResponse)(nil), // 1: hashicorp.vagrant.GetPluginsResponse (*GetPluginsResponse)(nil), // 1: hashicorp.vagrant.GetPluginsResponse
@ -1357,36 +1626,38 @@ var file_proto_ruby_vagrant_ruby_server_proto_goTypes = []interface{}{
(*VagrantfileComponents_Network)(nil), // 14: hashicorp.vagrant.VagrantfileComponents.Network (*VagrantfileComponents_Network)(nil), // 14: hashicorp.vagrant.VagrantfileComponents.Network
(*VagrantfileComponents_SyncedFolder)(nil), // 15: hashicorp.vagrant.VagrantfileComponents.SyncedFolder (*VagrantfileComponents_SyncedFolder)(nil), // 15: hashicorp.vagrant.VagrantfileComponents.SyncedFolder
(*VagrantfileComponents_Vagrantfile)(nil), // 16: hashicorp.vagrant.VagrantfileComponents.Vagrantfile (*VagrantfileComponents_Vagrantfile)(nil), // 16: hashicorp.vagrant.VagrantfileComponents.Vagrantfile
(*any.Any)(nil), // 17: google.protobuf.Any nil, // 17: hashicorp.vagrant.VagrantfileComponents.ConfigVM.BoxDownloadOptionsEntry
(*empty.Empty)(nil), // 18: google.protobuf.Empty (*any.Any)(nil), // 18: google.protobuf.Any
(*empty.Empty)(nil), // 19: google.protobuf.Empty
} }
var file_proto_ruby_vagrant_ruby_server_proto_depIdxs = []int32{ var file_proto_ruby_vagrant_ruby_server_proto_depIdxs = []int32{
2, // 0: hashicorp.vagrant.GetPluginsResponse.plugins:type_name -> hashicorp.vagrant.Plugin 2, // 0: hashicorp.vagrant.GetPluginsResponse.plugins:type_name -> hashicorp.vagrant.Plugin
0, // 1: hashicorp.vagrant.Plugin.type:type_name -> hashicorp.vagrant.Plugin.Type 0, // 1: hashicorp.vagrant.Plugin.type:type_name -> hashicorp.vagrant.Plugin.Type
16, // 2: hashicorp.vagrant.ParseVagrantfileResponse.vagrantfile:type_name -> hashicorp.vagrant.VagrantfileComponents.Vagrantfile 16, // 2: hashicorp.vagrant.ParseVagrantfileResponse.vagrantfile:type_name -> hashicorp.vagrant.VagrantfileComponents.Vagrantfile
13, // 3: hashicorp.vagrant.VagrantfileComponents.ConfigVM.providers:type_name -> hashicorp.vagrant.VagrantfileComponents.Provider 17, // 3: hashicorp.vagrant.VagrantfileComponents.ConfigVM.box_download_options:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigVM.BoxDownloadOptionsEntry
14, // 4: hashicorp.vagrant.VagrantfileComponents.ConfigVM.networks:type_name -> hashicorp.vagrant.VagrantfileComponents.Network 13, // 4: hashicorp.vagrant.VagrantfileComponents.ConfigVM.providers:type_name -> hashicorp.vagrant.VagrantfileComponents.Provider
12, // 5: hashicorp.vagrant.VagrantfileComponents.ConfigVM.provisioners:type_name -> hashicorp.vagrant.VagrantfileComponents.Provisioner 14, // 5: hashicorp.vagrant.VagrantfileComponents.ConfigVM.networks:type_name -> hashicorp.vagrant.VagrantfileComponents.Network
15, // 6: hashicorp.vagrant.VagrantfileComponents.ConfigVM.synced_folders:type_name -> hashicorp.vagrant.VagrantfileComponents.SyncedFolder 12, // 6: hashicorp.vagrant.VagrantfileComponents.ConfigVM.provisioners:type_name -> hashicorp.vagrant.VagrantfileComponents.Provisioner
6, // 7: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_vm:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigVM 15, // 7: hashicorp.vagrant.VagrantfileComponents.ConfigVM.synced_folders:type_name -> hashicorp.vagrant.VagrantfileComponents.SyncedFolder
7, // 8: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_ssh:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigSSH 6, // 8: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_vm:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigVM
8, // 9: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_winrm:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigWinRM 7, // 9: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_ssh:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigSSH
9, // 10: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_winssh:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigWinssh 8, // 10: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_winrm:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigWinRM
10, // 11: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_vagrant:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigVagrant 9, // 11: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_winssh:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigWinssh
17, // 12: hashicorp.vagrant.VagrantfileComponents.Provisioner.config:type_name -> google.protobuf.Any 10, // 12: hashicorp.vagrant.VagrantfileComponents.MachineConfig.config_vagrant:type_name -> hashicorp.vagrant.VagrantfileComponents.ConfigVagrant
17, // 13: hashicorp.vagrant.VagrantfileComponents.Provider.config:type_name -> google.protobuf.Any 18, // 13: hashicorp.vagrant.VagrantfileComponents.Provisioner.config:type_name -> google.protobuf.Any
17, // 14: hashicorp.vagrant.VagrantfileComponents.Network.config:type_name -> google.protobuf.Any 18, // 14: hashicorp.vagrant.VagrantfileComponents.Provider.config:type_name -> google.protobuf.Any
17, // 15: hashicorp.vagrant.VagrantfileComponents.SyncedFolder.config:type_name -> google.protobuf.Any 18, // 15: hashicorp.vagrant.VagrantfileComponents.Network.config:type_name -> google.protobuf.Any
11, // 16: hashicorp.vagrant.VagrantfileComponents.Vagrantfile.machine_configs:type_name -> hashicorp.vagrant.VagrantfileComponents.MachineConfig 18, // 16: hashicorp.vagrant.VagrantfileComponents.SyncedFolder.config:type_name -> google.protobuf.Any
18, // 17: hashicorp.vagrant.RubyVagrant.GetPlugins:input_type -> google.protobuf.Empty 11, // 17: hashicorp.vagrant.VagrantfileComponents.Vagrantfile.machine_configs:type_name -> hashicorp.vagrant.VagrantfileComponents.MachineConfig
3, // 18: hashicorp.vagrant.RubyVagrant.ParseVagrantfile:input_type -> hashicorp.vagrant.ParseVagrantfileRequest 19, // 18: hashicorp.vagrant.RubyVagrant.GetPlugins:input_type -> google.protobuf.Empty
1, // 19: hashicorp.vagrant.RubyVagrant.GetPlugins:output_type -> hashicorp.vagrant.GetPluginsResponse 3, // 19: hashicorp.vagrant.RubyVagrant.ParseVagrantfile:input_type -> hashicorp.vagrant.ParseVagrantfileRequest
4, // 20: hashicorp.vagrant.RubyVagrant.ParseVagrantfile:output_type -> hashicorp.vagrant.ParseVagrantfileResponse 1, // 20: hashicorp.vagrant.RubyVagrant.GetPlugins:output_type -> hashicorp.vagrant.GetPluginsResponse
19, // [19:21] is the sub-list for method output_type 4, // 21: hashicorp.vagrant.RubyVagrant.ParseVagrantfile:output_type -> hashicorp.vagrant.ParseVagrantfileResponse
17, // [17:19] is the sub-list for method input_type 20, // [20:22] is the sub-list for method output_type
17, // [17:17] is the sub-list for extension type_name 18, // [18:20] is the sub-list for method input_type
17, // [17:17] is the sub-list for extension extendee 18, // [18:18] is the sub-list for extension type_name
0, // [0:17] is the sub-list for field type_name 18, // [18:18] is the sub-list for extension extendee
0, // [0:18] is the sub-list for field type_name
} }
func init() { file_proto_ruby_vagrant_ruby_server_proto_init() } func init() { file_proto_ruby_vagrant_ruby_server_proto_init() }
@ -1594,7 +1865,7 @@ func file_proto_ruby_vagrant_ruby_server_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_proto_ruby_vagrant_ruby_server_proto_rawDesc, RawDescriptor: file_proto_ruby_vagrant_ruby_server_proto_rawDesc,
NumEnums: 1, NumEnums: 1,
NumMessages: 16, NumMessages: 17,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },

View File

@ -61,15 +61,40 @@ message ParseVagrantfileResponse {
message VagrantfileComponents { message VagrantfileComponents {
message ConfigVM { message ConfigVM {
bool allow_fstab_modification = 1; repeated string allowed_synced_folder_types = 1;
bool allow_hosts_modificaion = 2; bool allow_fstab_modification = 2;
string box = 3; bool allow_hosts_modificaion = 3;
string base_mac = 4;
string base_address = 5;
int32 boot_timeout = 6;
string box = 7;
bool ignore_box_vagrantfile = 8;
bool box_check_update = 9;
string box_url = 10;
string box_server_url = 11;
string box_version = 12;
string box_download_ca_cert = 13;
string box_download_ca_path = 14;
string box_download_checksum = 15;
string box_download_checksum_type = 16;
string box_download_client_cert = 17;
bool box_download_insecure = 18;
bool box_download_location_trusted = 19;
map<string, string> box_download_options = 20;
string communicator = 21;
int32 graceful_halt_timeout = 22;
string guest = 23;
string hostname = 24;
string post_up_message = 25;
repeated int32 usable_port_range = 26;
repeated string box_extra_download_options = 27;
// TODO: CloudInit = 4 (Experimental) // TODO: CloudInit = 4 (Experimental)
repeated Provider providers = 5; repeated Provider providers = 29;
// TODO: Disks = 6 (Experimental) // TODO: Disks = 6 (Experimental)
repeated Network networks = 7; repeated Network networks = 31;
repeated Provisioner provisioners = 8; repeated Provisioner provisioners = 32;
repeated SyncedFolder synced_folders = 9; repeated SyncedFolder synced_folders = 33;
} }
message ConfigSSH { message ConfigSSH {

View File

@ -32,13 +32,37 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
add_message "hashicorp.vagrant.VagrantfileComponents" do add_message "hashicorp.vagrant.VagrantfileComponents" do
end end
add_message "hashicorp.vagrant.VagrantfileComponents.ConfigVM" do add_message "hashicorp.vagrant.VagrantfileComponents.ConfigVM" do
optional :allow_fstab_modification, :bool, 1 repeated :allowed_synced_folder_types, :string, 1
optional :allow_hosts_modificaion, :bool, 2 optional :allow_fstab_modification, :bool, 2
optional :box, :string, 3 optional :allow_hosts_modificaion, :bool, 3
repeated :providers, :message, 5, "hashicorp.vagrant.VagrantfileComponents.Provider" optional :base_mac, :string, 4
repeated :networks, :message, 7, "hashicorp.vagrant.VagrantfileComponents.Network" optional :base_address, :string, 5
repeated :provisioners, :message, 8, "hashicorp.vagrant.VagrantfileComponents.Provisioner" optional :boot_timeout, :int32, 6
repeated :synced_folders, :message, 9, "hashicorp.vagrant.VagrantfileComponents.SyncedFolder" optional :box, :string, 7
optional :ignore_box_vagrantfile, :bool, 8
optional :box_check_update, :bool, 9
optional :box_url, :string, 10
optional :box_server_url, :string, 11
optional :box_version, :string, 12
optional :box_download_ca_cert, :string, 13
optional :box_download_ca_path, :string, 14
optional :box_download_checksum, :string, 15
optional :box_download_checksum_type, :string, 16
optional :box_download_client_cert, :string, 17
optional :box_download_insecure, :bool, 18
optional :box_download_location_trusted, :bool, 19
map :box_download_options, :string, :string, 20
optional :communicator, :string, 21
optional :graceful_halt_timeout, :int32, 22
optional :guest, :string, 23
optional :hostname, :string, 24
optional :post_up_message, :string, 25
repeated :usable_port_range, :int32, 26
repeated :box_extra_download_options, :string, 27
repeated :providers, :message, 29, "hashicorp.vagrant.VagrantfileComponents.Provider"
repeated :networks, :message, 31, "hashicorp.vagrant.VagrantfileComponents.Network"
repeated :provisioners, :message, 32, "hashicorp.vagrant.VagrantfileComponents.Provisioner"
repeated :synced_folders, :message, 33, "hashicorp.vagrant.VagrantfileComponents.SyncedFolder"
end end
add_message "hashicorp.vagrant.VagrantfileComponents.ConfigSSH" do add_message "hashicorp.vagrant.VagrantfileComponents.ConfigSSH" do
optional :compresssion, :bool, 1 optional :compresssion, :bool, 1

View File

@ -152,14 +152,40 @@ def parse_vagrantfile(path)
config_vm_proto = Hashicorp::Vagrant::VagrantfileComponents::ConfigVM.new() config_vm_proto = Hashicorp::Vagrant::VagrantfileComponents::ConfigVM.new()
vm_config.instance_variables_hash.each do |k, v| vm_config.instance_variables_hash.each do |k, v|
if v.class == Object
# Skip config that has not be set # Skip config that has not be set
next next if v.class == Object
end
if ["provisioners", "networks", "synced_folders"].include?(k)
# Going to deal with these seperately because they are more involved # Going to deal with these seperately because they are more involved
next next if ["provisioners", "networks", "synced_folders", "disks", "cloud_init_configs"].include?(k)
# Skip all variables that are internal
next if k.start_with?("_")
if v.nil?
# If v is nil, set it to the default value defined by the proto
v = config_vm_proto.send(k)
end end
if v.is_a?(Range)
v = v.to_a
end
if v.is_a?(Hash)
m = config_vm_proto.send(k)
v.each do |k,v2|
m[k] = v2
end
v = m
end
if v.is_a?(Array)
m = config_vm_proto.send(k)
v.each do |v2|
m << v2
end
v = m
end
begin begin
config_vm_proto.send("#{k}=", v) config_vm_proto.send("#{k}=", v)
rescue NoMethodError rescue NoMethodError
@ -168,6 +194,7 @@ def parse_vagrantfile(path)
end end
end end
extract_component(PROVISION_PROTO_CLS, config_vm_proto.provisioners, vm_config.provisioners) extract_component(PROVISION_PROTO_CLS, config_vm_proto.provisioners, vm_config.provisioners)
extract_network(config_vm_proto.networks, vm_config.networks) extract_network(config_vm_proto.networks, vm_config.networks)
extract_synced_folders(config_vm_proto.synced_folders, vm_config.synced_folders) extract_synced_folders(config_vm_proto.synced_folders, vm_config.synced_folders)