Skip to content

Commit acf173a

Browse files
Disable backend requests for impacted tests data (#8391)
1 parent 053a36f commit acf173a

4 files changed

Lines changed: 31 additions & 19 deletions

File tree

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -431,28 +431,30 @@ private Diff getPullRequestDiff(
431431
LOGGER.error("Could not get git diff for PR: {}", pullRequestInfo, e);
432432
}
433433

434-
try {
435-
ChangedFiles changedFiles = configurationApi.getChangedFiles(tracerEnvironment);
436-
437-
// attempting to use base SHA returned by the backend to calculate git diff
438-
if (repositoryRoot != null) {
439-
// ensure repo is not shallow before attempting to get git diff
440-
gitRepoUnshallow.unshallow();
441-
Diff diff = gitClient.getGitDiff(changedFiles.getBaseSha(), tracerEnvironment.getSha());
442-
if (diff != null) {
443-
return diff;
434+
if (config.isCiVisibilityImpactedTestsBackendRequestEnabled()) {
435+
try {
436+
ChangedFiles changedFiles = configurationApi.getChangedFiles(tracerEnvironment);
437+
438+
// attempting to use base SHA returned by the backend to calculate git diff
439+
if (repositoryRoot != null) {
440+
// ensure repo is not shallow before attempting to get git diff
441+
gitRepoUnshallow.unshallow();
442+
Diff diff = gitClient.getGitDiff(changedFiles.getBaseSha(), tracerEnvironment.getSha());
443+
if (diff != null) {
444+
return diff;
445+
}
444446
}
445-
}
446447

447-
// falling back to file-level granularity
448-
return new FileDiff(changedFiles.getFiles());
448+
// falling back to file-level granularity
449+
return new FileDiff(changedFiles.getFiles());
449450

450-
} catch (InterruptedException e) {
451-
LOGGER.error("Interrupted while getting git diff for: {}", tracerEnvironment, e);
452-
Thread.currentThread().interrupt();
451+
} catch (InterruptedException e) {
452+
LOGGER.error("Interrupted while getting git diff for: {}", tracerEnvironment, e);
453+
Thread.currentThread().interrupt();
453454

454-
} catch (Exception e) {
455-
LOGGER.error("Could not get git diff for: {}", tracerEnvironment, e);
455+
} catch (Exception e) {
456+
LOGGER.error("Could not get git diff for: {}", tracerEnvironment, e);
457+
}
456458
}
457459

458460
return LineDiff.EMPTY;

dd-smoke-tests/maven/src/test/groovy/datadog/smoketest/MavenSmokeTest.groovy

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ class MavenSmokeTest extends CiVisibilitySmokeTest {
116116
mockBackend.givenChangedFile("src/test/java/datadog/smoke/TestSucceed.java")
117117

118118
def exitCode = whenRunningMavenBuild([
119-
"${Strings.propertyNameToSystemPropertyName(CiVisibilityConfig.CIVISIBILITY_GIT_CLIENT_ENABLED)}=false" as String
119+
"${Strings.propertyNameToSystemPropertyName(CiVisibilityConfig.CIVISIBILITY_GIT_CLIENT_ENABLED)}=false" as String,
120+
"${Strings.propertyNameToSystemPropertyName(CiVisibilityConfig.CIVISIBILITY_IMPACTED_TESTS_BACKEND_REQUEST_ENABLED)}=true" as String
120121
], [])
121122
assert exitCode == 0
122123

dd-trace-api/src/main/java/datadog/trace/api/config/CiVisibilityConfig.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ public final class CiVisibilityConfig {
5454
public static final String CIVISIBILITY_FLAKY_RETRY_ENABLED = "civisibility.flaky.retry.enabled";
5555
public static final String CIVISIBILITY_IMPACTED_TESTS_DETECTION_ENABLED =
5656
"civisibility.impacted.tests.detection.enabled";
57+
public static final String CIVISIBILITY_IMPACTED_TESTS_BACKEND_REQUEST_ENABLED =
58+
"civisibility.impacted.tests.backend.request.enabled";
5759
public static final String CIVISIBILITY_KNOWN_TESTS_REQUEST_ENABLED =
5860
"civisibility.known.tests.request.enabled";
5961
public static final String CIVISIBILITY_FLAKY_RETRY_ONLY_KNOWN_FLAKES =

internal-api/src/main/java/datadog/trace/api/Config.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -359,6 +359,7 @@ public static String getHostName() {
359359
private final List<String> ciVisibilityResourceFolderNames;
360360
private final boolean ciVisibilityFlakyRetryEnabled;
361361
private final boolean ciVisibilityImpactedTestsDetectionEnabled;
362+
private final boolean ciVisibilityImpactedTestsBackendRequestEnabled;
362363
private final boolean ciVisibilityKnownTestsRequestEnabled;
363364
private final boolean ciVisibilityFlakyRetryOnlyKnownFlakes;
364365
private final int ciVisibilityFlakyRetryCount;
@@ -1501,6 +1502,8 @@ PROFILING_DATADOG_PROFILER_ENABLED, isDatadogProfilerSafeInCurrentEnvironment())
15011502
configProvider.getBoolean(CIVISIBILITY_FLAKY_RETRY_ENABLED, true);
15021503
ciVisibilityImpactedTestsDetectionEnabled =
15031504
configProvider.getBoolean(CIVISIBILITY_IMPACTED_TESTS_DETECTION_ENABLED, true);
1505+
ciVisibilityImpactedTestsBackendRequestEnabled =
1506+
configProvider.getBoolean(CIVISIBILITY_IMPACTED_TESTS_BACKEND_REQUEST_ENABLED, false);
15041507
ciVisibilityKnownTestsRequestEnabled =
15051508
configProvider.getBoolean(CIVISIBILITY_KNOWN_TESTS_REQUEST_ENABLED, true);
15061509
ciVisibilityFlakyRetryOnlyKnownFlakes =
@@ -2945,6 +2948,10 @@ public boolean isCiVisibilityImpactedTestsDetectionEnabled() {
29452948
return ciVisibilityImpactedTestsDetectionEnabled;
29462949
}
29472950

2951+
public boolean isCiVisibilityImpactedTestsBackendRequestEnabled() {
2952+
return ciVisibilityImpactedTestsBackendRequestEnabled;
2953+
}
2954+
29482955
public boolean isCiVisibilityKnownTestsRequestEnabled() {
29492956
return ciVisibilityKnownTestsRequestEnabled;
29502957
}

0 commit comments

Comments
 (0)