featurens: Ensure RHEL is correctly identified
When trying to identify various RedHat releases, RHEL was not being picked up as a centos release because the Oracle Linux regex was too permissive: it would match any release name with '<something> Linux Server release' in the name. By being more restrictive with the Oracle regex, RHEL is now properly identified. I don't know why the Oracle regex used such a permissive matcher for the name but it still passes all the tests by replacing it with the word 'Oracle'. Fixes #436
This commit is contained in:
parent
f8a1359a60
commit
e650d58583
@ -30,7 +30,7 @@ import (
|
||||
)
|
||||
|
||||
var (
|
||||
oracleReleaseRegexp = regexp.MustCompile(`(?P<os>[^\s]*) (Linux Server release) (?P<version>[\d]+)`)
|
||||
oracleReleaseRegexp = regexp.MustCompile(`(?P<os>Oracle) (Linux Server release) (?P<version>[\d]+)`)
|
||||
centosReleaseRegexp = regexp.MustCompile(`(?P<os>[^\s]*) (Linux release|release) (?P<version>[\d]+)`)
|
||||
redhatReleaseRegexp = regexp.MustCompile(`(?P<os>Red Hat Enterprise Linux) (Client release|Server release|Workstation release) (?P<version>[\d]+)`)
|
||||
)
|
||||
|
@ -42,6 +42,12 @@ func TestDetector(t *testing.T) {
|
||||
"etc/centos-release": []byte(`CentOS release 6.6 (Final)`),
|
||||
},
|
||||
},
|
||||
{
|
||||
ExpectedNamespace: &database.Namespace{Name: "centos:7"},
|
||||
Files: tarutil.FilesMap{
|
||||
"etc/redhat-release": []byte(`Red Hat Enterprise Linux Server release 7.2 (Maipo)`),
|
||||
},
|
||||
},
|
||||
{
|
||||
ExpectedNamespace: &database.Namespace{Name: "centos:7"},
|
||||
Files: tarutil.FilesMap{
|
||||
|
Loading…
Reference in New Issue
Block a user