Skip to content

Commit 1f8a67a

Browse files
committed
fix: github init settings
1 parent b894807 commit 1f8a67a

2 files changed

Lines changed: 29 additions & 15 deletions

File tree

cmd/utils.go

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,28 +12,29 @@ import (
1212
)
1313

1414
// This function could use a better name
15+
// This function could use some tests, but ghactions doesn't let overide env variables
1516
func initGHSettings() (err error) {
16-
token, err = getGHToken()
17-
if err != nil {
18-
return err
17+
if repository == "" {
18+
repository, err = getRepository()
19+
if err != nil {
20+
return err
21+
}
1922
}
2023

21-
if prNumber == 0 {
22-
if !githubAction() {
23-
return errMissingPRNum
24-
}
24+
if !githubAction() && prNumber == 0 {
25+
return errMissingPRNum
26+
}
2527

28+
if pullRequest() {
2629
prNumber, err = getPRNumber()
2730
if err != nil {
2831
return fmt.Errorf("failed to get pull request number from github context GITHUB_REF_NAME, %v", err)
2932
}
3033
}
3134

32-
if repository == "" {
33-
repository, err = getRepository()
34-
if err != nil {
35-
return err
36-
}
35+
token, err = getGHToken()
36+
if err != nil {
37+
return err
3738
}
3839

3940
return nil
@@ -74,7 +75,7 @@ func githubAction() bool {
7475
}
7576

7677
func pullRequest() bool {
77-
if v := os.Getenv("GITHUB_EVENT_TYPE"); v == "pull_request" {
78+
if v := os.Getenv("GITHUB_EVENT_NAME"); v == "pull_request" {
7879
return true
7980
}
8081

cmd/utils_test.go

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,20 @@ func TestSplitOwnerRepo(t *testing.T) {
132132

133133
func TestPullRequest(t *testing.T) {
134134
t.Run("Is pull request", func(t *testing.T) {
135-
_ = os.Setenv("GITHUB_EVENT_TYPE", "pull_request")
135+
if _, ok := os.LookupEnv("GITHUB_ACTIONS"); !ok {
136+
_ = os.Setenv("GITHUB_EVENT_NAME", "pull_request")
137+
defer os.Unsetenv("GITHUB_EVENT_NAME")
138+
}
139+
140+
var eventTemp string
141+
if _, ok := os.LookupEnv("GITHUB_ACTIONS"); ok {
142+
if v := os.Getenv("GITHUB_EVENT_NAME"); v != "pull_request" {
143+
eventTemp = v
144+
os.Setenv("GITHUB_EVENT_NAME", "pull_request")
145+
defer func() { os.Setenv("GITHUB_EVENT_NAME", eventTemp) }()
146+
}
147+
}
148+
136149
want := true
137150
got := pullRequest()
138151
if got != want {
@@ -141,7 +154,7 @@ func TestPullRequest(t *testing.T) {
141154
})
142155

143156
t.Run("Is not pull request", func(t *testing.T) {
144-
_ = os.Setenv("GITHUB_EVENT_TYPE", "push")
157+
_ = os.Setenv("GITHUB_EVENT_NAME", "push")
145158
want := false
146159
got := pullRequest()
147160
if got != want {

0 commit comments

Comments
 (0)