mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-07-16 12:08:04 +00:00
System tests for aptly snapshot filter. #82
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
Loading packages (661)...
|
||||||
|
Building indexes...
|
||||||
|
|
||||||
|
Snapshot snap2 successfully filtered.
|
||||||
|
You can run 'aptly publish snapshot snap2' to publish snapshot as Debian repository.
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Name: snap2
|
||||||
|
Description: Filtered 'snap1', query was: 'mame unrar'
|
||||||
|
Number of packages: 4
|
||||||
|
Packages:
|
||||||
|
mame_0.146-5_amd64
|
||||||
|
unrar_1:4.1.4-1_amd64
|
||||||
|
mame_0.146-5_i386
|
||||||
|
unrar_1:4.1.4-1_i386
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
Loading packages (4742)...
|
||||||
|
Building indexes...
|
||||||
|
|
||||||
|
Snapshot snap2 successfully filtered.
|
||||||
|
You can run 'aptly publish snapshot snap2' to publish snapshot as Debian repository.
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Name: snap2
|
||||||
|
Description: Filtered 'snap1', query was: 'rsyslog (>= 7.4.4)'
|
||||||
|
Number of packages: 9
|
||||||
|
Packages:
|
||||||
|
init-system-helpers_1.18~bpo70+1_all
|
||||||
|
libestr0_0.1.9-1~bpo70+1_amd64
|
||||||
|
libjson-c2_0.11-3~bpo7+1_amd64
|
||||||
|
liblogging-stdlog0_1.0.4-1~bpo70+1_amd64
|
||||||
|
rsyslog_7.6.3-2~bpo70+1_amd64
|
||||||
|
libestr0_0.1.9-1~bpo70+1_i386
|
||||||
|
libjson-c2_0.11-3~bpo7+1_i386
|
||||||
|
liblogging-stdlog0_1.0.4-1~bpo70+1_i386
|
||||||
|
rsyslog_7.6.3-2~bpo70+1_i386
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
Loading packages (56121)...
|
||||||
|
Building indexes...
|
||||||
|
|
||||||
|
Snapshot snap2 successfully filtered.
|
||||||
|
You can run 'aptly publish snapshot snap2' to publish snapshot as Debian repository.
|
||||||
@@ -0,0 +1,127 @@
|
|||||||
|
Name: snap2
|
||||||
|
Description: Filtered 'snap1', query was: 'Priority (required) nginx xyz'
|
||||||
|
Number of packages: 123
|
||||||
|
Packages:
|
||||||
|
debconf_1.5.49_all
|
||||||
|
debconf-i18n_1.5.49_all
|
||||||
|
libpam-runtime_1.1.3-7.1_all
|
||||||
|
libtext-wrapi18n-perl_0.06-7_all
|
||||||
|
lsb-base_4.1+Debian8+deb7u1_all
|
||||||
|
ncurses-base_5.9-10_all
|
||||||
|
nginx_1.2.1-2.2+wheezy2_all
|
||||||
|
nginx-naxsi-ui_1.2.1-2.2+wheezy2_all
|
||||||
|
sensible-utils_0.0.7_all
|
||||||
|
sysv-rc_2.88dsf-41+deb7u1_all
|
||||||
|
tzdata_2014a-0wheezy1_all
|
||||||
|
base-files_7.1wheezy5_amd64
|
||||||
|
base-passwd_3.5.26_amd64
|
||||||
|
bash_4.2+dfsg-0.1_amd64
|
||||||
|
bsdutils_1:2.20.1-5.3_amd64
|
||||||
|
coreutils_8.13-3.5_amd64
|
||||||
|
dash_0.5.7-3_amd64
|
||||||
|
debianutils_4.3.2_amd64
|
||||||
|
diffutils_1:3.2-6_amd64
|
||||||
|
dpkg_1.16.12_amd64
|
||||||
|
e2fslibs_1.42.5-1.1_amd64
|
||||||
|
e2fsprogs_1.42.5-1.1_amd64
|
||||||
|
findutils_4.4.2-4_amd64
|
||||||
|
gcc-4.7-base_4.7.2-5_amd64
|
||||||
|
grep_2.12-2_amd64
|
||||||
|
gzip_1.5-1.1_amd64
|
||||||
|
hostname_3.11_amd64
|
||||||
|
initscripts_2.88dsf-41+deb7u1_amd64
|
||||||
|
libacl1_2.2.51-8_amd64
|
||||||
|
libattr1_1:2.4.46-8_amd64
|
||||||
|
libblkid1_2.20.1-5.3_amd64
|
||||||
|
libc-bin_2.13-38+deb7u1_amd64
|
||||||
|
libc6_2.13-38+deb7u1_amd64
|
||||||
|
libcomerr2_1.42.5-1.1_amd64
|
||||||
|
libgcc1_1:4.7.2-5_amd64
|
||||||
|
liblocale-gettext-perl_1.05-7+b1_amd64
|
||||||
|
liblzma5_5.1.1alpha+20120614-2_amd64
|
||||||
|
libmount1_2.20.1-5.3_amd64
|
||||||
|
libncurses5_5.9-10_amd64
|
||||||
|
libpam-modules_1.1.3-7.1_amd64
|
||||||
|
libpam-modules-bin_1.1.3-7.1_amd64
|
||||||
|
libpam0g_1.1.3-7.1_amd64
|
||||||
|
libselinux1_2.1.9-5_amd64
|
||||||
|
libsepol1_2.1.4-3_amd64
|
||||||
|
libss2_1.42.5-1.1_amd64
|
||||||
|
libtext-charwidth-perl_0.04-7+b1_amd64
|
||||||
|
libtext-iconv-perl_1.7-5_amd64
|
||||||
|
libtinfo5_5.9-10_amd64
|
||||||
|
libuuid1_2.20.1-5.3_amd64
|
||||||
|
login_1:4.1.5.1-1_amd64
|
||||||
|
mawk_1.3.3-17_amd64
|
||||||
|
mount_2.20.1-5.3_amd64
|
||||||
|
multiarch-support_2.13-38+deb7u1_amd64
|
||||||
|
ncurses-bin_5.9-10_amd64
|
||||||
|
nginx-extras_1.2.1-2.2+wheezy2_amd64
|
||||||
|
nginx-full_1.2.1-2.2+wheezy2_amd64
|
||||||
|
nginx-light_1.2.1-2.2+wheezy2_amd64
|
||||||
|
nginx-naxsi_1.2.1-2.2+wheezy2_amd64
|
||||||
|
passwd_1:4.1.5.1-1_amd64
|
||||||
|
perl-base_5.14.2-21+deb7u1_amd64
|
||||||
|
sed_4.2.1-10_amd64
|
||||||
|
sysvinit_2.88dsf-41+deb7u1_amd64
|
||||||
|
sysvinit-utils_2.88dsf-41+deb7u1_amd64
|
||||||
|
tar_1.26+dfsg-0.1_amd64
|
||||||
|
util-linux_2.20.1-5.3_amd64
|
||||||
|
xz-utils_5.1.1alpha+20120614-2_amd64
|
||||||
|
zlib1g_1:1.2.7.dfsg-13_amd64
|
||||||
|
base-files_7.1wheezy5_i386
|
||||||
|
base-passwd_3.5.26_i386
|
||||||
|
bash_4.2+dfsg-0.1_i386
|
||||||
|
bsdutils_1:2.20.1-5.3_i386
|
||||||
|
coreutils_8.13-3.5_i386
|
||||||
|
dash_0.5.7-3_i386
|
||||||
|
debianutils_4.3.2_i386
|
||||||
|
diffutils_1:3.2-6_i386
|
||||||
|
dpkg_1.16.12_i386
|
||||||
|
e2fslibs_1.42.5-1.1_i386
|
||||||
|
e2fsprogs_1.42.5-1.1_i386
|
||||||
|
findutils_4.4.2-4_i386
|
||||||
|
gcc-4.7-base_4.7.2-5_i386
|
||||||
|
grep_2.12-2_i386
|
||||||
|
gzip_1.5-1.1_i386
|
||||||
|
hostname_3.11_i386
|
||||||
|
initscripts_2.88dsf-41+deb7u1_i386
|
||||||
|
libacl1_2.2.51-8_i386
|
||||||
|
libattr1_1:2.4.46-8_i386
|
||||||
|
libblkid1_2.20.1-5.3_i386
|
||||||
|
libc-bin_2.13-38+deb7u1_i386
|
||||||
|
libc6_2.13-38+deb7u1_i386
|
||||||
|
libcomerr2_1.42.5-1.1_i386
|
||||||
|
libgcc1_1:4.7.2-5_i386
|
||||||
|
liblocale-gettext-perl_1.05-7+b1_i386
|
||||||
|
liblzma5_5.1.1alpha+20120614-2_i386
|
||||||
|
libmount1_2.20.1-5.3_i386
|
||||||
|
libncurses5_5.9-10_i386
|
||||||
|
libpam-modules_1.1.3-7.1_i386
|
||||||
|
libpam-modules-bin_1.1.3-7.1_i386
|
||||||
|
libpam0g_1.1.3-7.1_i386
|
||||||
|
libselinux1_2.1.9-5_i386
|
||||||
|
libsepol1_2.1.4-3_i386
|
||||||
|
libss2_1.42.5-1.1_i386
|
||||||
|
libtext-charwidth-perl_0.04-7+b1_i386
|
||||||
|
libtext-iconv-perl_1.7-5_i386
|
||||||
|
libtinfo5_5.9-10_i386
|
||||||
|
libuuid1_2.20.1-5.3_i386
|
||||||
|
login_1:4.1.5.1-1_i386
|
||||||
|
mawk_1.3.3-17_i386
|
||||||
|
mount_2.20.1-5.3_i386
|
||||||
|
multiarch-support_2.13-38+deb7u1_i386
|
||||||
|
ncurses-bin_5.9-10_i386
|
||||||
|
nginx-extras_1.2.1-2.2+wheezy2_i386
|
||||||
|
nginx-full_1.2.1-2.2+wheezy2_i386
|
||||||
|
nginx-light_1.2.1-2.2+wheezy2_i386
|
||||||
|
nginx-naxsi_1.2.1-2.2+wheezy2_i386
|
||||||
|
passwd_1:4.1.5.1-1_i386
|
||||||
|
perl-base_5.14.2-21+deb7u1_i386
|
||||||
|
sed_4.2.1-10_i386
|
||||||
|
sysvinit_2.88dsf-41+deb7u1_i386
|
||||||
|
sysvinit-utils_2.88dsf-41+deb7u1_i386
|
||||||
|
tar_1.26+dfsg-0.1_i386
|
||||||
|
util-linux_2.20.1-5.3_i386
|
||||||
|
xz-utils_5.1.1alpha+20120614-2_i386
|
||||||
|
zlib1g_1:1.2.7.dfsg-13_i386
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
Loading packages (4742)...
|
||||||
|
Building indexes...
|
||||||
|
|
||||||
|
Not creating snapshot, as dry run was requested.
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
List of snapshots:
|
||||||
|
* [snap1]: Snapshot from mirror [wheezy-backports]: http://mirror.yandex.ru/debian/ wheezy-backports
|
||||||
|
|
||||||
|
To get more information about snapshot, run `aptly snapshot show <name>`.
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
ERROR: unable to filter: snapshot with name snap1 not found
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
Loading packages (56121)...
|
||||||
|
Building indexes...
|
||||||
|
ERROR: unable to create snapshot: snapshot with name snap2 already exists
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
Loading packages (5550)...
|
||||||
|
Building indexes...
|
||||||
|
|
||||||
|
Snapshot snap2 successfully filtered.
|
||||||
|
You can run 'aptly publish snapshot snap2' to publish snapshot as Debian repository.
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
Name: snap2
|
||||||
|
Description: Filtered 'snap1', query was: 'rsyslog (>= 7.4.4), $Architecture (i386)'
|
||||||
|
Number of packages: 10
|
||||||
|
Packages:
|
||||||
|
init-system-helpers_1.18~bpo70+1_all
|
||||||
|
libestr0_0.1.9-1~bpo70+1_i386
|
||||||
|
libjson-c2_0.11-3~bpo7+1_i386
|
||||||
|
liblogging-stdlog0_1.0.4-1~bpo70+1_i386
|
||||||
|
rsyslog_7.6.3-2~bpo70+1_i386
|
||||||
|
init-system-helpers_1.18~bpo70+1_source
|
||||||
|
json-c_0.11-3~bpo7+1_source
|
||||||
|
libestr_0.1.9-1~bpo70+1_source
|
||||||
|
liblogging_1.0.4-1~bpo70+1_source
|
||||||
|
rsyslog_7.6.3-2~bpo70+1_source
|
||||||
@@ -12,3 +12,4 @@ from .merge import *
|
|||||||
from .drop import *
|
from .drop import *
|
||||||
from .rename import *
|
from .rename import *
|
||||||
from .search import *
|
from .search import *
|
||||||
|
from .filter import *
|
||||||
@@ -0,0 +1,113 @@
|
|||||||
|
from lib import BaseTest
|
||||||
|
import re
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot1Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: simple filter
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-non-free",
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter snap1 snap2 mame unrar"
|
||||||
|
|
||||||
|
def check(self):
|
||||||
|
def remove_created_at(s):
|
||||||
|
return re.sub(r"Created At: [0-9:A-Za-z -]+\n", "", s)
|
||||||
|
|
||||||
|
self.check_output()
|
||||||
|
self.check_cmd_output("aptly snapshot show -with-packages snap2", "snapshot_show", match_prepare=remove_created_at)
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot2Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: play with versions
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-backports",
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter -with-deps snap1 snap2 'rsyslog (>= 7.4.4)'"
|
||||||
|
|
||||||
|
def check(self):
|
||||||
|
def remove_created_at(s):
|
||||||
|
return re.sub(r"Created At: [0-9:A-Za-z -]+\n", "", s)
|
||||||
|
|
||||||
|
self.check_output()
|
||||||
|
self.check_cmd_output("aptly snapshot show -with-packages snap2", "snapshot_show", match_prepare=remove_created_at)
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot3Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: complex condition
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-main",
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter snap1 snap2 'Priority (required)' nginx xyz"
|
||||||
|
|
||||||
|
def check(self):
|
||||||
|
def remove_created_at(s):
|
||||||
|
return re.sub(r"Created At: [0-9:A-Za-z -]+\n", "", s)
|
||||||
|
|
||||||
|
self.check_output()
|
||||||
|
self.check_cmd_output("aptly snapshot show -with-packages snap2", "snapshot_show", match_prepare=remove_created_at)
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot4Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: dry-run
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-backports",
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter -dry-run snap1 snap2 'rsyslog (>= 7.4.4)'"
|
||||||
|
|
||||||
|
def check(self):
|
||||||
|
self.check_output()
|
||||||
|
self.check_cmd_output("aptly snapshot list", "snapshot_list")
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot5Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: no such snapshot
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter snap1 snap2 'rsyslog (>= 7.4.4)'"
|
||||||
|
expectedCode = 1
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot6Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: duplicate snapshot
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-main",
|
||||||
|
"aptly snapshot merge snap2 snap1",
|
||||||
|
]
|
||||||
|
runCmd = "aptly snapshot filter snap1 snap2 'rsyslog (>= 7.4.4)'"
|
||||||
|
expectedCode = 1
|
||||||
|
|
||||||
|
|
||||||
|
class FilterSnapshot7Test(BaseTest):
|
||||||
|
"""
|
||||||
|
filter snapshot: follow sources
|
||||||
|
"""
|
||||||
|
fixtureDB = True
|
||||||
|
fixtureCmds = [
|
||||||
|
"aptly snapshot create snap1 from mirror wheezy-backports-src",
|
||||||
|
]
|
||||||
|
runCmd = "aptly -dep-follow-source snapshot filter -with-deps snap1 snap2 'rsyslog (>= 7.4.4), $$Architecture (i386)'"
|
||||||
|
|
||||||
|
def check(self):
|
||||||
|
def remove_created_at(s):
|
||||||
|
return re.sub(r"Created At: [0-9:A-Za-z -]+\n", "", s)
|
||||||
|
|
||||||
|
self.check_output()
|
||||||
|
self.check_cmd_output("aptly snapshot show --with-packages snap2", "snapshot_show", match_prepare=remove_created_at)
|
||||||
Reference in New Issue
Block a user