summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/main/main.cpp21
-rw-r--r--src/buildtool/serve_api/remote/configuration_client.cpp4
2 files changed, 20 insertions, 5 deletions
diff --git a/src/buildtool/main/main.cpp b/src/buildtool/main/main.cpp
index d6b06471..25458ef4 100644
--- a/src/buildtool/main/main.cpp
+++ b/src/buildtool/main/main.cpp
@@ -135,17 +135,32 @@ void SetupExecutionConfig(EndpointArguments const& eargs,
}
void SetupServeConfig(ServeArguments const& srvargs) {
- using RemoteConfig = RemoteServeConfig;
if (srvargs.remote_serve_address) {
- if (not RemoteConfig::SetRemoteAddress(*srvargs.remote_serve_address)) {
+ if (not RemoteServeConfig::SetRemoteAddress(
+ *srvargs.remote_serve_address)) {
Logger::Log(LogLevel::Error,
"setting serve service address '{}' failed.",
*srvargs.remote_serve_address);
std::exit(kExitFailure);
}
+ // if the user has not provided the --remote-execution-address, we fall
+ // back to the --remote-serve-address
+ if (auto client_remote_address = RemoteExecutionConfig::RemoteAddress();
+ !client_remote_address) {
+ if (!RemoteExecutionConfig::SetRemoteAddress(
+ *srvargs.remote_serve_address)) {
+ Logger::Log(LogLevel::Error,
+ "setting remote execution address '{}' failed.",
+ *srvargs.remote_serve_address);
+ std::exit(kExitFailure);
+ }
+ Logger::Log(LogLevel::Info,
+ "Using '{}' as the remote execution endpoint.",
+ *srvargs.remote_serve_address);
+ }
}
if (not srvargs.repositories.empty() and
- not RemoteConfig::SetKnownRepositories(srvargs.repositories)) {
+ not RemoteServeConfig::SetKnownRepositories(srvargs.repositories)) {
Logger::Log(LogLevel::Error,
"setting serve service repositories failed.");
std::exit(kExitFailure);
diff --git a/src/buildtool/serve_api/remote/configuration_client.cpp b/src/buildtool/serve_api/remote/configuration_client.cpp
index 25c38d79..f0615951 100644
--- a/src/buildtool/serve_api/remote/configuration_client.cpp
+++ b/src/buildtool/serve_api/remote/configuration_client.cpp
@@ -22,8 +22,8 @@ auto ConfigurationClient::CheckServeRemoteExecution() -> bool {
auto client_remote_address = RemoteExecutionConfig::RemoteAddress();
if (!client_remote_address) {
logger_.Emit(LogLevel::Error,
- "In order to use just-serve, also the "
- "--remote-execution-address option must be given.");
+ "Internal error: the remote execution endpoint should "
+ "have been set.");
return false;
}