Skip to content

Commit f6700ec

Browse files
aqua-botknqyf263
andauthored
fix(redhat): include arch in PURL qualifiers [backport: release/v0.56] (#7702)
Signed-off-by: knqyf263 <knqyf263@gmail.com> Co-authored-by: Teppei Fukuda <knqyf263@gmail.com>
1 parent 25d2540 commit f6700ec

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

pkg/fanal/analyzer/pkg/rpm/archive.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,14 @@ func (a *rpmArchiveAnalyzer) generatePURL(pkg *types.Package) *packageurl.Packag
136136
case strings.Contains(vendor, "suse"):
137137
ns = "suse"
138138
}
139-
return packageurl.NewPackageURL(packageurl.TypeRPM, ns, pkg.Name, utils.FormatVersion(*pkg), nil, "")
139+
var qualifiers packageurl.Qualifiers
140+
if pkg.Arch != "" {
141+
qualifiers = append(qualifiers, packageurl.Qualifier{
142+
Key: "arch",
143+
Value: pkg.Arch,
144+
})
145+
}
146+
return packageurl.NewPackageURL(packageurl.TypeRPM, ns, pkg.Name, utils.FormatVersion(*pkg), qualifiers, "")
140147
}
141148

142149
func (a *rpmArchiveAnalyzer) unexpectedError(err error) error {

pkg/fanal/analyzer/pkg/rpm/archive_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,12 @@ func Test_rpmArchiveAnalyzer_Analyze(t *testing.T) {
5252
Namespace: "redhat",
5353
Name: "socat",
5454
Version: "1.7.3.2-2.el7",
55+
Qualifiers: packageurl.Qualifiers{
56+
{
57+
Key: "arch",
58+
Value: "x86_64",
59+
},
60+
},
5561
},
5662
},
5763
},

0 commit comments

Comments
 (0)