diff options
author | David Kalnischkies <david@kalnischkies.de> | 2015-09-10 19:00:51 +0200 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2015-09-14 15:22:18 +0200 |
commit | 95278287f4e1eeaf5d96749d6fc9bfc53fb400d0 (patch) | |
tree | 90cc504d25c680b2fc3fe77994573e517263275f /test/integration | |
parent | 7f58427b9584686f80cd5eccfdd02c1ace75518a (diff) |
avoid using global PendingError to avoid failing too often too soon
Our error reporting is historically grown into some kind of mess.
A while ago I implemented stacking for the global error which is used in
this commit now to wrap calls to functions which do not report (all)
errors via return, so that only failures in those calls cause a failure
to propergate down the chain rather than failing if anything
(potentially totally unrelated) has failed at some point in the past.
This way we can avoid stopping the entire acquire process just because a
single source produced an error for example. It also means that after
the acquire process the cache is generated – even if the acquire
process had failures – as we still have the old good data around we can and
should generate a cache for (again).
There are probably more instances of this hiding, but all these looked
like the easiest to work with and fix with reasonable (aka net-positive)
effects.
Diffstat (limited to 'test/integration')
4 files changed, 8 insertions, 0 deletions
diff --git a/test/integration/test-apt-get-update-unauth-warning b/test/integration/test-apt-get-update-unauth-warning index 4c45f8f26..35825ee24 100755 --- a/test/integration/test-apt-get-update-unauth-warning +++ b/test/integration/test-apt-get-update-unauth-warning @@ -26,6 +26,7 @@ Ign:1 file:$APTARCHIVE unstable InRelease Get:2 file:$APTARCHIVE unstable Release Err:2 file:$APTARCHIVE unstable Release File not found +Reading package lists... W: The repository 'file:$APTARCHIVE unstable Release' does not have a Release file. This is deprecated, please contact the owner of the repository. E: Use --allow-insecure-repositories to force the update" aptget update --no-allow-insecure-repositories diff --git a/test/integration/test-apt-update-ims b/test/integration/test-apt-update-ims index 33b4ed1b9..ed89cd342 100755 --- a/test/integration/test-apt-update-ims +++ b/test/integration/test-apt-update-ims @@ -97,6 +97,7 @@ signreleasefiles msgmsg 'expired InRelease' EXPECT='Hit:1 http://localhost:8080 unstable InRelease +Reading package lists... E: Release file for http://localhost:8080/dists/unstable/InRelease is expired (invalid since). Updates for this repository will not be applied.' echo 'Acquire::GzipIndexes "0";' > rootdir/etc/apt/apt.conf.d/02compressindex runtest 'failure' @@ -107,6 +108,7 @@ msgmsg 'expired Release/Release.gpg' EXPECT='Ign:1 http://localhost:8080 unstable InRelease 404 Not Found Hit:2 http://localhost:8080 unstable Release +Reading package lists... E: Release file for http://localhost:8080/dists/unstable/Release is expired (invalid since). Updates for this repository will not be applied.' find aptarchive -name 'InRelease' -delete echo 'Acquire::GzipIndexes "0";' > rootdir/etc/apt/apt.conf.d/02compressindex @@ -120,6 +122,7 @@ EXPECT="Ign:1 http://localhost:8080 unstable InRelease Hit:2 http://localhost:8080 unstable Release Ign:3 http://localhost:8080 unstable Release.gpg 404 Not Found +Reading package lists... W: The data from 'http://localhost:8080 unstable Release' is not signed. Packages from that repository can not be authenticated. E: Release file for http://localhost:8080/dists/unstable/Release is expired (invalid since). Updates for this repository will not be applied." find aptarchive -name 'Release.gpg' -delete diff --git a/test/integration/test-apt-update-not-modified b/test/integration/test-apt-update-not-modified index 3f822586a..8c580245a 100755 --- a/test/integration/test-apt-update-not-modified +++ b/test/integration/test-apt-update-not-modified @@ -46,6 +46,7 @@ EOF Get:2 $1 unstable/main amd64 Packages [$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') B] Err:2 $1 unstable/main amd64 Packages Hash Sum mismatch +Reading package lists... W: Failed to fetch $1/dists/unstable/main/binary-amd64/Packages.gz Hash Sum mismatch E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update testfileequal 'listsdir-without-amd64.lst' "$(listcurrentlistsdirectory)" @@ -105,6 +106,7 @@ Hit:2 $1 unstable Release Get:4 $1 unstable/main amd64 Packages [$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') B] Err:4 $1 unstable/main amd64 Packages Hash Sum mismatch +Reading package lists... W: Failed to fetch $1/dists/unstable/main/binary-amd64/Packages.gz Hash Sum mismatch E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update testfileequal 'listsdir-without-amd64.lst' "$(listcurrentlistsdirectory)" diff --git a/test/integration/test-bug-595691-empty-and-broken-archive-files b/test/integration/test-bug-595691-empty-and-broken-archive-files index 0c02aee30..f73dfdd68 100755 --- a/test/integration/test-bug-595691-empty-and-broken-archive-files +++ b/test/integration/test-bug-595691-empty-and-broken-archive-files @@ -54,6 +54,7 @@ Reading package lists..." "empty archive Packages.$COMPRESS over file" testaptgetupdate "Get:2 file:$APTARCHIVE Packages Err:2 file:$APTARCHIVE Packages Empty files can't be valid archives +Reading package lists... W: Failed to fetch ${COMPRESSOR}:${APTARCHIVE}/Packages.$COMPRESS Empty files can't be valid archives E: Some index files failed to download. They have been ignored, or old ones used instead." "empty file Packages.$COMPRESS over file" } @@ -70,6 +71,7 @@ Reading package lists..." "empty archive Packages.$COMPRESS over http" testaptgetupdate "Get:2 http://localhost:8080 Packages Err:2 http://localhost:8080 Packages Empty files can't be valid archives +Reading package lists... W: Failed to fetch ${COMPRESSOR}:$(readlink -f rootdir/var/lib/apt/lists/partial/localhost:8080_Packages.${COMPRESS}) Empty files can't be valid archives E: Some index files failed to download. They have been ignored, or old ones used instead." "empty file Packages.$COMPRESS over http" } |