Skip to content

Commit 446b1a2

Browse files
Yanniccopybara-github
authored andcommitted
Move newCredentialHelperProvider into GoogleAuthUtils
Follow-up on #15930 due to #15906 Progress on #15856 Closes #15941. PiperOrigin-RevId: 462580799 Change-Id: Ibac79ed68a0c87a4f34eb9d0729abb1552b44519
1 parent 23c013d commit 446b1a2

File tree

9 files changed

+313
-304
lines changed

9 files changed

+313
-304
lines changed

src/main/java/com/google/devtools/build/lib/BUILD

+15
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,19 @@ java_library(
217217
],
218218
)
219219

220+
java_library(
221+
name = "runtime/command_line_path_factory",
222+
srcs = [
223+
"runtime/CommandLinePathFactory.java",
224+
],
225+
deps = [
226+
"//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories",
227+
"//src/main/java/com/google/devtools/build/lib/vfs",
228+
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
229+
"//third_party:guava",
230+
],
231+
)
232+
220233
java_library(
221234
name = "runtime",
222235
srcs = glob(
@@ -229,6 +242,7 @@ java_library(
229242
"buildtool/BuildRequestOptions.java",
230243
"runtime/BlazeCommandResult.java",
231244
"runtime/CommandDispatcher.java",
245+
"runtime/CommandLinePathFactory.java",
232246
"runtime/KeepGoingOption.java",
233247
"runtime/LoadingPhaseThreadsOption.java",
234248
],
@@ -239,6 +253,7 @@ java_library(
239253
":loading-phase-threads-option",
240254
":runtime/blaze_command_result",
241255
":runtime/command_dispatcher",
256+
":runtime/command_line_path_factory",
242257
"//src/main/java/com/google/devtools/build/lib/actions",
243258
"//src/main/java/com/google/devtools/build/lib/actions:action_lookup_data",
244259
"//src/main/java/com/google/devtools/build/lib/actions:artifacts",

src/main/java/com/google/devtools/build/lib/authandtls/BUILD

+2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ java_library(
1414
name = "authandtls",
1515
srcs = glob(["*.java"]),
1616
deps = [
17+
"//src/main/java/com/google/devtools/build/lib:runtime/command_line_path_factory",
18+
"//src/main/java/com/google/devtools/build/lib/authandtls/credentialhelper",
1719
"//src/main/java/com/google/devtools/build/lib/concurrent",
1820
"//src/main/java/com/google/devtools/build/lib/events",
1921
"//src/main/java/com/google/devtools/build/lib/vfs",

src/main/java/com/google/devtools/build/lib/authandtls/GoogleAuthUtils.java

+26
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,11 @@
1919
import com.google.common.annotations.VisibleForTesting;
2020
import com.google.common.base.Preconditions;
2121
import com.google.common.base.Strings;
22+
import com.google.devtools.build.lib.authandtls.credentialhelper.CredentialHelperEnvironment;
23+
import com.google.devtools.build.lib.authandtls.credentialhelper.CredentialHelperProvider;
2224
import com.google.devtools.build.lib.events.Event;
2325
import com.google.devtools.build.lib.events.Reporter;
26+
import com.google.devtools.build.lib.runtime.CommandLinePathFactory;
2427
import com.google.devtools.build.lib.vfs.FileSystem;
2528
import com.google.devtools.build.lib.vfs.Path;
2629
import io.grpc.CallCredentials;
@@ -338,4 +341,27 @@ static Optional<Credentials> newCredentialsFromNetrc(
338341
"Failed to parse " + netrcFile.getPathString() + ": " + e.getMessage(), e);
339342
}
340343
}
344+
345+
@VisibleForTesting
346+
public static CredentialHelperProvider newCredentialHelperProvider(
347+
CredentialHelperEnvironment environment,
348+
CommandLinePathFactory pathFactory,
349+
List<AuthAndTLSOptions.UnresolvedScopedCredentialHelper> helpers)
350+
throws IOException {
351+
Preconditions.checkNotNull(environment);
352+
Preconditions.checkNotNull(pathFactory);
353+
Preconditions.checkNotNull(helpers);
354+
355+
CredentialHelperProvider.Builder builder = CredentialHelperProvider.builder();
356+
for (AuthAndTLSOptions.UnresolvedScopedCredentialHelper helper : helpers) {
357+
Optional<String> scope = helper.getScope();
358+
Path path = pathFactory.create(environment.getClientEnvironment(), helper.getPath());
359+
if (scope.isPresent()) {
360+
builder.add(scope.get(), path);
361+
} else {
362+
builder.add(path);
363+
}
364+
}
365+
return builder.build();
366+
}
341367
}

src/main/java/com/google/devtools/build/lib/remote/RemoteModule.java

-38
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import build.bazel.remote.execution.v2.DigestFunction;
2020
import build.bazel.remote.execution.v2.ServerCapabilities;
2121
import com.google.auth.Credentials;
22-
import com.google.auto.value.AutoValue;
2322
import com.google.common.annotations.VisibleForTesting;
2423
import com.google.common.base.Ascii;
2524
import com.google.common.base.Preconditions;
@@ -46,11 +45,8 @@
4645
import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget;
4746
import com.google.devtools.build.lib.analysis.test.TestProvider;
4847
import com.google.devtools.build.lib.authandtls.AuthAndTLSOptions;
49-
import com.google.devtools.build.lib.authandtls.AuthAndTLSOptions.UnresolvedScopedCredentialHelper;
5048
import com.google.devtools.build.lib.authandtls.CallCredentialsProvider;
5149
import com.google.devtools.build.lib.authandtls.GoogleAuthUtils;
52-
import com.google.devtools.build.lib.authandtls.credentialhelper.CredentialHelperEnvironment;
53-
import com.google.devtools.build.lib.authandtls.credentialhelper.CredentialHelperProvider;
5450
import com.google.devtools.build.lib.bazel.repository.downloader.Downloader;
5551
import com.google.devtools.build.lib.buildeventstream.BuildEventArtifactUploader;
5652
import com.google.devtools.build.lib.buildeventstream.LocalFilesArtifactUploader;
@@ -79,7 +75,6 @@
7975
import com.google.devtools.build.lib.runtime.BuildEventArtifactUploaderFactory;
8076
import com.google.devtools.build.lib.runtime.Command;
8177
import com.google.devtools.build.lib.runtime.CommandEnvironment;
82-
import com.google.devtools.build.lib.runtime.CommandLinePathFactory;
8378
import com.google.devtools.build.lib.runtime.RepositoryRemoteExecutor;
8479
import com.google.devtools.build.lib.runtime.RepositoryRemoteExecutorFactory;
8580
import com.google.devtools.build.lib.runtime.ServerBuilder;
@@ -1044,29 +1039,6 @@ RemoteActionContextProvider getActionContextProvider() {
10441039
return actionContextProvider;
10451040
}
10461041

1047-
@VisibleForTesting
1048-
static CredentialHelperProvider newCredentialHelperProvider(
1049-
CredentialHelperEnvironment environment,
1050-
CommandLinePathFactory pathFactory,
1051-
List<UnresolvedScopedCredentialHelper> helpers)
1052-
throws IOException {
1053-
Preconditions.checkNotNull(environment);
1054-
Preconditions.checkNotNull(pathFactory);
1055-
Preconditions.checkNotNull(helpers);
1056-
1057-
CredentialHelperProvider.Builder builder = CredentialHelperProvider.builder();
1058-
for (UnresolvedScopedCredentialHelper helper : helpers) {
1059-
Optional<String> scope = helper.getScope();
1060-
Path path = pathFactory.create(environment.getClientEnvironment(), helper.getPath());
1061-
if (scope.isPresent()) {
1062-
builder.add(scope.get(), path);
1063-
} else {
1064-
builder.add(path);
1065-
}
1066-
}
1067-
return builder.build();
1068-
}
1069-
10701042
static Credentials newCredentials(
10711043
Map<String, String> clientEnv,
10721044
FileSystem fileSystem,
@@ -1095,14 +1067,4 @@ static Credentials newCredentials(
10951067

10961068
return credentials;
10971069
}
1098-
1099-
@VisibleForTesting
1100-
@AutoValue
1101-
abstract static class ScopedCredentialHelper {
1102-
/** Returns the scope of the credential helper (if any). */
1103-
public abstract Optional<String> getScope();
1104-
1105-
/** Returns the path of the credential helper. */
1106-
public abstract Path getPath();
1107-
}
11081070
}

src/test/java/com/google/devtools/build/lib/BUILD

+1
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,7 @@ java_test(
126126
"//src/main/java/com/google/devtools/build/lib:runtime",
127127
"//src/main/java/com/google/devtools/build/lib:runtime/blaze_command_result",
128128
"//src/main/java/com/google/devtools/build/lib:runtime/command_dispatcher",
129+
"//src/main/java/com/google/devtools/build/lib:runtime/command_line_path_factory",
129130
"//src/main/java/com/google/devtools/build/lib:runtime/safe_request_logging",
130131
"//src/main/java/com/google/devtools/build/lib/actions",
131132
"//src/main/java/com/google/devtools/build/lib/actions:action_lookup_data",

src/test/java/com/google/devtools/build/lib/authandtls/BUILD

+3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,10 @@ java_library(
2424
],
2525
),
2626
deps = [
27+
"//src/main/java/com/google/devtools/build/lib:runtime/command_line_path_factory",
2728
"//src/main/java/com/google/devtools/build/lib/authandtls",
29+
"//src/main/java/com/google/devtools/build/lib/authandtls/credentialhelper",
30+
"//src/main/java/com/google/devtools/build/lib/events",
2831
"//src/main/java/com/google/devtools/build/lib/vfs",
2932
"//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs",
3033
"//src/main/java/com/google/devtools/common/options",

0 commit comments

Comments
 (0)