Add Logic to detect file type by extension
Commit Message
From: vsoch <vsoch@users.noreply.github.com>
Fedabipkgdiff uses mimetypes to detect what file type it is looking
at. In some minimal versions of the OS, in particular container
images, the package that includes all the mimetypes may not be
installed. This allows fedabipkgdiff to fall back to using the
extension.
* tools/fedabipkgdiff - add logic to detect file type by extension
Signed-off-by: vsoch <vsoch@users.noreply.github.com>
Reviewed-by: Ben Woodard <woodard@redhat.com>
---
tools/fedabipkgdiff | 4 ++++
1 file changed, 4 insertions(+)
@@ -213,6 +213,10 @@ def is_rpm_file(filename):
mimetype = mimetypes.guess_type(filename)[0] if isfile else None
isrpm = (mimetype == 'application/x-redhat-package-manager'
or mimetype == 'application/x-rpm')
+
+ # Most systems won't have rpm defined as a mimetype
+ if not mimetype and filename.endswith('.rpm'):
+ mimtype = 'application/x-rpm'
logger.debug('is_rpm_file(\'%s\'): isfile=%s, mimetype=\'%s\', isrpm=%s',
filename, isfile, mimetype, isrpm)
return isrpm