Skip to content

Commit b31c654

Browse files
authored
Merge pull request #1338 from cloudflare/bb
Add missing details to BB reports
2 parents c9d8d89 + 3e13d3a commit b31c654

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

docs/changelog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
### Fixed
66

77
- Don't create empty markdown blocks when reporting problems to GitHub & GitLab.
8+
- Added missing problem details to comments reported to BitBucket.
89

910
## v0.71.0
1011

internal/reporter/bitbucket_api.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ import (
1212
"time"
1313

1414
"github.com/cloudflare/pint/internal/checks"
15+
"github.com/cloudflare/pint/internal/diags"
16+
"github.com/cloudflare/pint/internal/output"
1517
)
1618

1719
type BitBucketReport struct {
@@ -591,12 +593,21 @@ func (bb bitBucketAPI) getPullRequestComments(pr *bitBucketPR) ([]bitBucketComme
591593

592594
func (bb bitBucketAPI) makeComments(summary Summary, changes *bitBucketPRChanges) []BitBucketPendingComment {
593595
var buf strings.Builder
596+
var content string
597+
var err error
594598
comments := []BitBucketPendingComment{}
595599
for _, reports := range dedupReports(summary.reports) {
596600
if _, ok := changes.pathModifiedLines[reports[0].Path.SymlinkTarget]; !ok {
597601
continue
598602
}
599603

604+
if reports[0].Problem.Anchor == checks.AnchorAfter {
605+
content, err = readFile(reports[0].Path.Name)
606+
if err != nil {
607+
content = ""
608+
}
609+
}
610+
600611
mergeDetails := identicalDetails(reports)
601612

602613
buf.Reset()
@@ -611,6 +622,17 @@ func (bb bitBucketAPI) makeComments(summary Summary, changes *bitBucketPRChanges
611622
buf.WriteString("------\n\n")
612623
buf.WriteString(report.Problem.Summary)
613624
buf.WriteString("\n\n")
625+
626+
if len(report.Problem.Diagnostics) > 0 && content != "" {
627+
buf.WriteString("```yaml\n")
628+
buf.WriteString(diags.InjectDiagnostics(
629+
content,
630+
report.Problem.Diagnostics,
631+
output.None,
632+
report.Rule.Lines.First, report.Rule.Lines.Last))
633+
buf.WriteString("```\n\n")
634+
}
635+
614636
if !mergeDetails && report.Problem.Details != "" {
615637
buf.WriteString(report.Problem.Details)
616638
buf.WriteString("\n\n")

0 commit comments

Comments
 (0)