|
Jiří Moskovčák |
4fc931 |
commit 4432b7407e6afbbb5e91ad24455556d0e679a4f9
|
|
Jiří Moskovčák |
4fc931 |
Author: Denys Vlasenko <vda.linux@googlemail.com>
|
|
Jiří Moskovčák |
4fc931 |
Date: Thu Mar 4 20:37:10 2010 +0100
|
|
Jiří Moskovčák |
4fc931 |
|
|
Jiří Moskovčák |
4fc931 |
abrt-debuginfo-install: use -debuginfo repos which match enabled "usual" repos
|
|
Jiří Moskovčák |
4fc931 |
|
|
Jiří Moskovčák |
4fc931 |
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
Jiří Moskovčák |
4fc931 |
|
|
Jiří Moskovčák |
4fc931 |
diff --git a/src/Daemon/abrt-debuginfo-install b/src/Daemon/abrt-debuginfo-install
|
|
Jiří Moskovčák |
4fc931 |
index 1b6af74..0d9401b 100755
|
|
Jiří Moskovčák |
4fc931 |
--- a/src/Daemon/abrt-debuginfo-install
|
|
Jiří Moskovčák |
4fc931 |
+++ b/src/Daemon/abrt-debuginfo-install
|
|
Jiří Moskovčák |
4fc931 |
@@ -145,14 +145,12 @@ print_package_names() {
|
|
Jiří Moskovčák |
4fc931 |
else
|
|
Jiří Moskovčák |
4fc931 |
echo "`count_words $missing_debuginfo_files` missing debuginfos, getting package list from repositories" >&2
|
|
Jiří Moskovčák |
4fc931 |
fi
|
|
Jiří Moskovčák |
4fc931 |
- # when we look for debuginfo we need only -debuginfo* repos, so we can disable the rest and thus make it faster
|
|
Jiří Moskovčák |
4fc931 |
- # also we want only fedora repositories, because abrt won't work for other packages anyway
|
|
Jiří Moskovčák |
4fc931 |
# --showduplicates: do not just show the latest package
|
|
Jiří Moskovčák |
4fc931 |
# (tried to use -R2 to abort on stuck yum lock but -R is not about that)
|
|
Jiří Moskovčák |
4fc931 |
- local cmd="yum $yumopts '--disablerepo=*' '--enablerepo=fedora-debuginfo*' '--enablerepo=updates-debuginfo*' --showduplicates --quiet provides $missing_debuginfo_files"
|
|
Jiří Moskovčák |
4fc931 |
+ local cmd="yum $yumopts $yum_repo_opts --showduplicates --quiet provides $missing_debuginfo_files"
|
|
Jiří Moskovčák |
4fc931 |
echo "$cmd" >"yum_provides.$1.OUT"
|
|
Jiří Moskovčák |
4fc931 |
$debug && echo "Running: $cmd" >&2
|
|
Jiří Moskovčák |
4fc931 |
- # eval is needed to strip away ''s; cant remove them above and just use
|
|
Jiří Moskovčák |
4fc931 |
+ # eval is needed to strip away ''s in $yum_repo_opts; cant remove them and just use
|
|
Jiří Moskovčák |
4fc931 |
# unquoted $cmd, that would perform globbing on '*'
|
|
Jiří Moskovčák |
4fc931 |
local yum_provides_OUT="`eval $cmd 2>&1`"
|
|
Jiří Moskovčák |
4fc931 |
local err=$?
|
|
Jiří Moskovčák |
4fc931 |
@@ -199,9 +197,10 @@ download_packages() {
|
|
Jiří Moskovčák |
4fc931 |
for pkg in $packages; do
|
|
Jiří Moskovčák |
4fc931 |
echo "Download $i/$num_packages: $pkg"
|
|
Jiří Moskovčák |
4fc931 |
echo "Download $i/$num_packages: $pkg" >>yumdownloader.OUT
|
|
Jiří Moskovčák |
4fc931 |
- # We can't handle packages from non Fedora repos, so we look and download only
|
|
Jiří Moskovčák |
4fc931 |
- # from Fedora repos which makes it faster
|
|
Jiří Moskovčák |
4fc931 |
- yumdownloader --disablerepo="*" --enablerepo="fedora-debuginfo*" --enablerepo="updates-debuginfo*" --quiet $pkg >>yumdownloader.OUT 2>&1
|
|
Jiří Moskovčák |
4fc931 |
+ cmd="yumdownloader $yum_repo_opts --quiet $pkg"
|
|
Jiří Moskovčák |
4fc931 |
+ $debug && echo "Running: $cmd" >&2
|
|
Jiří Moskovčák |
4fc931 |
+ # eval is needed to strip away ''s in $yum_repo_opts
|
|
Jiří Moskovčák |
4fc931 |
+ eval $cmd >>yumdownloader.OUT 2>&1
|
|
Jiří Moskovčák |
4fc931 |
err=$?
|
|
Jiří Moskovčák |
4fc931 |
echo "exitcode:$err" >>yumdownloader.OUT
|
|
Jiří Moskovčák |
4fc931 |
echo >>yumdownloader.OUT
|
|
Jiří Moskovčák |
4fc931 |
@@ -299,6 +298,16 @@ build_ids=`printf "%s\n" "$eu_unstrip_OUT" \
|
|
Jiří Moskovčák |
4fc931 |
done | sort | uniq | xargs`
|
|
Jiří Moskovčák |
4fc931 |
$debug && echo "build_ids:$build_ids"
|
|
Jiří Moskovčák |
4fc931 |
|
|
Jiří Moskovčák |
4fc931 |
+
|
|
Jiří Moskovčák |
4fc931 |
+# Prepare list of repos to use.
|
|
Jiří Moskovčák |
4fc931 |
+# When we look for debuginfo we need only -debuginfo* repos, we can disable the rest
|
|
Jiří Moskovčák |
4fc931 |
+# and thus make it faster.
|
|
Jiří Moskovčák |
4fc931 |
+yum_repo_opts="'--disablerepo=*'"
|
|
Jiří Moskovčák |
4fc931 |
+for enabled_repo in `yum repolist | grep 'enabled:' | cut -f1 -d' ' | grep -v -- '-debuginfo'`; do
|
|
Jiří Moskovčák |
4fc931 |
+ yum_repo_opts="$yum_repo_opts '--enablerepo=${enabled_repo}-debuginfo*'"
|
|
Jiří Moskovčák |
4fc931 |
+done
|
|
Jiří Moskovčák |
4fc931 |
+
|
|
Jiří Moskovčák |
4fc931 |
+
|
|
Jiří Moskovčák |
4fc931 |
# We try to not run yum without -C unless absolutely necessary.
|
|
Jiří Moskovčák |
4fc931 |
# Therefore we loop. yum is run by print_package_names function,
|
|
Jiří Moskovčák |
4fc931 |
# on first iteration it is run with -C, on second - without,
|