]> git.saurik.com Git - apt.git/commitdiff
hack around test-apt-update-unauth failure
authorMichael Vogt <mvo@ubuntu.com>
Wed, 1 Oct 2014 15:13:33 +0000 (17:13 +0200)
committerMichael Vogt <mvo@ubuntu.com>
Wed, 1 Oct 2014 15:13:33 +0000 (17:13 +0200)
apt-pkg/acquire-item.cc
test/integration/test-apt-update-unauth

index 4ab4ef6a117852775e640a127e65a74211663d27..fd2ea08f8f9553d28e094f33b11546458bab534e 100644 (file)
@@ -1192,6 +1192,8 @@ void pkgAcqIndex::Done(string Message, unsigned long long Size,
       // FIXME: can we void the "Erase" bool here as its very non-local?
       std::string CompressedFile = _config->FindDir("Dir::State::lists") + "partial/";
       CompressedFile += URItoFileName(RealURI);
+      if(_config->FindB("Acquire::GzipIndexes",false) == false)
+         CompressedFile += '.' + compExt;
 
       // Remove the compressed version.
       if (Erase == true)
@@ -1399,6 +1401,13 @@ void pkgAcqMetaBase::AbortTransaction()
       // the transaction will abort, so stop anything that is idle
       if ((*I)->Status == pkgAcquire::Item::StatIdle)
          (*I)->Status = pkgAcquire::Item::StatDone;
+
+      // kill files in partial
+      string PartialFile = _config->FindDir("Dir::State::lists");
+      PartialFile += "partial/";
+      PartialFile += flNotDir((*I)->DestFile);
+      if(FileExists(PartialFile))
+         Rename(PartialFile, PartialFile + ".FAILED");
    }
 }
                                                                        /*}}}*/
index ade523ea7ce3458dd30e0735bfe7446ba701ef64..cf51950243745b1713b2307f9b66365f33e949df 100755 (executable)
@@ -26,34 +26,43 @@ runtest() {
     # start unauthenticated
     find rootdir/var/lib/apt/lists/ -type f | xargs rm -f
     rm -f aptarchive/dists/unstable/*Release*
-    # remove uncompressed version
-    find aptarchive/ -name Packages | xargs rm -f
+
     aptget update -qq --allow-insecure-repositories
 
+    # FIXME: this really shouldn't be needed
+    rm -f rootdir/var/lib/apt/lists/partial/*
+
     # become authenticated
     generatereleasefiles
     signreleasefiles
 
+    # move uncompressed away
+    mv aptarchive/dists/unstable/main/binary-i386/Packages \
+        aptarchive/dists/unstable/main/binary-i386/Packages.uncompressed
+
     # and ensure we re-check the downloaded data
     msgtest "Check rollback on going from unauth -> auth"
 
     # change the local packages file
     PKGS=$(ls rootdir/var/lib/apt/lists/*Packages*)
     echo "meep" > $PKGS
-    ls -l rootdir/var/lib/apt/lists > lists.before
+    ls rootdir/var/lib/apt/lists/ > lists.before
 
     # update and ensure all is reverted on the hashsum failure
-    aptget update -o Debug::Acquire::Transaction=1 -o Debug::pkgAcquire::Auth=1 -o Debug::pkgAcquire::worker=0 > output.log 2>&1 || true
+    aptget update -o Debug::Acquire::Transaction=0 -o Debug::pkgAcquire::Auth=1 -o Debug::pkgAcquire::worker=0 -o Debug::acquire::http=0 > output.log 2>&1 || true
 
     # ensure we have before what we have after
-    ls -l rootdir/var/lib/apt/lists > lists.after
+    ls rootdir/var/lib/apt/lists/ > lists.after
     if diff -u lists.before lists.after; then
         msgpass
     else
-        #cat output.log
+        cat output.log
         msgfail
     fi
 
+    # move uncompressed back for release file 
+    mv aptarchive/dists/unstable/main/binary-i386/Packages.uncompressed \
+        aptarchive/dists/unstable/main/binary-i386/Packages
 }
 
 for COMPRESSEDINDEXES in 'false' 'true'; do