Skip to content

Commit d05779f

Browse files
authored
Merge pull request #277 from gradle/gk/captureCiProvider
Add capturing the CI provider
2 parents 27fd312 + 972f7bf commit d05779f

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/main/java/com/gradle/CustomBuildScanEnhancements.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,7 @@ private CaptureCiMetadataAction(BuildScanExtension buildScan, ProviderFactory pr
182182
@Override
183183
public void execute(BuildResult buildResult) {
184184
if (isJenkins(providers) || isHudson(providers)) {
185+
String ciProvider = isJenkins(providers) ? "Jenkins" : "Hudson";
185186
String controllerUrlEnvVar = isJenkins(providers) ? "JENKINS_URL" : "HUDSON_URL";
186187

187188
Optional<String> buildUrl = envVariable("BUILD_URL", providers);
@@ -191,6 +192,7 @@ public void execute(BuildResult buildResult) {
191192
Optional<String> stageName = envVariable("STAGE_NAME", providers);
192193
Optional<String> controllerUrl = envVariable(controllerUrlEnvVar, providers);
193194

195+
buildScan.value("CI provider", ciProvider);
194196
buildUrl.ifPresent(url ->
195197
buildScan.link(isJenkins(providers) ? "Jenkins build" : "Hudson build", url));
196198
buildNumber.ifPresent(value ->
@@ -213,6 +215,7 @@ public void execute(BuildResult buildResult) {
213215
}
214216

215217
if (isTeamCity(providers)) {
218+
buildScan.value("CI provider", "TeamCity");
216219
Optional<String> teamcityBuildPropertiesFile = envVariable("TEAMCITY_BUILD_PROPERTIES_FILE", providers);
217220
if (teamcityBuildPropertiesFile.isPresent()) {
218221
Properties buildProperties = readPropertiesFile(teamcityBuildPropertiesFile.get(), providers, projectDirectory.get());
@@ -247,6 +250,7 @@ public void execute(BuildResult buildResult) {
247250
}
248251

249252
if (isCircleCI(providers)) {
253+
buildScan.value("CI provider", "CircleCI");
250254
envVariable("CIRCLE_BUILD_URL", providers).ifPresent(url ->
251255
buildScan.link("CircleCI build", url));
252256
envVariable("CIRCLE_BUILD_NUM", providers).ifPresent(value ->
@@ -258,6 +262,7 @@ public void execute(BuildResult buildResult) {
258262
}
259263

260264
if (isBamboo(providers)) {
265+
buildScan.value("CI provider", "Bamboo");
261266
envVariable("bamboo_resultsUrl", providers).ifPresent(url ->
262267
buildScan.link("Bamboo build", url));
263268
envVariable("bamboo_buildNumber", providers).ifPresent(value ->
@@ -271,6 +276,7 @@ public void execute(BuildResult buildResult) {
271276
}
272277

273278
if (isGitHubActions(providers)) {
279+
buildScan.value("CI provider", "GitHub Actions");
274280
Optional<String> gitHubUrl = envVariable("GITHUB_SERVER_URL", providers);
275281
Optional<String> gitRepository = envVariable("GITHUB_REPOSITORY", providers);
276282
Optional<String> gitHubRunId = envVariable("GITHUB_RUN_ID", providers);
@@ -284,6 +290,7 @@ public void execute(BuildResult buildResult) {
284290
}
285291

286292
if (isGitLab(providers)) {
293+
buildScan.value("CI provider", "GitLab");
287294
envVariable("CI_JOB_URL", providers).ifPresent(url ->
288295
buildScan.link("GitLab build", url));
289296
envVariable("CI_PIPELINE_URL", providers).ifPresent(url ->
@@ -295,6 +302,7 @@ public void execute(BuildResult buildResult) {
295302
}
296303

297304
if (isTravis(providers)) {
305+
buildScan.value("CI provider", "Travis");
298306
envVariable("TRAVIS_BUILD_WEB_URL", providers).ifPresent(url ->
299307
buildScan.link("Travis build", url));
300308
envVariable("TRAVIS_BUILD_NUMBER", providers).ifPresent(value ->
@@ -305,13 +313,15 @@ public void execute(BuildResult buildResult) {
305313
}
306314

307315
if (isBitrise(providers)) {
316+
buildScan.value("CI provider", "Bitrise");
308317
envVariable("BITRISE_BUILD_URL", providers).ifPresent(url ->
309318
buildScan.link("Bitrise build", url));
310319
envVariable("BITRISE_BUILD_NUMBER", providers).ifPresent(value ->
311320
buildScan.value("CI build number", value));
312321
}
313322

314323
if (isGoCD(providers)) {
324+
buildScan.value("CI provider", "GoCD");
315325
Optional<String> pipelineName = envVariable("GO_PIPELINE_NAME", providers);
316326
Optional<String> pipelineNumber = envVariable("GO_PIPELINE_COUNTER", providers);
317327
Optional<String> stageName = envVariable("GO_STAGE_NAME", providers);
@@ -336,6 +346,7 @@ public void execute(BuildResult buildResult) {
336346
}
337347

338348
if (isAzurePipelines(providers)) {
349+
buildScan.value("CI provider", "Azure Pipelines");
339350
Optional<String> azureServerUrl = envVariable("SYSTEM_TEAMFOUNDATIONCOLLECTIONURI", providers);
340351
Optional<String> azureProject = envVariable("SYSTEM_TEAMPROJECT", providers);
341352
Optional<String> buildId = envVariable("BUILD_BUILDID", providers);
@@ -353,6 +364,7 @@ public void execute(BuildResult buildResult) {
353364
}
354365

355366
if (isBuildkite(providers)) {
367+
buildScan.value("CI provider", "Buildkite");
356368
envVariable("BUILDKITE_BUILD_URL", providers)
357369
.ifPresent(s -> buildScan.link("Buildkite build", s));
358370
envVariable("BUILDKITE_COMMAND", providers).ifPresent(value ->

0 commit comments

Comments
 (0)