Skip to content

Commit 271db6f

Browse files
caesaralgernon
authored andcommitted
[FEAT] support .forgejo dir for issue and PR templates
1 parent 5992647 commit 271db6f

File tree

5 files changed

+28
-2
lines changed

5 files changed

+28
-2
lines changed

routers/web/repo/issue.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,12 @@ var IssueTemplateCandidates = []string{
7777
"issue_template.md",
7878
"issue_template.yaml",
7979
"issue_template.yml",
80+
".forgejo/ISSUE_TEMPLATE.md",
81+
".forgejo/ISSUE_TEMPLATE.yaml",
82+
".forgejo/ISSUE_TEMPLATE.yml",
83+
".forgejo/issue_template.md",
84+
".forgejo/issue_template.yaml",
85+
".forgejo/issue_template.yml",
8086
".gitea/ISSUE_TEMPLATE.md",
8187
".gitea/ISSUE_TEMPLATE.yaml",
8288
".gitea/ISSUE_TEMPLATE.yml",

routers/web/repo/pull.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,12 @@ var pullRequestTemplateCandidates = []string{
6565
"pull_request_template.md",
6666
"pull_request_template.yaml",
6767
"pull_request_template.yml",
68+
".forgejo/PULL_REQUEST_TEMPLATE.md",
69+
".forgejo/PULL_REQUEST_TEMPLATE.yaml",
70+
".forgejo/PULL_REQUEST_TEMPLATE.yml",
71+
".forgejo/pull_request_template.md",
72+
".forgejo/pull_request_template.yaml",
73+
".forgejo/pull_request_template.yml",
6874
".gitea/PULL_REQUEST_TEMPLATE.md",
6975
".gitea/PULL_REQUEST_TEMPLATE.yaml",
7076
".gitea/PULL_REQUEST_TEMPLATE.yml",

routers/web/repo/view.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,10 @@ func findReadmeFileInEntries(ctx *context.Context, entries []*git.TreeEntry, try
9494
if entry.Name() == "docs" || docsEntries[0] == nil {
9595
docsEntries[0] = entry
9696
}
97+
case ".forgejo":
98+
if entry.Name() == ".forgejo" || docsEntries[1] == nil {
99+
docsEntries[1] = entry
100+
}
97101
case ".gitea":
98102
if entry.Name() == ".gitea" || docsEntries[1] == nil {
99103
docsEntries[1] = entry

services/issue/template.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ import (
2323
var templateDirCandidates = []string{
2424
"ISSUE_TEMPLATE",
2525
"issue_template",
26+
".forgejo/ISSUE_TEMPLATE",
27+
".forgejo/issue_template",
2628
".gitea/ISSUE_TEMPLATE",
2729
".gitea/issue_template",
2830
".github/ISSUE_TEMPLATE",
@@ -32,6 +34,8 @@ var templateDirCandidates = []string{
3234
}
3335

3436
var templateConfigCandidates = []string{
37+
".forgejo/ISSUE_TEMPLATE/config",
38+
".forgejo/issue_template/config",
3539
".gitea/ISSUE_TEMPLATE/config",
3640
".gitea/issue_template/config",
3741
".github/ISSUE_TEMPLATE/config",

services/pull/merge.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,18 @@ func getMergeMessage(ctx context.Context, baseGitRepo *git.Repository, pr *issue
5555
}
5656

5757
if mergeStyle != "" {
58-
templateFilepath := fmt.Sprintf(".gitea/default_merge_message/%s_TEMPLATE.md", strings.ToUpper(string(mergeStyle)))
5958
commit, err := baseGitRepo.GetBranchCommit(pr.BaseRepo.DefaultBranch)
6059
if err != nil {
6160
return "", "", err
6261
}
63-
templateContent, err := commit.GetFileContent(templateFilepath, setting.Repository.PullRequest.DefaultMergeMessageSize)
62+
63+
templateFilepathForgejo := fmt.Sprintf(".forgejo/default_merge_message/%s_TEMPLATE.md", strings.ToUpper(string(mergeStyle)))
64+
templateFilepathGitea := fmt.Sprintf(".gitea/default_merge_message/%s_TEMPLATE.md", strings.ToUpper(string(mergeStyle)))
65+
66+
templateContent, err := commit.GetFileContent(templateFilepathForgejo, setting.Repository.PullRequest.DefaultMergeMessageSize)
67+
if _, ok := err.(git.ErrNotExist); ok {
68+
templateContent, err = commit.GetFileContent(templateFilepathGitea, setting.Repository.PullRequest.DefaultMergeMessageSize)
69+
}
6470
if err != nil {
6571
if !git.IsErrNotExist(err) {
6672
return "", "", err

0 commit comments

Comments
 (0)