Skip to content

Commit 3c2ecd5

Browse files
Use tag as fallback in API requests if no branch is available (#8876)
1 parent 37a783c commit 3c2ecd5

File tree

3 files changed

+30
-1
lines changed

3 files changed

+30
-1
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ private TracerEnvironment buildTracerEnvironment(JvmInfo jvmInfo, @Nullable Stri
106106
.env(config.getEnv())
107107
.repositoryUrl(gitInfo.getRepositoryURL())
108108
.branch(gitInfo.getBranch())
109+
.tag(gitInfo.getTag())
109110
.sha(gitInfo.getCommit().getSha())
110111
.commitMessage(gitInfo.getCommit().getFullMessage())
111112
.osPlatform(wellKnownTags.getOsPlatform().toString())

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

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.squareup.moshi.Json;
44
import datadog.trace.api.civisibility.config.Configurations;
5+
import datadog.trace.util.Strings;
56
import java.util.HashMap;
67
import java.util.Map;
78

@@ -111,6 +112,7 @@ public static final class Builder {
111112
private String env;
112113
private String repositoryUrl;
113114
private String branch;
115+
private String tag; // will act as fallback if no branch is provided
114116
private String sha;
115117
private String commitMessage;
116118
private String osPlatform;
@@ -143,6 +145,11 @@ public Builder branch(String branch) {
143145
return this;
144146
}
145147

148+
public Builder tag(String tag) {
149+
this.tag = tag;
150+
return this;
151+
}
152+
146153
public Builder sha(String sha) {
147154
this.sha = sha;
148155
return this;
@@ -203,7 +210,7 @@ public TracerEnvironment build() {
203210
service,
204211
env,
205212
repositoryUrl,
206-
branch,
213+
Strings.isNotBlank(branch) ? branch : tag,
207214
sha,
208215
commitMessage,
209216
new Configurations(
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package datadog.trace.civisibility.config
2+
3+
import spock.lang.Specification
4+
5+
class TracerEnvironmentTest extends Specification {
6+
def "test fallback to tag on no branch"() {
7+
setup:
8+
def builder = TracerEnvironment.builder()
9+
def environment = builder.branch(branch).tag(tag).build()
10+
11+
expect:
12+
environment.branch == environmentBranch
13+
14+
where:
15+
branch | tag | environmentBranch
16+
"main" | "v.1.0.0" | "main"
17+
"main" | null | "main"
18+
null | "v.1.0.0" | "v.1.0.0"
19+
null | null | null
20+
}
21+
}

0 commit comments

Comments
 (0)