X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/9c4e6026c498078aa223eae95f2c9752cb45525c..92296fe4b0862a04ea3d965b4cd2d4a420e3be9f:/test/integration/test-apt-get-update-unauth-warning diff --git a/test/integration/test-apt-get-update-unauth-warning b/test/integration/test-apt-get-update-unauth-warning index 8e212a3c4..093478b9e 100755 --- a/test/integration/test-apt-get-update-unauth-warning +++ b/test/integration/test-apt-get-update-unauth-warning @@ -4,43 +4,89 @@ # set -e -TESTDIR=$(readlink -f $(dirname $0)) -. $TESTDIR/framework +TESTDIR="$(readlink -f "$(dirname "$0")")" +. "$TESTDIR/framework" setupenvironment configarchitecture "i386" +configcompression '.' 'gz' + +echo 'Acquire::Progress::Ignore::ShowErrorText "false";' > rootdir/etc/apt/apt.conf.d/99show-no-ignore-errors.conf # a "normal" package with source and binary buildsimplenativepackage 'foo' 'all' '2.0' setupaptarchive --no-update -APTARCHIVE=$(readlink -f ./aptarchive) -rm -f $APTARCHIVE/dists/unstable/*Release* +APTARCHIVE="$(readlink -f ./aptarchive)" +find "$APTARCHIVE/dists/unstable" \( -name 'InRelease' -o -name 'Release.gpg' \) -delete +sed -i -n '/^SHA1:$/q;p' "${APTARCHIVE}/dists/unstable/Release" +testwarning aptget update -# update without authenticated files leads to warning -testequal "Ign file: unstable InRelease - File not found -Err file: unstable Release - File not found -W: The repository 'file: unstable Release' does not have a Release file. This is deprecated, please contact the owner of the repository. -W: Use --allow-insecure-repositories to force the update -W: Failed to fetch file:$APTARCHIVE/dists/unstable/Release File not found -E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update +rm -rf rootdir/var/lib/apt/lists +find "$APTARCHIVE/dists/unstable" -name '*Release*' -delete +# update without authenticated files leads to warning +testfailureequal "Get:1 file:$APTARCHIVE unstable InRelease +Ign:1 file:$APTARCHIVE unstable InRelease +Get:2 file:$APTARCHIVE unstable Release +Err:2 file:$APTARCHIVE unstable Release + File not found - ${APTARCHIVE}/dists/unstable/Release (2: No such file or directory) +Reading package lists... +E: The repository 'file:$APTARCHIVE unstable Release' does not have a Release file. +N: Updating from such a repository can't be done securely, and is therefore disabled by default. +N: See apt-secure(8) manpage for repository creation and user configuration details." aptget update --no-allow-insecure-repositories # no package foo -testequal "Listing..." apt list foo -testequal "partial" ls rootdir/var/lib/apt/lists +testsuccessequal 'Listing...' apt list foo +testequal 'lock +partial' ls rootdir/var/lib/apt/lists +filesize() { + local CREATEDBY="$1" + shift + stat -c%s "$(aptget indextargets --no-release-info --format '$(URI)' "Created-By: $CREATEDBY" "$@" | cut -d'/' -f 3- ).gz" +} # allow override -testequal "Ign file: unstable InRelease - File not found -Ign file: unstable Release - File not found +#aptget update --allow-insecure-repositories -o Debug::pkgAcquire::worker=1 +#exit +testwarningequal "Get:1 file:$APTARCHIVE unstable InRelease +Ign:1 file:$APTARCHIVE unstable InRelease +Get:2 file:$APTARCHIVE unstable Release +Ign:2 file:$APTARCHIVE unstable Release +Get:3 file:$APTARCHIVE unstable/main Sources +Ign:3 file:$APTARCHIVE unstable/main Sources +Get:4 file:$APTARCHIVE unstable/main i386 Packages +Ign:4 file:$APTARCHIVE unstable/main i386 Packages +Get:5 file:$APTARCHIVE unstable/main all Packages +Ign:5 file:$APTARCHIVE unstable/main all Packages +Get:6 file:$APTARCHIVE unstable/main Translation-en +Ign:6 file:$APTARCHIVE unstable/main Translation-en +Get:3 file:$APTARCHIVE unstable/main Sources +Ign:3 file:$APTARCHIVE unstable/main Sources +Get:4 file:$APTARCHIVE unstable/main i386 Packages +Ign:4 file:$APTARCHIVE unstable/main i386 Packages +Get:5 file:$APTARCHIVE unstable/main all Packages +Ign:5 file:$APTARCHIVE unstable/main all Packages +Get:6 file:$APTARCHIVE unstable/main Translation-en +Ign:6 file:$APTARCHIVE unstable/main Translation-en +Get:3 file:$APTARCHIVE unstable/main Sources +Ign:3 file:$APTARCHIVE unstable/main Sources +Get:4 file:$APTARCHIVE unstable/main i386 Packages +Ign:4 file:$APTARCHIVE unstable/main i386 Packages +Get:5 file:$APTARCHIVE unstable/main all Packages +Ign:5 file:$APTARCHIVE unstable/main all Packages +Get:6 file:$APTARCHIVE unstable/main Translation-en +Ign:6 file:$APTARCHIVE unstable/main Translation-en +Get:3 file:$APTARCHIVE unstable/main Sources [$(filesize 'Sources') B] +Get:4 file:$APTARCHIVE unstable/main i386 Packages [$(filesize 'Packages' 'Architecture: i386') B] +Get:5 file:$APTARCHIVE unstable/main all Packages [$(filesize 'Packages' 'Architecture: all') B] +Get:6 file:$APTARCHIVE unstable/main Translation-en [$(filesize 'Translations') B] Reading package lists... -W: The repository 'file: unstable Release' does not have a Release file. This is deprecated, please contact the owner of the repository." aptget update --allow-insecure-repositories +W: The repository 'file:$APTARCHIVE unstable Release' does not have a Release file. +N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use. +N: See apt-secure(8) manpage for repository creation and user configuration details." aptget update --allow-insecure-repositories # ensure we can not install the package -testequal "WARNING: The following packages cannot be authenticated! +testfailureequal "WARNING: The following packages cannot be authenticated! foo -E: There are problems and -y was used without --force-yes" aptget install -qq -y foo +E: There were unauthenticated packages and -y was used without --allow-unauthenticated" aptget install -qq -y foo