Bug 2137: Improve license check

Rather than relying on a case sensitive extension (.jpg, etc)
this change introduces the use of file mime-type to better
determine if a file requires a license or not.

Change-Id: I24492c584c0d124c47d542cb8f8019ae56642682
Signed-off-by: Mark Beierl <mark.beierl@canonical.com>
diff --git a/tools/license_scan.sh b/tools/license_scan.sh
index b20bb0a..a794636 100755
--- a/tools/license_scan.sh
+++ b/tools/license_scan.sh
@@ -22,15 +22,31 @@
 git fetch
 
 for file in $(echo ${exception_list} | xargs git diff --name-only origin/$GERRIT_BRANCH -- . ); do
-    license="No Apache license found"
-    if [ -f $file ]; then
-        if [ -s $file ]; then
-            if [ $(grep -c "http://www.apache.org/licenses/LICENSE-2.0" $file) -ge 1 ] ; then
-                license="Apache-2.0"
-            fi
-        fi
+
+    file_type=$(file -b --mime-type $file | sed 's|/.*||')
+    echo $file is $file_type
+    case "$file_type" in
+        text)
+            binary=false
+            ;;
+        *)
+            binary=true
+            ;;
+    esac
+
+    if $binary ; then
+        license=Binary
     else
-        license="DELETED"
+        license="No Apache license found"
+        if [ -f $file ]; then
+            if [ -s $file ]; then
+                if [ $(grep -c "http://www.apache.org/licenses/LICENSE-2.0" $file) -ge 1 ] ; then
+                    license="Apache-2.0"
+                fi
+            fi
+        else
+            license="DELETED"
+        fi
     fi
     echo "$file $license"
     case "$license" in
@@ -42,6 +58,8 @@
             ;;
         "DELETED")
             ;;
+        "Binary")
+            ;;
         *)
             echo "BAD LICENSE ON FILE $file"
             other=$((other + 1))