From 7d6206cf7683563e36ecc599111269b6b55b71d6 Mon Sep 17 00:00:00 2001 From: Tomas Mlcoch Date: Thu, 7 Nov 2013 13:59:29 +0100 Subject: [PATCH] deltarepo: Better acceptance tests. --- .../Archer-3.4.5-6.x86_64.rpm | Bin .../balicek-utf8-1.1.1-1.x86_64.rpm | Bin .../{repo3_md5 => packages}/empty-0-0.x86_64.rpm | Bin .../fake_bash-1.1.1-1.x86_64.rpm | Bin .../super_kernel-6.0.1-2.x86_64.rpm | Bin deltarepo/acceptance_tests/repos/regenrepos.sh | 2 +- .../repos/repo1/Archer-3.4.5-6.x86_64.rpm | Bin 3101 -> 0 bytes .../repos/repo1/fake_bash-1.1.1-1.x86_64.rpm | Bin 2237 -> 0 bytes deltarepo/acceptance_tests/repos/repo1/gen.sh | 2 +- deltarepo/acceptance_tests/repos/repo1/pkglist | 2 ++ ...4fe7ce1da624a297c2082d8c187a-primary.sqlite.bz2 | Bin 2365 -> 0 bytes ...0523544e4c47b65f82aa578ba5209848-primary.xml.gz | Bin 1054 -> 0 bytes .../repos/repo1/repodata/repomd.xml | 34 +++++++++---------- .../repos/repo2/Archer-3.4.5-6.x86_64.rpm | Bin 3101 -> 0 bytes deltarepo/acceptance_tests/repos/repo2/gen.sh | 2 +- deltarepo/acceptance_tests/repos/repo2/pkglist | 2 ++ ...a9d6daa1132f66ac655c7e194b64-primary.sqlite.bz2 | Bin 2586 -> 0 bytes ...07ad4eea9045078a17faa2c72418df0d-primary.xml.gz | Bin 1169 -> 0 bytes .../repos/repo2/repodata/repomd.xml | 30 ++++++++--------- .../repos/repo2/super_kernel-6.0.1-2.x86_64.rpm | Bin 2845 -> 0 bytes .../acceptance_tests/repos/repo2_incomplete/gen.sh | 21 ++++++++++++ .../repos/repo2_incomplete/pkglist | 2 ++ ...ead7b8967bc8d324bd44159a1a741f31-primary.xml.gz | Bin 0 -> 1175 bytes ...8231f8e0522b4ae4b6beaf2ec8368b-filelists.xml.gz | Bin 0 -> 381 bytes .../repos/repo2_incomplete/repodata/repomd.xml | 25 ++++++++++++++ .../repos/repo3/Archer-3.4.5-6.x86_64.rpm | Bin 3101 -> 0 bytes .../repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm | Bin 1789 -> 0 bytes .../repos/repo3/empty-0-0.x86_64.rpm | Bin 1401 -> 0 bytes .../repos/repo3/fake_bash-1.1.1-1.x86_64.rpm | Bin 2237 -> 0 bytes deltarepo/acceptance_tests/repos/repo3/gen.sh | 2 +- deltarepo/acceptance_tests/repos/repo3/pkglist | 5 +++ ...915d6bceb5c889c38c773ece6593b893-primary.xml.gz | Bin 1734 -> 0 bytes ...58b965be54d412404b1742a7b3b0-primary.sqlite.bz2 | Bin 3423 -> 0 bytes .../repos/repo3/repodata/repomd.xml | 36 ++++++++++----------- .../repos/repo3/super_kernel-6.0.1-2.x86_64.rpm | Bin 2845 -> 0 bytes deltarepo/acceptance_tests/repos/repo3_md5/gen.sh | 2 +- deltarepo/acceptance_tests/repos/repo3_md5/pkglist | 5 +++ ...64332a3db016fc06d8ab9da29fd3-primary.sqlite.bz2 | Bin 3272 -> 0 bytes ...f5dbbd04a90922679668e7452a0e0abc-primary.xml.gz | Bin 1617 -> 0 bytes .../repos/repo3_md5/repodata/repomd.xml | 34 +++++++++---------- deltarepo/acceptance_tests/test.sh | 5 +++ deltarepo/deltarepo/common.py | 21 ++++++++++-- deltarepo/deltarepo/delta_plugins.py | 30 +++++++++++------ deltarepo/deltarepo/generator.py | 4 --- 44 files changed, 179 insertions(+), 87 deletions(-) rename deltarepo/acceptance_tests/repos/{repo3_md5 => packages}/Archer-3.4.5-6.x86_64.rpm (100%) rename deltarepo/acceptance_tests/repos/{repo3_md5 => packages}/balicek-utf8-1.1.1-1.x86_64.rpm (100%) rename deltarepo/acceptance_tests/repos/{repo3_md5 => packages}/empty-0-0.x86_64.rpm (100%) rename deltarepo/acceptance_tests/repos/{repo3_md5 => packages}/fake_bash-1.1.1-1.x86_64.rpm (100%) rename deltarepo/acceptance_tests/repos/{repo3_md5 => packages}/super_kernel-6.0.1-2.x86_64.rpm (100%) delete mode 100644 deltarepo/acceptance_tests/repos/repo1/Archer-3.4.5-6.x86_64.rpm delete mode 100644 deltarepo/acceptance_tests/repos/repo1/fake_bash-1.1.1-1.x86_64.rpm create mode 100644 deltarepo/acceptance_tests/repos/repo1/pkglist delete mode 100644 deltarepo/acceptance_tests/repos/repo1/repodata/16757678d3227317103fd9f41cc21f1f636d4fe7ce1da624a297c2082d8c187a-primary.sqlite.bz2 delete mode 100644 deltarepo/acceptance_tests/repos/repo1/repodata/2f214e66e4ad346840e0c137dba42a0a0523544e4c47b65f82aa578ba5209848-primary.xml.gz delete mode 100644 deltarepo/acceptance_tests/repos/repo2/Archer-3.4.5-6.x86_64.rpm create mode 100644 deltarepo/acceptance_tests/repos/repo2/pkglist delete mode 100644 deltarepo/acceptance_tests/repos/repo2/repodata/106722bbd3a71e2c985dd7d34a407c56f5f1a9d6daa1132f66ac655c7e194b64-primary.sqlite.bz2 delete mode 100644 deltarepo/acceptance_tests/repos/repo2/repodata/f32e3d8b8a2ceb2b19db3bba0bdcc60107ad4eea9045078a17faa2c72418df0d-primary.xml.gz delete mode 100644 deltarepo/acceptance_tests/repos/repo2/super_kernel-6.0.1-2.x86_64.rpm create mode 100755 deltarepo/acceptance_tests/repos/repo2_incomplete/gen.sh create mode 100644 deltarepo/acceptance_tests/repos/repo2_incomplete/pkglist create mode 100644 deltarepo/acceptance_tests/repos/repo2_incomplete/repodata/9ec52119c7d402f207202633c167eeafead7b8967bc8d324bd44159a1a741f31-primary.xml.gz create mode 100644 deltarepo/acceptance_tests/repos/repo2_incomplete/repodata/ef90d920195c5ff51755697ae989494aee8231f8e0522b4ae4b6beaf2ec8368b-filelists.xml.gz create mode 100644 deltarepo/acceptance_tests/repos/repo2_incomplete/repodata/repomd.xml delete mode 100644 deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm delete mode 100644 deltarepo/acceptance_tests/repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm delete mode 100644 deltarepo/acceptance_tests/repos/repo3/empty-0-0.x86_64.rpm delete mode 100644 deltarepo/acceptance_tests/repos/repo3/fake_bash-1.1.1-1.x86_64.rpm create mode 100644 deltarepo/acceptance_tests/repos/repo3/pkglist delete mode 100644 deltarepo/acceptance_tests/repos/repo3/repodata/266065d23b52403ddb1f0d2897be8b34915d6bceb5c889c38c773ece6593b893-primary.xml.gz delete mode 100644 deltarepo/acceptance_tests/repos/repo3/repodata/ce0cdd3223f1ecf44289c4468f5769a3e1ad58b965be54d412404b1742a7b3b0-primary.sqlite.bz2 delete mode 100644 deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm create mode 100644 deltarepo/acceptance_tests/repos/repo3_md5/pkglist delete mode 100644 deltarepo/acceptance_tests/repos/repo3_md5/repodata/37db64332a3db016fc06d8ab9da29fd3-primary.sqlite.bz2 delete mode 100644 deltarepo/acceptance_tests/repos/repo3_md5/repodata/f5dbbd04a90922679668e7452a0e0abc-primary.xml.gz diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/packages/Archer-3.4.5-6.x86_64.rpm similarity index 100% rename from deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm rename to deltarepo/acceptance_tests/repos/packages/Archer-3.4.5-6.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/packages/balicek-utf8-1.1.1-1.x86_64.rpm similarity index 100% rename from deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm rename to deltarepo/acceptance_tests/repos/packages/balicek-utf8-1.1.1-1.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm b/deltarepo/acceptance_tests/repos/packages/empty-0-0.x86_64.rpm similarity index 100% rename from deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm rename to deltarepo/acceptance_tests/repos/packages/empty-0-0.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/packages/fake_bash-1.1.1-1.x86_64.rpm similarity index 100% rename from deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm rename to deltarepo/acceptance_tests/repos/packages/fake_bash-1.1.1-1.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm b/deltarepo/acceptance_tests/repos/packages/super_kernel-6.0.1-2.x86_64.rpm similarity index 100% rename from deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm rename to deltarepo/acceptance_tests/repos/packages/super_kernel-6.0.1-2.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/regenrepos.sh b/deltarepo/acceptance_tests/repos/regenrepos.sh index 22cb2b4..f7a4058 100755 --- a/deltarepo/acceptance_tests/repos/regenrepos.sh +++ b/deltarepo/acceptance_tests/repos/regenrepos.sh @@ -9,7 +9,7 @@ MY_DIR="$MY_DIR/" # E.g.: # $ CREATEREPO="createrepo" ./regenrepos.sh -for dir in $MY_DIR/*/ +for dir in $MY_DIR/repo*/ do echo "### Regeneration of $dir" $dir/gen.sh diff --git a/deltarepo/acceptance_tests/repos/repo1/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo1/Archer-3.4.5-6.x86_64.rpm deleted file mode 100644 index 6067c887863eb5a9f1248d02944356a6bcf2b904..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3101 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 Ub^Kb7bmr>!_u~u8YWn*B2Iq#Q_W%F@ diff --git a/deltarepo/acceptance_tests/repos/repo1/gen.sh b/deltarepo/acceptance_tests/repos/repo1/gen.sh index b4725c8..03ba054 100755 --- a/deltarepo/acceptance_tests/repos/repo1/gen.sh +++ b/deltarepo/acceptance_tests/repos/repo1/gen.sh @@ -8,5 +8,5 @@ then fi pushd "$MY_DIR" -$CREATEREPO $EXTRAARGS --groupfile group.xml --revision "1st repo" --content "A content tag" . +$CREATEREPO $EXTRAARGS --pkglist pkglist --groupfile group.xml --revision "1st repo" --content "A content tag" . popd diff --git a/deltarepo/acceptance_tests/repos/repo1/pkglist b/deltarepo/acceptance_tests/repos/repo1/pkglist new file mode 100644 index 0000000..8f68735 --- /dev/null +++ b/deltarepo/acceptance_tests/repos/repo1/pkglist @@ -0,0 +1,2 @@ +../packages/Archer-3.4.5-6.x86_64.rpm +../packages/fake_bash-1.1.1-1.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/16757678d3227317103fd9f41cc21f1f636d4fe7ce1da624a297c2082d8c187a-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo1/repodata/16757678d3227317103fd9f41cc21f1f636d4fe7ce1da624a297c2082d8c187a-primary.sqlite.bz2 deleted file mode 100644 index 49be7c05e16c3085835c9536ff3a3c5fd4860c36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2365 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 diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/2f214e66e4ad346840e0c137dba42a0a0523544e4c47b65f82aa578ba5209848-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo1/repodata/2f214e66e4ad346840e0c137dba42a0a0523544e4c47b65f82aa578ba5209848-primary.xml.gz deleted file mode 100644 index c0282bfaccb5403516321b963e6ae7a317529dce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1054 zcmV+(1mXK1iwFP!000001GQIMkDE9Ye($e9erg}W9YaQhs_IUwN`2T>W*_z`GH?he zfLR-&nf>)^a|y{LF`e#KBh485JICkZ&;BO-_*|9R5g0FMy+M|4A`R+(Fc0;58kh5cE8Z7{utUssU^%93yIE$geLsK{Y%c+_CTj?dX_J0O@wX!ECHhROriAAy zeLXa$6^TlLC#+~%k;a(y1PqPyHHjS;ShQ_{iBj*isZOUA3F}xHjs4)1?vi2u-LyY+ zMrcTk#I{8RT2_>zB$k5%*Ttr1AuaBTGVP~4*TQaKj#cEvKQP57>TH<;ThzQIWeEZ= zj+g9BaTJT5>yAbxO^D1v%Nb-FG{n5>o3z6E&{SRae}HF{Riu?e@gb%k$|8Z9L-h6c z@1b!%F++|}r<6tCw%@h`WSp20dq%q^`VEdy(x!sCHJ&If`G6i4XKPI(*2*h@Lm z`%y|OQq+Ud44Mr&?N|b06urulvqYviSk9=~G6#|hJR`NBgeWL$#d!{TzNT`7y`elK zykYcMi1RT_jgulP_M%D7Y*0)XL0VRlz2MvTM>KK7964g!lfT=>@yYn>wXtRCwyitP z$g!!@_k1NMUypxW`4V1~#_62J)0Oek&M;?jZR~jpYd?h2+j0vV<1BcKRc*s4!}Zpz1`57kopQFmW$t8Tv9R^5BGZKjG@J{t_q z@*Y}r*^l09LhDRiR;_}j@d8WLJdGD<+7q>>>KR$pq=^^Us^)9FK-Y!67x+3eb}0F) z`t}ZK%xMX&f)|7=)m#xHAxkCKMY*S1D;+HrT4}sgXQlB{nJ=sSs-mHk3z5-rX2eBp zO!9(+M!z7RaASJIPs(IL?`7lwyO{9&t&(rPkHpXAee@%eZ*6AS0?);3Cm@#Py6e~% zq6V8Jwbw4T0^-G~V`3XzoCQf1ctR4IW)P6f3f$PgBl*6FbhIIzds^=V`2o3iU*DbT zw&OXJr7oKB265-O*f#^$zA5f(+wt#;J6Xt^;_ejCs_%&S{eS8^rMBC?@D?iVu|5`z z*1g2r%A))_jdz{wf0cQr=f73v@m%$kO%bZDnj73vJ5y;HrPH6+GQ4Ym?GC_dD3#Cd Y<>hpCuc$Al)4!_Gza(0HM>G!r0FGA>j{pDw diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml index 400a1c4..cbb5a31 100644 --- a/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml +++ b/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml @@ -5,18 +5,18 @@ A content tag - 2f214e66e4ad346840e0c137dba42a0a0523544e4c47b65f82aa578ba5209848 - b6b04235e71edad3c0e67f86626a4c93c10bd5074962b3b507e523ade6d3b2b6 - - 1383752637 - 1054 - 3892 + 4b4a98a3883ca24ecda5cb105f9c162dfdfc6d074379e7c9e8311f9fde249407 + 9276f812675ba0193df682253ece4b14faa8a1dda77a14217aa95a4a53f96caf + + 1383829094 + 1060 + 3916 fac6a651423edc252a488b74995641ec4514e6bca12864032c019dcce9614d81 50c5f1c5645a8e52c16845c321d6b0fcf3bd6ea2227d5d49b1d8f0b585da31ed - 1383752637 + 1383829094 370 630 @@ -24,16 +24,16 @@ a5ad5ae1f43eae9e8e1b3fb6ee93e2cf8950708e0b3db8af3ee68f31dd0a38c2 db841078c111c4ae9c59ee996f6234d2dd4bf4f61a01892565bdaf6fb1c0879e - 1383752637 + 1383829094 438 939 - 16757678d3227317103fd9f41cc21f1f636d4fe7ce1da624a297c2082d8c187a - 108dac0f7c50ff66b9d0e25f5d1c3d81589e9d804b65b05e2b4e6bfce2b65bdd - - 1383752637 - 2365 + a81604899900f2f58ead1e4a1d903700efe7acf64f684d6e16c9ae5be16094a7 + 84d58ab2442be220c192439c5f528eb11997cd0d5bbd075e634ecb912870d3e8 + + 1383829094 + 2376 21504 10 @@ -41,7 +41,7 @@ 64e015b633e6cac5193a0a44403162cf90c39bb29cd8cb1df8e5ca0f2ec56436 4d0dfa0564f4e57953ea58f1d5c28c4bd94b18e2ebf26c640c7c4a3051ec838a - 1383752637 + 1383829094 927 7168 10 @@ -50,7 +50,7 @@ 0e43813b2bf4a47abcafa39072c0bc3279b8ec65ab34b929a6cd234f5b0e3e4f 54719f2eeae2623c331373f79fe6ed61c9ef81ad861446f566ff31ab7eeff71f - 1383752637 + 1383829094 933 6144 10 @@ -58,14 +58,14 @@ a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5 - 1383752637 + 1383829094 140 46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5 - 1383752637 + 1383829094 141 140 diff --git a/deltarepo/acceptance_tests/repos/repo2/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo2/Archer-3.4.5-6.x86_64.rpm deleted file mode 100644 index 6067c887863eb5a9f1248d02944356a6bcf2b904..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3101 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 jh>PnTUuqpc&(Jjw@%bC7e~Sfoo - f32e3d8b8a2ceb2b19db3bba0bdcc60107ad4eea9045078a17faa2c72418df0d - dfeb9b14eb22e1e8d49101ef4b56dbbc8fcd8c428028e770c2d6125bf91a45d0 - - 1383752637 - 1169 - 4643 + 9ec52119c7d402f207202633c167eeafead7b8967bc8d324bd44159a1a741f31 + e2669510eec24c10d59e3a87372538cf0cc5ba3d2303e1b1652d7685e5bd7e6d + + 1383829094 + 1175 + 4667 ef90d920195c5ff51755697ae989494aee8231f8e0522b4ae4b6beaf2ec8368b 5158e6a020082865e81ae4a0766f6dcc17ba6c681b944834b2ed180c6dda4186 - 1383752637 + 1383829094 381 684 @@ -26,16 +26,16 @@ b0bae8ca67a1beec7a9c0e7cd524a64524546bfb6e67017684753b723c05786d 2033cf66edc430baab1a2e34d4805f565e92e1b069c03c65379491bc66e83c33 - 1383752637 + 1383829094 461 1061 - 106722bbd3a71e2c985dd7d34a407c56f5f1a9d6daa1132f66ac655c7e194b64 - 00fefbbb5ec36ee30805219ceeb35e0dc1c576385b51ce13ea3fe70ebfe72123 - - 1383752637 - 2586 + d8588001092f42ecf6cd95a14fb0a9adafb62dfc5905403def843c316f2e1ed4 + c3770704799007588bbe3f76957c2f49c4dce189090f830bc0aec8c7ba052a41 + + 1383829094 + 2581 21504 10 @@ -43,7 +43,7 @@ c158146c6f1bd169e7ecf957f095347f24543cfa25a2d958effd154adb2f9036 b4d8f432396a6da6b79eabfe13c543241ab1f24e95b2579db666e6ca27ba8790 - 1383752637 + 1383829094 992 7168 10 @@ -52,7 +52,7 @@ 6ab40c3a6ca6ed8fe5225e0927db0ecf717734e939a3fd13efd21583f6019881 84a9c5d37145165ca62939a0f4c09113e3ca1180a8e3d1f26e094f565f73792d - 1383752637 + 1383829094 979 6144 10 diff --git a/deltarepo/acceptance_tests/repos/repo2/super_kernel-6.0.1-2.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo2/super_kernel-6.0.1-2.x86_64.rpm deleted file mode 100644 index b606e16b309db226c6ebfa1a0d14645761b1c39a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2845 zcmbtWU2GIp6u!GVE4Y9*VzE}JW8|StI=kK7*`FyCs)h1nbqOs>!FHLQy}LVMcV{{? zTe>S4F@$0aU;>yZnn@pLe$^n4+5YI(G4h$R2^;`i&9mha-%>aA=>`^e(e*;9V)!{y`ynFu@_vz|eCLXe2F45)H+~D6B^pyWwKTG&(x^8T8?v zgiMILg%Iy57+MGhad{U5;+!29xX%Z{9%K9}<8v9m z28jF2F^>C2|9Qr*1ERi#@tc6CZ)5y6Ao}0Q_+3EMKV*D_@zad|#rS!LbLbll}K-?OjB{%kVm>gwwT^D*3Hi%R=b7Ha^m@j78OOMA zehLuc==6>%DUs zuK?ov*a!%Fnz@VV^8qm)3JCZ2wlbb!ybXC9nON_LUGGSUbWzjdby-<2XDR8*spc5r zb29V|tzS)3vynGwUr9Bvr=?6SPc7^!S}~JX70cu`-BPup=_e$yy>ut9DRMrinU>$~ zrL}^r79j|19ZObp^oPhZx(+L4dsU#bY+AHHa+akx2Lh&+oEWNK(Fy_8N~&g3-at*Q zKm%o}Ct<{(az0-Mf#lUXk!)T~5r_exzD+CWa1KnGZddd41-U@YhA|CC7O7b{QsZMQtO>PiC%!j~8-R>&WMGfKk1L?K8-KQJ5dN+SLcg46K*aXa7fNt>Na zU=2DJ*;Vof{rI_0Y+u`o)&+;uqe_NVb5z>ZAhe z2G$hEBK|n+7^8Ns_=7XH2Q~+?B7u6ZP5LXEltA#6t&l*;Gy*BL7;t)KPBv(uAOjZ? zAzsMxg0AY67hZx_6RvuruqfG{SlP9#y*t^NShcckaSKe#&;f-yB?E|QLH!Y+)>u@r zG=moeT{h%Gi)rdYs+7r4Lon3}Z4r51C`3iLSfwIu$~=<$44LpFTX;IPBU*`g=&tjMJR*LF|0%x^>m_?r;YazGD}J zw`;#0y}WOy@BNz3`_3k(aXm+lb9=)VJLbJtv%Ke{jj!D@7SBJ}_h+`M=l4r(<>H>e zp3bR1*X^x4F?{gE%vrsCz0KZ1l6bE6aKY8+KDYebf+vm^H^sj{S+%h_w(?4OM=Qke z<;O>l-F*G>kq+~fuDYGqZ_GJRy>-*J6E|j^`nq@Sg~2z7>l4>*I6jFfKlUHGbY?bY JhWNVI{0$B}Lv8>7 diff --git a/deltarepo/acceptance_tests/repos/repo2_incomplete/gen.sh b/deltarepo/acceptance_tests/repos/repo2_incomplete/gen.sh new file mode 100755 index 0000000..650a726 --- /dev/null +++ b/deltarepo/acceptance_tests/repos/repo2_incomplete/gen.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +MY_DIR=`dirname $0` + +if [[ -z "$CREATEREPO" ]] +then + CREATEREPO="createrepo_c" +fi + +if [[ -z "$MODIFYREPO" ]] +then + CREATEREPO="modifyrepo_c" +fi + +pushd "$MY_DIR" +$CREATEREPO $EXTRAARGS --pkglist pkglist --revision foorevisionbar --distro cpe:/o:fedoraproject:fedora:17,foo --repo abc --content plm . +$MODIFYREPO --remove primary_db repodata/ +$MODIFYREPO --remove filelists_db repodata/ +$MODIFYREPO --remove other repodata/ +$MODIFYREPO --remove other_db repodata/ +popd diff --git a/deltarepo/acceptance_tests/repos/repo2_incomplete/pkglist b/deltarepo/acceptance_tests/repos/repo2_incomplete/pkglist new file mode 100644 index 0000000..7a9c7d1 --- /dev/null +++ b/deltarepo/acceptance_tests/repos/repo2_incomplete/pkglist @@ -0,0 +1,2 @@ +../packages/Archer-3.4.5-6.x86_64.rpm +../packages/super_kernel-6.0.1-2.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo2_incomplete/repodata/9ec52119c7d402f207202633c167eeafead7b8967bc8d324bd44159a1a741f31-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo2_incomplete/repodata/9ec52119c7d402f207202633c167eeafead7b8967bc8d324bd44159a1a741f31-primary.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..e7c42dd25cb4586a081805335db380c4ef4c4dab GIT binary patch literal 1175 zcmV;I1ZevoiwFP!000001GQL9Z{s!)z3;CObZUWElqiXk16hkjyIm}hLyM$`o(xJF z*+L{yB_%h`uP><&emFvoMEzj~zgG0G8iHUls^p`%0t{S%!TZ(-mV|v^a*~%AF!U?)M~V{E4+ z$n6}bPM%>W2!LRcEYpy<)Lw>;Yh&!?xxEa65Hi4i3Uo=A5TR+4en*npUPUW<3ETbh@Un;{uQGTi}xFjWO|bSW&Q!m+@E+!Pq(-_Fqr? zLx&=yFbdli6&QI@N=h7;gq}xi-!YA(E6S{&@;!%mp*^xFif5SOlRP`N#1^$^X<35A z%j2bLQ|#oT?|Gw9$x^CvFt!}>m1$X1xB?CFFZzNlh&2@0QfFZ>%^9y~tA_GJPT!VA z3blav+wXS~I-NK|c2H-G$KUV2-w%*+;)vLA);003u!E8{71S+yV5}4adRRPydn&d} zw6V&gR3ob&Wvrq_Js2H9M?=9no`M|3FR~OoRVfaZN7T`B3pA5>PHWj7l3d=(vmN%m zo2e1;2YN<$!`ZHoXJwcgCuLTAZ>auRnF;08H1d*eWbfU5HK%^D$9}#<`8%3tu?J7kGqCA6BppmdINO^lSzQEo}PC$6=Q=7`oB&+)7^o}>Akzt#PV&r7vn)u7o4Ri(zy}cRQPsVr z{vNi4m{7)+%JF#5-x$+%a$_9$zcCI6-eA20VQCbjP9m;P8MkB&QPHjov8MlkU=^S} zG;2A-L8`pHT)196x*iGa&~q=UM;vz6Ok8_{iu{AZty-SS+jQi;>74KAKwZsTXX$f^mFN%?Ip&4xOd`1uX$U;i+Mq|VacDD}A&}0tSioa+dyGKrau#qj zYNyg=93lA{j^NOro&=oY79eR#H$Wmb1t?%=^tAPs&0}O`-7(jEuP%I1d + + foorevisionbar + + plm + abc + foo + + + 9ec52119c7d402f207202633c167eeafead7b8967bc8d324bd44159a1a741f31 + e2669510eec24c10d59e3a87372538cf0cc5ba3d2303e1b1652d7685e5bd7e6d + + 1383829094 + 1175 + 4667 + + + ef90d920195c5ff51755697ae989494aee8231f8e0522b4ae4b6beaf2ec8368b + 5158e6a020082865e81ae4a0766f6dcc17ba6c681b944834b2ed180c6dda4186 + + 1383829094 + 381 + 684 + + diff --git a/deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm deleted file mode 100644 index 6067c887863eb5a9f1248d02944356a6bcf2b904..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3101 zcmbtWYm5|C7QWrnqvH&O5hRO>Qc9u_sp_fj>Ynb2gM$nM<1P-u7(mh9s_NSh?e1!; zs&QsajEJvjfFHX*j1d*WW(jJ1A&5caGZG)`Bdog{AE0ZD2!pO{d_-{kPW5R4ABo1> zIrqEYJ?Gwg?z!jQ>e2fTzSAU7LUUZZAYC=q71srB|DVVY^H)5^sr+W_W}{4Nq+&7{pUc6p9GSB|7V_K{uS}LqW(UL;B^#@ z*D*ZTDOXE!NU56k)n;C5Y}Vl766-Fd6VI>yu$1B%9XO@RLipBM+Y6Jndan3YN-g!uh4G(2StyN=_FU#$2W#a}4Rb8XG7mT4^B?jMR}x~4#7 zQDsw=rAjuAus+KSgi1{s^tuN3ThKj3J_YYL@*>=Vq-Z@>a*ksPR2Ee>RavSeRXG7i zN=0i1C4?(IPiFgyC3&$~mfp;Uj(U2FdFlB_`xcqQCC3bmy#?kFb-~j8(K2xH-b8$#n4BE-q_>zWmyP~g~(V4jD@&ZQp8XM zK8(6XEiI0s8YqHVB4{O0ut-|dwK#J6k)DCI4?Hul=JK9FB(tY1EZL4-P|o+uL8Hf& z*@Ee7NYmMhs>C(?)VTOHwlNJqHTJ7)b$Fv=qqKrz7tBf?Hzu!v4`OxYS~%uAzF8^_ zE0tp9D)TI8`iidSA8TxyrZ7zlVnebJDSr0CDtbJbF!ZF6>Ig!61aD4VLe)tQqy(Wi zh{{jmjy}q*mLSrIGop+bBf^NUKx~ix?K;}}xq0}g5G9PK1ETZ61h|Zif|M2E#tUI` z(yR4%Yw^4}y$k1wXw7q@ROl$KjFt-xTsJEVv3qq)M~LR6?G{hi@G{X z?alNJEFSFdTb@}maOvW?^SWV{lS8(w`bDSWfp|XNN44rYzO;SERaCW#OIq&sysB!| zayk6*^ok?0+fWp>oHS7RwTkS{%ZhZ1wy>*3ho3gJo?B}0+^P8reHD%`VbCB3B3pEW z<%WeUSN-AR&5ma!*KPl=R^7jO?ab{jkM8+9v@Js;xN#`KAHT7&!_;m+(mApWU&huC zz8$wAEY1o|MCbG;Zk@F^JWc%d3NdB;dl7p>%fC*4<-~C8`Gak%^&JDRrQW&s^`-mY zy!X6kLMObsbMoF=#}^-O*mmpdcii|v=5Y6pb>mLjUN|$q^M*)S1=|6wh0Uit_$f6y^_9L1Dkb7>E5oW1IrT{tJw8ACPN|`$3_9 z5YGbp4}(JgU{wtzcSVs*T*jden`^4hc$Mm;cgp+7op&qltb5j*Ya%`F ztme*hd2h~pnKP?18t0zRjB^FIf+jTlM>m-CKssL33`Np%hV2M`Eo11CS^yuGC(=)n z!ExK6I=8!URJDwPP76-kV2)~&N7?r3YvN_jdeOLlJ5#&$t5^fscYg<^@6l8MoT zxGu5!!ywp}B3P#WcY^D})f(5={!a4T{_4zg zQXUQxJh;s_KW_I!cfxzK`l@%*n|DvU6Yiw@ig(VPZX!25NG=*rh_Ps-UBr)r6}aPY z&+9YSl^=+4{20fZs!2Ki8A;RN-)!akM*9a24(;t9866yW`e5(wP6*4=l0r>KH3~L> z?MO7BN1@^Ueor510iW!fon9Iq!t_;ZQ{+BrrG)KV3qn5x09 z3ctEJynlW8u|kntn)>qN$nx~3hrf>QxsiKh7E{<%Dw7yi{0FsGTe$-Dtt%bn;X`ma zzWeRAN{~DlxC0uufACW474kfJ;91hR<(se^4?ebQF}=|_(sSXhvu`~7?I-VE6z;F# zI|Q){J&z7tYySDjlI7fY-W=b&b7635?t-+v>xIoPzF!td;J~q#?_d9_ac18%TtJv< Gd@@WG&3vf=2Hmu zUU*qZ zUD2+#^xPe|b$Z~%Y{VhcY5qaSVH7b<|) z0yY8A{{lDol+4^7&Zu3Bs+tOG(O9@HsVb3JjLDM5V)b?PN~Bhm zSzT0nz~< z1J@XX{*PRja*chK0Lr<>yr|c4y#UPbV5RTX_wbebYk2&3VDyK${sD~nqFiGS=x^rw z7uUy@bpY=d{T*Cy0mjm)GlZve*q8rM@?8(cr;ItPsNc>xUb**F1=`QLIs&KvX1ah>A& z6Y3V?zyEM~A+l!=A&Cz|YYj_Pj3LYQME{p&r4`+TU|j9TI@?K)>Do-yQ##X#p_`d3 z$=1sQvb3BFza`OiRMD~1JiC8J6$DXPs>Y^DR|DbrR`DLuR5Zn4s~!(5m75gkgJ{k65t?afsaNtDG94FlsdB8Ef>I4aiqwwM?e zBjlfL2g4C5B*)}veJ!?+b1%mK3It8m2I*js+Pckx^t56a@U&}a>p(ow)!i2F8#tBd z>1sLJ2w^FfRhjMSmg$0UJw-i7ZO8JM>RC>ZQd@D9bffFqG?_`Im_uDX#~P(zkfvn` z9$v;|jf2c&j;<2b)-8VJ)M46?;!%GLbkNL@qKT!;PafPir`t9cX1+a5VA-TNnPlp{|bU}{m;5wZ$Av<%~JV|0s_7LeA~Wp?&%cf#z>I5S(e zjfsyKF%6Ig`5=)HjMXp3gb*PZnkato6Kd2*Kw{L`CWQb-6JMoeJ!kf8Ym8sK&7J@L z?z#8ebI-lK_r`lSulN`gPgdE>Q)$J{iQxeJiD7L0f5pS@`1gQA@6ULs4Q)H1Zh^W4 zY8%uQjQM6j{ZO$$U*C05v|}6CJ3g2B&H~GGA>2aFuvk~Vk(!*C!qo6Wb7Yt zCt%L!py^Sl5SLE@#XcFROQB-HxNsd9r&by#i*L8z5&r^;_U**KgQC5g_)k#uk2%Nq=0MS2Af6{4Bfd>MUSU7_#`*>^j>V&Lj2L|* zA1AH>#r`LVmw{q_CWtW)$kW8Quh<{+2J!jt0Yy9J1sQXUjO#?kJYfvDPUJP9Fy4dx zkn2F9zX$t4T>iCWPlCeP^RFX2<_q~g;z{CqQ1I`$42u469QvOkmO;_~3~^J1y*MBC zZwH0(-p$0@Kw-SMgBTT=_RHT14F0^dU;f=>$Nj?i`^dhBcmNc~JD@nxqX!VLo3YD8{#s>@A=;9^=6AZN#IX z`2W%Y3VXEbb+Y3+u|Efe_rUC*c0d7l4G(QPA8JFNIDsdRlG4~8HQ8&ECf)!g9Emu1}rnr;BG3rOJC@+ zn4o$HPK-+p=noQEQ>|5o@w%3-Z#D9!#ci8s+BKa&rR2HYz{rLzZQ2mGoyE3pWkfd= zx3k@$4D)V_XSGrTvx_FTQhT{o;CgjD_3gBGk2bJqAQX_`{g49jK*&}6vREMEf(*|~ z1Y_$u_)N|(X_EA7pEnf9F?EBz|fc8y{Qs$t<%bm)^bU)`hvg!*5$inU*Sweihe)~6pXuPc2twQ=CDdk5AXou0gKrM3V1sV4F4;kQ5ApL(U^ zvVQu^2S@n}^AEv1M;=^rGIet0k@k^)9i4z-sJ(c_R>(C{BY?OHpd0vEP Ub^Kb7bmr>!_u~u8YWn*B2Iq#Q_W%F@ diff --git a/deltarepo/acceptance_tests/repos/repo3/gen.sh b/deltarepo/acceptance_tests/repos/repo3/gen.sh index 12a6dd6..a1b9531 100755 --- a/deltarepo/acceptance_tests/repos/repo3/gen.sh +++ b/deltarepo/acceptance_tests/repos/repo3/gen.sh @@ -13,6 +13,6 @@ then fi pushd "$MY_DIR" -$CREATEREPO $EXTRAARGS --groupfile comps.xml --revision "3th repo" --content "Content tag 123456" . +$CREATEREPO $EXTRAARGS --pkglist pkglist --groupfile comps.xml --revision "3th repo" --content "Content tag 123456" . $MODIFYREPO foobar repodata/ popd diff --git a/deltarepo/acceptance_tests/repos/repo3/pkglist b/deltarepo/acceptance_tests/repos/repo3/pkglist new file mode 100644 index 0000000..b0436ea --- /dev/null +++ b/deltarepo/acceptance_tests/repos/repo3/pkglist @@ -0,0 +1,5 @@ +../packages/Archer-3.4.5-6.x86_64.rpm +../packages/balicek-utf8-1.1.1-1.x86_64.rpm +../packages/empty-0-0.x86_64.rpm +../packages/fake_bash-1.1.1-1.x86_64.rpm +../packages/super_kernel-6.0.1-2.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/266065d23b52403ddb1f0d2897be8b34915d6bceb5c889c38c773ece6593b893-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/266065d23b52403ddb1f0d2897be8b34915d6bceb5c889c38c773ece6593b893-primary.xml.gz deleted file mode 100644 index f5a7d7c25c35ce06d6878e4f3b38b26eb56850fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1734 zcmV;%208g3iwFP!000001LavyZ`(E$zxPuJ8Zc}?Em0IjNsaBITa%(d4;zvmb}}gH zDHbeCnj~jQKfx~j07Fkb?ojlwb9Zs_y+%ov?IaRq$IW⁡cku-sAhj_v4Su@cHFD zQZ69N!z3Q5hK5uHVxIV6d_Gd&o}COF_4)Y8a1I6YS-}(`9_J% z8ED`y^hQeO$$Xx~YAyXNOXs~BLPk|m#%JstgndgDldirh#Z?L;wUih?QIuiK<}iMd z@hN0Oz4}s)GBGf|bm)YVpXoRl$7lIs zzM3wdGHg-d)9gI-N9r%fr|Osh@@(6}7;$O`D8SqZd~Db@P)t3SJJe*zbqo_>Oo9Np zw(Woq*y6xk=E6{KCaGo=f9EW_8vmHg(+Dn`@U@}dyeXx8$axl~g$QF6bt5>`x8Ier zs~6e$w17;c`dn%9w0={HEwX65sz;tA6JF0hY37H8KGaK@Qnm=^pafwgQev3YA%r5! zP!(?xMt(J95rYy3t+JSh@1XHd(%HjMLvMG**jvAoLKgcstaMaW7iN;oTHP^K9K zBenKe~Ywkqe0ZBpbgzeSKPs ztOhm`=UK8y$1mXmq9mO|T66LjY{c z7hxt@0zs0h*M~yidKJHmw@9YSpb~l{byo)2;G;^?KU1XYQVU-E?f7@;mvh3?^Ql zL{Lcjg0a4wOMGOkFXfs@cav+Wp}s^*mHYB6Rqjjk?JVEP=&+;9fJ22%LRc-v*Mz&uvKBh4mrK9M^PAKQL@Jz}UfzVu$d+ zW*!v`&+|DD&*I1@g69FDL{K8IJl_sD2!hzb`hH;1^3(Num?^oUUVpgxc>Vt7kDI@j zUzQ)2pO$~#d{(=8;1A1B(ejHjyZL9W_!7rO~!z-BP< zSU#QPQ-~r>RC6D8NU(t{;CCIgqM=&#OP7TB7960j{bulC0nT8#RV=n4IHdTUL`(e=TKtm99spa5ypdpfD zXeZEA)fk`w+5=tQ90)IO<2(f(1|j&51}K}j4n+~{?0M#_rj~W?okiSjWEU8?XY4)% z?BAp7{qSFAAubB2U=^YTO@|oWK(Psl(}N*|o?H_fC(+BTPbV$h_PG}bn8Ka_DDL}$VVKI$xs>ZQ2tFF( zwFY}A=uvY|(2J8|a%Yvuu4OFE(PY%8)lS<5WOe!ab?n^1f?j*OKyItu0}g2K!W8dt z8GZXwwvAd|rmWaO?mP;mmwZ^mR9b*{rGdjQhi~sP2Nc?R$bxCRSKPL9$QA7Fj=NIF c+xB7kb>;0nRK6Fl|9?IH2l>#BVo4tW023Ky%K!iX diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/ce0cdd3223f1ecf44289c4468f5769a3e1ad58b965be54d412404b1742a7b3b0-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3/repodata/ce0cdd3223f1ecf44289c4468f5769a3e1ad58b965be54d412404b1742a7b3b0-primary.sqlite.bz2 deleted file mode 100644 index b380a2d7ba30f6e1325cedfb9ed142bc6500376b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3423 zcmV-l4WRNuT4*&fL0KkKS+1-eXaEP+|NsC0|Nq+W|N8&`{_em3|NXz>&3(J`-FM%P zzu!Om)Ba!#pL*%W`Hyj)X+vEA0By7Y00006gf%piC#1O$L&lN}s2yc{Ip18%eZJRCN005lB- zhJXzKG{`gn05kz9q@+z5G&J=9Z6~RwnFc@r00E!?0002c00000001-q0001J02NIj z(9i+u82|tP8X7bMK+&K8003k(7=Qo)pa2J`4Kx4^1Juv}00fZGG-_i>kQ!6d zOifQy(V;e`YHE6VdXj1Sr|Czic_E?d01W^%01r?D)BtES0}y(K%6fw%)WUft#=ZR; z&9-|#GLS8)%H)rF-;Th&Ebez$OCu%eGCf~W!t+6_+sklhdOZWj=le=oXC`W3JEClz zambGIaD)(t9m#kJBylh$`D~K;%#bZ?Yh!(c=wp@}``Y3e=$w>!Pfar zyu<|36#z&Aj06z7UBl_d0;>RS>|<{O`87s7^hrA%mEp6TrasHSaUA9dvOv1c)vMw{ zXct@}3=BZT@CFYNoEZs^e%+mx+4OpKi{PO|@k&C01dRfTS82hSf_~I=_>htp;1(wI z4gF*i6m7xp!jT|@1pz7(56-v?w@AcRE$G&fSzuG-FQwQ4XHqi-PWa1|lY9Lv&cG=T z4Va2lQxH;Kp!KBvou<_-ykuUb{dsaq%DH4Kcr(UEmGrcE0aEtU ziP8%;_h*_4W#%fBMqlB|i#=xN0dO!`@z5?5ub=>c1Tj+R@j^F zQdΠ`_tbMe9TtY1g=ITX$_!Zmqr5S09QelF{5;sRqFJBJ%7A?ucLmn(zV%HF^S6 zI}(FRadJLKR%axD@#Dl3@8v7gxq%` z)}16kAuIZ4g4*=7wDARsoZINaNsT#&dm@;VLv)DB6Vd?WV!%U6S|O5tK@SlVA!m(} z!#K2d#DhVf@j3J@#DUWGICiNRl~tz>pDfAQX~8J91Z3_yFa$Pq(&^b0q|wYc80B>i zMK#sx=&p-V`J)US8maiPTbms8QZakT8Ujg%YTMEb*8IHNnSVsgaxwW`YpzD&;W0__ zJ0161bsrByh9DnKvH=X-E&_fU?W5{)PCrm_ek13>+$(630skUyeh(pV!Xma5w9~W zAJ{I-2=x7CTdn;`FHsDJWQ7F28wmBo-S*KA_FFt_X@~Zo!O2I=VHOITeDvr2e)Z(z zCM|+bV--^{fPF14h=*_F_bS0e8?e)wEwLD+XL!-(MiCcz^Ad!_vMm>} zgBAFphQ=;*FrbRy*>%=ZO$HGtLJ+DOfHTBkW+k*%w4|PA87qZEp`}wy8WvFV0N%|6 z!=ou$fZFh3TTm1GLl4M zEKyI56wGm+>_)IW4koYTHElyrVipXDxG=z(frcmNGaa;0iJCAb$Yc%>~6}(~(9}%Dmc) zmAa%wH=)I4gPIH_#4!~WwQM&NWGGdXl$DNEQA`X)0~?z1mxX)S)0zy0s`A4*mRZb3 zBC@7q0YJ+n7@2u8r9mvT6$PRtR)W_Yrjn9IlETuFipmOvf8q*8oh3F>U@9pH%0QgY zmp$anD>a+m_TmMGWqbiNKX&gmFHVY(9 zX2VuiKyyXo$Z|uy+B9f)##fAC%@mjnAu9(aK)kSgBnnO7+3F)&JPB`}X}`=$kCG#u zHh{XCLYk>*qf?ivK0kpl5(mVHwlT4siK{hK3(HR1aXe!pC)XW zm8AHn!%-m$a0bhR63MPL;3$K9poj4-&`o@NJ@wt%40yo+pbha^(m| z!Vr6G-Z~v++|9lryA_<+kD2`R2w`Omsa}f&GXdBVx*`$a`(vTa!KqblI*{IW1c5yd z%?)jUM{u`mw&-2of!Kr;dTJe>_i|u~%D0zTVdYwJz4SWgiZL{42n;~NIbp_6tA@wq zqqIHgHY6j=IEYvccyf$>auL)F#+Fg2U|)m0brzung~_?Xc5T9>Fa}aKDd^Ga zuNdp@78*2=?Gf4^kVtuMmRmenEl;E~{tL%+c4lT~#++>ohG3jgkbDjgkllR7@y`|% zv7oTJ?<=q6!!-Ghj3uVVmcnZcVYFqSrmS?^>7!8Kw(^CB0m)WsD$r7b*q0VTgJ^V$ zvfhL_^h-&noKm|@L&E|Lc3aEdr>vlg1(!Y(F}gVdI|PagXoa$DHqX)8IprpkRLcyA zD`3bXM2u|6hEIv7r7W1-etyh3Yna?8(F9`n`Wbc*%*nm8)NP887B<4 zFPn%K5z3AsinAjb1*<&-mkG!>DJs|~xZ6HDzy|0dXlp}L?WmIobRNpf4jQb=qtbWe zq2AOhl}s(%z=ooXIs}U;v{gM7)l5i{B1SIoj9H#92tqYR5qOY;v&o|-c(X|Pv_y&F zP=lSu;U(W?bhyxtUhb}W!@^A9IF3=sIYS%-jiW%Aw0cIY!O+AT{TG6j<%5`2<0FLS zZfKteC#%GrZ#HLe#tWz4gjOS{UwRf3T_+1|9wcjA zcXSv=L?ZDjmgvY1{Qx-=?9JJr#q79d87-jX@gcAwf+*EP5EvLlkYEW=jT%{_05H~q z*^yzl5tQC;rXq?kVIB_a+E@`2Q_z_wXGJ#63K))AL{UvFPz(f6=@cZyEiD&hApwaq z2x`QKC_uo*fr$B$9d?S0g%u_SAhR_O6BsNAa%>bLXdg<-h$nHfhi3dLfeCCXUpY$ZEJ|+6buk0AWR z!(Skn8O9f^ik%Qn=yn~)6SrBQz|FSNWI+yq5cbGGU}Xga#Zou?UC9*TLPEN*d7#w2 B3qt?^ diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml index 6cef363..a41ffb8 100644 --- a/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml +++ b/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml @@ -5,18 +5,18 @@ Content tag 123456 - 266065d23b52403ddb1f0d2897be8b34915d6bceb5c889c38c773ece6593b893 - f5a70835a27e3dbe4965293d640b10ac85f729fe910722dac11419fe2703e143 - - 1383752637 - 1734 - 8009 + f209787b500f81fc59f7babcfaa122db99cbe3c0817edd7336febc96b95ece33 + a09ebfe06c2ab1200ef8f05bb380f9540f1d06e6a1407f16c7f325eb20a86109 + + 1383829094 + 1740 + 8069 e6c1900810fb1155e7a29c59df839e9d20a369b5fb2cad87d880f664fa815e3f fb32b1e587f0a2499ea15fb2224d0dec9ce615f2661ba4757b3ea18ce56ccc76 - 1383752637 + 1383829094 560 1217 @@ -24,16 +24,16 @@ 07125d910a68f01ac92f37921aa7fb4edd20a05e493c7b9123fd4cd43ed27b45 cb344434c4f54eca225b3db0202163bd61f7524e3f18df4812f82c9377b0350e - 1383752637 + 1383829094 743 1863 - ce0cdd3223f1ecf44289c4468f5769a3e1ad58b965be54d412404b1742a7b3b0 - 11ebac376255ec75a38ac7ee87562dd46febfe156e1952d1c52b9764561f1b29 - - 1383752637 - 3423 + 5b18db33715f9cbdd50e72b14af24476bad7b065bfe0cf56f45bbebd6dd92b08 + 711c7cd2ab9c93a5a7349c8a1b225a6794fc87fa66232329f33273ce7e117a0c + + 1383829095 + 3439 23552 10 @@ -41,7 +41,7 @@ 7946a0f6e1676a33f763e12eddf0ce805c15a81d5de9d93ca81537eda34ccef4 ba39a46626a7b413d775ce685d52a81e536d748fa56af0558ecc8d109f48b55c - 1383752637 + 1383829095 1217 7168 10 @@ -50,7 +50,7 @@ 609eca035393772a53575fa2792c238277034760e616e11fbaaf0517e1ea877f d30994831b79ac3cb8a819c4f17cac0b9ae95f093539ffc216845f9f9216cd42 - 1383752637 + 1383829095 1322 6144 10 @@ -59,21 +59,21 @@ 06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752 d2d2acf640179223bf9e1eb43c5fbf854c4e50ffb6733bc3a9279d3ff7de9be1 - 1383752637 + 1383829095 29 9 a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5 - 1383752637 + 1383829094 140 46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5 - 1383752637 + 1383829094 141 140 diff --git a/deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm deleted file mode 100644 index b606e16b309db226c6ebfa1a0d14645761b1c39a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2845 zcmbtWU2GIp6u!GVE4Y9*VzE}JW8|StI=kK7*`FyCs)h1nbqOs>!FHLQy}LVMcV{{? zTe>S4F@$0aU;>yZnn@pLe$^n4+5YI(G4h$R2^;`i&9mha-%>aA=>`^e(e*;9V)!{y`ynFu@_vz|eCLXe2F45)H+~D6B^pyWwKTG&(x^8T8?v zgiMILg%Iy57+MGhad{U5;+!29xX%Z{9%K9}<8v9m z28jF2F^>C2|9Qr*1ERi#@tc6CZ)5y6Ao}0Q_+3EMKV*D_@zad|#rS!LbLbll}K-?OjB{%kVm>gwwT^D*3Hi%R=b7Ha^m@j78OOMA zehLuc==6>%DUs zuK?ov*a!%Fnz@VV^8qm)3JCZ2wlbb!ybXC9nON_LUGGSUbWzjdby-<2XDR8*spc5r zb29V|tzS)3vynGwUr9Bvr=?6SPc7^!S}~JX70cu`-BPup=_e$yy>ut9DRMrinU>$~ zrL}^r79j|19ZObp^oPhZx(+L4dsU#bY+AHHa+akx2Lh&+oEWNK(Fy_8N~&g3-at*Q zKm%o}Ct<{(az0-Mf#lUXk!)T~5r_exzD+CWa1KnGZddd41-U@YhA|CC7O7b{QsZMQtO>PiC%!j~8-R>&WMGfKk1L?K8-KQJ5dN+SLcg46K*aXa7fNt>Na zU=2DJ*;Vof{rI_0Y+u`o)&+;uqe_NVb5z>ZAhe z2G$hEBK|n+7^8Ns_=7XH2Q~+?B7u6ZP5LXEltA#6t&l*;Gy*BL7;t)KPBv(uAOjZ? zAzsMxg0AY67hZx_6RvuruqfG{SlP9#y*t^NShcckaSKe#&;f-yB?E|QLH!Y+)>u@r zG=moeT{h%Gi)rdYs+7r4Lon3}Z4r51C`3iLSfwIu$~=<$44LpFTX;IPBU*`g=&tjMJR*LF|0%x^>m_?r;YazGD}J zw`;#0y}WOy@BNz3`_3k(aXm+lb9=)VJLbJtv%Ke{jj!D@7SBJ}_h+`M=l4r(<>H>e zp3bR1*X^x4F?{gE%vrsCz0KZ1l6bE6aKY8+KDYebf+vm^H^sj{S+%h_w(?4OM=Qke z<;O>l-F*G>kq+~fuDYGqZ_GJRy>-*J6E|j^`nq@Sg~2z7>l4>*I6jFfKlUHGbY?bY JhWNVI{0$B}Lv8>7 diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh b/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh index 5c723be..39b57cc 100755 --- a/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh +++ b/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh @@ -13,5 +13,5 @@ then fi pushd "$MY_DIR" -$CREATEREPO $EXTRAARGS --checksum "md5" --groupfile comps.xml --revision "3th repo - md5" --content "111" --content "222" --repo "aaa" --repo "bbb" --repo "ccc" --distro="one,foo" --distro="two:bar" . +$CREATEREPO $EXTRAARGS --pkglist pkglist --checksum "md5" --groupfile comps.xml --revision "3th repo - md5" --content "111" --content "222" --repo "aaa" --repo "bbb" --repo "ccc" --distro="one,foo" --distro="two:bar" . popd diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/pkglist b/deltarepo/acceptance_tests/repos/repo3_md5/pkglist new file mode 100644 index 0000000..b0436ea --- /dev/null +++ b/deltarepo/acceptance_tests/repos/repo3_md5/pkglist @@ -0,0 +1,5 @@ +../packages/Archer-3.4.5-6.x86_64.rpm +../packages/balicek-utf8-1.1.1-1.x86_64.rpm +../packages/empty-0-0.x86_64.rpm +../packages/fake_bash-1.1.1-1.x86_64.rpm +../packages/super_kernel-6.0.1-2.x86_64.rpm diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/37db64332a3db016fc06d8ab9da29fd3-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/37db64332a3db016fc06d8ab9da29fd3-primary.sqlite.bz2 deleted file mode 100644 index c079c945b58040a7bf42f9a1a346418d344338b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3272 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 GLH7Wp{puJ1 diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/f5dbbd04a90922679668e7452a0e0abc-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/f5dbbd04a90922679668e7452a0e0abc-primary.xml.gz deleted file mode 100644 index 7d31dbec8324c0d1e6fd8173ce865e2dc44e12f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1617 zcmV-X2Cn%ZiwFP!000001LaxGZrer>zUL_j7ARUE;y;&EEHOxGI|z_N3p8H%c;hyo-Y@xx?16yIK7_H6OF^JEZ1j(wbCfr%&CP@Lp>`b?IiFqz#*{%i^o z_%pedl06c~BoQm=XEcpFHJFSjq}ZF{F);h4$R=HV74k(2L$Q!>o(RGq!7(^5s5b#R zkjpQ{C}soBjg3ag7|7+9VssUm04eb%Ls1ipScjr68Imaq6r!PsM7b1Y_Pl8}i&xXd zJ`+f%FNE2|V`;d`k4V@XsMCL1PM zj-v>eJX+oePvaZG)>a=6@cnWx7qU6wl03zv&F1%mHkZ=*L%ucGs7l|ePz?+C|C7sa-2gU z97{j2b>2h9k4IaqmdtLw%Q-0gHVY|d2?T`jmjK6UrpsRel2YsxrK>964!`<*U4HTT zy8PPnbpxKyh;0iLw&Jczv|EqTsz;K5kyXxtsoQ~4K2F^Zn3g~-p}GZDK4{zywDR%l zcEGh`?hd?e5L>1EUVcl1#LY+qIR_UQcjcVpBgS1Rmsq;%TyqU|C7P?;m1nMUSDJUT zd@rMeqFr$0Sw>|yOys(~zyrB_QEcIIy@#(mla6N2#l@aJ?alJQKDMRXP!jvurKHZ5 z4phxRW?&*i(KO$*kPfD8t9sD)u%%$!($c-e(em@{2bc<(Al`nw`*i!^?vJ~_mtU8k zmYB6EJ!!Mo+6=aLe*vDt$i>-Y zluaOtBvz_pT0cWm71QW9wtlK*_gh;(mel6fZ@bLBvR>@-TQ-2)=I?5e%k#5okpXmBCc?1K+V}6{84ThyUp$n$>P|{IkhTIB5CYxu0tQ=fabI)w zz&3RQY|HOkb_;EZ99lY#U=C*yLqUCH+FCP<7@PxSD~pt=?kPRx2JdbaHA6~ZSekl1M zNm-{uJCJ---%@n1Z)(^IbQ^4}Fb>jHVCNTX_ART0e6AtOH>A?WKi88mtEGeqX3wjt zJQeDUJ{8s{!>7XfC@zrFKqftiure~*PG?D2VLl485q<|5i9udKI$|Rf80{?Bi=*jG zZ>BTbFk9)&P+D4%ZC`t34SU*=UCCTKh16c8DN`(6%H)dS9*xc#gFThekbWeiB_to+ zTP3`!5L2=xUenTOr|HtKyzu-scJ2Ya)7~L`+GzKLbJP1U)eg7--n|HIY6@>soF5=J zjzaFmnkH$8TY&e4fzvN!cejue3T-}Q!8G0FZQD8J+VgP7`&`GHHd+1^;qC^>-)PtW P5O)3nuXX!1njQcE)N>Xy diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml index 187089c..aed7070 100644 --- a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml +++ b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml @@ -11,18 +11,18 @@ two:bar - f5dbbd04a90922679668e7452a0e0abc - b22dba6fb9c30eb93558f6da5f27731a - - 1383752637 - 1617 - 7834 + e6113ec94a34b9273545c32dde4f8231 + 8b6736474125a2fb6706586d383e3bfd + + 1383829095 + 1622 + 7894 ab0ba3bc0c558a1c7232c81b542b3da6 d474974b0e0e377e61f9975b19e9a63f - 1383752637 + 1383829095 457 1057 @@ -30,16 +30,16 @@ dbc187a3175af386b8fbc6b2773b2161 f1f261928fd216a42cbd5cc2a24c3f40 - 1383752637 + 1383829095 633 1703 - 37db64332a3db016fc06d8ab9da29fd3 - 98c10199cc3aa39bfd139610e2fb84e9 - - 1383752638 - 3272 + dce0c6750b08b9c5a1a78fccb52eeb57 + d8e9dfb82d3771a67f94a4f083df2937 + + 1383829095 + 3257 23552 10 @@ -47,7 +47,7 @@ efb2d70f60ee5b5542b71c5e06ca2fbc ab752ad5e0de0c50143384d91c94edc5 - 1383752638 + 1383829095 1070 7168 10 @@ -56,7 +56,7 @@ a3202fa64a762c9257df78a2a966c9fd 8571400245fb102ad06d23cf6fc4bd5a - 1383752638 + 1383829095 1172 6144 10 @@ -64,14 +64,14 @@ 71e71de922ccdaf23c1cb02d8b234c91 - 1383752637 + 1383829095 140 959970da257ec7696a0bffdc52752d5f 71e71de922ccdaf23c1cb02d8b234c91 - 1383752637 + 1383829095 141 140 diff --git a/deltarepo/acceptance_tests/test.sh b/deltarepo/acceptance_tests/test.sh index 2acedb6..6d0ce71 100755 --- a/deltarepo/acceptance_tests/test.sh +++ b/deltarepo/acceptance_tests/test.sh @@ -16,6 +16,7 @@ TEST_OUTDIR=`mktemp -d "$OUTDIR_TEMPLATE"` REPO1="repos/repo1" REPO2="repos/repo2" +REPO2_INCOMPLETE="repos/repo2_incomplete" REPO3="repos/repo3" REPO3_MD5="repos/repo3_md5" @@ -68,16 +69,20 @@ function testcase01 { } testcase01 $REPO1 $REPO2 +testcase01 $REPO1 $REPO2_INCOMPLETE testcase01 $REPO1 $REPO3 testcase01 $REPO1 $REPO3_MD5 testcase01 $REPO2 $REPO1 +testcase01 $REPO2 $REPO2_INCOMPLETE testcase01 $REPO2 $REPO3 testcase01 $REPO2 $REPO3_MD5 testcase01 $REPO3 $REPO1 testcase01 $REPO3 $REPO2 +testcase01 $REPO3 $REPO2_INCOMPLETE testcase01 $REPO3 $REPO3_MD5 testcase01 $REPO3_MD5 $REPO1 testcase01 $REPO3_MD5 $REPO2 +testcase01 $REPO3_MD5 $REPO2_INCOMPLETE testcase01 $REPO3_MD5 $REPO3 popd > /dev/null diff --git a/deltarepo/deltarepo/common.py b/deltarepo/deltarepo/common.py index c6316d5..2890e36 100644 --- a/deltarepo/deltarepo/common.py +++ b/deltarepo/deltarepo/common.py @@ -29,13 +29,23 @@ class LoggingInterface(object): class RemovedXml(object): def __init__(self): + self.database = {} # e.g.: {"primary": "1", "filelists": "1", "other": "1"} self.packages = {} # { location_href: location_base } self.files = {} # { location_href: location_base or Null } def __str__(self): + print self.database_gen print self.packages print self.files + def set_database(self, type, val): + self.database[type] = "1" if val else "0" + + def get_database(self, type, default=False): + if type in self.database: + return self.database[type] != "0" + return default + def add_pkg(self, pkg): self.packages[pkg.location_href] = pkg.location_base @@ -47,6 +57,7 @@ class RemovedXml(object): def xml_dump(self): xmltree = etree.Element("removed") + database = etree.SubElement(xmltree, "database", self.database) packages = etree.SubElement(xmltree, "packages") for href, base in self.packages.iteritems(): attrs = {} @@ -73,8 +84,14 @@ class RemovedXml(object): dom = xml.dom.minidom.parse(tmp_path) os.remove(tmp_path) + database = dom.getElementsByTagName("database") + if database and database[0]: + for x in xrange(database[0].attributes.length): + attr = database[0].attributes.item(x) + self.database[attr.name] = attr.value + packages = dom.getElementsByTagName("packages") - if packages: + if packages and packages[0]: for loc in packages[0].getElementsByTagName("location"): href = loc.getAttribute("href") base = loc.getAttribute("base") @@ -85,7 +102,7 @@ class RemovedXml(object): self.packages[href] = base files = dom.getElementsByTagName("files") - if files: + if files and files[0]: for loc in files[0].getElementsByTagName("location"): href = loc.getAttribute("href") base = loc.getAttribute("base") diff --git a/deltarepo/deltarepo/delta_plugins.py b/deltarepo/deltarepo/delta_plugins.py index 8a1c670..80b05c1 100644 --- a/deltarepo/deltarepo/delta_plugins.py +++ b/deltarepo/deltarepo/delta_plugins.py @@ -133,7 +133,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): NAME = "MainDeltaPlugin" VERSION = 1 - METADATA = ["primary", "filelists", "other"] + METADATA = ["primary", "filelists", "other", "primary_db", "filelists_db", "other_db"] APPLY_REQUIRED_BUNDLE_KEYS = ["repoid_type_str", "removed_obj", "unique_md_filenames"] @@ -179,6 +179,9 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): fil_md = metadata.get("filelists") oth_md = metadata.get("other") + # Check if dbs should be created + make_dbs = True + # Build and prepare destination paths # (And store them in the same Metadata object) def prepare_paths_in_metadata(md, xmlclass, dbclass): @@ -193,9 +196,14 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): md.new_f = xmlclass(md.new_fn, md.compression_type, md.new_f_stat) - md.db_fn = os.path.join(md.out_dir, "{0}.sqlite".format( - md.metadata_type)) - md.db = dbclass(md.db_fn) + + if removed_obj and removed_obj.get_database(md.metadata_type, False): + md.db_fn = os.path.join(md.out_dir, "{0}.sqlite".format( + md.metadata_type)) + md.db = dbclass(md.db_fn) + else: + md.db_fn = None + md.db = None # Primary prepare_paths_in_metadata(pri_md, @@ -298,7 +306,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): pri_md.db.add_pkg(pkg) # Write out filelists - if fil_md.new_f: + if fil_md and fil_md.new_f: fil_md.new_f.set_num_of_pkgs(num_of_packages) for pkg in all_packages_sorted: fil_md.new_f.add_pkg(pkg) @@ -306,7 +314,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): fil_md.db.add_pkg(pkg) # Write out other - if oth_md.new_f: + if oth_md and oth_md.new_f: oth_md.new_f.set_num_of_pkgs(num_of_packages) for pkg in all_packages_sorted: oth_md.new_f.add_pkg(pkg) @@ -339,7 +347,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): cr.compress_file(md.db_fn, None, cr.BZ2, db_stat) os.remove(md.db_fn) - # Pripare repomd record of database file + # Prepare repomd record of database file db_rec = cr.RepomdRecord("{0}_db".format(md.metadata_type), db_compressed) db_rec.load_contentstat(db_stat) @@ -384,6 +392,10 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): md.delta_f = xmlclass(md.delta_fn, md.compression_type, md.delta_f_stat) + if removed_obj: + db_type = "{0}_db".format(md.metadata_type) + available = metadata.get(db_type) + removed_obj.set_database(md.metadata_type, available) # Database for delta repo is redundant #md.db_fn = os.path.join(md.out_dir, "{0}.sqlite".format( # md.metadata_type)) @@ -468,7 +480,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): return added_packages.get(pkgId, None) # Write out filelists delta - if fil_md.delta_f and fil_md.new_fn: + if fil_md and fil_md.delta_f and fil_md.new_fn: cr.xml_parse_filelists(fil_md.new_fn, newpkgcb=newpkgcb) fil_md.delta_f.set_num_of_pkgs(num_of_packages) for pkgid in added_packages_ids: @@ -476,7 +488,7 @@ class MainDeltaRepoPlugin(DeltaRepoPlugin): fil_md.delta_f.close() # Write out other delta - if oth_md.delta_f and oth_md.new_fn: + if oth_md and oth_md.delta_f and oth_md.new_fn: cr.xml_parse_other(oth_md.new_fn, newpkgcb=newpkgcb) oth_md.delta_f.set_num_of_pkgs(num_of_packages) for pkgid in added_packages_ids: diff --git a/deltarepo/deltarepo/generator.py b/deltarepo/deltarepo/generator.py index 68ec580..2638cb4 100644 --- a/deltarepo/deltarepo/generator.py +++ b/deltarepo/deltarepo/generator.py @@ -235,10 +235,6 @@ class DeltaRepoGenerator(LoggingInterface): # Process rest of the metadata files metadata_objects = {} for rectype, rec in self.new_records.items(): - if rectype in ("primary_db", "filelists_db", "other_db"): - # Skip databases - continue - if rectype not in processed_metadata: metadata_object = self._new_metadata(rectype) if metadata_object is not None: -- 2.7.4