summaryrefslogtreecommitdiff
path: root/bin/check_la
diff options
context:
space:
mode:
Diffstat (limited to 'bin/check_la')
-rwxr-xr-xbin/check_la66
1 files changed, 0 insertions, 66 deletions
diff --git a/bin/check_la b/bin/check_la
deleted file mode 100755
index 0ab6db7..0000000
--- a/bin/check_la
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/usr/bin/python2
-import sys
-
-la_patterns = sys.argv[1:]
-if not la_patterns:
- print sys.argv[0], "<.la files patterns>"
- raise SystemExit(1)
-
-import os
-import re
-import tempfile
-import shutil
-from entropy.server.interfaces import Server
-import entropy.tools
-
-la_compiled_patterns = dict((x, re.compile(x)) for x in la_patterns)
-print la_compiled_patterns
-
-repo_id = os.getenv("ETP_REPO", "kogaionlinux.ro")
-srv = Server()
-dbconn = srv.open_repository(repo_id)
-pkg_ids = dbconn.listAllIdpackages(order_by="atom")
-for pkg_id in pkg_ids:
- # get pkg path
- pkg_path = srv._get_package_path(repo_id, dbconn, pkg_id)
- if not os.path.isfile(pkg_path):
- print "WTF, not a package file =>", pkg_path
- continue
- # now extract
- tmp_dir = tempfile.mkdtemp()
- rc = entropy.tools.uncompress_tarball(pkg_path, extract_path = tmp_dir,
- catch_empty = True)
- if rc != 0:
- print "WTF, cannot extract file", pkg_path, "at dir", tmp_dir
- continue
-
-
- la_paths = []
- for cur_dir, subdirs, files in os.walk(tmp_dir):
- for file in files:
- path = os.path.join(cur_dir, file)
- if path.endswith(".la") and os.path.isfile(path) and os.access(path, os.R_OK):
- la_paths.append(path)
-
- if not la_paths:
- continue
-
- # print "pkg:", dbconn.retrieveAtom(pkg_id), "la:", la_paths
- found = False
- for la_path in la_paths:
- # apply regexps
- la_f = open(la_path, "r")
- la_content = la_f.read()
- la_f.close()
- for la_pattern, cm_pattern in la_compiled_patterns.items():
- if cm_pattern.search(la_content):
- found = True
- break
- if found:
- print dbconn.retrieveKeySlotAggregated(pkg_id)
- break
-
- shutil.rmtree(tmp_dir, True)
-
-srv.shutdown()
-raise SystemExit(0)