Commit f7d1776a authored by Fergus Dall's avatar Fergus Dall Committed by Commit Bot

Reland "Remove all references to StartVmConcierge"

This is a reland of e1df5c80

Original change's description:
> Remove all references to StartVmConcierge
>
> With CL:2398353 debugd will no longer control the lifetime of
> concierge. Instead, concierge will start on the login screen and stop
> on session exit. Therefore, all references to starting and stopping
> concierge in the chrome browser should be removed.
>
> Bug: 1126268
> Change-Id: Icc4ec0f1e893c0bf226613163a6e5f07f17054dc
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2402858
> Commit-Queue: Fergus Dall <sidereal@google.com>
> Reviewed-by: Achuith Bhandarkar <achuith@chromium.org>
> Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
> Reviewed-by: Joel Hockey <joelhockey@chromium.org>
> Reviewed-by: Dominick Ng <dominickn@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#806837}

TBR=achuith@chromium.org,hidehiko@chromium.org,dominickn@chromium.org,joelhockey@chromium.org

Bug: 1126268
Cq-Include-Trybots: luci.chrome.try:chromeos-eve-chrome,chromeos-kevin-chrome,chromeos-betty-pi-arc-chrome
Change-Id: I247dc0f92b9f962c9598f772c1307d41a7a55ce2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2410100
Commit-Queue: Fergus Dall <sidereal@google.com>
Reviewed-by: default avatarYusuke Sato <yusukes@chromium.org>
Reviewed-by: default avatarJoel Hockey <joelhockey@chromium.org>
Reviewed-by: default avatarDominick Ng <dominickn@chromium.org>
Reviewed-by: default avatarFergus Dall <sidereal@google.com>
Cr-Commit-Position: refs/heads/master@{#807284}
parent 4b514ab4
...@@ -4579,9 +4579,6 @@ ...@@ -4579,9 +4579,6 @@
<message name="IDS_CROSTINI_TERMINAL_STATUS_INSTALL_IMAGE_LOADER" desc="Text shown in the crostini terminal when it is checking whether the virtual machine component is installed"> <message name="IDS_CROSTINI_TERMINAL_STATUS_INSTALL_IMAGE_LOADER" desc="Text shown in the crostini terminal when it is checking whether the virtual machine component is installed">
Checking the virtual machine Checking the virtual machine
</message> </message>
<message name="IDS_CROSTINI_TERMINAL_STATUS_START_CONCIERGE" desc="Text shown in the crostini terminal when it is starting the VM controller">
Starting the virtual machine controller
</message>
<message name="IDS_CROSTINI_TERMINAL_STATUS_CREATE_DISK_IMAGE" desc="Text shown in the crostini terminal when it is checking whether the VM image is installed"> <message name="IDS_CROSTINI_TERMINAL_STATUS_CREATE_DISK_IMAGE" desc="Text shown in the crostini terminal when it is checking whether the VM image is installed">
Checking the virtual machine image Checking the virtual machine image
</message> </message>
......
d5dfef986211c69d831ac4515dd9defdc772cfc3
\ No newline at end of file
...@@ -18,13 +18,6 @@ ...@@ -18,13 +18,6 @@
namespace chromeos { namespace chromeos {
namespace { namespace {
void OnStartConcierge(bool started) {
if (started)
VLOG(1) << "Concierge D-Bus service successfully started";
else
LOG(ERROR) << "Unable to start Concierge D-Bus service";
}
void OnSetVmCpuRestriction( void OnSetVmCpuRestriction(
base::Optional<vm_tools::concierge::SetVmCpuRestrictionResponse> response) { base::Optional<vm_tools::concierge::SetVmCpuRestrictionResponse> response) {
if (!response || !response->success()) { if (!response || !response->success()) {
...@@ -33,18 +26,6 @@ void OnSetVmCpuRestriction( ...@@ -33,18 +26,6 @@ void OnSetVmCpuRestriction(
} }
} }
// Starts Concierge DBus service through debugd. If the service is already
// running, this request will be ignored.
void StartConcierge() {
auto* client = DBusThreadManager::Get()->GetDebugDaemonClient();
if (!client) {
LOG(WARNING) << "DebugDaemonClient is not available";
OnStartConcierge(false);
return;
}
client->StartConcierge(base::BindOnce(&OnStartConcierge));
}
// Adds a callback to be run when Concierge DBus service becomes available. // Adds a callback to be run when Concierge DBus service becomes available.
// If the service is already available, runs the callback immediately. // If the service is already available, runs the callback immediately.
void WaitForConciergeToBeAvailable( void WaitForConciergeToBeAvailable(
...@@ -103,9 +84,7 @@ ConciergeHelperService* ConciergeHelperService::GetForBrowserContext( ...@@ -103,9 +84,7 @@ ConciergeHelperService* ConciergeHelperService::GetForBrowserContext(
return ConciergeHelperServiceFactory::GetForBrowserContext(context); return ConciergeHelperServiceFactory::GetForBrowserContext(context);
} }
ConciergeHelperService::ConciergeHelperService() { ConciergeHelperService::ConciergeHelperService() = default;
StartConcierge();
}
void ConciergeHelperService::SetArcVmCpuRestriction(bool do_restrict) { void ConciergeHelperService::SetArcVmCpuRestriction(bool do_restrict) {
MakeRestrictionRequest(vm_tools::concierge::CPU_CGROUP_ARCVM, do_restrict); MakeRestrictionRequest(vm_tools::concierge::CPU_CGROUP_ARCVM, do_restrict);
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
#include "chrome/test/base/testing_profile.h" #include "chrome/test/base/testing_profile.h"
#include "chromeos/dbus/concierge/concierge_service.pb.h" #include "chromeos/dbus/concierge/concierge_service.pb.h"
#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/dbus_thread_manager.h"
#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h"
#include "chromeos/dbus/fake_concierge_client.h" #include "chromeos/dbus/fake_concierge_client.h"
#include "content/public/test/browser_task_environment.h" #include "content/public/test/browser_task_environment.h"
#include "dbus/bus.h" #include "dbus/bus.h"
...@@ -20,24 +19,6 @@ ...@@ -20,24 +19,6 @@
namespace chromeos { namespace chromeos {
class TestDebugDaemonClient : public FakeDebugDaemonClient {
public:
TestDebugDaemonClient() = default;
~TestDebugDaemonClient() override = default;
void StartConcierge(ConciergeCallback callback) override {
++start_concierge_called_;
FakeDebugDaemonClient::StartConcierge(std::move(callback));
}
size_t start_concierge_called() const { return start_concierge_called_; }
private:
size_t start_concierge_called_{0};
DISALLOW_COPY_AND_ASSIGN(TestDebugDaemonClient);
};
class TestConciergeClient : public FakeConciergeClient { class TestConciergeClient : public FakeConciergeClient {
public: public:
TestConciergeClient() = default; TestConciergeClient() = default;
...@@ -96,7 +77,6 @@ class ConciergeHelperServiceTest : public testing::Test { ...@@ -96,7 +77,6 @@ class ConciergeHelperServiceTest : public testing::Test {
// testing::Test: // testing::Test:
void SetUp() override { void SetUp() override {
auto setter = DBusThreadManager::GetSetterForTesting(); auto setter = DBusThreadManager::GetSetterForTesting();
setter->SetDebugDaemonClient(std::make_unique<TestDebugDaemonClient>());
setter->SetConciergeClient(std::make_unique<TestConciergeClient>()); setter->SetConciergeClient(std::make_unique<TestConciergeClient>());
service_ = ConciergeHelperService::GetForBrowserContext(&profile_); service_ = ConciergeHelperService::GetForBrowserContext(&profile_);
} }
...@@ -111,11 +91,6 @@ class ConciergeHelperServiceTest : public testing::Test { ...@@ -111,11 +91,6 @@ class ConciergeHelperServiceTest : public testing::Test {
DBusThreadManager::Get()->GetConciergeClient()); DBusThreadManager::Get()->GetConciergeClient());
} }
TestDebugDaemonClient* fake_debug_client() {
return static_cast<TestDebugDaemonClient*>(
DBusThreadManager::Get()->GetDebugDaemonClient());
}
content::BrowserTaskEnvironment* task_environment() { content::BrowserTaskEnvironment* task_environment() {
return &task_environment_; return &task_environment_;
} }
...@@ -128,12 +103,6 @@ class ConciergeHelperServiceTest : public testing::Test { ...@@ -128,12 +103,6 @@ class ConciergeHelperServiceTest : public testing::Test {
DISALLOW_COPY_AND_ASSIGN(ConciergeHelperServiceTest); DISALLOW_COPY_AND_ASSIGN(ConciergeHelperServiceTest);
}; };
// Tests that ConciergeHelperService can be constructed and destructed. Also,
// check that ConciergeHelperService starts Concierge on construction.
TEST_F(ConciergeHelperServiceTest, TestConstructDestruct) {
EXPECT_EQ(1U, fake_debug_client()->start_concierge_called());
}
// Tests that ConciergeHelperService makes cpu restriction requests correctly. // Tests that ConciergeHelperService makes cpu restriction requests correctly.
TEST_F(ConciergeHelperServiceTest, TestSetVmCpuRestriction) { TEST_F(ConciergeHelperServiceTest, TestSetVmCpuRestriction) {
vm_tools::concierge::SetVmCpuRestrictionResponse response; vm_tools::concierge::SetVmCpuRestrictionResponse response;
......
...@@ -73,26 +73,15 @@ void GetDiskInfo(OnceDiskInfoCallback callback, ...@@ -73,26 +73,15 @@ void GetDiskInfo(OnceDiskInfoCallback callback,
base::BindOnce(&OnAmountOfFreeDiskSpace, std::move(callback), profile, base::BindOnce(&OnAmountOfFreeDiskSpace, std::move(callback), profile,
std::move(vm_name))); std::move(vm_name)));
} else { } else {
VLOG(1) << "Starting concierge";
// Since we only care about the disk's current size and whether it's a // Since we only care about the disk's current size and whether it's a
// sparse disk, we claim there's plenty of free space available to prevent // sparse disk, we claim there's plenty of free space available to prevent
// error conditions in |OnCrostiniSufficientlyRunning|. // error conditions in |OnCrostiniSufficientlyRunning|.
constexpr int64_t kFakeAvailableDiskBytes = constexpr int64_t kFakeAvailableDiskBytes =
kDiskHeadroomBytes + kRecommendedDiskSizeBytes; kDiskHeadroomBytes + kRecommendedDiskSizeBytes;
CrostiniManager::GetForProfile(profile)->StartConcierge(base::BindOnce( OnCrostiniSufficientlyRunning(std::move(callback), profile,
[](OnceDiskInfoCallback callback, Profile* profile, std::string vm_name, std::move(vm_name), kFakeAvailableDiskBytes,
bool success) { CrostiniResult::SUCCESS);
if (!success) {
LOG(ERROR) << "Failed to start concierge";
std::move(callback).Run(nullptr);
return;
}
OnCrostiniSufficientlyRunning(
std::move(callback), profile, std::move(vm_name),
kFakeAvailableDiskBytes, CrostiniResult::SUCCESS);
},
std::move(callback), profile, std::move(vm_name)));
} }
} }
......
...@@ -113,8 +113,6 @@ SetupResult ErrorToSetupResult(InstallerError error) { ...@@ -113,8 +113,6 @@ SetupResult ErrorToSetupResult(InstallerError error) {
return SetupResult::kSuccess; return SetupResult::kSuccess;
case InstallerError::kErrorLoadingTermina: case InstallerError::kErrorLoadingTermina:
return SetupResult::kErrorLoadingTermina; return SetupResult::kErrorLoadingTermina;
case InstallerError::kErrorStartingConcierge:
return SetupResult::kErrorStartingConcierge;
case InstallerError::kErrorCreatingDiskImage: case InstallerError::kErrorCreatingDiskImage:
return SetupResult::kErrorCreatingDiskImage; return SetupResult::kErrorCreatingDiskImage;
case InstallerError::kErrorStartingTermina: case InstallerError::kErrorStartingTermina:
...@@ -149,8 +147,6 @@ SetupResult InstallStateToCancelledSetupResult( ...@@ -149,8 +147,6 @@ SetupResult InstallStateToCancelledSetupResult(
return SetupResult::kUserCancelledStart; return SetupResult::kUserCancelledStart;
case InstallerState::kInstallImageLoader: case InstallerState::kInstallImageLoader:
return SetupResult::kUserCancelledInstallImageLoader; return SetupResult::kUserCancelledInstallImageLoader;
case InstallerState::kStartConcierge:
return SetupResult::kUserCancelledStartConcierge;
case InstallerState::kCreateDiskImage: case InstallerState::kCreateDiskImage:
return SetupResult::kUserCancelledCreateDiskImage; return SetupResult::kUserCancelledCreateDiskImage;
case InstallerState::kStartTerminaVm: case InstallerState::kStartTerminaVm:
...@@ -326,15 +322,6 @@ void CrostiniInstaller::OnComponentLoaded(CrostiniResult result) { ...@@ -326,15 +322,6 @@ void CrostiniInstaller::OnComponentLoaded(CrostiniResult result) {
} }
return; return;
} }
UpdateInstallingState(InstallerState::kStartConcierge);
}
void CrostiniInstaller::OnConciergeStarted(bool success) {
DCHECK_EQ(installing_state_, InstallerState::kStartConcierge);
if (!success) {
HandleError(InstallerError::kErrorStartingConcierge);
return;
}
UpdateInstallingState(InstallerState::kCreateDiskImage); UpdateInstallingState(InstallerState::kCreateDiskImage);
} }
...@@ -499,12 +486,8 @@ void CrostiniInstaller::RunProgressCallback() { ...@@ -499,12 +486,8 @@ void CrostiniInstaller::RunProgressCallback() {
state_end_mark = 0.20; state_end_mark = 0.20;
state_max_time = base::TimeDelta::FromSeconds(30); state_max_time = base::TimeDelta::FromSeconds(30);
break; break;
case InstallerState::kStartConcierge:
state_start_mark = 0.20;
state_end_mark = 0.21;
break;
case InstallerState::kCreateDiskImage: case InstallerState::kCreateDiskImage:
state_start_mark = 0.21; state_start_mark = 0.20;
state_end_mark = 0.22; state_end_mark = 0.22;
break; break;
case InstallerState::kStartTerminaVm: case InstallerState::kStartTerminaVm:
......
...@@ -37,7 +37,7 @@ class CrostiniInstaller : public KeyedService, ...@@ -37,7 +37,7 @@ class CrostiniInstaller : public KeyedService,
// kUserCancelled = 1, // kUserCancelled = 1,
kSuccess = 2, kSuccess = 2,
kErrorLoadingTermina = 3, kErrorLoadingTermina = 3,
kErrorStartingConcierge = 4, // kErrorStartingConcierge = 4,
kErrorCreatingDiskImage = 5, kErrorCreatingDiskImage = 5,
kErrorStartingTermina = 6, kErrorStartingTermina = 6,
kErrorStartingContainer = 7, kErrorStartingContainer = 7,
...@@ -48,7 +48,7 @@ class CrostiniInstaller : public KeyedService, ...@@ -48,7 +48,7 @@ class CrostiniInstaller : public KeyedService,
kUserCancelledStart = 12, kUserCancelledStart = 12,
kUserCancelledInstallImageLoader = 13, kUserCancelledInstallImageLoader = 13,
kUserCancelledStartConcierge = 14, // kUserCancelledStartConcierge = 14,
kUserCancelledCreateDiskImage = 15, kUserCancelledCreateDiskImage = 15,
kUserCancelledStartTerminaVm = 16, kUserCancelledStartTerminaVm = 16,
kUserCancelledCreateContainer = 17, kUserCancelledCreateContainer = 17,
...@@ -88,7 +88,6 @@ class CrostiniInstaller : public KeyedService, ...@@ -88,7 +88,6 @@ class CrostiniInstaller : public KeyedService,
// CrostiniManager::RestartObserver: // CrostiniManager::RestartObserver:
void OnStageStarted(crostini::mojom::InstallerState stage) override; void OnStageStarted(crostini::mojom::InstallerState stage) override;
void OnComponentLoaded(crostini::CrostiniResult result) override; void OnComponentLoaded(crostini::CrostiniResult result) override;
void OnConciergeStarted(bool success) override;
void OnDiskImageCreated(bool success, void OnDiskImageCreated(bool success,
vm_tools::concierge::DiskImageStatus status, vm_tools::concierge::DiskImageStatus status,
int64_t disk_size_available) override; int64_t disk_size_available) override;
......
...@@ -333,23 +333,6 @@ class CrostiniManager::CrostiniRestarter ...@@ -333,23 +333,6 @@ class CrostiniManager::CrostiniRestarter
} }
// Set the pref here, after we first successfully install something // Set the pref here, after we first successfully install something
profile_->GetPrefs()->SetBoolean(crostini::prefs::kCrostiniEnabled, true); profile_->GetPrefs()->SetBoolean(crostini::prefs::kCrostiniEnabled, true);
StartStage(mojom::InstallerState::kStartConcierge);
crostini_manager_->StartConcierge(base::BindOnce(
&CrostiniRestarter::ConciergeStarted, weak_ptr_factory_.GetWeakPtr()));
}
void ConciergeStarted(bool is_started) {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
for (auto& observer : observer_list_) {
observer.OnConciergeStarted(is_started);
}
if (ReturnEarlyIfAborted()) {
return;
}
if (!is_started) {
FinishRestart(CrostiniResult::CONCIERGE_START_FAILED);
return;
}
// Allow concierge to choose an appropriate disk image size. // Allow concierge to choose an appropriate disk image size.
int64_t disk_size_bytes = options_.disk_size_bytes.value_or(0); int64_t disk_size_bytes = options_.disk_size_bytes.value_or(0);
...@@ -1044,34 +1027,6 @@ void CrostiniManager::UninstallTermina(BoolCallback callback) { ...@@ -1044,34 +1027,6 @@ void CrostiniManager::UninstallTermina(BoolCallback callback) {
termina_installer_.Uninstall(std::move(callback)); termina_installer_.Uninstall(std::move(callback));
} }
void CrostiniManager::StartConcierge(BoolCallback callback) {
VLOG(1) << "Starting Concierge service";
chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()->StartConcierge(
base::BindOnce(&CrostiniManager::OnStartConcierge,
weak_ptr_factory_.GetWeakPtr(), std::move(callback)));
}
void CrostiniManager::OnStartConcierge(BoolCallback callback, bool success) {
if (!success) {
LOG(ERROR) << "Failed to start Concierge service";
std::move(callback).Run(success);
return;
}
VLOG(1) << "Concierge service started";
VLOG(1) << "Waiting for Cicerone to announce availability.";
GetCiceroneClient()->WaitForServiceToBeAvailable(std::move(callback));
}
void CrostiniManager::OnStopConcierge(BoolCallback callback, bool success) {
if (!success) {
LOG(ERROR) << "Failed to stop Concierge service";
} else {
VLOG(1) << "Concierge service stopped";
}
std::move(callback).Run(success);
}
void CrostiniManager::CreateDiskImage( void CrostiniManager::CreateDiskImage(
const base::FilePath& disk_path, const base::FilePath& disk_path,
vm_tools::concierge::StorageLocation storage_location, vm_tools::concierge::StorageLocation storage_location,
......
...@@ -189,7 +189,6 @@ class CrostiniManager : public KeyedService, ...@@ -189,7 +189,6 @@ class CrostiniManager : public KeyedService,
virtual ~RestartObserver() {} virtual ~RestartObserver() {}
virtual void OnStageStarted(mojom::InstallerState stage) {} virtual void OnStageStarted(mojom::InstallerState stage) {}
virtual void OnComponentLoaded(CrostiniResult result) {} virtual void OnComponentLoaded(CrostiniResult result) {}
virtual void OnConciergeStarted(bool success) {}
virtual void OnDiskImageCreated(bool success, virtual void OnDiskImageCreated(bool success,
vm_tools::concierge::DiskImageStatus status, vm_tools::concierge::DiskImageStatus status,
int64_t disk_size_bytes) {} int64_t disk_size_bytes) {}
...@@ -243,10 +242,6 @@ class CrostiniManager : public KeyedService, ...@@ -243,10 +242,6 @@ class CrostiniManager : public KeyedService,
// Unloads and removes termina. // Unloads and removes termina.
void UninstallTermina(BoolCallback callback); void UninstallTermina(BoolCallback callback);
// Starts the Concierge service. |callback| is called after the method call
// finishes.
void StartConcierge(BoolCallback callback);
// Checks the arguments for creating a new Termina VM disk image. Creates a // Checks the arguments for creating a new Termina VM disk image. Creates a
// disk image for a Termina VM via ConciergeClient::CreateDiskImage. // disk image for a Termina VM via ConciergeClient::CreateDiskImage.
// |callback| is called if the arguments are bad, or after the method call // |callback| is called if the arguments are bad, or after the method call
...@@ -703,14 +698,6 @@ class CrostiniManager : public KeyedService, ...@@ -703,14 +698,6 @@ class CrostiniManager : public KeyedService,
base::Optional<vm_tools::concierge::GetVmEnterpriseReportingInfoResponse> base::Optional<vm_tools::concierge::GetVmEnterpriseReportingInfoResponse>
response); response);
// Callback for CrostiniClient::StartConcierge. Called after the
// DebugDaemon service method finishes.
void OnStartConcierge(BoolCallback callback, bool success);
// Callback for CrostiniClient::StopConcierge. Called after the
// DebugDaemon service method finishes.
void OnStopConcierge(BoolCallback callback, bool success);
// Callback for CiceroneClient::StartLxd. May indicate that LXD is still being // Callback for CiceroneClient::StartLxd. May indicate that LXD is still being
// started in which case we will wait for OnStartLxdProgress events. // started in which case we will wait for OnStartLxdProgress events.
void OnStartLxd( void OnStartLxd(
......
...@@ -645,12 +645,6 @@ class CrostiniManagerRestartTest : public CrostiniManagerTest, ...@@ -645,12 +645,6 @@ class CrostiniManagerRestartTest : public CrostiniManagerTest,
} }
} }
void OnConciergeStarted(bool success) override {
if (abort_on_concierge_started_) {
Abort();
}
}
void OnDiskImageCreated(bool success, void OnDiskImageCreated(bool success,
vm_tools::concierge::DiskImageStatus status, vm_tools::concierge::DiskImageStatus status,
int64_t disk_size_available) override { int64_t disk_size_available) override {
...@@ -753,7 +747,6 @@ class CrostiniManagerRestartTest : public CrostiniManagerTest, ...@@ -753,7 +747,6 @@ class CrostiniManagerRestartTest : public CrostiniManagerTest,
const CrostiniManager::RestartId uninitialized_id_ = const CrostiniManager::RestartId uninitialized_id_ =
CrostiniManager::kUninitializedRestartId; CrostiniManager::kUninitializedRestartId;
bool abort_on_component_loaded_ = false; bool abort_on_component_loaded_ = false;
bool abort_on_concierge_started_ = false;
bool abort_on_disk_image_created_ = false; bool abort_on_disk_image_created_ = false;
bool abort_on_vm_started_ = false; bool abort_on_vm_started_ = false;
bool abort_on_container_created_ = false; bool abort_on_container_created_ = false;
...@@ -864,21 +857,6 @@ TEST_F(CrostiniManagerRestartTest, AbortOnComponentLoaded) { ...@@ -864,21 +857,6 @@ TEST_F(CrostiniManagerRestartTest, AbortOnComponentLoaded) {
ExpectRestarterUmaCount(1); ExpectRestarterUmaCount(1);
} }
TEST_F(CrostiniManagerRestartTest, AbortOnConciergeStarted) {
abort_on_concierge_started_ = true;
restart_id_ = crostini_manager()->RestartCrostini(
container_id(),
base::BindOnce(&CrostiniManagerRestartTest::RestartCrostiniCallback,
base::Unretained(this), run_loop()->QuitClosure()),
this);
run_loop()->Run();
EXPECT_FALSE(fake_concierge_client_->create_disk_image_called());
EXPECT_FALSE(fake_concierge_client_->start_termina_vm_called());
EXPECT_FALSE(fake_concierge_client_->get_container_ssh_keys_called());
ExpectCrostiniRestartResult(CrostiniResult::RESTART_ABORTED);
ExpectRestarterUmaCount(1);
}
TEST_F(CrostiniManagerRestartTest, AbortOnDiskImageCreated) { TEST_F(CrostiniManagerRestartTest, AbortOnDiskImageCreated) {
abort_on_disk_image_created_ = true; abort_on_disk_image_created_ = true;
restart_id_ = crostini_manager()->RestartCrostini( restart_id_ = crostini_manager()->RestartCrostini(
......
...@@ -34,15 +34,6 @@ CrostiniRemover::~CrostiniRemover() = default; ...@@ -34,15 +34,6 @@ CrostiniRemover::~CrostiniRemover() = default;
void CrostiniRemover::RemoveCrostini() { void CrostiniRemover::RemoveCrostini() {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI); DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
CrostiniManager::GetForProfile(profile_)->StartConcierge(
base::BindOnce(&CrostiniRemover::OnConciergeStarted, this));
}
void CrostiniRemover::OnConciergeStarted(bool is_successful) {
if (!is_successful) {
std::move(callback_).Run(CrostiniResult::UNKNOWN_ERROR);
return;
}
CrostiniManager::GetForProfile(profile_)->StopVm( CrostiniManager::GetForProfile(profile_)->StopVm(
vm_name_, base::BindOnce(&CrostiniRemover::StopVmFinished, this)); vm_name_, base::BindOnce(&CrostiniRemover::StopVmFinished, this));
} }
......
...@@ -22,7 +22,6 @@ class CrostiniRemover : public base::RefCountedThreadSafe<CrostiniRemover> { ...@@ -22,7 +22,6 @@ class CrostiniRemover : public base::RefCountedThreadSafe<CrostiniRemover> {
~CrostiniRemover(); ~CrostiniRemover();
void OnConciergeStarted(bool is_successful);
void StopVmFinished(crostini::CrostiniResult result); void StopVmFinished(crostini::CrostiniResult result);
void DestroyDiskImageFinished(bool success); void DestroyDiskImageFinished(bool success);
void UninstallTerminaFinished(bool success); void UninstallTerminaFinished(bool success);
......
...@@ -7,7 +7,6 @@ module crostini.mojom; ...@@ -7,7 +7,6 @@ module crostini.mojom;
enum InstallerState { enum InstallerState {
kStart, // Just started installation kStart, // Just started installation
kInstallImageLoader, // Loading the Termina VM component. kInstallImageLoader, // Loading the Termina VM component.
kStartConcierge, // Starting the Concierge D-Bus client.
kCreateDiskImage, // Creating the image for the Termina VM. kCreateDiskImage, // Creating the image for the Termina VM.
kStartTerminaVm, // Starting the Termina VM. kStartTerminaVm, // Starting the Termina VM.
kCreateContainer, // Creating the container inside the Termina VM. kCreateContainer, // Creating the container inside the Termina VM.
...@@ -21,7 +20,6 @@ enum InstallerState { ...@@ -21,7 +20,6 @@ enum InstallerState {
enum InstallerError { enum InstallerError {
kNone, kNone,
kErrorLoadingTermina, kErrorLoadingTermina,
kErrorStartingConcierge,
kErrorCreatingDiskImage, kErrorCreatingDiskImage,
kErrorStartingTermina, kErrorStartingTermina,
kErrorStartingContainer, kErrorStartingContainer,
......
...@@ -100,9 +100,6 @@ void CrostiniStartupStatus::OnStageStarted(InstallerState stage) { ...@@ -100,9 +100,6 @@ void CrostiniStartupStatus::OnStageStarted(InstallerState stage) {
{InstallerState::kInstallImageLoader, {InstallerState::kInstallImageLoader,
l10n_util::GetStringUTF8( l10n_util::GetStringUTF8(
IDS_CROSTINI_TERMINAL_STATUS_INSTALL_IMAGE_LOADER)}, IDS_CROSTINI_TERMINAL_STATUS_INSTALL_IMAGE_LOADER)},
{InstallerState::kStartConcierge,
l10n_util::GetStringUTF8(
IDS_CROSTINI_TERMINAL_STATUS_START_CONCIERGE)},
{InstallerState::kCreateDiskImage, {InstallerState::kCreateDiskImage,
l10n_util::GetStringUTF8( l10n_util::GetStringUTF8(
IDS_CROSTINI_TERMINAL_STATUS_CREATE_DISK_IMAGE)}, IDS_CROSTINI_TERMINAL_STATUS_CREATE_DISK_IMAGE)},
......
...@@ -412,9 +412,6 @@ Polymer({ ...@@ -412,9 +412,6 @@ Polymer({
case InstallerState.kInstallImageLoader: case InstallerState.kInstallImageLoader:
messageId = 'loadTerminaMessage'; messageId = 'loadTerminaMessage';
break; break;
case InstallerState.kStartConcierge:
messageId = 'startConciergeMessage';
break;
case InstallerState.kCreateDiskImage: case InstallerState.kCreateDiskImage:
messageId = 'createDiskImageMessage'; messageId = 'createDiskImageMessage';
break; break;
...@@ -461,9 +458,6 @@ Polymer({ ...@@ -461,9 +458,6 @@ Polymer({
case InstallerError.kErrorLoadingTermina: case InstallerError.kErrorLoadingTermina:
messageId = 'loadTerminaError'; messageId = 'loadTerminaError';
break; break;
case InstallerError.kErrorStartingConcierge:
messageId = 'startConciergeError';
break;
case InstallerError.kErrorCreatingDiskImage: case InstallerError.kErrorCreatingDiskImage:
messageId = 'createDiskImageError'; messageId = 'createDiskImageError';
break; break;
......
...@@ -49,7 +49,6 @@ void AddStringResources(content::WebUIDataSource* source) { ...@@ -49,7 +49,6 @@ void AddStringResources(content::WebUIDataSource* source) {
{"errorTitle", IDS_CROSTINI_INSTALLER_ERROR_TITLE}, {"errorTitle", IDS_CROSTINI_INSTALLER_ERROR_TITLE},
{"loadTerminaError", IDS_CROSTINI_INSTALLER_LOAD_TERMINA_ERROR}, {"loadTerminaError", IDS_CROSTINI_INSTALLER_LOAD_TERMINA_ERROR},
{"startConciergeError", IDS_CROSTINI_INSTALLER_START_CONCIERGE_ERROR},
{"createDiskImageError", IDS_CROSTINI_INSTALLER_CREATE_DISK_IMAGE_ERROR}, {"createDiskImageError", IDS_CROSTINI_INSTALLER_CREATE_DISK_IMAGE_ERROR},
{"startTerminaVmError", IDS_CROSTINI_INSTALLER_START_TERMINA_VM_ERROR}, {"startTerminaVmError", IDS_CROSTINI_INSTALLER_START_TERMINA_VM_ERROR},
{"startContainerError", IDS_CROSTINI_INSTALLER_START_CONTAINER_ERROR}, {"startContainerError", IDS_CROSTINI_INSTALLER_START_CONTAINER_ERROR},
...@@ -61,7 +60,6 @@ void AddStringResources(content::WebUIDataSource* source) { ...@@ -61,7 +60,6 @@ void AddStringResources(content::WebUIDataSource* source) {
{"unknownError", IDS_CROSTINI_INSTALLER_UNKNOWN_ERROR}, {"unknownError", IDS_CROSTINI_INSTALLER_UNKNOWN_ERROR},
{"loadTerminaMessage", IDS_CROSTINI_INSTALLER_LOAD_TERMINA_MESSAGE}, {"loadTerminaMessage", IDS_CROSTINI_INSTALLER_LOAD_TERMINA_MESSAGE},
{"startConciergeMessage", IDS_CROSTINI_INSTALLER_START_CONCIERGE_MESSAGE},
{"createDiskImageMessage", {"createDiskImageMessage",
IDS_CROSTINI_INSTALLER_CREATE_DISK_IMAGE_MESSAGE}, IDS_CROSTINI_INSTALLER_CREATE_DISK_IMAGE_MESSAGE},
{"startTerminaVmMessage", {"startTerminaVmMessage",
......
...@@ -149,7 +149,8 @@ suite('<crostini-installer-app>', () => { ...@@ -149,7 +149,8 @@ suite('<crostini-installer-app>', () => {
expectEquals(fakeBrowserProxy.handler.getCallCount('install'), 1); expectEquals(fakeBrowserProxy.handler.getCallCount('install'), 1);
expectTrue(getInstallButton().hidden); expectTrue(getInstallButton().hidden);
fakeBrowserProxy.page.onProgressUpdate(InstallerState.kStartConcierge, 0.5); fakeBrowserProxy.page.onProgressUpdate(
InstallerState.kCreateDiskImage, 0.5);
await flushTasks(); await flushTasks();
expectTrue( expectTrue(
!!app.$$('#installing-message > div').textContent.trim(), !!app.$$('#installing-message > div').textContent.trim(),
......
...@@ -531,16 +531,6 @@ class DebugDaemonClientImpl : public DebugDaemonClient { ...@@ -531,16 +531,6 @@ class DebugDaemonClientImpl : public DebugDaemonClient {
std::move(error_callback))); std::move(error_callback)));
} }
void StartConcierge(ConciergeCallback callback) override {
dbus::MethodCall method_call(debugd::kDebugdInterface,
debugd::kStartVmConcierge);
dbus::MessageWriter writer(&method_call);
debugdaemon_proxy_->CallMethod(
&method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
base::BindOnce(&DebugDaemonClientImpl::OnStartConcierge,
weak_ptr_factory_.GetWeakPtr(), std::move(callback)));
}
void StartPluginVmDispatcher(const std::string& owner_id, void StartPluginVmDispatcher(const std::string& owner_id,
const std::string& lang, const std::string& lang,
PluginVmDispatcherCallback callback) override { PluginVmDispatcherCallback callback) override {
...@@ -870,15 +860,6 @@ class DebugDaemonClientImpl : public DebugDaemonClient { ...@@ -870,15 +860,6 @@ class DebugDaemonClientImpl : public DebugDaemonClient {
std::move(error_callback).Run(); std::move(error_callback).Run();
} }
void OnStartConcierge(ConciergeCallback callback, dbus::Response* response) {
bool result = false;
if (response) {
dbus::MessageReader reader(response);
reader.PopBool(&result);
}
std::move(callback).Run(result);
}
void OnStartPluginVmDispatcher(PluginVmDispatcherCallback callback, void OnStartPluginVmDispatcher(PluginVmDispatcherCallback callback,
dbus::Response* response, dbus::Response* response,
dbus::ErrorResponse* error) { dbus::ErrorResponse* error) {
......
...@@ -235,14 +235,6 @@ class COMPONENT_EXPORT(DEBUG_DAEMON) DebugDaemonClient ...@@ -235,14 +235,6 @@ class COMPONENT_EXPORT(DEBUG_DAEMON) DebugDaemonClient
CupsRemovePrinterCallback callback, CupsRemovePrinterCallback callback,
base::OnceClosure error_callback) = 0; base::OnceClosure error_callback) = 0;
// A callback to handle the result of StartConcierge.
using ConciergeCallback = base::OnceCallback<void(bool success)>;
// Calls debugd::kStartVmConcierge, which starts the Concierge service.
// |callback| is called when the method finishes. If the |callback| is called
// with true, it is guaranteed that the service is ready to accept requests.
// It is not necessary for ConciergeClient to use WaitForServiceToBeAvailable.
virtual void StartConcierge(ConciergeCallback callback) = 0;
// A callback to handle the result of // A callback to handle the result of
// StartPluginVmDispatcher/StopPluginVmDispatcher. // StartPluginVmDispatcher/StopPluginVmDispatcher.
using PluginVmDispatcherCallback = base::OnceCallback<void(bool success)>; using PluginVmDispatcherCallback = base::OnceCallback<void(bool success)>;
......
...@@ -257,11 +257,6 @@ void FakeDebugDaemonClient::CupsRemovePrinter( ...@@ -257,11 +257,6 @@ void FakeDebugDaemonClient::CupsRemovePrinter(
FROM_HERE, base::BindOnce(std::move(callback), has_printer)); FROM_HERE, base::BindOnce(std::move(callback), has_printer));
} }
void FakeDebugDaemonClient::StartConcierge(ConciergeCallback callback) {
base::ThreadTaskRunnerHandle::Get()->PostTask(
FROM_HERE, base::BindOnce(std::move(callback), true));
}
void FakeDebugDaemonClient::StartPluginVmDispatcher( void FakeDebugDaemonClient::StartPluginVmDispatcher(
const std::string& /* owner_id */, const std::string& /* owner_id */,
const std::string& /* lang */, const std::string& /* lang */,
......
...@@ -88,7 +88,6 @@ class COMPONENT_EXPORT(DEBUG_DAEMON) FakeDebugDaemonClient ...@@ -88,7 +88,6 @@ class COMPONENT_EXPORT(DEBUG_DAEMON) FakeDebugDaemonClient
void CupsRemovePrinter(const std::string& name, void CupsRemovePrinter(const std::string& name,
CupsRemovePrinterCallback callback, CupsRemovePrinterCallback callback,
base::OnceClosure error_callback) override; base::OnceClosure error_callback) override;
void StartConcierge(ConciergeCallback callback) override;
void StartPluginVmDispatcher(const std::string& owner_id, void StartPluginVmDispatcher(const std::string& owner_id,
const std::string& lang, const std::string& lang,
PluginVmDispatcherCallback callback) override; PluginVmDispatcherCallback callback) override;
......
...@@ -67,13 +67,7 @@ void OnSetArcVmCpuRestriction( ...@@ -67,13 +67,7 @@ void OnSetArcVmCpuRestriction(
LOG(ERROR) << "SetVmCpuRestriction for ARCVM failed"; LOG(ERROR) << "SetVmCpuRestriction for ARCVM failed";
} }
void DoSetArcVmCpuRestriction(CpuRestrictionState cpu_restriction_state, void SetArcVmCpuRestriction(CpuRestrictionState cpu_restriction_state) {
bool concierge_started) {
if (!concierge_started) {
LOG(ERROR) << "Concierge D-Bus service is not available";
return;
}
auto* client = chromeos::DBusThreadManager::Get()->GetConciergeClient(); auto* client = chromeos::DBusThreadManager::Get()->GetConciergeClient();
if (!client) { if (!client) {
LOG(ERROR) << "ConciergeClient is not available"; LOG(ERROR) << "ConciergeClient is not available";
...@@ -97,17 +91,6 @@ void DoSetArcVmCpuRestriction(CpuRestrictionState cpu_restriction_state, ...@@ -97,17 +91,6 @@ void DoSetArcVmCpuRestriction(CpuRestrictionState cpu_restriction_state,
base::BindOnce(&OnSetArcVmCpuRestriction)); base::BindOnce(&OnSetArcVmCpuRestriction));
} }
void SetArcVmCpuRestriction(CpuRestrictionState cpu_restriction_state) {
auto* client = chromeos::DBusThreadManager::Get()->GetDebugDaemonClient();
if (!client) {
LOG(WARNING) << "DebugDaemonClient is not available";
return;
}
// TODO(wvk): Call StartConcierge() only when the service is not running.
client->StartConcierge(
base::BindOnce(&DoSetArcVmCpuRestriction, cpu_restriction_state));
}
void SetArcContainerCpuRestriction(CpuRestrictionState cpu_restriction_state) { void SetArcContainerCpuRestriction(CpuRestrictionState cpu_restriction_state) {
if (!chromeos::SessionManagerClient::Get()) { if (!chromeos::SessionManagerClient::Get()) {
LOG(WARNING) << "SessionManagerClient is not available"; LOG(WARNING) << "SessionManagerClient is not available";
......
...@@ -527,14 +527,6 @@ class ArcVmClientAdapter : public ArcClientAdapter, ...@@ -527,14 +527,6 @@ class ArcVmClientAdapter : public ArcClientAdapter,
weak_factory_.GetWeakPtr(), std::move(callback))); weak_factory_.GetWeakPtr(), std::move(callback)));
} }
void UpgradeArc(UpgradeParams params,
chromeos::VoidDBusMethodCallback callback) override {
VLOG(1) << "Starting Concierge service";
GetDebugDaemonClient()->StartConcierge(base::BindOnce(
&ArcVmClientAdapter::OnConciergeStarted, weak_factory_.GetWeakPtr(),
std::move(params), std::move(callback)));
}
void StopArcInstance(bool on_shutdown, bool should_backup_log) override { void StopArcInstance(bool on_shutdown, bool should_backup_log) override {
if (on_shutdown) { if (on_shutdown) {
// Do nothing when |on_shutdown| is true because either vm_concierge.conf // Do nothing when |on_shutdown| is true because either vm_concierge.conf
...@@ -675,14 +667,8 @@ class ArcVmClientAdapter : public ArcClientAdapter, ...@@ -675,14 +667,8 @@ class ArcVmClientAdapter : public ArcClientAdapter,
should_notify_observers_ = true; should_notify_observers_ = true;
} }
void OnConciergeStarted(UpgradeParams params, void UpgradeArc(UpgradeParams params,
chromeos::VoidDBusMethodCallback callback, chromeos::VoidDBusMethodCallback callback) override {
bool success) {
if (!success) {
LOG(ERROR) << "Failed to start Concierge service for arcvm";
std::move(callback).Run(false);
return;
}
VLOG(2) << "Checking file system status"; VLOG(2) << "Checking file system status";
base::ThreadPool::PostTaskAndReplyWithResult( base::ThreadPool::PostTaskAndReplyWithResult(
FROM_HERE, {base::MayBlock(), base::TaskPriority::USER_VISIBLE}, FROM_HERE, {base::MayBlock(), base::TaskPriority::USER_VISIBLE},
......
...@@ -97,11 +97,6 @@ class TestDebugDaemonClient : public chromeos::FakeDebugDaemonClient { ...@@ -97,11 +97,6 @@ class TestDebugDaemonClient : public chromeos::FakeDebugDaemonClient {
TestDebugDaemonClient() = default; TestDebugDaemonClient() = default;
~TestDebugDaemonClient() override = default; ~TestDebugDaemonClient() override = default;
void StartConcierge(ConciergeCallback callback) override {
start_concierge_called_ = true;
std::move(callback).Run(start_concierge_result_);
}
void BackupArcBugReport(const std::string& userhash, void BackupArcBugReport(const std::string& userhash,
chromeos::VoidDBusMethodCallback callback) override { chromeos::VoidDBusMethodCallback callback) override {
backup_arc_bug_report_called_ = true; backup_arc_bug_report_called_ = true;
...@@ -115,14 +110,7 @@ class TestDebugDaemonClient : public chromeos::FakeDebugDaemonClient { ...@@ -115,14 +110,7 @@ class TestDebugDaemonClient : public chromeos::FakeDebugDaemonClient {
backup_arc_bug_report_result_ = result; backup_arc_bug_report_result_ = result;
} }
bool start_concierge_called() const { return start_concierge_called_; }
void set_start_concierge_result(bool result) {
start_concierge_result_ = result;
}
private: private:
bool start_concierge_called_ = false;
bool start_concierge_result_ = true;
bool backup_arc_bug_report_called_ = false; bool backup_arc_bug_report_called_ = false;
bool backup_arc_bug_report_result_ = true; bool backup_arc_bug_report_result_ = true;
...@@ -313,14 +301,6 @@ class ArcVmClientAdapterTest : public testing::Test, ...@@ -313,14 +301,6 @@ class ArcVmClientAdapterTest : public testing::Test,
} }
protected: protected:
bool GetStartConciergeCalled() {
return GetTestDebugDaemonClient()->start_concierge_called();
}
void SetStartConciergeResponse(bool response) {
GetTestDebugDaemonClient()->set_start_concierge_result(response);
}
void SetValidUserInfo() { SetUserInfo(kUserIdHash, kSerialNumber); } void SetValidUserInfo() { SetUserInfo(kUserIdHash, kSerialNumber); }
void SetUserInfo(const std::string& hash, const std::string& serial) { void SetUserInfo(const std::string& hash, const std::string& serial) {
...@@ -755,7 +735,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmProxyFailure) { ...@@ -755,7 +735,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmProxyFailure) {
InjectUpstartStartJobFailure(kArcVmServerProxyJobName); InjectUpstartStartJobFailure(kArcVmServerProxyJobName);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -781,7 +760,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StopArcVmAdbdFailure) { ...@@ -781,7 +760,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StopArcVmAdbdFailure) {
// Upgrade should still succeed. // Upgrade should still succeed.
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
} }
...@@ -796,7 +774,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmAdbdFailure) { ...@@ -796,7 +774,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmAdbdFailure) {
EnableAdbOverUsbForTesting(); EnableAdbOverUsbForTesting();
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -821,7 +798,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcCreateDataFailure) { ...@@ -821,7 +798,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcCreateDataFailure) {
InjectUpstartStartJobFailure(kArcCreateDataJobName); InjectUpstartStartJobFailure(kArcCreateDataJobName);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -847,7 +823,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmMountMyFilesJobFail) { ...@@ -847,7 +823,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmMountMyFilesJobFail) {
InjectUpstartStartJobFailure(kArcVmMountMyFilesJobName); InjectUpstartStartJobFailure(kArcVmMountMyFilesJobName);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -874,30 +849,6 @@ TEST_F(ArcVmClientAdapterTest, ...@@ -874,30 +849,6 @@ TEST_F(ArcVmClientAdapterTest,
InjectUpstartStartJobFailure(kArcVmMountRemovableMediaJobName); InjectUpstartStartJobFailure(kArcVmMountRemovableMediaJobName);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called());
// Try to stop the VM. StopVm will fail in this case because
// no VM is running.
vm_tools::concierge::StopVmResponse response;
response.set_success(false);
GetTestConciergeClient()->set_stop_vm_response(response);
adapter()->StopArcInstance(/*on_shutdown=*/false,
/*should_backup_log=*/false);
run_loop()->Run();
EXPECT_TRUE(GetTestConciergeClient()->stop_vm_called());
EXPECT_TRUE(arc_instance_stopped_called());
}
// Tests that UpgradeArc() handles StartConcierge() failures properly.
TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartConciergeFailure) {
SetValidUserInfo();
StartMiniArc();
// Inject failure to StartConcierge().
SetStartConciergeResponse(false);
UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -921,7 +872,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_NoUserId) { ...@@ -921,7 +872,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_NoUserId) {
StartMiniArc(); StartMiniArc();
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -945,7 +895,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_NoSerial) { ...@@ -945,7 +895,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_NoSerial) {
StartMiniArc(); StartMiniArc();
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_FALSE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -971,7 +920,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmFailure) { ...@@ -971,7 +920,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmFailure) {
GetTestConciergeClient()->set_start_vm_response(start_vm_response); GetTestConciergeClient()->set_start_vm_response(start_vm_response);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -994,7 +942,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmFailureEmptyReply) { ...@@ -994,7 +942,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_StartArcVmFailureEmptyReply) {
GetTestConciergeClient()->set_start_vm_response(base::nullopt); GetTestConciergeClient()->set_start_vm_response(base::nullopt);
UpgradeArc(false); UpgradeArc(false);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1015,7 +962,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_Success) { ...@@ -1015,7 +962,6 @@ TEST_F(ArcVmClientAdapterTest, UpgradeArc_Success) {
SetValidUserInfo(); SetValidUserInfo();
StartMiniArc(); StartMiniArc();
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1040,7 +986,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_VariousParams) { ...@@ -1040,7 +986,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_VariousParams) {
UpgradeParams params(GetPopulatedUpgradeParams()); UpgradeParams params(GetPopulatedUpgradeParams());
UpgradeArcWithParams(true, std::move(params)); UpgradeArcWithParams(true, std::move(params));
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
} }
...@@ -1064,7 +1009,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_VariousParams2) { ...@@ -1064,7 +1009,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_VariousParams2) {
params.preferred_languages = {"en_US"}; params.preferred_languages = {"en_US"};
UpgradeArcWithParams(true, std::move(params)); UpgradeArcWithParams(true, std::move(params));
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
} }
...@@ -1084,7 +1028,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_DemoMode) { ...@@ -1084,7 +1028,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_DemoMode) {
params.demo_session_apps_path = base::FilePath(kDemoImage); params.demo_session_apps_path = base::FilePath(kDemoImage);
UpgradeArcWithParams(true, std::move(params)); UpgradeArcWithParams(true, std::move(params));
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1108,7 +1051,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_DisableSystemDefaultApp) { ...@@ -1108,7 +1051,6 @@ TEST_F(ArcVmClientAdapterTest, StartUpgradeArc_DisableSystemDefaultApp) {
StartMiniArcWithParams(true, std::move(start_params)); StartMiniArcWithParams(true, std::move(start_params));
UpgradeParams params(GetPopulatedUpgradeParams()); UpgradeParams params(GetPopulatedUpgradeParams());
UpgradeArcWithParams(true, std::move(params)); UpgradeArcWithParams(true, std::move(params));
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
EXPECT_TRUE( EXPECT_TRUE(
...@@ -1141,7 +1083,6 @@ TEST_F(ArcVmClientAdapterTest, CrosvmCrash) { ...@@ -1141,7 +1083,6 @@ TEST_F(ArcVmClientAdapterTest, CrosvmCrash) {
SetValidUserInfo(); SetValidUserInfo();
StartMiniArc(); StartMiniArc();
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1156,7 +1097,6 @@ TEST_F(ArcVmClientAdapterTest, ConciergeCrash) { ...@@ -1156,7 +1097,6 @@ TEST_F(ArcVmClientAdapterTest, ConciergeCrash) {
SetValidUserInfo(); SetValidUserInfo();
StartMiniArc(); StartMiniArc();
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1171,7 +1111,6 @@ TEST_F(ArcVmClientAdapterTest, CrosvmAndConciergeCrashes) { ...@@ -1171,7 +1111,6 @@ TEST_F(ArcVmClientAdapterTest, CrosvmAndConciergeCrashes) {
SetValidUserInfo(); SetValidUserInfo();
StartMiniArc(); StartMiniArc();
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
...@@ -1194,7 +1133,6 @@ TEST_F(ArcVmClientAdapterTest, VmStoppedSignal_UnknownCid) { ...@@ -1194,7 +1133,6 @@ TEST_F(ArcVmClientAdapterTest, VmStoppedSignal_UnknownCid) {
SetValidUserInfo(); SetValidUserInfo();
StartMiniArc(); StartMiniArc();
UpgradeArc(true); UpgradeArc(true);
EXPECT_TRUE(GetStartConciergeCalled());
EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called()); EXPECT_TRUE(GetTestConciergeClient()->start_arc_vm_called());
EXPECT_FALSE(arc_instance_stopped_called()); EXPECT_FALSE(arc_instance_stopped_called());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment