Compare commits

..

1 Commits

Author SHA1 Message Date
Scott Hebert
89b901b20b
Use redhat as namespace for hummingbird rpms (#4615)
The namespace value of `redhat` signifies this as an RPM package
produced and distributed by Red Hat.

Signed-off-by: Scott Hebert <scoheb@gmail.com>
2026-02-11 14:19:20 -05:00
2 changed files with 16 additions and 2 deletions

View File

@ -84,13 +84,13 @@ func newMetadataFromManifestLine(entry string) (*pkg.RpmDBEntry, error) {
}, nil
}
// packageURL returns the PURL for the specific RHEL package (see https://github.com/package-url/purl-spec)
// packageURL returns the PURL for the specific RHEL or Hummingbird package (see https://github.com/package-url/purl-spec)
func packageURL(name, arch string, epoch *int, srpm string, version, release string, distro *linux.Release) string {
var namespace string
if distro != nil {
namespace = distro.ID
}
if namespace == "rhel" {
if namespace == "rhel" || namespace == "hummingbird" {
namespace = "redhat"
}
if strings.HasPrefix(namespace, "opensuse") {

View File

@ -55,6 +55,20 @@ func Test_packageURL(t *testing.T) {
},
expected: "pkg:rpm/p@v-r",
},
{
name: "hummingbird distro maps to redhat namespace",
distro: &linux.Release{
ID: "hummingbird",
VersionID: "1.0",
},
metadata: pkg.RpmDBEntry{
Name: "p",
Version: "v",
Release: "r",
Epoch: nil,
},
expected: "pkg:rpm/redhat/p@v-r?distro=hummingbird-1.0",
},
{
name: "with upstream source rpm info",
distro: &linux.Release{