Skip to content

Commit 98838b6

Browse files
committed
prefer branch name from git
1 parent e267cdc commit 98838b6

File tree

2 files changed

+35
-8
lines changed

2 files changed

+35
-8
lines changed

pkg/gitsemver.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -164,9 +164,9 @@ func (vs *GitSemVer) getBranchGitLab(repo string) (branchName string) {
164164
// can be found (for example, in detached HEAD state),
165165
// then an empty string is returned.
166166
func (vs *GitSemVer) GetBranch(repo string) (branchName string) {
167-
if branchName = vs.getBranchGitHub(repo); branchName == "" {
168-
if branchName = vs.getBranchGitLab(repo); branchName == "" {
169-
branchName = vs.Git.GetBranch(repo)
167+
if branchName = vs.Git.GetBranch(repo); branchName == "" {
168+
if branchName = vs.getBranchGitHub(repo); branchName == "" {
169+
branchName = vs.getBranchGitLab(repo)
170170
}
171171
}
172172
return

pkg/gitsemver_test.go

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -124,16 +124,39 @@ func Test_VersionStringer_GetBranch(t *testing.T) {
124124
git.branch = "zomg"
125125
name := vs.GetBranch(".")
126126
isEqual(t, "zomg", name)
127+
git.branch = ""
127128

129+
git.branch = "detached"
130+
env["GITHUB_REF_NAME"] = "github.branch"
131+
name = vs.GetBranch(".")
132+
isEqual(t, "github.branch", name)
133+
delete(env, "GITHUB_REF_NAME")
134+
git.branch = ""
135+
136+
git.branch = "detached"
137+
env["GITHUB_REF_TYPE"] = "tag"
138+
env["GITHUB_REF_NAME"] = "v1.0.0"
139+
name = vs.GetBranch(".")
140+
isEqual(t, "main", name)
141+
delete(env, "GITHUB_REF_TYPE")
142+
delete(env, "GITHUB_REF_NAME")
143+
git.branch = ""
144+
145+
git.branch = "detached"
128146
env["CI_COMMIT_REF_NAME"] = "gitlab---branch"
129147
name = vs.GetBranch(".")
130148
isEqual(t, "gitlab---branch", name)
131149
delete(env, "CI_COMMIT_REF_NAME")
150+
git.branch = ""
132151

133-
env["GITHUB_REF_NAME"] = "github.branch"
152+
git.branch = "detached"
153+
env["CI_COMMIT_TAG"] = "v1.0.0"
154+
env["CI_COMMIT_REF_NAME"] = "v1.0.0"
134155
name = vs.GetBranch(".")
135-
isEqual(t, "github.branch", name)
136-
delete(env, "GITHUB_REF_NAME")
156+
isEqual(t, "main", name)
157+
delete(env, "CI_COMMIT_TAG")
158+
delete(env, "CI_COMMIT_REF_NAME")
159+
git.branch = ""
137160
}
138161

139162
func Test_VersionStringer_GetBranchFromTag_GitLab(t *testing.T) {
@@ -157,6 +180,7 @@ func Test_VersionStringer_GetBranchFromTag_GitHub(t *testing.T) {
157180
name := vs.GetBranch(".")
158181
isEqual(t, "main", name)
159182

183+
git.branch = "detached"
160184
env["GITHUB_REF_NAME"] = "v1"
161185
name = vs.GetBranch(".")
162186
isEqual(t, "onepointoh", name)
@@ -206,18 +230,20 @@ func Test_VersionStringer_GetVersion(t *testing.T) {
206230
t.Error(err)
207231
}
208232
isEqual(t, "v6.0.0", vi.Version())
233+
git.treehash = ""
209234

210235
vs = gitsemver.GitSemVer{Git: git, Env: env}
211-
git.treehash = ""
236+
git.branch = "detached"
212237
env["CI_COMMIT_REF_NAME"] = "HEAD"
213238
vi, err = vs.GetVersion(".")
214239
if err != nil {
215240
t.Error(err)
216241
}
217242
isEqual(t, "v6.0.0-head.build", vi.Version())
243+
delete(env, "CI_COMMIT_REF_NAME")
244+
git.branch = ""
218245

219246
vs = gitsemver.GitSemVer{Git: git, Env: env}
220-
delete(env, "CI_COMMIT_REF_NAME")
221247
env["GITHUB_RUN_NUMBER"] = "789"
222248
vi, err = vs.GetVersion(".")
223249
if err != nil {
@@ -226,6 +252,7 @@ func Test_VersionStringer_GetVersion(t *testing.T) {
226252
isEqual(t, "v6.0.0-main.789", vi.Version())
227253

228254
vs = gitsemver.GitSemVer{Git: git, Env: env}
255+
git.branch = "detached"
229256
env["CI_COMMIT_REF_NAME"] = "*Branch--.--ONE*-*"
230257
env["GITHUB_RUN_NUMBER"] = "789"
231258
vi, err = vs.GetVersion(".")

0 commit comments

Comments
 (0)