From 10a1f1011bc704c84f84fdece03105d610a36edd Mon Sep 17 00:00:00 2001 From: sophia Date: Mon, 16 Aug 2021 13:54:00 -0500 Subject: [PATCH] Get datadir for machine and project --- internal/core/project.go | 3 +-- lib/vagrant/environment/remote.rb | 4 +++- plugins/commands/serve/client/machine.rb | 9 +++++++-- plugins/commands/serve/client/machine_index.rb | 2 +- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/internal/core/project.go b/internal/core/project.go index 941e5f279..4c368c206 100644 --- a/internal/core/project.go +++ b/internal/core/project.go @@ -90,8 +90,7 @@ func (p *Project) Home() (path string, err error) { // LocalData implements core.Project func (p *Project) LocalData() (path string, err error) { - // TODO: implement - return "/local/data", nil + return p.dir.DataDir().String(), nil } // Tmp implements core.Project diff --git a/lib/vagrant/environment/remote.rb b/lib/vagrant/environment/remote.rb index 05c21d86e..011c7a708 100644 --- a/lib/vagrant/environment/remote.rb +++ b/lib/vagrant/environment/remote.rb @@ -18,7 +18,9 @@ module Vagrant end super @logger = Log4r::Logger.new("vagrant::environment") - @local_data_path = Pathname.new(@client.local_data_path()) + if @client != :stub + @local_data_path = Pathname.new(@client.get_local_data_path()) + end end # Gets a target (machine) by name diff --git a/plugins/commands/serve/client/machine.rb b/plugins/commands/serve/client/machine.rb index d9fc4e7b8..3b842c45b 100644 --- a/plugins/commands/serve/client/machine.rb +++ b/plugins/commands/serve/client/machine.rb @@ -71,9 +71,14 @@ module VagrantPlugins ) end - def get_data_dir + def get_dir req = Google::Protobuf::Empty.new - Pathname.new(@client.data_dir(req).data_dir) + @client.data_dir(req) + end + + def get_data_dir + dir = get_dir + Pathname.new(dir.data_dir) end def get_provider diff --git a/plugins/commands/serve/client/machine_index.rb b/plugins/commands/serve/client/machine_index.rb index 020546066..eb0abd7c1 100644 --- a/plugins/commands/serve/client/machine_index.rb +++ b/plugins/commands/serve/client/machine_index.rb @@ -108,7 +108,7 @@ module VagrantPlugins state = machine_client.get_state() raw = { "name" => machine_client.get_name(), - "local_data_path" => machine_client.get_local_data_path(), + "local_data_path" => machine_client.get_data_dir(), # TODO: get the provider! "provider" => "virtualbox", "full_state" => state,