Skip to content

Commit 01fd984

Browse files
Add more metrics and tags to CI Visibility telemetry (#7223)
1 parent 1ceb7d1 commit 01fd984

37 files changed

+320
-44
lines changed

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

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import datadog.trace.api.Config;
55
import datadog.trace.api.civisibility.config.ModuleExecutionSettings;
66
import datadog.trace.api.civisibility.telemetry.CiVisibilityMetricCollector;
7+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
78
import datadog.trace.api.git.GitInfoProvider;
89
import datadog.trace.civisibility.ci.CIInfo;
910
import datadog.trace.civisibility.ci.CIProviderInfo;
@@ -45,8 +46,8 @@ public class CiVisibilityRepoServices {
4546

4647
final String repoRoot;
4748
final String moduleName;
49+
final Provider ciProvider;
4850
final Map<String, String> ciTags;
49-
final boolean supportedCiProvider;
5051

5152
final GitDataUploader gitDataUploader;
5253
final RepoIndexProvider repoIndexProvider;
@@ -56,11 +57,12 @@ public class CiVisibilityRepoServices {
5657

5758
CiVisibilityRepoServices(CiVisibilityServices services, Path path) {
5859
CIProviderInfo ciProviderInfo = services.ciProviderInfoFactory.createCIProviderInfo(path);
60+
ciProvider = ciProviderInfo.getProvider();
61+
5962
CIInfo ciInfo = ciProviderInfo.buildCIInfo();
6063
repoRoot = ciInfo.getCiWorkspace();
6164
moduleName = getModuleName(services.config, path, ciInfo);
6265
ciTags = new CITagsProvider().getCiTags(ciInfo);
63-
supportedCiProvider = ciProviderInfo.isSupportedCiProvider();
6466

6567
gitDataUploader =
6668
buildGitDataUploader(

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ private static BuildSystemSession.Factory buildSystemSessionFactory(
210210
repoServices.repoRoot,
211211
startCommand,
212212
startTime,
213-
repoServices.supportedCiProvider,
213+
repoServices.ciProvider,
214214
services.config,
215215
services.metricCollector,
216216
testModuleRegistry,
@@ -262,7 +262,7 @@ private static TestFrameworkSession.Factory headlessTestFrameworkEssionFactory(
262262
return new HeadlessTestSession(
263263
projectName,
264264
startTime,
265-
repoServices.supportedCiProvider,
265+
repoServices.ciProvider,
266266
services.config,
267267
services.metricCollector,
268268
testDecorator,
@@ -282,7 +282,7 @@ private static CIVisibility.SessionFactory manualApiSessionFactory(
282282
return new ManualApiTestSession(
283283
projectName,
284284
startTime,
285-
repoServices.supportedCiProvider,
285+
repoServices.ciProvider,
286286
services.config,
287287
services.metricCollector,
288288
testDecorator,

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import static datadog.trace.api.git.GitUtils.normalizeTag;
55
import static datadog.trace.civisibility.utils.FileUtils.expandTilde;
66

7+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
78
import datadog.trace.api.git.CommitInfo;
89
import datadog.trace.api.git.GitInfo;
910
import datadog.trace.api.git.PersonInfo;
@@ -112,4 +113,9 @@ private PersonInfo buildGitCommitAuthor() {
112113
System.getenv(APPVEYOR_REPO_COMMIT_AUTHOR_NAME),
113114
System.getenv(APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL));
114115
}
116+
117+
@Override
118+
public Provider getProvider() {
119+
return Provider.APPVEYOR;
120+
}
115121
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package datadog.trace.civisibility.ci;
22

3+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
34
import datadog.trace.api.git.GitInfo;
45

56
class AwsCodePipelineInfo implements CIProviderInfo {
@@ -26,4 +27,9 @@ public CIInfo buildCIInfo() {
2627
AWS_CODEPIPELINE_ARN)
2728
.build();
2829
}
30+
31+
@Override
32+
public Provider getProvider() {
33+
return Provider.AWS;
34+
}
2935
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import static datadog.trace.api.git.GitUtils.normalizeTag;
77
import static datadog.trace.civisibility.utils.FileUtils.expandTilde;
88

9+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
910
import datadog.trace.api.git.CommitInfo;
1011
import datadog.trace.api.git.GitInfo;
1112
import datadog.trace.api.git.PersonInfo;
@@ -134,4 +135,9 @@ private PersonInfo buildGitCommitAuthor() {
134135
System.getenv(AZURE_BUILD_REQUESTED_FOR_ID),
135136
System.getenv(AZURE_BUILD_REQUESTED_FOR_EMAIL));
136137
}
138+
139+
@Override
140+
public Provider getProvider() {
141+
return Provider.AZP;
142+
}
137143
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import static datadog.trace.api.git.GitUtils.normalizeTag;
66
import static datadog.trace.civisibility.utils.FileUtils.expandTilde;
77

8+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
89
import datadog.trace.api.git.CommitInfo;
910
import datadog.trace.api.git.GitInfo;
1011
import datadog.trace.util.Strings;
@@ -75,4 +76,9 @@ private String buildPipelineId() {
7576
}
7677
return id;
7778
}
79+
80+
@Override
81+
public Provider getProvider() {
82+
return Provider.BITBUCKET;
83+
}
7884
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import static datadog.trace.api.git.GitUtils.normalizeTag;
66
import static datadog.trace.civisibility.utils.FileUtils.expandTilde;
77

8+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
89
import datadog.trace.api.git.CommitInfo;
910
import datadog.trace.api.git.GitInfo;
1011
import datadog.trace.api.git.PersonInfo;
@@ -65,4 +66,9 @@ private String buildGitCommit() {
6566
return System.getenv(BITRISE_GIT_COMMIT);
6667
}
6768
}
69+
70+
@Override
71+
public Provider getProvider() {
72+
return Provider.BITRISE;
73+
}
6874
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import static datadog.trace.api.git.GitUtils.normalizeBranch;
55
import static datadog.trace.api.git.GitUtils.normalizeTag;
66

7+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
78
import datadog.trace.api.git.CommitInfo;
89
import datadog.trace.api.git.GitInfo;
910
import datadog.trace.api.git.PersonInfo;
@@ -65,4 +66,9 @@ private PersonInfo buildGitCommiter() {
6566
return new PersonInfo(
6667
System.getenv(BUDDY_GIT_COMMIT_AUTHOR), System.getenv(BUDDY_GIT_COMMIT_EMAIL));
6768
}
69+
70+
@Override
71+
public Provider getProvider() {
72+
return Provider.BUDDYCI;
73+
}
6874
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import static datadog.trace.civisibility.utils.FileUtils.expandTilde;
77
import static datadog.trace.util.Strings.toJson;
88

9+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
910
import datadog.trace.api.git.CommitInfo;
1011
import datadog.trace.api.git.GitInfo;
1112
import datadog.trace.api.git.PersonInfo;
@@ -84,4 +85,9 @@ private PersonInfo buildGitCommitAuthor() {
8485
return new PersonInfo(
8586
System.getenv(BUILDKITE_GIT_AUTHOR_NAME), System.getenv(BUILDKITE_GIT_AUTHOR_EMAIL));
8687
}
88+
89+
@Override
90+
public Provider getProvider() {
91+
return Provider.BUILDKITE;
92+
}
8793
}
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package datadog.trace.civisibility.ci;
22

3+
import datadog.trace.api.civisibility.telemetry.tag.Provider;
34
import datadog.trace.api.git.GitInfo;
45

56
public interface CIProviderInfo {
@@ -8,7 +9,5 @@ public interface CIProviderInfo {
89

910
CIInfo buildCIInfo();
1011

11-
default boolean isSupportedCiProvider() {
12-
return true;
13-
}
12+
Provider getProvider();
1413
}

0 commit comments

Comments
 (0)